close

No account? Please just register for free

Firmware info + supported devices list

Firmware information for P44-LC-DE

Firmware version Release Notes
1.6.8
released 2023-06-09

Firmware 1.6.8

Firmware 1.6.8 for P44-LC devices is a maintenance release for firmware release 1.6. It contains some general improvements and bug fixes.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Changes since production version 1.6.6

Bugfixes

  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Animators: fixed bug that caused spurious glitches (animators seemingly not running or running too fast)

Improvements

  • Enocean: add support for D2-07-00 door lock status profile.
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44lrgraphics: add support for multiple fonts, for now 7x5 and 8x5 but mechanism in place for bigger sizes, add support for french accent characters with basic mechanism in place for handling any UTF-8 codepoint in fonts.
  • p44script: added foreach statement
  • p44script: answer() functions for web requests and feature requests now also accept an error value as argument to send back to the API caller.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • p44script: all time getter functions such as hour(), month(), sunrise() etc. now accept a epoch timestamp argument. Also epochtime() function allows constructing epoch timestamps from date components.
  • LED chains: more led layout (R,G,B,W ordering) options
  • LED chains: reworked update timing engine, is now more precise, issues log warnings when display is likely to be jumpy or flickering due to limits in max LED output frame rate.
1.6.5
released 2022-09-06

Firmware 1.6.5 for P44-LC devices is a maintenance release for firmware release 1.6. It contains some general improvements and bug fixes, as well as some additional p44script capabilities.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Improvements since production version 1.6.4

General

  • Text is now easier to select and copy in the web interface (in some browsers, text could only be selected via right-click before).
  • More precise output transition timing, multiple channels can now be in differently timed transitions at the same time for hardware devices which support that.
  • Evaluators: more intuitive behaviour when on/off conditions logically overlap (are both true at the same time), improved logging to make understanding evaluator condition evaluation easier.
  • Foundation laid for the P44-xx device to possibly act as a matter bridge in the future.

Bugfixes

  • Assigning a very long name for the P44-xx device could cause dns-sd not being able to publish and thus device would not appear in Bonjour or Avahi network browsers. Now long names are automatically shortened to prevent this.
  • Certain broken DALI devices could cause the bus scanning taking forever with no result. This did not happen in normal operation with all DALI devices correctly operating. The bugfix however helps while diagnosing DALI bus errors.

p44script

  • Added bit(field) manipulation functions: bit(), setbit(), flipbit().
  • Added lowercase(), uppercase(), caseinsensitive option for find() and new replace() function for string manipulation.
  • Added cquote() function.
  • Added withmeta and formdata options to httprequest(). Also, httprequest() now treats all "success" class status codes (200..203) as ok, not just 200.
  • Added dnssdbrowse() function to search for named public services in the local network using dns-sd (aka Bonjour, aka zeroconf, aka avahi).
  • Added annotation() function to get the annotation string of a value (which for example often indicates the reason for a result being null/undefined).
  • Added globalbuiltins() and contextbuiltins() functions listing all built-in global or context-level functions/objects.
  • Boolean operators now return "real" boolean values, i.e. not just generic numeric 0 or 1, but actual bool type (which still converts to numeric 1 value for true, 0 for false). The main difference is that these "real" booleans, when assigned to JSON object fields, are actually represented as JSON booleans, not numbers.

