2.8.0.9 (testing) released 2024-10-03 |
Firmware 2.8.0.9
This Beta "testing" Firmware 2.8.0.9 for P44-DSB devices is the "golden master" for and thus identical to production firmware 2.8.0.
This release contains some new features and improvements over the previous 2.7.0 firmware release, while remaining fully compatible with the previous version. It is recommened to upgrade to this version even in case the new features are not needed, as this version also fixes some bugs and is easier to support in case of problems.
General Recommendation for updates: before updating, please always use the "Download configuration backup" button to download a backup of your device's configuration.
Most important changes since production version 2.7.0 and Beta-Version 2.7.0.46, resp.
New Features
- matter bridge (beta): Now based on matter 1.3 (vs 1.2 in previous versions).
- matter bridge (beta): New Digital Strom "bridging" device types:
- scene responder: maps calls to a on and and an off scene to a virtual contact sensor in matter. This allows using matter capable SmartHome systems to respond to DS scenes. For example, a "movie" scene that prepares DS shades and light for movie watching in DS, may now also trigger a automation for starting the media player. The scene responder resets the contact sensor either when detecting another specific scene, any scene, scene undo or automatically after 5 seconds (configurable).
- scene caller: calls a specific scene in DS when the virtual ON/OFF in matter is set to ON, and optionally, sends another scene, or undoes the previous scene when set to OFF.
- p44script IDE: can now edit auxiliary files such as user web pages, config files etc (when configured).
- p44script: added
sign() function which returns the sign from a number as -1,1 or 0.
- scripted/external devices: can now create output channels with custom min/max/resolution outputs for special custom hardware.
- p44script: basic support for script include files. Note: this is a power scripting user feature that may help in complex setups.
Improvements
- Lights: now have a adjustable gamma (
x-p44-gamma property) which can be used for example to correct DALI drivers with incorrect dimming curve.
- p44script IDE: log output is now colored and can be dynamically shown shortened/expanded.
- p44script: add
uid (dSUID) and logleveloffset() in device context scripts.
- IPv6: improved overall support for IPv6 connections.
Bugfixes
- factory reset: fixed bug that caused in some rare cases (more likely when factory reset was started using the device button rather than the WebUI) could lead to device starting up with a wrong model type, and needed remote service access to make it work normally again.
- matter bridge: fixed pushbuttons, which were not correctly bridged, missing name and other meta data. This made them to be hard to find and operate in UIs, depending on the matter controller.
- matter bridge: fixed mapping of binary input devices to suitable matter devices. Before, most boolean state devices appeared as occupancy sensors, even if the DS/P44-side had a different type set.
- p44script:
find() now actually accepts fourth argument for case insensitive comparison as was documented already.
- p44script: fixed regression with
vdcapi() did always raise error when calling a notification.
- p44script: bugfix: in
if statements, no spaces were allowed between condition expression and the closing bracket, so if(a==b) did work, but if (a==b ) did not.
|
2.8.0.7 (testing) released 2024-09-18 |
Firmware 2.8.0.7
Beta Test Version with general improvements.
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 2.8.0.6
- matter (beta): the p44bmbrd matter bridge is now based on matter 1.3 (vs 1.2 in previous versions).
- Web-UI: minor bug fixes.
- Remote access: fix occasional crash in pagekite that could prevent remote access working, more likely on RPi3,4 than older, slower models.
Changes since 2.8.0.5
- p44script: script includes: bugfix - the include files were stored in a way that did not include them in config backups, which of course must be the case.
Changes since 2.8.0.4
- matter bridge (beta): when bridging a output device with a default channel with a output value range different from standard 0..100%, the actual range will now be mapped onto the 0..100% range in matter. This makes even non-standard output ranges fully accessible through matter LevelControl and WindowCovering.
- custom devices outputs: fixed bug that made them have no "scenes" property any more (scene call/save still worked, but detailed scene settings did not)
- proxy/bridge status: make sure status column in device list is current without the need to open the "Matter bridge (beta...)" dialog first.
- p44script ide: re-activates debugger (after it may have been paused by the browser due to being in a hidden tab or window) more often, in particular whenever any of the log display buttons is used.
- p44script ide: fix log output that had unnecessary blank lines occasionally.
- p44script: script includes now feature complete: supports setting breakpoints in includes, aborts (and optionally re-starts) scripts depending on an include that gets modfied.
Changes since 2.8.0.3
- matter bridge (beta): "bridging" devices can now be created with a group/color assigned from start, and can also without immediate activation into matter. Both can help with smarthome systems which are hard to convince that a device can change its functionality (e.g. from a light dimmer to a window covering shadow device).
- p44script: add
sign() function.
- p44script: bugfix: in
if statements, no spaces were allowed between condition expression and the closing bracket, so if(a==b) did work, but if (a==b ) did not.
- scripted/external devices: can now create output channels with custom min/max/resolution outputs for special custom hardware.
- output channel progress tracking improved - relevant mainly for matter bridge .
- p44script: preliminary: initial support for script includes, not yet feature complete (e.g. no breakpoints in includes at this time).
Changes since 2.7.0.46
New Features
- matter bridge (beta): New Digital Strom "bridging" devices:
- scene responder: maps calls to a on and and an off scene to a virtual contact sensor in matter. This allows using matter capable SmartHome systems to respond to DS scenes. For example, a "movie" scene that prepares DS shades and light for movie watching in DS, may now also trigger a automation for starting the media player. The scene responder resets the contact sensor either when detecting another specific scene, any scene, scene undo or automatically after 5 seconds (configurable).
- scene caller: calls a specific scene in DS when the virtual ON/OFF in matter is set to ON, and optionally, sends another scene, or undoes the previous scene when set to OFF.
- IDE: can now edit auxiliary files such as user web pages, config files etc (when configured).
Improvements
- IDE: log output is now colored and can be dynamically shown shortened/expanded.
- Lights: now have a adjustable gamma (
x-p44-gamma property) which can be used for example to correct DALI drivers with incorrect dimming curve.
- p44script: add
uid (dSUID) and logleveloffset() in device context scripts.
- improved overall support for IPv6 connections.
- improved output channel reporting for devices where outputs can be changed externally.
Bugfixes:
- matter bridge: fixed pushbuttons, which were not correctly bridged, missing name and other meta data. This made them to be hard to find and operate in UIs, depending on the matter controller.
- matter bridge: fixed mapping of binary input devices to suitable matter devices. Before, most boolean state devices appeared as occupancy sensors, even if the DS/P44-side had a different type set.
- p44script: fixed regression with
vdcapi() did always raise error when calling a notification.
|
2.8.0.6 (testing) released 2024-09-05 |
Firmware 2.8.0.6
Beta Test Version with general improvements.
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 2.8.0.5
- p44script: script includes: bugfix - the include files were stored in a way that did not include them in config backups, which of course must be the case.
Changes since 2.8.0.4
- matter bridge (beta): when bridging a output device with a default channel with a output value range different from standard 0..100%, the actual range will now be mapped onto the 0..100% range in matter. This makes even non-standard output ranges fully accessible through matter LevelControl and WindowCovering.
- custom devices outputs: fixed bug that made them have no "scenes" property any more (scene call/save still worked, but detailed scene settings did not)
- proxy/bridge status: make sure status column in device list is current without the need to open the "Matter bridge (beta...)" dialog first.
- p44script ide: re-activates debugger (after it may have been paused by the browser due to being in a hidden tab or window) more often, in particular whenever any of the log display buttons is used.
- p44script ide: fix log output that had unnecessary blank lines occasionally.
- p44script: script includes now feature complete: supports setting breakpoints in includes, aborts (and optionally re-starts) scripts depending on an include that gets modfied.
Changes since 2.8.0.3
- matter bridge (beta): "bridging" devices can now be created with a group/color assigned from start, and can also without immediate activation into matter. Both can help with smarthome systems which are hard to convince that a device can change its functionality (e.g. from a light dimmer to a window covering shadow device).
- p44script: add
sign() function.
- p44script: bugfix: in
if statements, no spaces were allowed between condition expression and the closing bracket, so if(a==b) did work, but if (a==b ) did not.
- scripted/external devices: can now create output channels with custom min/max/resolution outputs for special custom hardware.
- output channel progress tracking improved - relevant mainly for matter bridge .
- p44script: preliminary: initial support for script includes, not yet feature complete (e.g. no breakpoints in includes at this time).
Changes since 2.7.0.46
New Features
- matter bridge (beta): New Digital Strom "bridging" devices:
- scene responder: maps calls to a on and and an off scene to a virtual contact sensor in matter. This allows using matter capable SmartHome systems to respond to DS scenes. For example, a "movie" scene that prepares DS shades and light for movie watching in DS, may now also trigger a automation for starting the media player. The scene responder resets the contact sensor either when detecting another specific scene, any scene, scene undo or automatically after 5 seconds (configurable).
- scene caller: calls a specific scene in DS when the virtual ON/OFF in matter is set to ON, and optionally, sends another scene, or undoes the previous scene when set to OFF.
- IDE: can now edit auxiliary files such as user web pages, config files etc (when configured).
Improvements
- IDE: log output is now colored and can be dynamically shown shortened/expanded.
- Lights: now have a adjustable gamma (
x-p44-gamma property) which can be used for example to correct DALI drivers with incorrect dimming curve.
- p44script: add
uid (dSUID) and logleveloffset() in device context scripts.
- improved overall support for IPv6 connections.
- improved output channel reporting for devices where outputs can be changed externally.
Bugfixes:
- matter bridge: fixed pushbuttons, which were not correctly bridged, missing name and other meta data. This made them to be hard to find and operate in UIs, depending on the matter controller.
- matter bridge: fixed mapping of binary input devices to suitable matter devices. Before, most boolean state devices appeared as occupancy sensors, even if the DS/P44-side had a different type set.
- p44script: fixed regression with
vdcapi() did always raise error when calling a notification.
|
2.8.0.3 (testing) released 2024-08-02 |
Firmware 2.8.0.3
Beta Test Version with general improvements.
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 2.7.0.46
New Features
- matter bridge (beta): New Digital Strom "bridging" devices:
- scene responder: maps calls to a on and and an off scene to a virtual contact sensor in matter. This allows using matter capable SmartHome systems to respond to DS scenes. For example, a "movie" scene that prepares DS shades and light for movie watching in DS, may now also trigger a automation for starting the media player. The scene responder resets the contact sensor either when detecting another specific scene, any scene, scene undo or automatically after 5 seconds (configurable).
- scene caller: calls a specific scene in DS when the virtual ON/OFF in matter is set to on, and optionally, sends another scene, or undoes the previous scene when set to off.
- IDE: can now edit auxiliary files such as user web pages, config files etc (when configured).
Improvements
- IDE: log output is now colored and can be dynamically shortened/expanded
- Lights: now have a adjustable gamma (
x-p44-gamma property) which can be used for example to correct DALI drivers with incorrect dimming curve.
- p44script: add
uid (dSUID) and logleveloffset() in device context scripts
- improved overall support for IPv6 connections
- improved output channel reporting for devices where outputs can be changed externally.
Bugfixes:
- matter bridge: fixed pushbuttons, which were not correctly bridged, missing name and other meta data. This made them to be hard to find and operate in UIs, depending on the matter controller.
- matter bridge: fixed mapping of binary input devices to suitable matter devices. Before, most boolean state devices appeared as occupancy sensors, even if the DS/P44-side had a different type set.
- p44script: fixed regression with
vdcapi() did always raise error when calling a notification.
|
2.7.0.46 (testing) released 2024-05-06 |
Firmware 2.7.0.46
This Beta "testing" Firmware 2.7.0.46 for P44-DSB devices is the "golden master" for and thus identical to production firmware 2.7.0.
This release contains substantial new features and improvements over the previous 2.6.x firmware releases, while remaining fully compatible with the previous version. It is recommened to upgrade to this version even in case the new features are not needed, as this version also fixes some bugs and is easier to support in case of problems.
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 2.7.0.44
- DALI: Added workaround for DALI devices which sometimes loose their short address, to avoid ID changes when this happens.
Changes since 2.7.0.43
- Custom/Scripted devices: now can set operational state (
opstate )as level (0..100) and as short text to report conditions like "no connection" or "low battery".
- Evaluators: fixed bug that could cause endless evaluation of the evaluator conditions.
- p44script: stopping scripts with the stop button in the IDE now also stops all non-global handlers.
- p44script: fix bug/crash in global handlers
- IDE/LED-Sim: improved console/status clear (Cmd-K): current line is kept below new prompt, only second clear will delete it, too.
Changes since 2.7.0.42
- p44script: bugfixes in
for (did not tolerate whitespace in every place) and default for global variables.
- IDE: added log line shortening option - useful when mainly looking at script
log() output.
- IDE: improved color contrast for error and current execution position highlights
Changes since production version 2.6.9 and Beta-Version 2.6.8.0, resp.
matter support (beta)
matter is a new SmartHome standard that allows interoperability between different Smarthome ecosystems. A matter enabled device, like your P44-DSB can be commissioned at the same time for example into Apple Home, SmartThings and Home Assistant, using each system's best features, such as voice assistants, to interact with the P44-DSB devices.
Starting with 2.7.0.46, the matter 1.2 (beta) functionality can be enabled as an option in your P44-DSB device. To get more information about P44 devices and matter, please visit plan44.ch/matter.
matter is a milestone for the smarthome, especially for the electrical installation industry - because matter is to the smarthome what the power socket was to electrification 100 years ago - a standard that allows the building-side infrastructure to be easily connected to (and disconnected from) the user-side devices.
plan44 is working to reach certification for the matter bridge component in the P44-DSB and P44-LC devices as soon as possible - until then the matter functionality remains a beta feature.
Although Digital Strom is not yet embracing matter, your P44-DSB can provide special virtual "bridging" devices for mirroring basic room state into matter (including native dS devices). Here you can find information on how to use matter beta on your P44-DSB.
p44script IDE: integrated development environment
For quite some time, P44-DSB devices allow extensive custom functionality through the p44script language, be it triggering actions in response to evaluator results, or integrating hardware via "scripted devices" or even running a custom "mainscript".
Now with firmware 2.7, working with scripts gets much simpler thanks to the fully integrated IDE, which allows comfortable script editing and interactive script debugging:
- easily browse and edit all scripts in the system with a modern source editor with tabs, syntax coloring and autocomplete.
- debug with breakpoints and single stepping.
- inspect variables of any script or test statements using the integrated debug console.
- playground for testing more complex script snippets
- the integrated live log view shows the activity of your P44.
See p44script IDE documentation for more information.
Other new features
- You can now disable or enable receiving public beta firmware for your P44-DSB device using the new button labelled "Beta..." besides the "Check for new firmware version...".
- Enocean: Support for D2-07-00 door lock status profile.
- EnOcean: Support for D2-14-40 Temperature/Humidity/Illumination Sensor.
- hue: Workaround for non-hue-certified, but widely deployed TS0505B light controller which does only understand CIExy color settings, not hue/saturation.
- custom devices: Allow URN-formatted
uniqueid specification in init message for devices which have a native and globally unique hardware ID of some kind, so this information can be shown in the device list and propagated to Digital Strom.
- MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of affordable input devices in automation projects, or coordinate lighting with multimedia shows.
General Improvements
- platform: P44-DSB is now based on OpenWrt 22.03
- logging: Now uses colored symbol markers for loglevel differentiation
p44script engine improvements
- Now supports JS-style object and array construction - field names do not need to be quoted strings (but still may), values can be any p44script expressions.
- array elements can now be appended using the
arr[] = newElem construct.
- removed confusing separation between "declaration" and "script" part.
- added compound assignment operators (+=, -=, *=, etc) and increment and decrement postfix operators (++ and --).
- added
for (init; condition; next) { ... } loop construct
webrequest(endpoint) now allows creating multiple, independent script API endpoints - this eliminates the need for a common webrequest handler in mainscript for scripted devices which need to expose a per-device API.
concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
- p44script functions for accessing serial ports.
on (eventsource()) stable n { … } can now limit the event rate from eventsource to a minimal interval as specified by n.
See p44script short reference and p44script overview for more information.
SmartLEDs (WS28xx, "Neopixels")
When working with SmartLEDs - individually addressable RGB(W) leds - on the P44-DSB/LC-TORCH, P44-LC-X, P44-DSB-X or one of the automation controllers for special applications P44-AC,LC,MC, the integrated LED simulator is a very useful new tool to
- see what is happening on the LED output
- inspect all views in the view hierachy
- examine all view properties
- allow changing view configuration / set properties live
See LEDsim documentation for more information.
New features in the p44script SmartLED Graphics Subsystem
- all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision.
- all view properties are now directly accessible as fields on the view object.
- textview now has support for different fonts from ultratiny
3x3 to larger 6x11 - with new bolden and stretch style variants.
- When creating new SmartLED based lights, these can be set to automatic sizing instead of specifying the area in pixels. The actual size will then be adjusted to the size of the rootview (usually the entire area covered by LEDs). Also, the "unqiue ID" field can be left empty to have a unique ID generated automatically.
Bugfixes
- p44script: fix bug in
httprequest() when using JSON request definition with user and password field for http auth (did not work, but using server@user:password URL syntax always did).
- p44features: fixed bug in resource access path handling that prevented e.g. indicators to load view configs stored in the default indicator resources dir.
- animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
- p44script: Fix bug that caused
every() trigger fire not as precise (up to 1 sec late) as it could be.
|
2.7.0.44 (testing) released 2024-04-15 |
Firmware 2.7.0.44
This Beta "testing" Firmware 2.7.0.44 for P44-DSB devices is a release candidate for the upcoming production firmware 2.7.0. In case no problems are reported with this version, it will soon be released as 2.7.0
This release contains substantial new features and improvements over the previous 2.6.x firmware releases, while remaining fully compatible with the previous version. It is recommened to upgrade to this version even in case the new features are not needed, as this version also fixes some bugs and is easier to support in case of problems.
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 2.7.0.43
- Custom/Scripted devices: now can set operational state (
opstate )as level (0..100) and as short text to report conditions like "no connection" or "low battery".
- Evaluators: fixed bug that could cause endless evaluation of the evaluator conditions.
- p44script: stopping scripts with the stop button in the IDE now also stops all non-global handlers.
- p44script: fix bug/crash in global handlers
- IDE/LED-Sim: improved console/status clear (Cmd-K): current line is kept below new prompt, only second clear will delete it, too.
Changes since 2.7.0.42
- p44script: bugfixes in
for (did not tolerate whitespace in every place) and default for global variables.
- IDE: added log line shortening option - useful when mainly looking at script
log() output.
- IDE: improved color contrast for error and current execution position highlights
Changes since production version 2.6.9 and Beta-Version 2.6.8.0, resp.
matter support (beta)
matter is a new SmartHome standard that allows interoperability between different Smarthome ecosystems. A matter enabled device, like your P44-DSB can be commissioned at the same time for example into Apple Home, SmartThings and Home Assistant, using each system's best features, such as voice assistants, to interact with the P44-DSB devices.
Starting with 2.7.0.44, the matter 1.2 (beta) functionality can be enabled as an option in your P44-DSB device. To get more information about P44 devices and matter, please visit plan44.ch/matter.
matter is a milestone for the smarthome, especially for the electrical installation industry - because matter is to the smarthome what the power socket was to electrification 100 years ago - a standard that allows the building-side infrastructure to be easily connected to (and disconnected from) the user-side devices.
plan44 is working to reach certification for the matter bridge component in the P44-DSB and P44-LC devices as soon as possible - until then the matter functionality remains a beta feature.
Although Digital Strom is not yet embracing matter, your P44-DSB can provide special virtual "bridging" devices for mirroring basic room state into matter (including native dS devices). Here you can find information on how to use matter beta on your P44-DSB.
p44script IDE: integrated development environment
For quite some time, P44-DSB devices allow extensive custom functionality through the p44script language, be it triggering actions in response to evaluator results, or integrating hardware via "scripted devices" or even running a custom "mainscript".
Now with firmware 2.7, working with scripts gets much simpler thanks to the fully integrated IDE, which allows comfortable script editing and interactive script debugging:
- easily browse and edit all scripts in the system with a modern source editor with tabs, syntax coloring and autocomplete.
- debug with breakpoints and single stepping.
- inspect variables of any script or test statements using the integrated debug console.
- playground for testing more complex script snippets
- the integrated live log view shows the activity of your P44.
See p44script IDE documentation for more information.
Other new features
- You can now disable or enable receiving public beta firmware for your P44-DSB device using the new button labelled "Beta..." besides the "Check for new firmware version...".
- Enocean: Support for D2-07-00 door lock status profile.
- EnOcean: Support for D2-14-40 Temperature/Humidity/Illumination Sensor.
- hue: Workaround for non-hue-certified, but widely deployed TS0505B light controller which does only understand CIExy color settings, not hue/saturation.
- custom devices: Allow URN-formatted
uniqueid specification in init message for devices which have a native and globally unique hardware ID of some kind, so this information can be shown in the device list and propagated to Digital Strom.
- MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of affordable input devices in automation projects, or coordinate lighting with multimedia shows.
General Improvements
- platform: P44-DSB is now based on OpenWrt 22.03
- logging: Now uses colored symbol markers for loglevel differentiation
p44script engine improvements
- Now supports JS-style object and array construction - field names do not need to be quoted strings (but still may), values can be any p44script expressions.
- array elements can now be appended using the
arr[] = newElem construct.
- removed confusing separation between "declaration" and "script" part.
- added compound assignment operators (+=, -=, *=, etc) and inrement and decrement postfix operators (++ and --).
- added
for (init; condition; next) { ... } loop construct
webrequest(endpoint) now allows creating multiple, independent script API endpoints - this eliminates the need for a common webrequest handler in mainscript for scripted devices which need to expose a per-device API.
concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
- p44script functions for accessing serial ports.
on (eventsource()) stable n { … } can now limit the event rate from eventsource to a minimal interval as specified by n.
See p44script short reference and p44script overview for more information.
SmartLEDs (WS28xx, "Neopixels")
When working with SmartLEDs - individually addressable RGB(W) leds - on the P44-DSB/LC-TORCH, P44-LC-X, P44-DSB-X or one of the automation controllers for special applications P44-AC,LC,MC, the integrated LED simulator is a very useful new tool to
- see what is happening on the LED output
- inspect all views in the view hierachy
- examine all view properties
- allow changing view configuration / set properties live
See LEDsim documentation for more information.
New features in the p44script SmartLED Graphics Subsystem
- all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision.
- all view properties are now directly accessible as fields on the view object.
- textview now has support for different fonts from ultratiny
3x3 to larger 6x11 - with new bolden and stretch style variants.
- When creating new SmartLED based lights, these can be set to automatic sizing instead of specifying the area in pixels. The actual size will then be adjusted to the size of the rootview (usually the entire area covered by LEDs). Also, the "unqiue ID" field can be left empty to have a unique ID generated automatically.
Bugfixes
- p44script: fix bug in
httprequest() when using JSON request definition with user and password field for http auth (did not work, but using server@user:password URL syntax always did).
- p44features: fixed bug in resource access path handling that prevented e.g. indicators to load view configs stored in the default indicator resources dir.
- animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
- p44script: Fix bug that caused
every() trigger fire not as precise (up to 1 sec late) as it could be.
|
2.7.0.42 (testing) released 2024-03-26 |
Firmware 2.7.0.42
This Beta "testing" Firmware 2.7.0.42 for P44-DSB devices is a release candidate for the upcoming production firmware 2.7.0. In case no problems are reported with this version, it will soon be released as 2.7.0
This release contains substantial new features and improvements over the previous 2.6.x firmware releases, while remaining fully compatible with the previous version. It is recommened to upgrade to this version even in case the new features are not needed, as this version also fixes some bugs and is easier to support in case of problems.
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 2.6.9 and Beta-Version 2.6.8.0, resp.
matter support (beta)
matter is a new SmartHome standard that allows interoperability between different Smarthome ecosystems. A matter enabled device, like your P44-DSB can be commissioned at the same time for example into Apple Home, SmartThings and Home Assistant, using each system's best features, such as voice assistants, to interact with the P44-DSB devices.
Starting with 2.7.0.42, the matter 1.2 (beta) functionality can be enabled as an option in your P44-DSB device. To get more information about P44 devices and matter, please visit plan44.ch/matter.
matter is a milestone for the smarthome, especially for the electrical installation industry - because matter is to the smarthome what the power socket was to electrification 100 years ago - a standard that allows the building-side infrastructure to be easily connected to (and disconnected from) the user-side devices.
plan44 is working to reach certification for the matter bridge component in the P44-DSB and P44-LC devices as soon as possible - until then the matter functionality remains a beta feature.
Although Digital Strom is not yet embracing matter, your P44-DSB can provide special virtual "bridging" devices for mirroring basic room state into matter (including native dS devices). Here you can find information on how to use matter beta on your P44-DSB.
p44script IDE: integrated development environment
For quite some time, P44-DSB devices allow extensive custom functionality through the p44script language, be it triggering actions in response to evaluator results, or integrating hardware via "scripted devices" or even running a custom "mainscript".
Now with firmware 2.7, working with scripts gets much simpler thanks to the fully integrated IDE, which allows comfortable script editing interactive script debugging:
- easily browse and edit all scripts in the system with a modern source editor with tabs, syntax coloring and autocomplete.
- debug with breakpoints and single stepping.
- inspect variables of any script or test statements using the integrated debug console.
- playground for testing more complex script snippets
- the integrated live log view shows the activity of your P44.
See p44script IDE documentation for more information.
Other new features
- You can now disable or enable receiving public beta firmware for your P44-DSB device using the new button labelled "Beta..." besides the "Check for new firmware version...".
- Enocean: Support for D2-07-00 door lock status profile.
- EnOcean: Support for D2-14-40 Temperature/Humidity/Illumination Sensor.
- hue: Workaround for non-hue-certified, but widely deployed TS0505B light controller which does only understand CIExy color settings, not hue/saturation.
- custom devices: Allow URN-formatted
uniqueid specification in init message for devices which have a native and globally unique hardware ID of some kind, so this information can be shown in the device list and propagated to Digital Strom.
- MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of affordable input devices in automation projects, or coordinate lighting with multimedia shows.
General Improvements
- platform: P44-DSB is now based on OpenWrt 22.03
- logging: Now uses colored symbol markers for loglevel differentiation
p44script engine improvements
- Now supports JS-style object and array construction - field names do not need to be quoted strings (but still may), values can be any p44script expressions.
- array elements can now be appended using the
arr[] = newElem construct.
- removed confusing separation between "declaration" and "script" part.
- added compound assignment operators (+=, -=, *=, etc) and inrement and decrement postfix operators (++ and --).
- added
for (init; condition; next) { ... } loop construct
webrequest(endpoint) now allows creating multiple, independent script API endpoints - this eliminates the need for a common webrequest handler in mainscript for scripted devices which need to expose a per-device API.
concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
- p44script functions for accessing serial ports.
on (eventsource()) stable n { … } can now limit the event rate from eventsource to a minimal interval as specified by n.
See p44script short reference and p44script overview for more information.
SmartLEDs (WS28xx, "Neopixels")
When working with SmartLEDs - individually addressable RGB(W) leds - on the P44-DSB/LC-TORCH, P44-LC-X, P44-DSB-X or one of the automation controllers for special applications P44-AC,LC,MC, the integrated LED simulator is a very useful new tool to
- see what is happening on the LED output
- inspect all views in the view hierachy
- examine all view properties
- allow changing view configuration / set properties live
See LEDsim documentation for more information.
New features in the p44script SmartLED Graphics Subsystem
- all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision.
- all view properties are now directly accessible as fields on the view object.
- textview now has support for different fonts from ultratiny
3x3 to larger 6x11 - with new bolden and stretch style variants.
- When creating new SmartLED based lights, these can be set to automatic sizing instead of specifying the area in pixels. The actual size will then be adjusted to the size of the rootview (usually the entire area covered by LEDs). Also, the "unqiue ID" field can be left empty to have a unique ID generated automatically.
Bugfixes
- p44script: fix bug in
httprequest() when using JSON request definition with user and password field for http auth (did not work, but using server@user:password URL syntax always did).
- p44features: fixed bug in resource access path handling that prevented e.g. indicators to load view configs stored in the default indicator resources dir.
- animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
- p44script: Fix bug that caused
every() trigger fire not as precise (up to 1 sec late) as it could be.
|
2.6.8.0 (testing) released 2023-06-06 |
Firmware 2.6.8.0
This Beta "testing" Firmware 2.6.8.0 for P44-DSB devices is the "golden master" for and thus identical to production firmware 2.6.8. It contains some general improvements and bug fixes.
Note that this update is always needed as an intermediary step to firmware 2.7.0.x and beyond. So, please check for new firmware again after installing this version, there might be a newer firmware already.
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 2.6.6 and Beta-Version 2.6.7.0 testing, resp.
Bugfixes
- local click handling: local click handling acts as a fallback when no connection to dSS exists, and makes all lights respond to light buttons. Fixed a bug that also made lights respond to non-light buttons in this case.
- Animators: fixed bug that caused spurious glitches (animators seemingly not running or running too fast)
- upgrading: ready for upgrading to 2.7.0.x and beyond. Installing 2.6.8.0 is required as an intermediate step in all cases. Please check for updates again after installing.
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.
|
2.6.7.0 (testing) released 2022-11-14 |
Firmware 2.6.7.0
This is a beta testing firmware. Beta firmwares are released more often than release versions, and occasionally might have yet undetected bugs. However, beta firmware gets tested at plan44.ch the same way as release firmware, so the risk for severe problems is very low.
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 2.6.6.3 / 2.6.6
- backups: P44-DSB backups are gzipped tar files and therefore had the
.tgz file extension. Unfortunatly, some browsers automatically expand .tgz , which is not helpful. So backups now have .p44cfg extension to avoid auto-expansion (the file format is still .tgz - for those who want to look into a backup).
- p44script: better handling of fatal errors in general and in scripted device implementations in particular (no more attempts to re-run implementations scripts with fatal errors).
|
2.6.6.3 (testing) released 2022-11-11 |
Firmware 2.6.6.3
This Beta "testing" Firmware 2.6.6.3 for P44-DSB devices is the "golden master" for and thus identical to production firmware 2.6.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.
Improvements since production version 2.6.5 and Beta-Version 2.6.5.11 testing, resp.
Bugfixes
- evaluators: fixed problem with between_dates() which caused too many evaluations on the last day of the date range and possibly slowed down the device for that day.
- p44script: fixed problem with event distribution when assigning signal() results to variables
- Tunable Whites: Some tunable white lights still showed an icon indicating full RGB color light. Now the correct WW/CW-Icon is shown.
Improvements
- evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings.
- matter: More internal preparation to provide matter bridge functionality for the P44-DSB with a future firmware update. A beta version is already available, see details here.
|
2.6.6.1 (testing) released 2022-10-17 |
Changes since 2.6.5.11 / 2.6.5
- evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
- evaluators: fixed problem with between_dates() which caused too many evaluations on the last day of the date range and possibly slowed down the device for that day.
- p44script: fixed problem with event distribution when assigning signal() results to variables
|
2.6.6.0 (testing) released 2022-10-17 |
Changes since 2.6.5.11 / 2.6.5
- evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
- evaluators: fixed problem with between_dates() which caused too many evaluations on the last day of the date range and possibly slowed down the device for that day.
- p44script: fixed problem with event distribution when assigning signal() results to variables
|
2.6.5.11 (testing) released 2022-09-06 |
This Beta "testing" Firmware 2.6.5.11 for P44-DSB devices is the "golden master" for and thus identical to production firmware 2.6.5. 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 2.6.4 and Beta-Version 2.6.4.0 testing, resp.
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 no longer be found in the network by dSS and not appear in Bonjour or Avahi network browsers. Now long names are automatically shortened to prevent this.
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).
|
2.6.5.10 (testing) released 2022-09-02 |
First release candiate for 2.6.5 production release
Changes since 2.6.5.9
- p44script: added dnssdbrowse() to find devices in local network.
Changes since 2.6.5.7
- Bugfix: assigning a very long name for the vdchost could cause dns-sd not being able to publish the IP address on the network and thus device not getting found by the dSS and not appearing in Bonjour or Avahi network browsers such as LocalSites for macOS. Now long names are shortened before pusblishing via dns-sd.
- Internal/Developer: added brigdeAPI, allowing bridge apps to access devices and get notifications for device events.
- external device API: buttons now can directly report clicks and longpress (when the button implementation wants to use its own click detection).
- p44script: added replace() for find-and-replace in strings.
|
2.6.5.9 (testing) released 2022-08-19 |
Changes since 2.6.5.7
- Bugfix: assigning a very long name for the vdchost could cause dns-sd not being able to publish the IP address on the network and thus device not getting found by the dSS and not appearing in "Bonjour" or "Avahi" network browsers such as "LocalSites". Now long names are shortened before pusblishing via dns-sd.
- Internal/Developer: added brigdeAPI, allowing bridge apps to access devices and get notifications for device events.
- New "Feature" keyevents: this feature allows getting events from pressing and releasing keys from a linux /dev/input/xx device.
Changes since 2.6.5.4
- Evaluators: fix bug introduced in 2.6.5.4 which could cause holdoff delays (settling time) of conditions to get skipped.
- web UI: clarified title/hint for buttons and dialogs showing binary inputs and sensor values.
- p44script: real boolean values that actually resolve to true and false in JSON context (rather than 0 and 1 as before), enhanced httprequest() with formdata and withmeta options and treating http status codes 200..203 all as ok (not just 200 as before).
|
2.6.5.7 (testing) released 2022-07-08 |
Changes since 2.6.5.4
- Evaluators: fix bug introduced in 2.6.5.4 which could cause holdoff delays (settling time) of conditions to get skipped.
- web UI: clarified title/hint for buttons and dialogs showing binary inputs and sensor values.
- p44script: real boolean values that actually resolve to true and false in JSON context (rather than 0 and 1 as before), enhanced httprequest() with formdata and withmeta options and treating http status codes 200..203 all as ok (not just 200 as before).
|
2.6.5.4 (testing) released 2022-05-19 |
Changes since 2.6.4.0
- Evaluators: better logging helping to understand evaluator processing, sensible handling of overlapping on and off conditions.
- web UI: support for tap&hold for mobile device browsers as an alterative to Command/Ctrl-Clicks (e.g. for scene editing)
- scene editing: when opening the channels dialog for a output device with tap&hold or shift key pressed (sprocket button), additional scene call/save/edit controls appear. Now, when choosing a scene, an additional checkbox appears for each channel to enable/disable a channel for a scene. This allows configuring scenes that only affect some channels (e.g. a scene that only changes color, but not brightness).
- transitions: improved timing accuray, independent transitions can now run in different channels simultaneously with different speeds.
- p44script: add delayuntil() function for awaiting a absolute point in time (useful for making sure a longer chain of timed actions does not drift due to execution time between delay() calls adding up). Enhanced epochtime() to allow converting from wall clock time. output.stopactions() now stops ongoing transitions as well (if hardware allows), not only scene scripts/effects. New bit(), setbit() and flipbit() functions for easy bit manipulation. New lowercase() and uppercase() functions and caseinsensitive option for find().
Changes since 2.6.3.8
- hue: hue bridges are now discovered via DNS-SD (Bonjour/mDNS/ZeroConf) as Philips/Signify announced that SSDP/UPnP discovery will be disabled in a upcoming hue bridge firmware update (new square bridges only, old round bridges still need SSDP and are still supported).
|
2.6.5.3 (testing) released 2022-05-06 |
Changes since 2.6.4.0
- web UI: support for tap&hold for mobile device browsers as an alterative to Command/Ctrl-Clicks (e.g. for scene editing)
- scene editing: when opening the channels dialog for a output device with tap&hold or shift key pressed (sprocket button), additional scene call/save/edit controls appear. Now, when choosing a scene, an additional checkbox appears for each channel to enable/disable a channel for a scene. This allows configuring scenes that only affect some channels (e.g. a scene that only changes color, but not brightness).
- transitions: improved timing accuray, independent transitions can now run in different channels simultaneously with different speeds.
- p44script: add delayuntil() function for awaiting a absolute point in time (useful for making sure a longer chain of timed actions does not drift due to execution time between delay() calls adding up). Enhanced epochtime() to allow converting from wall clock time. output.stopactions() now stops ongoing transitions as well (if hardware allows), not only scene scripts/effects. New bit(), setbit() and flipbit() functions for easy bit manipulation. New lowercase() and uppercase() functions and caseinsensitive option for find().
Changes since 2.6.3.8
- hue: hue bridges are now discovered via DNS-SD (Bonjour/mDNS/ZeroConf) as Philips/Signify announced that SSDP/UPnP discovery will be disabled in a upcoming hue bridge firmware update (new square bridges only, old round bridges still need SSDP and are still supported).
|
2.6.4.0 (testing) released 2022-03-17 |
Please note: this is an important technical upgrade needed to ensure compatibility with an upcoming hue bridge release, which will change the way how hue bridges are found in the local network (LAN).
The change should be completely transparent to you as a user of the P44 device, which means that you should see absolutely nothing changing regarding hue, and everything working as before. However, as the introduction of DNS-SD into hue is a significant internal change, this beta version is to make sure everthing works as intended. So if you see problems with hue after installing 2.6.4.0, please let me know.
Changes since 2.6.3.8
- hue: hue bridges are now discovered via DNS-SD (Bonjour/mDNS/ZeroConf) as Philips/Signify announced that SSDP/UPnP discovery will be disabled in a upcoming hue bridge firmware update (new square bridges only, old round bridges still need SSDP and are still supported).
|
2.6.3.8 (testing) released 2022-03-08 |
Changes since 2.6.3.5
- shadow devices: should now get proper UI in digitalSTROM (added resp. modelfeatures)
- p44script: restartapp() now can optionally also reboot, shutdown or start a firmware upgrade.
- transition time: fix 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.
- p44script: fixed inconsistencies in member access, for example assigning variables via globalvars()['name'] = xx.
Changes since 2.6.3.3
- p44script: fix crash that could happen when run time error occurred within nested function calls.
- 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.
- p44script: 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.
- p44script: new functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
Changes since 2.6.3.2
- logging: better error display showing not only numeric error code, but also name text.
- p44script: new functions isok(), ifok() to catch errors for example when accessing data fields, strrep() for creating string with repeating patterns.
- p44script: signal() now can send data, which allows using it as a "pipe" to transmit information between different script contexts and threads.
- p44script: 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".
- p44script internal: the event passing mechanism (on which on(..) {...} is based on) has been significantly improved and generalized. This also fixes a few edge cases that could cause inconsistencies with events in too rapid succession.
|
2.6.3.5 (testing) released 2022-01-31 |
Changes since 2.6.3.3
- p44script: fix crash that could happen when run time error occurred within nested function calls.
- 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.
- p44script: 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.
- p44script: new functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
Changes since 2.6.3.2
- logging: better error display showing not only numeric error code, but also name text.
- p44script: new functions isok(), ifok() to catch errors for example when accessing data fields, strrep() for creating string with repeating patterns.
- p44script: signal() now can send data, which allows using it as a "pipe" to transmit information between different script contexts and threads.
- p44script: 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".
- p44script internal: the event passing mechanism (on which on(..) {...} is based on) has been significantly improved and generalized. This also fixes a few edge cases that could cause inconsistencies with events in too rapid succession.
|
2.6.3.3 (testing) released 2022-01-28 |
Changes since 2.6.3.2
- logging: better error display showing not only numeric error code, but also name text.
- p44script: new functions isok(), ifok() to catch errors for example when accessing data fields, strrep() for creating string with repeating patterns.
- p44script: signal() now can send data, which allows using it as a "pipe" to transmit information between different script contexts and threads.
- p44script: 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".
- p44script internal: the event passing mechanism (on which on(..) {...} is based on) has been significantly improved and generalized. This also fixes a few edge cases that could cause inconsistencies with events in too rapid succession.
|
2.6.3.2 (testing) released 2022-01-17 |
Changes since 2.6.3.1
- log display: more legible formatting of scene name/numbers.
- REPL: added log line wrap option like already present in main log.
- scriptapi: API endpoint `/api/json/scriptapi` which can be activated via p44script is now accessible without `rqvaltok`token.
|
2.6.3.1 (testing) released 2021-12-16 |
Changes since 2.6.3.0
- log display: there is now a toggle to have log display wrap long lines
- Internal Action Evaluators: 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.
|
2.6.3.0 (testing) released 2021-12-05 |
Changes since 2.6.1 / 2.6.1.2
- EnOcean: Fix learn-in for F6-05-02 smoke detector (e.g. Afriso ASD20)
- logging: scene operations now have a text description for the scene involved (such as "preset 1" for scene number 5).
- modbus support: now p44script devices can use modbus over TCP (or RS485/RS232 for P44-xx devices with USB or direct UART connections). Modbus is a standard protocol often used e.g. for solar charge controllers (requires userlevel >=1).
- p44script: add hex(), binary() and sceneno() functions, improve random() function.
- p44script: support for direct access to i2c and SPI devices (requires userlevel >=1).
- Raspberry Pi platform: enabled kernel support for 1Wire (W1).
- plan44 tech docs: online docs updated theme with better navigation and readability, added new sections for modbus, i2c, spi.
Changes since 2.6.0 / 2.6.0.10
- Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations.
- 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.
- p44script: file paths prefixed with +/ are considered resource paths, prefixed with =/ data paths.
|
2.6.2.1 (testing) released 2021-11-15 |
Changes since 2.6.1 / 2.6.1.2
- modbus support: now p44script devices can use modbus over TCP (or RS485/RS232 for P44-xx devices with USB or direct UART connections). Modbus is a standard protocol often used e.g. for solar charge controllers (requires userlevel >=1).
- p44script: add hex() and binary() functions
- p44script: support for direct access to i2c and SPI devices (requires userlevel >=1).
- Raspberry Pi platform: enabled kernel support for 1Wire (W1).
- plan44 tech docs: online docs updated theme with better navigation and readability, added new sections for modbus, i2c, spi
Changes since 2.6.0 / 2.6.0.10
- Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations.
- 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.
- p44script: file paths prefixed with +/ are considered resource paths, prefixed with =/ data paths.
|
2.6.1.2 (testing) released 2021-11-02 |
Changes since 2.6.0 / 2.6.0.10
- Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations.
- 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.
- p44script: file paths prefixed with +/ are considered resource paths, prefixed with =/ data paths.
|
2.6.1.0 (testing) released 2021-10-24 |
Changes since 2.6.0 / 2.6.0.10
- Scripted custom devices: fixed problem that could cause on(…){…} handlers get duplicated and being active multiple times in the background when editing implementations.
- https access from p44script: fixed a problem that prevented accessing some https servers (those that require SNI to establish a connection).
|
2.6.0.10 (testing) released 2021-10-01 |
Equivalent to 2.6.0 production release
The firmware 2.6.0 for P44-DSB devices (and 1.6.0 for P44-LC/AC) focuses on extendabilityand 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.
Improvements since production version 2.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.
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.
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…
|
2.6.0.8 (testing) released 2021-09-16 |
First release candiate for 2.6.0 production release
Big New Feature in Version 2.6: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.7
- WebUI: Device info dialogs now have a "technical details..." button to reveal detail info that was previously only visible in the tooltip of the dSUID field (which only appears on desktops, not mobiles)
- Sensors and Inputs: reduced value confirming (i.e. unchanged values) reporting towards dSS, as it seems too many reports can cause congestion at the dSS already for relativley modest total amounts of reports (in the range of one per second).
Changes since 2.6.0.5
- platform: updated to OpenWrt 19.07.8
- p44features: now included, can be used from p44script in very specific applications (for example if you have Swiss Railway split flap modules...).
- bugfix: workaround for vdcd using too much CPU time when monitoring edge changes on GPIOs due to a libev incompatibility with Linux GPIOs.
Changes since 2.6.0.3
- platform: IO polling now based on libev. While this should not cause any changes in behaviour, it is technically a significant change in the core engine and as such might have unexpected side effects in edge cases - that's why it is mentioned here.
- p44script: add support for websocket APIs with websocket() function.
- p44script: accessing json object with numeric array subscript now returns field names.
- p44script: extended support for http client with httprequest() function.
- p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.
Changes since 2.6.0.2
- Web interface: 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).
- 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.
Changes since 2.6.0.0
- external devices: fix regression: did crash when using "initvdc" message.
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
Changes since 2.5.1.2
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.7 (testing) released 2021-09-03 |
Big New Feature in Version 2.6: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.5
- platform: updated to OpenWrt 19.07.8
- p44features: now included, can be used from p44script in very specific applications (for example if you have Swiss Railway split flap modules...).
- bugfix: workaround for vdcd using too much CPU time when monitoring edge changes on GPIOs due to a libev incompatibility with Linux GPIOs.
Changes since 2.6.0.3
- platform: IO polling now based on libev. While this should not cause any changes in behaviour, it is technically a significant change in the core engine and as such might have unexpected side effects in edge cases - that's why it is mentioned here.
- p44script: add support for websocket APIs with websocket() function.
- p44script: accessing json object with numeric array subscript now returns field names.
- p44script: extended support for http client with httprequest() function.
- p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.
Changes since 2.6.0.2
- Web interface: 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).
- 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.
Changes since 2.6.0.0
- external devices: fix regression: did crash when using "initvdc" message.
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
Changes since 2.5.1.2
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.5 (testing) released 2021-08-14 |
Big New Feature in Version 2.6: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.2
- Web interface: 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).
- 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.
Changes since 2.6.0.0
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
- web-ui: wifi settings (P44-DSB-X only) now allow configuring client and access point separately.
Changes since 2.5.1.2
- RaspberryPi 3: (P44-DSB-X only) can now use WiFi, hold down Shift+Cmd/Ctrl while clicking on "Edit Network Settings" to open (simplistic, experimental!) WiFi settings.
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.3 (testing) released 2021-07-29 |
Big New Feature in Version 2.6: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.2
- Web interface: 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).
- 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.
Changes since 2.6.0.0
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
- web-ui: wifi settings (P44-DSB-X only) now allow configuring client and access point separately.
Changes since 2.5.1.2
- RaspberryPi 3: (P44-DSB-X only) can now use WiFi, hold down Shift+Cmd/Ctrl while clicking on "Edit Network Settings" to open (simplistic, experimental!) WiFi settings.
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.2 (testing) released 2021-07-16 |
Big New Feature: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.0
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
- web-ui: wifi settings (P44-DSB-X only) now allow configuring client and access point separately.
Changes since 2.5.1.2
- RaspberryPi 3: (P44-DSB-X only) can now use WiFi, hold down Shift+Cmd/Ctrl while clicking on "Edit Network Settings" to open (simplistic, experimental!) WiFi settings.
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.1 (testing) released 2021-07-09 |
Big New Feature: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.6.0.0
- evaluators: fix regression when comparing undefined sensor/input values. A comparison of an undefined input with any value, including zero, must return false.
- web-ui: visual feedback for all buttons that trigger an action (if, and only if the action was actually executed in the device)
- web-ui: wifi settings (P44-DSB-X only) now allow configuring client and access point separately.
Changes since 2.5.1.2
- RaspberryPi 3: (P44-DSB-X only) can now use WiFi, hold down Shift+Cmd/Ctrl while clicking on "Edit Network Settings" to open (simplistic, experimental!) WiFi settings.
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.6.0.0 (testing) released 2021-07-02 |
Big New Feature: Scripted Custom Devices
- Allows creating custom devices of all kinds, for example
- pulling sensor data from external webpages
- controlling devices via http or socket APIs
- visualizing control values with LED chain displays
- creating custom motor controllers for windows, movie screens etc.
- Very similar to "external device API" (which still exists), but no need for external scripts - everything can be done in p44script on the device itself!
- Examples and documentation are available in p44 tech docs.
Changes since 2.5.1.2
- p44script full screen editor: now supports Cmd/Ctrl-S for saving script.
- p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
- p44script: support for digitalIO, analogIO and DC motors.
- p44script: add signal() function to create event object for synchronizing threads.
- p44script: now the 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.
- p44script: add readfile() and writefile() functions
- p44script: add thread-local variables. Implicitly, variables used in as clause of on() and catch() are now thread-local. Explicitly, thread-local variables can be defined using the threadvar keyword.
- ledchains/p44lrgraphics: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) support for more flexible led chain drivers which now allow setting LED chip type and layout (RGB,GRB,…) directly in ledchainarrangement specifications on the command line, or via addledchain(). Add setledrefresh() to also allow this parameter from scripts (and not only via --ledrefresh command line option).
- p44lrgraphics/scroller: (P44-DSB-X, P44-xx-LED, P44-xx-E+L only) new event function empty() to allow triggering on ticker-like displays running empty to fill in new content plus some related function alertempty(), remainingtime(), remainingpixels(), purge().
|
2.5.1.2 (testing) released 2021-04-12 |
Changes since 2.5.1.1
- Platform: Updated to OpenWrt 19.07.7
- ola: included again (was missing since 2.0.5.3 due to build problems)
|
2.5.1.1 (testing) released 2021-03-28 |
Changes since 2.5.0.2
- Logging: now all device class related logging (such as DALI/EnOcean/hue low level info) is consistently prefixed and follows vdc-level log silencing/increasing (logLevelOffset).
- p44Script: short reference now contains link to new p44-techdocs web site which contains the short reference also in german and will grow to contain detail information, tutorials and examples for P44-xx devices.
|
2.5.0.2 (testing) released 2021-03-01 |
Equivalent with 2.5.0 production release
Changes since 2.5.0.0
- Updates: hint at automatic update check option once after installing.
- p44script: fix oplevel subfield of sensor values (did return the sensor value instead of oplevel)
- channels: now can be used as value sources (triggering evaluators, trigger conditions and on() statements).
|
2.5.0.1 (testing) released 2021-02-28 |
Second release candiate for 2.5.0 production release
Changes since 2.5.0.0
- Updates: hint at automatic update check option once after installing.
- p44script: fix oplevel subfield of sensor values (did return the sensor value instead of oplevel)
|
2.5.0.0 (testing) released 2021-02-12 |
First release candiate for 2.5.0 production release
New features (since 2.0.5.0 production release)
- Automatic check for Updates: optionally, the P44-DSB 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.
- hue: now supports on/off-only devices 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.
- Enhanced smart LED chain support (P44-DSB-X 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 (since 2.0.5.0 production release)
- Better Versioning scheme:
- Production versions will have numbers in the 2.5.0 form (major.minor.revision).
- Testing/beta versions will keep the longer 2.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 2.5.1.2 indicates that this is a beta for an upcoming 2.5.1 release.
- Platform: updated to OpenWrt 19.07.6
- EnOcean: improved upgrading from insecure to encrypted communication, rolling counter 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.
- 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. P44-DSB-X only
- LEDchains: --ledrefresh command line parameter to tune update rate (lower for very long chains). P44-DSB-X only
- LEDchains: ledchain driver with support for RGB (vs GRB) WS2815 LEDs. P44-DSB-X only
Bug fixes (since 2.0.5.0 production release)
- EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time.
- EnOcean: fix problems with secure devices persistence (inactive after restart)
- Window/door/garage contacts: meaning of the active state (binary input = 1) is closed, not open. Except 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: fix bug that could cause scene not loading correctly.
- hue: fix 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.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.14 (testing) released 2021-01-13 |
Changes in 2.4.9.7..14
- hue: now works with on/off-only devices such as smart plugs.
- Evaluators: internal action evaluators can now have an empty "off" condition to just run the action once whenever "on" condition becomes true.
- Window/door/garage contacts: meaning of the active state (binary input = 1) is closed, not open. Except 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).
- EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
- p44script: new function macaddress(), support for concatenating/merging JSON arrays/objects with the + operator
- p44script: support for UDP socket communication
- p44script: fixed bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).
- LED chains: extended p44script support with various functions for led chain management, view creation, power limiting.
- LED chains: support for RGBW chains, actual light color of W channel can be specified per chain.
Changes in 2.4.9.6
- EnOcean: encrypted device communication: improved out-of-sync RLC handling, better log messages for encryption related warnings.
- p44script: fixed chained and delayed animator (did not start), improved logging
Changes in 2.4.9.4
- EnOcean: fix problems with secure devices persistence (inactive after restart)
Changes in 2.4.9.3
- Optimizer: fix bug that could cause scene not loading correctly.
- p44Script: savescene() function
- p44Script: bugfixes around assigning thread variables (concurrent as xx statement).
Changes in 2.4.9.2
- Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
- LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important changes since last production release
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.6 (testing) released 2020-10-16 |
Changes in 2.4.9.6
- EnOcean: encrypted device communication: improved out-of-sync RLC handling, better log messages for encryption related warnings.
- p44script: fixed chained and delayed animator (did not start), improved logging
Changes in 2.4.9.4
- EnOcean: fix problems with secure devices persistence (inactive after restart)
Changes in 2.4.9.3
- Optimizer: fix bug that could cause scene not loading correctly.
- p44Script: savescene() function
- p44Script: bugfixes around assigning thread variables (concurrent as xx statement).
Changes in 2.4.9.2
- Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
- LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.4 (testing) released 2020-10-02 |
- EnOcean: fix problems with secure devices persistence (inactive after restart)
Changes in 2.4.9.3
- Optimizer: fix bug that could cause scene not loading correctly.
- p44Script: savescene() function
- p44Script: bugfixes around assigning thread variables (concurrent as xx statement).
Changes in 2.4.9.2
- Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
- LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.3 (testing) released 2020-09-30 |
Changes in 2.4.9.3
- Optimizer: fix bug that could cause scene not loading correctly.
- p44Script: savescene() function
- p44Script: bugfixes around assigning thread variables (concurrent as xx statement).
Changes in 2.4.9.2
- Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
- LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.2 (testing) released 2020-09-16 |
Changes in 2.4.9.2
- Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
- LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.1 (testing) released 2020-09-10 |
Changes in 2.4.9.1
- LED-chain based lights (P44-DSB-X only): Now support the brand new Microsoft Research "Expressive Pixels" animation format.
- Scene Scripts: for advanced user scripting, there's now an editor for the so called "scene script" (which is a p44script started when a scene is called). For example this allows for launching an animation on a LED chain lamp, or a color sequence on any color capable light for certain events such as doorbell.
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.4.9.0 (testing) released 2020-08-26 |
Changes in 2.4.9.0
- Version number jump: The jump from 2.0.5 to 2.4.9 is because the next production firmware is planned to be 2.5, while also reducing the version number to 3 levels (2.5.0, instead of 2.5.0.0). The early betas for 2.5 will have 2.4.9.x version numbers.
- Evaluators/Triggers: completely new scripting engine "p44script". This means:
- Please check your evaluators and triggers for correct operation. There might be bugs as this is a lot of brand new code ;-)
- If you were using any of the following beta features in your scripts, you need to adapt them:
- channel(), dimchannel(), applychannels() and syncchannels() are now members of output, so you need to use them like: output.channel(...).
- epochtime(): now returns number of seconds since 1.1.1970 UTC, as the name suggests, no longer days. Use epochdays() instead.
- setfield() and setelement() are no longer available, no need for these any more, just use obj.field = value or obj[index] = value notations for setting object fields or array elements.
- try/catch has a new syntax for handling the error - no longer use error() function, but use try {...} catch as errorvariable { ... } instead.
- scriptloglevel(), earlyresult(), copy() and switchcontext() are no longer available.
- oncondition variable in trigger expressions is no longer available.
- There are and wil be a lot of new possibilities using the new p44script architecture. However for now, the focus is on evaluators and triggers working the same as before.
- If you are adventurous, you can use the new full screen code editor for editing trigger actions, and have a look into the script reference to get an idea what the p44script engine can do. If you are very adventurous, you can even try the new script features - on your own risk (backup your config before...) using the repl.html page...
Other important recent changes
- 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.
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- platform: update to OpenWrt 19.07.3
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
|
2.0.5.6 (testing) released 2020-07-01 |
Changes in 2.0.5.6
- 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.
- Web-UI: Fixed regression in 2.0.5.5: Some dialogs that should stay open (e.g. update, restart progress) could be closed by clicking outside.
- Timezone support: dialog did not show currently set timezone. Clock now shows time in time zone of the device (was always time zone of the browser before)
- 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. When polling the Web-UI constantly, over time the leak could lead to out-of-memory resulting in device becoming very slow.
Changes in 2.0.5.5
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- Web-UI: Open device info dialog with shift held down to get logleveloffset controls.
- Web-UI: fixed long-standing annoying JQMobile problem that caused open dialogs to scroll instead of accepting the first button clicked.
- Web-UI: all dialogs can now be dismissed with Esc key or by clicking ouside of the dialog.
- evaluators: result of on-condition is now available in off-condition as oncondition variable to simplify specifying mostly inverse off-conditions.
- expressions: now can use log, loglevel and logleveloffset functions for debugging. To use these null-returning side-effect-only functions and still produce a expression result, lastarg can be used.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
Changes in 2.0.5.4
- sensor RRDB: improved case of sensors with infrequent changes
- logging: "logleveloffset" vdc method to elevate or reduce logging per device or per behaviour.
- vdc API: string channels
- platform: update to OpenWrt 19.07.3
- platform: fix UART1 + UART2 in device tree
Changes in 2.0.5.3
- platform: now based on OpenWrt 19.07.2
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- optimizer: keep statistics valid even when devices starts with no or different NTP time. Some more logging when creating native scenes/groups.
- scripts: added modulo operator (%) and epochtime() function
Other recent features:
- Sensors+Inputs: now push of sensor values to vdsm/dSS are shown in Level 5 log to help debugging sensor value processing issues.
- EnOcean: support for A5-20-04 communication interval reduced from 20 to 10min
- EnOcean: support for A5-20-06 self-powered heating valve
- EnOcean: support for notion sensors that only signal "motion", but not "no motion" (profile variant, e.g. for Eltako TF-BSB)
- Expressions: all expressions can now access global variables.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- 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-DSB versions before 2.0.4.0.
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.5.5 (testing) released 2020-06-18 |
Changes in 2.0.5.5
- logging: per device/vdc/script logleveloffset now allows silencing noisy devices or focusing on devices of interest for support and debugging.
- Web-UI: Open device info dialog with shift held down to get logleveloffset controls.
- Web-UI: fixed long-standing annoying JQMobile problem that caused open dialogs to scroll instead of accepting the first button clicked.
- Web-UI: all dialogs can now be dismissed with Esc key or by clicking ouside of the dialog.
- evaluators: result of on-condition is now available in off-condition as oncondition variable to simplify specifying mostly inverse off-conditions.
- expressions: now can use log, loglevel and logleveloffset functions for debugging. To use these null-returning side-effect-only functions and still produce a expression result, lastarg can be used.
- Removed: the experimental sparkiodevice is no longer available. Note that the only sparkiodevice has been a WS2812 based torch simulation light, which is now available as a ledchaindevice option (among many other effects).
- P44-DSB-X only: DMX/ola users please note: due to yet-to-be-resolved build problems with ola on OpenWrt 19.07, this version does not contain ola. So please do not install it if you depend on ola/DMX.
- sensor RRDB: improved case of sensors with infrequent changes
- logging: "logleveloffset" vdc method to elevate or reduce logging per device or per behaviour.
- vdc API: string channels
- platform: update to OpenWrt 19.07.3
Changes in 2.0.5.3
- platform: now based on OpenWrt 19.07
- filesystem: changed to squashfs+f2fs overlay
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- optimizer: keep statistics valid even when devices starts with no or different NTP time. Some more logging when creating native scenes/groups.
- scripts: added modulo operator (%) and epochtime() function
Other recent features:
- Sensors+Inputs: now push of sensor values to vdsm/dSS are shown in Level 5 log to help debugging sensor value processing issues.
- EnOcean: support for A5-20-04 communication interval reduced from 20 to 10min
- EnOcean: support for A5-20-06 self-powered heating valve
- EnOcean: support for notion sensors that only signal "motion", but not "no motion" (profile variant, e.g. for Eltako TF-BSB)
- Expressions: all expressions can now access global variables.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- 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-DSB versions before 2.0.4.0.
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.5.3 (testing) released 2020-05-10 |
Changes in 2.0.5.3
- platform: now based on OpenWrt 19.07
- filesystem: changed to squashfs+f2fs overlay
- hue: fix problem with manually specified hue bridge url/IP, did not work in some cases.
- optimizer: keep statistics valid even when devices starts with no or different NTP time. Some more logging when creating native scenes/groups.
- scripts: added modulo operator (%) and epochtime() function
Other recent features:
- Sensors+Inputs: now push of sensor values to vdsm/dSS are shown in Level 5 log to help debugging sensor value processing issues.
- EnOcean: support for A5-20-04 communication interval reduced from 20 to 10min
- EnOcean: support for A5-20-06 self-powered heating valve
- EnOcean: support for notion sensors that only signal "motion", but not "no motion" (profile variant, e.g. for Eltako TF-BSB)
- Expressions: all expressions can now access global variables.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- 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-DSB versions before 2.0.4.0.
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.5.1 (testing) released 2020-01-31 |
Changes in 2.0.5.1
- EnOcean: support for A5-20-04 communication interval reduced from 20 to 10min
- Sensors+Inputs: now push of sensor values to vdsm/dSS are shown in Level 5 log to help debugging sensor value processing issues.
- hue: hue device info now shows actual vendor name of the individual light, no longer just the bridge's vendor.
- hue: better logging, some workaround refinements for ill-behaving third-party lights.
Other recent features:
- EnOcean: support for A5-20-06 self-powered heating valve
- EnOcean: support for notion sensors that only signal "motion", but not "no motion" (profile variant, e.g. for Eltako TF-BSB)
- Platform: now based on Openwrt 18.06.5
- Expressions: all expressions can now access global variables.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
- 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-DSB versions before 2.0.4.0.
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.5.0 (testing) released 2019-12-05 |
Changes in 2.0.5.0
- EnOcean: support for A5-20-06 self-powered heating valve
- EnOcean: support for notion sensors that only signal "motion", but not "no motion" (profile variant, e.g. for Eltako TF-BSB)
- EnOcean: fix for saving state for encrypted buttons, avoid need to press button multiple times after a restart before it gets recognized again.
- Platform: now based on Openwrt 18.06.5
- Internal/vDC API: output channels can now have can now have enumeration descriptions
Changes in 2.0.4.6
- Scripts: larger text fields for editing, built-in short reference page.
- Expressions: all expressions can now access global variables.
- Expressions: fix precedence of logical AND over logical OR.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
Changes in 2.0.4.4
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
Changes in 2.0.4.3
- EnOcean: support for D2-03-0A single button
- Hue: workaround for unreliable third-party lights
Changes in 2.0.4.2
- EnOcean: fix list of available configurations for A5-04-01/02 devices.
- Transition times: fixed bugs, now works better also with optimized hue lights.
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Other recent features:
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.4.6 (testing) released 2019-11-13 |
Changes in 2.0.4.6
- Scripts: larger text fields for editing, built-in short reference page.
- Expressions: all expressions can now access global variables.
- Expressions: fix precedence of logical AND over logical OR.
- Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone.
Changes in 2.0.4.4
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
Changes in 2.0.4.3
- EnOcean: support for D2-03-0A single button
- Hue: workaround for unreliable third-party lights
Changes in 2.0.4.2
- EnOcean: fix list of available configurations for A5-04-01/02 devices.
- Transition times: fixed bugs, now works better also with optimized hue lights.
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Other recent features:
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.4.4 (testing) released 2019-10-02 |
Changes in 2.0.4.4
- vdc visibility in digitalSTROM: the web-UI now offers an option to hide vdcs which have no devices in digitalSTROM configurator. Note that you need to delete the greyed-out vdcs in the configurator after hiding a vdc that was previously visible.
Changes in 2.0.4.3
- EnOcean: support for D2-03-0A single button
- Hue: workaround for unreliable third-party lights
Changes in 2.0.4.2
- EnOcean: fix list of available configurations for A5-04-01/02 devices.
- Transition times: fixed bugs, now works better also with optimized hue lights.
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Other recent features:
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.4.3 (testing) released 2019-09-23 |
Changes in 2.0.4.3
- EnOcean: support for D2-03-0A single button
- Hue: workaround for unreliable third-party lights
- LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) (P44-DSB-X only)
Changes in 2.0.4.2
- EnOcean: fix list of available configurations for A5-04-01/02 devices.
- Transition times: fixed bugs, now works better also with optimized hue lights.
- LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-DSB-X only)
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Changes in 2.0.3.2
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-DSB-X only)
Changes in 2.0.3.0
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
Other recent features:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.4.2 (testing) released 2019-09-12 |
Changes in 2.0.4.2
- EnOcean: fix list of available configurations for A5-04-01/02 devices.
- Transition times: fixed bugs, now works better also with optimized hue lights.
- LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-DSB-X only)
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Changes in 2.0.3.2
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-DSB-X only)
Changes in 2.0.3.0
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
Other recent features:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.4.0 (testing) released 2019-09-03 |
Note: this is a release candidate for the 2.0.4 production release
Changes in 2.0.4.0
- 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-DSB versions before 2.0.4.0.
- Scripts/Expressions: bugfixes, improved error display, timed expressions now track change of real time (NTP updates, TZ changes).
Changes in 2.0.3.2
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-DSB-X only)
Changes in 2.0.3.0
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
Other recent features:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.3.2 (testing) released 2019-08-22 |
Changes in 2.0.3.2
- EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
- Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
- LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-DSB-X only)
Changes in 2.0.3.0
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
Other recent features:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.3.0 (testing) released 2019-08-14 |
Changes in 2.0.3.0
- Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
This means:
- Please check your evaluators for correct operation. There might be bugs as this is a lot of brand new code ;-)
- Evaluator Actions no longer use the strange "cmd:action" syntax, but can now be specified in a full-featured script language, including if/else, while/break/continue, return, local variables and more. The existing actions are automatically converted to the new script syntax on first use.
- In the web-UI, when editing/checking expressions, in case of errors the cursor is positioned at the error location in the input field.
- Expressions now can include a lot of function calls, in particular is_time, after_time and between_dates to specify time-based triggers.
Other recent features:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking red/yellow 4 times.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.2.0 (testing) released 2019-06-26 |
Note: this is a release candidate for the 2.0.2 production release
Changes since 2.0.1.4:
- Identify from dSS Configurator: now the P44-DSB device itself can be identified from the dSS, by clicking on the lightbulb "identify" button causing the P44-DSB LED blinking 4 times.
- Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
- Web-UI: log display: new "stats" button/link prints some momentary statistics into the log, such as optimizer state.
- vDC API: genericRequest now also allows sending notifications (when methodname param of genericRequest is a valid notification name). This makes the API compatible with the somewhat inaccurately specified "identity" call for vdcs via genericRequest.
Other recent new features:
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
- 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.
|
2.0.1.4 (testing) released 2019-06-14 |
Note: this is a release candidate for the 2.0.2 production release
Changes since 2.0.1.2:
- Identify from dSS Configurator: made work again (regression in dSS 1.16.0, devices now need to have "identification" model feature, added this to all lights and shade devices)
- WebUI: identify and learn operations are abortable again (regression in 2.0.1.0).
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
Changes since 2.0.1.0:
- 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.
|
2.0.1.2 (testing) released 2019-05-30 |
- EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
Changes since 2.0.1.0:
- 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.
|
2.0.1.0 (testing) released 2019-04-01 |
Note: this is a release candidate for the 2.0.1 production release
Changes since 2.0.0.0:
- EnOcean: Support for A5-04-03 10bit temperature + 8bit humidity sensor.
- EnOcean: Multisensor Window Handle (D2-06-xx): Buttons now also work in "dimming" (press-and-hold) mode.
- EnOcean: Now detects out-of-order A5-13-xx weather station, fixed false sensor timeouts that could happen when multiple measurements did not change for some time.
- EnOcean: bug fix in secure teach-in, did affect e.g. A5-14-xx window contacts supporting encryption.
- EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor.
- ELDAT: support for window contacts and window handles
- WebUI: fixed problem with setting fixed hue bridge address.
- WebUI: should no longer hang/time out even with many devices responding slowly to connection test.
New Features in Version 2.0:
- hue: Scene+Dimming Optimizer can now can now automatically use native hue scenes and groups. For hue, the main benefit is that scene/group calls are more reliably forwarded to many lights (due to bugs in the hue bridge, changing many lights directly does not always work reliably). The optimizer can be enabled in the hue-vdc info dialog.
- Web UI: new colored column for operational state (radio strength, errors, reachability etc.) at a glance. Number of devices for each vDC is visible in the icon column.
- Web UI: device list can be sorted by clicking on column header.
- Web UI: not responding devices are now shown greyed out in device list (like in dSS)
- Web UI: refreshed look, more responsive (works even on small phone screens now), more compatible with different browsers.
- EnOcean: now supports secure pairing with PT215 based buttons.
- EnOcean: new profiles supported:
- D2-01-xx: electronic switches and dimmers (actors)
- D2-32-xx: AC current clamps (Pressac CTV3 series)
- F6-01-01: single button
- F6-05-00: wind speed threshold detector
- Evaluators: now support functions (abs, round, if, ifvalid, testlater) and can access sensor's age, validity and operation state.
- Evaluators: now run a initial evaluation after start and when expressions are modified. The initial function can test for this to provide default values.
- Evaluators: sensor evaluators can now also be used to calculate a virtual sensor value (e.g. a total wattage from 3 current sensors etc.).
- Evaluators: internal action evaluators can trigger an external action via http(s) GET/POST/PUT.
Improvements:
- Device LEDs: the LEDs of the P44-DSB-E now work like for the other P44-DSB models (DEH, E2, DEH2): In normal operation only the green LED is constantly lit. In addition, the red LED flashes shortly to indicate activity. If only the red LED is on or blinking, this indicates a error or warning.
- EnOcean: upside down option for A5-14-09/0A window handle profiles.
- EnOcean: weather station profile A5-13-0x now reports short wind spikes as separate gust sensor.
- Sensor handling: sensors value processing is now adapted to the sensor type to ensure timely updates while still avoiding too many sensor events overloading the dSS.
- Connection to dSS: made more resilient in case of occasional network problems.
- and numerous other detail improvements.
Bugfixes:
- EnOcean: Fixed F6-05-01 water sensor, did not take back the detector signal when the water detection state went back to normal.
- EnOcean: Fixed temperature sensor reporting in D2-06-01 profile (Multifunction Window Handle)
- EnOcean: Fixed prophylaxis runs for A5-20-04 profile
- and many other smaller bugfixes.
|
2.0.0.10 (testing) released 2019-03-11 |
Changes since 2.0.0.9:
- ELDAT: support for window contacts and window handles.
Changes since 2.0.0.7:
- Platform: now based on OpenWrt 18.06.2
- WebUI: should no longer hang/time out even with many devices responding slowly to connection test.
- EnOcean: fixed: FAH60 variant of A5-06-01 profile has no supply voltage sensor.
Changes since 2.0.0.0:
- EnOcean: Now detects out-of-order A5-13-xx weather station
- EnOcean: Multisensor Window Handle (D2-06-xx): Buttons now also work in "dimming" (press-and-hold) mode.
- EnOcean: bug fix in secure teach-in, did affect e.g. A5-14-xx window contacts supporting encryption.
- EnOcean: Wheater station: fixed false sensor timeouts that could happen when multiple measurements did not change for some time.
New Features in Version 2.0:
- hue: Scene+Dimming Optimizer can now can now automatically use native hue scenes and groups. For hue, the main benefit is that scene/group calls are more reliably forwarded to many lights (due to bugs in the hue bridge, changing many lights directly does not always work reliably). The optimizer can be enabled in the hue-vdc info dialog.
- Web UI: new colored column for operational state (radio strength, errors, reachability etc.) at a glance. Number of devices for each vDC is visible in the icon column.
- Web UI: device list can be sorted by clicking on column header.
- Web UI: not responding devices are now shown greyed out in device list (like in dSS)
- Web UI: refreshed look, more responsive (works even on small phone screens now), more compatible with different browsers.
- EnOcean: now supports secure pairing with PT215 based buttons.
- EnOcean: new profiles supported:
- D2-01-xx: electronic switches and dimmers (actors)
- D2-32-xx: AC current clamps (Pressac CTV3 series)
- F6-01-01: single button
- F6-05-00: wind speed threshold detector
- Evaluators: now support functions (abs, round, if, ifvalid, testlater) and can access sensor's age, validity and operation state.
- Evaluators: now run a initial evaluation after start and when expressions are modified. The initial function can test for this to provide default values.
- Evaluators: sensor evaluators can now also be used to calculate a virtual sensor value (e.g. a total wattage from 3 current sensors etc.).
- Evaluators: internal action evaluators can trigger an external action via http(s) GET/POST/PUT.
Improvements:
- Device LEDs: the LEDs of the P44-DSB-E now work like for the other P44-DSB models (DEH, E2, DEH2): In normal operation only the green LED is constantly lit. In addition, the red LED flashes shortly to indicate activity. If only the red LED is on or blinking, this indicates a error or warning.
- EnOcean: upside down option for A5-14-09/0A window handle profiles.
- EnOcean: weather station profile A5-13-0x now reports short wind spikes as separate gust sensor.
- Sensor handling: sensors value processing is now adapted to the sensor type to ensure timely updates while still avoiding too many sensor events overloading the dSS.
- Connection to dSS: made more resilient in case of occasional network problems.
- and numerous other detail improvements.
Bugfixes:
- EnOcean: Fixed F6-05-01 water sensor, did not take back the detector signal when the water detection state went back to normal.
- EnOcean: Fixed temperature sensor reporting in D2-06-01 profile (Multifunction Window Handle)
- EnOcean: Fixed prophylaxis runs for A5-20-04 profile
- and many other smaller bugfixes.
|
2.0.0.9 (testing) released 2019-03-04 |
Changes since 2.0.0.7:
- Platform: now based on OpenWrt 18.06.2
- WebUI: should no longer hang/time out even with many devices responding slowly to connection test.
- EnOcean: fixed: FAH60 variant of A5-06-01 profile has no supply voltage sensor.
Changes since 2.0.0.0:
- EnOcean: Now detects out-of-order A5-13-xx weather station
- EnOcean: Multisensor Window Handle (D2-06-xx): Buttons now also work in "dimming" (press-and-hold) mode.
- EnOcean: bug fix in secure teach-in, did affect e.g. A5-14-xx window contacts supporting encryption.
- EnOcean: Wheater station: fixed false sensor timeouts that could happen when multiple measurements did not change for some time.
New Features in Version 2.0:
- hue: Scene+Dimming Optimizer can now can now automatically use native hue scenes and groups. For hue, the main benefit is that scene/group calls are more reliably forwarded to many lights (due to bugs in the hue bridge, changing many lights directly does not always work reliably). The optimizer can be enabled in the hue-vdc info dialog.
- Web UI: new colored column for operational state (radio strength, errors, reachability etc.) at a glance. Number of devices for each vDC is visible in the icon column.
- Web UI: device list can be sorted by clicking on column header.
- Web UI: not responding devices are now shown greyed out in device list (like in dSS)
- Web UI: refreshed look, more responsive (works even on small phone screens now), more compatible with different browsers.
- EnOcean: now supports secure pairing with PT215 based buttons.
- EnOcean: new profiles supported:
- D2-01-xx: electronic switches and dimmers (actors)
- D2-32-xx: AC current clamps (Pressac CTV3 series)
- F6-01-01: single button
- F6-05-00: wind speed threshold detector
- Evaluators: now support functions (abs, round, if, ifvalid, testlater) and can access sensor's age, validity and operation state.
- Evaluators: now run a initial evaluation after start and when expressions are modified. The initial function can test for this to provide default values.
- Evaluators: sensor evaluators can now also be used to calculate a virtual sensor value (e.g. a total wattage from 3 current sensors etc.).
- Evaluators: internal action evaluators can trigger an external action via http(s) GET/POST/PUT.
Improvements:
- Device LEDs: the LEDs of the P44-DSB-E now work like for the other P44-DSB models (DEH, E2, DEH2): In normal operation only the green LED is constantly lit. In addition, the red LED flashes shortly to indicate activity. If only the red LED is on or blinking, this indicates a error or warning.
- EnOcean: upside down option for A5-14-09/0A window handle profiles.
- EnOcean: weather station profile A5-13-0x now reports short wind spikes as separate gust sensor.
- Sensor handling: sensors value processing is now adapted to the sensor type to ensure timely updates while still avoiding too many sensor events overloading the dSS.
- Connection to dSS: made more resilient in case of occasional network problems.
- and numerous other detail improvements.
Bugfixes:
- EnOcean: Fixed F6-05-01 water sensor, did not take back the detector signal when the water detection state went back to normal.
- EnOcean: Fixed temperature sensor reporting in D2-06-01 profile (Multifunction Window Handle)
- EnOcean: Fixed prophylaxis runs for A5-20-04 profile
- and many other smaller bugfixes.
|
2.0.0.7 (testing) released 2019-02-08 |
Changes since 2.0.0.0:
- EnOcean: Now detects out-of-order A5-13-xx weather station
- EnOcean: Multisensor Window Handle (D2-06-xx): Buttons now also work in "dimming" (press-and-hold) mode.
- EnOcean: bug fix in secure teach-in, did affect e.g. A5-14-xx window contacts supporting encryption.
- EnOcean: Wheater station: fixed false sensor timeouts that could happen when multiple measurements did not change for some time.
New Features in Version 2.0:
- hue: Scene+Dimming Optimizer can now can now automatically use native hue scenes and groups. For hue, the main benefit is that scene/group calls are more reliably forwarded to many lights (due to bugs in the hue bridge, changing many lights directly does not always work reliably). The optimizer can be enabled in the hue-vdc info dialog.
- Web UI: new colored column for operational state (radio strength, errors, reachability etc.) at a glance. Number of devices for each vDC is visible in the icon column.
- Web UI: device list can be sorted by clicking on column header.
- Web UI: not responding devices are now shown greyed out in device list (like in dSS)
- Web UI: refreshed look, more responsive (works even on small phone screens now), more compatible with different browsers.
- EnOcean: now supports secure pairing with PT215 based buttons.
- EnOcean: new profiles supported:
- D2-01-xx: electronic switches and dimmers (actors)
- D2-32-xx: AC current clamps (Pressac CTV3 series)
- F6-01-01: single button
- F6-05-00: wind speed threshold detector
- Evaluators: now support functions (abs, round, if, ifvalid, testlater) and can access sensor's age, validity and operation state.
- Evaluators: now run a initial evaluation after start and when expressions are modified. The initial function can test for this to provide default values.
- Evaluators: sensor evaluators can now also be used to calculate a virtual sensor value (e.g. a total wattage from 3 current sensors etc.).
- Evaluators: internal action evaluators can trigger an external action via http(s) GET/POST/PUT.
Improvements:
- EnOcean: upside down option for A5-14-09/0A window handle profiles.
- EnOcean: weather station profile A5-13-0x now reports short wind spikes as separate gust sensor.
- Sensor handling: sensors value processing is now adapted to the sensor type to ensure timely updates while still avoiding too many sensor events overloading the dSS.
- Connection to dSS: made more resilient in case of occasional network problems.
- and numerous other detail improvements.
Bugfixes:
- EnOcean: Fixed F6-05-01 water sensor, did not take back the detector signal when the water detection state went back to normal.
- EnOcean: Fixed temperature sensor reporting in D2-06-01 profile (Multifunction Window Handle)
- EnOcean: Fixed prophylaxis runs for A5-20-04 profile
- and many other smaller bugfixes.
|