Scripted devices/external device API

  • Buttons now can directly report clicks and longpress (useful when the button device already has it's own click detection, which might be more precise than transmitting direct button press/release events via an API that might add too much delay).
1.6.4
released 2022-03-21

Firmware 1.6.4 for P44-LC/AC devices is a maintenance release for firmware release 1.6. It essentially releases support for specific hardware, and includes some improvements and bug fixes.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Improvements since production version 1.6.2

hue

  • Ready for upcoming hue bridge firmware release (expected for Q2/2022) which removes SSDP method for finding hue bridge in the local network. New method is DNS-SD (also called Bonjour, mDNS, ZeroConf). SSDP is still supported for old (round) hue bridges.

DALI

  • Fixed brightness dimming for some RGB(WA) color dimmers.

EnOcean

  • Fixed F6-05-02 smoke detector learn-in.

General

  • Fixed bugs that could occur in some edge cases such that scene transitions would not work as expected.
  • Web-UI: Fixed custom transition time scene effect to show the parameter field, so transition time can actually be edited.
  • Internal Action Evaluator trigger conditions are now re-evaluated after action script has run to detect script side effects (such as changing a script variable) that might be needed to reset the trigger condition.
  • Shadow devices should now get proper UI in digitalSTROM (added resp. modelfeatures)
  • Support for new p44-mini-e+l hardware platform.

Logging

  • Scene operations now have a text description for the scene involved (such as "preset 1" for scene number 5).
  • There is now a toggle to have log display wrap long lines
  • Better error display showing not only numeric error code, but also name text.

p44script

  • restartapp() now can optionally also reboot, shutdown or start a firmware upgrade.
  • Fixed inconsistencies in member access, for example assigning variables via globalvars()['name'] = xx.
  • New functions isok()ifok() to catch errors for example when accessing data fields, strrep() for creating string with repeating patterns.
  • signal() now can send data, which allows using it as a "pipe" to transmit information between different script contexts and threads.
  • User defined functions can now be created as "local function" to keep them private to the context (e.g. device, mainscript) instead of exposing them globally. Also, for clarity, functions may now be declared "global function".
  • New functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
  • Fixed crash that could happen when run time error occurred within nested function calls.
  • httprequest() now allows accessing servers using basic auth (because that is needed by some IoT hardware not capable of digest auth). By default, httprequest() does not suggest basic auth and allows it only in SSL connections when the server asks for it.
  • Internal: the event passing mechanism (on which on(..) {...} is based) has been significantly improved and generalized. This also fixes a few edge cases that could cause inconsistencies with events in too rapid succession.
  • Webserver: now allows (but never requests) accessing via http basic auth. This allows IoT hardware not capable of digest auth to still access the web API. Note that basic auth risks exposing the password when used without https/TLS.
  • API endpoint `/api/json/scriptapi` which can be activated via p44script is now accessible without `rqvaltok`token.
1.6.2
released 2021-11-29

Firmware 1.6.2 for P44-LC/AC devices is a maintenance release for firmware release 1.6. It essentially releases support for specific hardware, and includes some improvements and bug fixes.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Improvements since production version 1.6.0

  • Special Hardware Support: now direct access to i2c, SPI and modbus peripherals is possible from p44script (userlevel >=1 required)
  • p44script: random() function can now deliver discrete values in a specified interval, such as integers, halves etc.
  • Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations. For example, devices with a periodic polling of a service could get accessed more often than intended after editing.
  • https access from p44script: fixed a problem that prevented accessing some https servers (those that require SNI to establish a connection).
  • LEDchain: divs small bugfixes, in particular more accurate LED power limiting (P44-LC-LED and P44-LC-X only)
1.6.1
released 2021-11-15

Firmware 1.6.1 for P44-LC/AC devices (and 2.6.1 for P44-DSB) is a maintenance release for firmware release 1.6. It does not contain any new features, but fixes some bugs.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Improvements since production version 1.6.0

  • Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations. For example, devices with a periodic polling of a service could get accessed more often than intended after editing.
  • https access from p44script: fixed a problem that prevented accessing some https servers (those that require SNI to establish a connection).
  • LEDchain: divs small bugfixes, in particular more accurate LED power limiting (P44-DSB-X only)
1.6.0
released 2021-09-30

The firmware 1.6.0 for P44-LC/AC devices (and 2.6.0 for P44-DSB) focuses on extendability and flexibility to create advanced applications.

It now allows integration with services and 3rd party hardware all completely within the P44-xx device itself, with no external dependencies or tools needed, and thus suitable for long-lived installations. The complete customized setup of a P44-DSB/P44-LC/AC device can be downloaded and archived as a single file, and can be restored easily to the original device or a replacement device when needed.

To see what can be done with a P44-DSB/LC device beyond the usual, find a few examples here.

Of course, despite all the new possibilities, the P44-DSB/LC remains as simple to use as before, integrating DALI, EnOcean and hue devices into digitalSTROM with a few clicks.

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

Improvements since production version 1.5.0

Web Interface

  • Speed: Significantly improved speed, especially noticeable with interactive sliders (output channel settings such as brightness, color) which are now way smoother than before.
  • Caching: Complete overhaul of internal web server configuration to prevent caching problems and the occasional "Ajax -1" error that sometimes occurred (which was harmless, but ugly).
  • More info: Device and vDC Info dialog now has a "Technical details" section with extra information and a link to open a separate device/vdc property tree window.
  • Visual feedback: Buttons that trigger an action (such as testing a scene script) will now light up to confirm when the device has actually started executing the action. This helps especially when debugging setups with flakey wifi connection.

DALI

  • Tunable white lights: Support for non-DT-8 tunable white lights providing one dimmer channel for brightness, and a second channel for color temperature (warm to cool).

Scripting

  • Scripted custom devices: while customer defined devices were already possible for a while using the external device API, this release now allows creating custom hardware and service integrations entirely on-device using p44script. While this is an advanced feature that needs some programming skills, there are some ready to use examples available. Things that can be done with scripted custom devices are, for example:
  • Many new functions: file access with readfile() and writefile(), numerical range transform with maprange(), ord()/chr() for working with binary strings, httprequest(), urlencode() and websocket() for accessing complex APIs, globalvars(), localvars(), contextvars(), globalhandlers(), contexthandlers() for introspection and debugging, digitalio(), analogio(), dcmotor() for working with directly connected hardware (P44-DSB-X and custom P44-xx devices only).
  • JSON objects: now JSON object's field names can now be accessed using numeric subscript (obj[0] returns name of first field in obj).
  • External access: the device's JSON API has a "scriptapi" endpoint, which can be used to implement custom API in p44script using the webrequest() event function and its member answer() for responding to web requests.
  • Threads: thread-local variables can be defined using the threadvar keyword and are implicitly used in as clause of on() and catch(). For thread coordination, new functions signal(), lock() exist.
  • Documentation: in addition to the built-in script short reference, p44 tech docs now provide a lot of information and examples for all the many advanced applications p44script can enable.
  • Logging: much better display of context where script-related things happen, incuding complete call chain when scripts call functions defined in other scripts. Enhanced log() function now allows formatting like format().
  • Debugging: Pretty-printed JSON results in Read-Execute-Print/REPL (repl.html) and tweak (tweak.html) screens help inspecting API results, lrgraphics status() info etc.

Standalone Controller (P44-LC only)

  • Dimming: after turning on light via scene call, next dimming action with a single button will dim down (tried to dim up before, which usually makes no sense after turning on).
  • Mobile Website: Optimized Lights tab for better usability on small screens. All controls are now reachable even on a small phone screen (in landscape mode).
  • Triggers: now can set additional trigger modes. By default, triggers fire when the condition expression changes from false to true. Extra modes can be used to fire when expression result becomes true OR false, or when the expression value changes at all (not only boolean values) or even on every evaluation.
  • Custom Actions: Triggers now have an option to appear as button on a separate web page (actions.html). With this, custom functionality can made accessible in a simple to use way for end users.

Support for custom device types (P44-DSB-X and custom P44-xx devices only)

  • SmartLED chains/p44lrgraphics: Now supports setting LED chip type and layout (RGB,GRB,…) in p44script using addledchain(). The LED refresh rate can be changed using setledrefresh() programmatically.
  • LEDchain devices: Simplified creating text, life, image based lights.
  • "p44features": this is a set of rather specific hardware drivers, which now can be used from p44script. For example if you have Swiss Railway split flap modules, there is a splitflap feature to control these.
  • WiFi: For RaspberryPi 3 based P44-DSB-X devices, WiFi can be configured by Cmd/Ctrl-Shift clicking "Edit Network Settings...").
  • Hardware I/O: digitalio() and analogio() allow accessing GPIO pins, PWM outputs, I2C and SPI peripherals such as A/D converters or port expanders in p44script.
  • Motor control: dcmotor() provides all functionality for bidirectional DC motors with current measurement for detecting end stops and/or end contacts, with smooth ramp up/down control (suitable H-bridge driver and A/D converter connected to PWM, GPIO, SPI/I2C required).

General

  • Platform: updated to OpenWrt 19.07.8
  • Other: of course, many detail improvement and bug fixes…
1.5.0
released 2021-03-01

General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.

New features

  • Automatic check for Updates: optionally, the P44-LC can now automatically check if a new firmware version is available, and if so, show an alert when opening the web interface (the next available version number is also available as a p44script function for use in triggers and evaluators).
  • Scripting: a new scripting engine, p44script, now allows scripting almost every aspect of the device.  
    • p44script has advanced features like user defined functions, concurrent operation, event handlers and a lot of functions from math to string handling to http and socket connections and much more.
    • p44script is fully compatible with the previous evaluator expressions and trigger/action scripts, but extends far beyond in functionality.
    • For editing longer source code, there is now a full-screen code editor with p44script syntax coloring and snippets (small link below the text fields)
    • For easily trying p44script features and code snippets, there is a REPL (Read Execute Print Loop) Web page at /repl.html.
    • See Script+Expression reference link below editors for a short reference for p44script.
    • Scripting is possible as before from internal action trigger type evaluator devices and from independent triggers on the trigger page.
    • In addition, every scene in every device can now have a scene script which is run when the scene is called. This allows advanced effects and transitions when scenes are invoked. To edit scene scripts (and other scene options), click the device's star icon in the lights page.
    • Individual device's scenes can be edited, saved and called by shift-clicking the sprocket icon in the lights or hardware tab (additional controls appear below the channel sliders)
    • For initializing and running custom setups, p44script provides a main script which is started with the device and may keep running in parallel with normal device operation.
  • DALI: optimizer now can optimize DT8 lights, too. P44-LC-DE only
  • hue: now supports on/off-only devices without any dimming capability, such as smart plugs.
  • logging: per device/vdc/script logleveloffset now allows silencing "noisy" devices or focusing on devices of interest for support and debugging. To change the log level offset (from -2 to mostly silence to +2 to make very verbose), shift-click the (i)-button of a device and then one of the links labelled logging.
  • logging: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
  • Option for persistent outputs: if enabled (vdchost level property) output state changes will be saved and when device is restarted, re-applied to the hardware. Note that writing to flash can cause short delays and contributes to flash wear, so only enable the feature when actually needed. It is off by default.
  • Platform: support for custom product devices for smart LED installations: P44-LC-E+L, P44-LC-LED 
  • Enhanced smart LED chain support (Custom P44-LC-E+L, P44-LC-LED only): stripes and areas built from individually addressable color LEDs (WS281x, SK6812 etc.) can be used with p44lrgraphics subsystem.   
    • p44lrgraphics is a graphic rendering system based on a hierarchy of views, including animation, transparency, rotation, PNG display, smooth scrolling, text and more.
    • For example, it drives the moving feature light with effects, which is a color light showing on a segment or spot on LED chains, with extra channels for size, color gradient, rotation etc.
    • p44lrgraphics is fully accessible from p44script, which allows creating and animating complex light arrangements.
    • It even supports Microsoft's expressive pixels animation format.
    • p44lrgraphics's origin is the messagetorch project from 7 years ago. It evolved via pixelboard to what it is today, so it still contains a torch view that can produce the fire animation of messagetorch (and a Conway's game of life view).

Improvements

  • Better Versioning scheme:
    • Production versions will have numbers in the 1.5.0 form (major.minor.revision).
    • Testing/beta versions will keep the longer 1.5.0.0 form, with the fourth number being the beta build version.
    • Beta versions will start with the number of the next release version. So a beta version like 1.5.1.2 indicates that this is a beta for an upcoming 1.5.1 release.
  • Platform: updated to OpenWrt 19.07.6 
  • DALI: improved handling of DALI2 devices with multiple logical units (LUNs). P44-LC-DE only
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. P44-LC-DE only
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers). P44-LC-DE only
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible. P44-LC-DE only
  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter (RLC) refresh.
  • EnOcean: improved out-of-sync RLC handling, better log messages for encryption related warnings.
  • EnOcean: A5-20-04 communication interval reduced from 20 to 10min.
  • Evaluators: now write a more informative log line when state changes, including the values involved and indicating if the change was triggered by timing or immediate input value changes.
  • Evaluators: internal action evaluators can now have an empty "off" condition to just run the action once whenever "on" condition becomes true.
  • Evaluators: now can use channel output values as "sensor" values in condition expressions (using device(x).output.channel(y) syntax)
  • Web-UI: all dialogs can now be dismissed with Esc key or by clicking ouside of the dialog.
  • Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
  • LEDchains: now RGBW chains are supported, actual light color of W channel can be specified per chain. Custom P44-LC-E+L, P44-LC-LED only
  • LEDchains: --ledrefresh command line parameter to tune update rate (lower for very long chains). Custom P44-LC-E+L, P44-LC-LED only
  • LEDchains: ledchain driver with support for RGB (vs GRB) WS2815 LEDs. Custom P44-LC-E+L, P44-LC-LED only

Bug fixes

  • DALI: fixed problems with groups where devices with valid GTIN, but duplicate serial numbers are involved (such devices are not really DALI conformant, but unfortunately exist). P44-LC-DE only
  • DALI: fixed RGBWAF value range (is 0..254, not 0..127). P44-LC-DE only
  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time.
  • EnOcean: fixed problems with secure devices persistence (inactive after restart)
  • Window/door/garage contacts: meaning of the active state (binary input = 1) is closed, not openExcept for rarely used EnOcean profiles A5-14-07/08, this is only a documentation/labelling change, because for generic contacts, configurations for both signal polarities existed already to cover different types of window/door contacts. (Note that this has nothing to do with the way window handle inputs work - for these the states were and still are: 0=closed, 1=open, 2=tilted).
  • Optimizer: fixed bug that could cause scene not loading correctly.
  • hue: fixed problem with manually specified hue bridge url/IP, did not work in some cases.
  • Web-UI: fixed long-standing annoying JQMobile problem that caused open dialogs to scroll instead of accepting the first button clicked.
  • Webserver: now based on civetweb v1.12, which fixes a socket leak when accessing the Web-UI with a https request that fails due to SSL level errors. Before, polling the Web-UI via https constantly (as some monitor tools do), over time led to out-of-memory resulting in device becoming very slow.
1.0.5.0
released 2019-12-06

 

Changes since 1.0.4.5:

  • EnOcean: support for A5-20-06 self-powered heating valve
  • EnOcean: support for D2-03-0A single button
  • EnOcean: motion sensors now have configuration variant for sensors that only report "motion" (but not "no motion", e.g. Eltako TF-BSB)
  • Scripts: larger text fields for editing, built-in short reference page.
  • Expressions: all expressions can now read global variables.
  • Web-UI: settings for geographic location (for sunrise/sunset calculations) and time zone. 
  • DALI: improved reliability with some DT8 color+tunable white lights
  • Hue: workaround for unreliable third-party lights
  • Transition times: fixed bugs, especially with optimized hue and DALI lights.

Changes since 1.0.2.5:

  • Triggers: can now use buttons and sensors in condition expressions
  • Triggers: many new functions in condition expessions
  • Triggers: actions are now a full-featured script language, including if/elsewhile/break/continuereturn, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • EnOcean: support for D2-03-0A single button
  • hue: A recent hue bridge firmware update has changed the signature ("Philips" replaced by "Signify"). This prevents updated hue bridges to get recognized with P44-LC versions before 1.0.4.5.

Changes since 1.0.2.2:

  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3 0..10V inputs).
  • hue: non-certified lights are now indicated in hardware list
  • WebUI: fixed problem with DALI diagnostics which sometimes did not show any devices in the address map.
  • WebUI: better contrast for presenting dialogs.
  • WebUI: added refresh button for lights list.
  • WebUI: fixed problems with downloading config backup, restore, IP settings, fixed trigger function samples, improved some label texts, other small bugfixes.


1.0.4.5
released 2019-10-17

Changes since 1.0.2.5:

  • Triggers: can now use buttons and sensors in condition expressions
  • Triggers: many new functions in condition expessions
  • Triggers: actions are now a full-featured script language, including if/elsewhile/break/continuereturn, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • EnOcean: support for D2-03-0A single button
  • hue: A recent hue bridge firmware update has changed the signature ("Philips" replaced by "Signify"). This prevents updated hue bridges to get recognized with P44-LC versions before 1.0.4.5.

Changes since 1.0.2.2:

  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3 0..10V inputs).
  • hue: non-certified lights are now indicated in hardware list
  • WebUI: fixed problem with DALI diagnostics which sometimes did not show any devices in the address map.
  • WebUI: better contrast for presenting dialogs.
  • WebUI: added refresh button for lights list.
  • WebUI: fixed problems with downloading config backup, restore, IP settings, fixed trigger function samples, improved some label texts, other small bugfixes.


1.0.2.5
released 2019-06-07

Second production release of P44-LC-DE firmware

Changes since 1.0.2.2:

  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3 0..10V inputs).
  • hue: non-certified lights are now indicated in hardware list
  • WebUI: fixed problem with DALI diagnostics which sometimes did not show any devices in the address map.
  • WebUI: better contrast for presenting dialogs.
  • WebUI: added refresh button for lights list.
  • WebUI: fixed problems with downloading config backup, restore, IP settings, fixed trigger function samples, improved some label texts, other small bugfixes.


1.0.2.2
released 2019-05-06

First production release of P44-LC-DE firmware

Show beta releases