close

No account? Please just register for free

Firmware info + supported devices list

Firmware information for P44-LC-DE

Firmware version Release Notes
1.8.1.9 (testing)
released 2024-12-10

Firmware 1.8.1.9

This Beta "testing" Firmware 1.8.1.9 for P44-LC devices is a release candidate for the upcoming production firmware 1.8.1. In case no problems are reported with this version, it will soon be released as 1.8.1

This release contains improvements over the previous 1.8.0 firmware release, while remaining fully compatible with it. 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.

Bugfixes

  • Persistent DALI address conflicts at installation: Depending on circumstances, installing multiple new DALI lights could cause seemingly persistent DALI address conflict error messages. Using "Force full re-scan of all devices" would eventually fix the problem, but possibly only after many attempts. This is now solved in 1.8.1.9.
  • p44script IDE: log output now really should not output extra empty lines any more.
  • p44script IDE: the "modified" indicator (boldfaced tab title) occasionally did not work for scene scripts.
  • p44script: fixed dnssdbrowse() which only returned txt records instead of full information.

Improvements

  • DALI default dimming curve: in completely new setups, DALI lights now have a smoother dimming curve than before (however, in all existing setups, the previous dimming behaviour is retained!).
  • Scene caller/responder bridging devices: now can have a deactivation scene AND an optional reset condition (timeout, when another scene is called, when the scene is undone).
  • Matter Bridge (beta): now inverts the polarity of window handle binary inputs to match the matter-side expectations about how "open" and "close" should be represented by the "contact sensor" device type.
  • Buttons: now emit a 0 value (meaning: not pressed) event after a complete click sequence. This makes trigger and evaluator expressions using button inputs reset between button uses, without needing the "trigger at every evaluation" trigger mode.

New features

  • EnOcean: support for D2-0A-00/01 triple temperature sensors (as indoor sensors)
  • channel coupling: built-in "glow dim" (color temperature automatically rising with brightness) can be enabled for CT and color lights, and completely custom dependencies can be defined using the new channel coupling script in the advanced output settings dialog.
  • p44script IDE: can now edit user files activated via editfile() (e.g. from REPL or mainscript)
  • p44script: listfiles() function to list contents of directories
  • lrgraphics: new global introspection functions: lrgfonts() lists all available fonts, lrgviews() all view types.
  • lrgraphics: Custom fonts in lrgf format (e.g. generated using FontHexer2) can be loaded using loadfont() to use them textviews.
1.8.1.5 (testing)
released 2024-11-15

Firmware 1.8.1.5

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 1.8.1.4

  • Light devices now can have a built-in, hardware-dependent gamma correction factor for brightness, which is combined with the user-specified x-p44-gamma introduced in 1.8.0.3. In particular, DALI lights previously had an implicit gamma value of 0.1818, which is retained in existing setups to avoid changing the programmed brightness levels. However in new setups, the default DALI gamma is now 0.4, which results in a more natural dimming behaviour. The default gamma is exposed in x-p44-defaultGamma in outputDescription. For each light, x-p44-gamma in outputSettings can be used to adjust the gamma individually. To revert a default gamma entirely (force 1:1 linear output), set x-p44-gamma to the reciprocal of x-p44-defaultGamma.

Changes since 1.8.1.3

  • DALI: "dimmer dial" input can use DALI dimmer wheels that send on single address as input (note: this may interfere with DALI forward frames, depending on details - use with care)
  • Bridiging devices: scene caller now better follows scene call state

Changes since 1.8.1.2

  • Bridiging devices: new "dimmer dial" bridge type, allows room and area dimmers represented as level control in matter
  • analogio sensors: can now specify min/max to clamp values to that range e.g. to avoid over/undershoot due to imprecise A/D.
  • channel coupling: built-in "glow dim" (color temperature rising with brightness) can be enabled for CT and color lights, and completely custom dependencies can be defined using the new channel coupling script.
  • p44script: channel(...) setters now return the output object, to allow chaining calls like device('Lamp').output.channel('hue',240) .channel('saturation',90).applychannels().

Changes since 1.8.1.1

  • EnOcean: support for D2-0A-00/01 triple temperature sensors (as indoor sensors)
  • Matter Bridge: now inverts the polarity of window handle binary inputs to match the matter-side expectations about how "open" and "close" should be represented by the "contact sensor" device type.
  • Buttons: now emit a 0 value (meaning: not pressed) event after a complete click sequence. This makes trigger and evaluator expressions using button inputs reset between button uses, without needing the "trigger at every evaluation" trigger mode.

Changes since 1.8.1.0

  • p44script IDE: can now edit user files activated via editfile() (e.g. from REPL or mainscript)
  • p44script: listfiles() function to list contents of directories
  • lrgraphics: loadfont() to load user fonts for textviews

Changes since 1.8.0 / 1.8.0.9

  • p44script IDE: log output now really should not output extra empty lines any more.
  • p44script IDE: the "modified" indicator (boldfaced tab title) occasionally did not work for scene scripts.
  • p44lrgraphics: new global introspection functions: lrgfonts() lists all available fonts, lrgviews() all view types.
  • p44script: fixed dnssdbrowse() which only returned txt records instead of full information.
1.8.1.2 (testing)
released 2024-10-23

Firmware 1.8.1.2

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 1.8.1.1

  • EnOcean: support for D2-0A-00/01 triple temperature sensors (as indoor sensors)
  • Matter Bridge: now inverts the polarity of window handle binary inputs to match the matter-side expectations about how "open" and "close" should be represented by the "contact sensor" device type.
  • Buttons: now emit a 0 value (meaning: not pressed) event after a complete click sequence. This makes trigger and evaluator expressions using button inputs reset between button uses, without needing the "trigger at every evaluation" trigger mode.

Changes since 1.8.1.0

  • p44script IDE: can now edit user files activated via editfile() (e.g. from REPL or mainscript)
  • p44script: listfiles() function to list contents of directories
  • lrgraphics: loadfont() to load user fonts for textviews

Changes since 1.8.0 / 1.8.0.9

  • p44script IDE: log output now really should not output extra empty lines any more.
  • p44script IDE: the "modified" indicator (boldfaced tab title) occasionally did not work for scene scripts.
  • p44lrgraphics: new global introspection functions: lrgfonts() lists all available fonts, lrgviews() all view types.
  • p44script: fixed dnssdbrowse() which only returned txt records instead of full information.
1.8.0.9 (testing)
released 2024-10-01

Firmware 1.8.0.9

This Beta "testing" Firmware 1.8.0.9 for P44-LC devices is the "golden master" for and thus identical to production firmware 1.8.0.

This release contains some new features and improvements over the previous 1.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 1.7.0 and Beta-Version 1.7.0.46, resp.

New Features

  • matter bridge (beta): Now based on matter 1.3 (vs 1.2 in previous versions).
  • matter bridge (beta): Bridging devices are now available in P44-LC, too. These can be useful to allow matter side automation to trigger or monitor scene calls. Before, bridging devices were available in P44-DSB only as a way to get some matter integration into DS rooms.

  • Web-UI: Added option to configure buttons as direct scene action buttons (single click invokes a freely configurable room or global scene)
  • custom/user web page support: project specific custom web pages needing different user/password than the standard WebUI, or no auth at all are now possible.
  • proxy devices: multiple P44-LC/AC can be combined to have one main unit offering a common UI for all devices of a number of secondary P44-LC/AC units by virtual proxy devices residing on the main unit for the actual devices in the secondary units. This feature needs low-level command line setup at this time and is intended for advanced custom setups.
  • 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.
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • IPv6: network settings now have a switch for enabling/disabling IPv6 support (link local only at this time).

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 P44-side had a different type set.
  • p44script: fixed bug in scene() that prevented calling non-light scenes by name.
  • 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.
1.8.0.7 (testing)
released 2024-09-18

Firmware 1.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 1.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 1.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.
  • Web-UI: Added option to configure buttons as direct scene action buttons (single click invokes a freely configurable room or global scene)

Changes since 1.8.0.4

  • proxy devices: improved handling of failing/intermittent connection to proxied device's hosts; fixed bug that could cause crash in some network interruption cases.
  • proxy devices: bridging-specific properties must not be mirrored from remote device, but represent proxy's own bridging state (such that proxyied devices can get bridged into matter).
  • bridging devices: fix bug that could cause crash when processing locally generated notifications (vs. notifications received via bridge/proxy API connections).
  • 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 1.8.0.3

  • matter bridge (beta): Bridging devices are now available in P44-LC, too. These can be useful to allow matter side automation to trigger or monitor scene calls. Before, bridging devices were available in P44-DSB only as a way to get some matter integration into DS rooms.
  • 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 and proxy operation.
  • p44script: preliminary: initial support for script includes, not yet feature complete (e.g. no breakpoints in includes at this time).

Changes since 1.7.0.46

New Features

  • 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.
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • 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.
  • network settings now have a switch for enabling/disabling IPv6 support (link local only at this time).
  • 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 P44-side had a different type set.
  • p44script: fixed regression with vdcapi() did always raise error when calling a notification.
1.8.0.5 (testing)
released 2024-08-23

Firmware 1.8.0.5

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 1.8.0.4

  • proxy devices: improved handling of failing/intermittent connection to proxied device's hosts; fixed bug that could cause crash in some network interruption cases.
  • proxy devices: bridging-specific properties must not be mirrored from remote device, but represent proxy's own bridging state (such that proxyied devices can get bridged into matter).
  • bridging devices: fix bug that could cause crash when processing locally generated notifications (vs. notifications received via bridge/proxy API connections).
  • 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 1.8.0.3

  • matter bridge (beta): Bridging devices are now available in P44-LC, too. These can be useful to allow matter side automation to trigger or monitor scene calls. Before, bridging devices were available in P44-DSB only as a way to get some matter integration into DS rooms.
  • 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 and proxy operation.
  • p44script: preliminary: initial support for script includes, not yet feature complete (e.g. no breakpoints in includes at this time).

Changes since 1.7.0.46

New Features

  • 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.
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • 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.
  • network settings now have a switch for enabling/disabling IPv6 support (link local only at this time).
  • 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 P44-side had a different type set.
  • p44script: fixed regression with vdcapi() did always raise error when calling a notification.
1.8.0.4 (testing)
released 2024-08-14

Firmware 1.8.0.4

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 1.8.0.3

  • matter bridge (beta): Bridging devices are now available in P44-LC, too. These can be useful to allow matter side automation to trigger or monitor scene calls. Before, bridging devices were available in P44-DSB only as a way to get some matter integration into DS rooms.
  • 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 and proxy operation.
  • p44script: preliminary: initial support for script includes, not yet feature complete (e.g. no breakpoints in includes at this time).

Changes since 1.7.0.46

New Features

  • 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.
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • 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.
  • network settings now have a switch for enabling/disabling IPv6 support (link local only at this time).
  • 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 P44-side had a different type set.
  • p44script: fixed regression with vdcapi() did always raise error when calling a notification.
1.8.0.3 (testing)
released 2024-07-30

Firmware 1.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 1.7.0.46

New Features

  • 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
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • 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
  • network settings now have a switch for enabling/disabling IPv6 support (link local only at this time)
  • 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 P44-side had a different type set.
  • p44script: fixed regression with vdcapi() did always raise error when calling a notification.
1.8.0.2 (testing)
released 2024-07-26

Firmware 1.8.0.2

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 1.7.0.46

Improvements

  • IDE: log output is now colored and can be dynamically shortened/expanded
  • Web-UI: better support for other output device types than lights, such as shadow or ventilation.
  • 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
  • network settings now have a switch for enabling/disabling IPv6 support (link local only at this time)
  • improved output channel reporting for devices where outputs can be changed externally.

Bugfixes:

  • p44script: fixed regression with vdcapi() did always raise error when calling a notification.
1.7.0.46 (testing)
released 2024-04-29

Firmware 1.7.0.46

This Beta "testing" Firmware 1.7.0.46 for P44-LC devices is the "golden master" for and thus identical to production firmware 1.7.0.

This release contains substantial new features and improvements over the previous 1.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 1.7.0.44

  • DALI: Added workaround for DALI devices which sometimes loose their short address, to avoid ID changes when this happens.
  • DMX512: Now DMX512 can be output to any serial interface which is capable of setting the baudrate to 250000bd and send breaks. This allows for simple RS485 converters to be used for controlling a DMX universe. On RPi devices, OLA-based DMX operation is still supported.
  • Dimmers: Like buttons which can control and dim light a zone or area, now sensors (e.g. analog inputs, or scripted devices representing MIDI sliders or knobs) can be assigned a room or area dimmer function.
  • Proxy support (beta): One P44-LC acting as the main controller can now be connected via network to secondary P44-xx controllers to "borrow" (proxy) devices from those. This allows building larger installations out of multiple P44-xx, but still having a single WebUI to operate all of them.

Changes since 1.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 1.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 1.6.9 and Beta-Version 1.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-LC 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-LC devices.

Starting with 1.7.0.46, the matter 1.2 (beta) functionality can be enabled as an option in your P44-LC 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.

Here you can find information on how to use matter beta on your P44-LC.

p44script IDE: integrated development environment

For quite some time, P44-LC 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 1.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-LC 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.
  • 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.
  • MIDI: RTP-MIDI (rfc6295) support, which means that the P44-LC can be found via DNS-SD as a midi device, e.g. from macOS or iOS midi applications such as "Audio MIDI setup".
  • Dimmer Inputs: Use analog sensor inputs (e.g. via MIDI) as zone/area dimmer controls.
  • Proxy support (beta): Connect multiple P44-xx to cooperate like a single device.
  • DMX512: direct output via a serial port now possible.

General Improvements

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • platform: P44-LC 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.
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.
  • p44script: Fix bug that caused every() trigger fire not as precise (up to 1 sec late) as it could be.
1.7.0.44 (testing)
released 2024-04-10

Firmware 1.7.0.44

This Beta "testing" Firmware 1.7.0.44 for P44-LC devices is a release candidate for the upcoming production firmware 1.7.0. In case no problems are reported with this version, it will soon be released as 1.7.0

This release contains substantial new features and improvements over the previous 1.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 1.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 1.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 1.6.9 and Beta-Version 1.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-LC 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-LC devices.

Starting with 1.7.0.44, the matter 1.2 (beta) functionality can be enabled as an option in your P44-LC 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.

Here you can find information on how to use matter beta on your P44-LC.

p44script IDE: integrated development environment

For quite some time, P44-LC 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 1.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-LC 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.
  • 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.
  • MIDI: RTP-MIDI (rfc6295) support, which means that the P44-LC can be found via DNS-SD as a midi device, e.g. from macOS or iOS midi applications such as "Audio MIDI setup".

General Improvements

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • platform: P44-LC 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.
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.
  • p44script: Fix bug that caused every() trigger fire not as precise (up to 1 sec late) as it could be.
1.7.0.43 (testing)
released 2024-04-03

Firmware 1.7.0.43

This Beta "testing" Firmware 1.7.0.43 for P44-LC devices is a release candidate for the upcoming production firmware 1.7.0. In case no problems are reported with this version, it will soon be released as 1.7.0

This release contains substantial new features and improvements over the previous 1.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 1.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 1.6.9 and Beta-Version 1.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-LC 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-LC devices.

Starting with 1.7.0.43, the matter 1.2 (beta) functionality can be enabled as an option in your P44-LC 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.

Here you can find information on how to use matter beta on your P44-LC.

p44script IDE: integrated development environment

For quite some time, P44-LC 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 1.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-LC 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.
  • 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.
  • MIDI: RTP-MIDI (rfc6295) support, which means that the P44-LC can be found via DNS-SD as a midi device, e.g. from macOS or iOS midi applications such as "Audio MIDI setup".

General Improvements

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • platform: P44-LC 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.
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.
  • p44script: Fix bug that caused every() trigger fire not as precise (up to 1 sec late) as it could be.
1.7.0.42 (testing)
released 2024-03-27

Firmware 1.7.0.42

This Beta "testing" Firmware 1.7.0.42 for P44-LC devices is a release candidate for the upcoming production firmware 1.7.0. In case no problems are reported with this version, it will soon be released as 1.7.0

This release contains substantial new features and improvements over the previous 1.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 1.6.9 and Beta-Version 1.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-LC 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-LC devices.

Starting with 1.7.0.42, the matter 1.2 (beta) functionality can be enabled as an option in your P44-LC 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.

Here you can find information on how to use matter beta on your P44-LC.

p44script IDE: integrated development environment

For quite some time, P44-LC 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 1.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-LC 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.
  • 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.
  • MIDI: RTP-MIDI (rfc6295) support, which means that the P44-LC can be found via DNS-SD as a midi device, e.g. from macOS or iOS midi applications such as "Audio MIDI setup".

General Improvements

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • platform: P44-LC 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.
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.
  • p44script: Fix bug that caused every() trigger fire not as precise (up to 1 sec late) as it could be.
1.7.0.39 (testing)
released 2024-02-12

Firmware 1.7.0.39 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.38

  • MIDI: RTP-MIDI (rfc6295) support, which means that the P44-LC can be found via DNS-SD as a midi device, e.g. from macOS or iOS midi applications such as "Audio MIDI setup". By default, the virtual MIDI port /dev/snd/midiC0D0 is made available via RTP-MIDI, and can be used from p44script via the midibus() function to receive or send MIDI.
  • MIDI: fixed bugs with "running status" processing.

Changes since 1.7.0.37

  • SmartLED devices: When creating new 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.
  • p44script: improved thread and result handling, make abort() work for concurrent code used in functions.
  • p44lrgraphics: buxfix: re-added missing "torch" parameters. Canvas now supports line drawing with color gradient and copying pixels within canvas or from other views. Added blocks view based on canvas.

Changes since 1.7.0.36

  • matter: now based on matter SDK release 1.2.0.1
  • p44lrgraphics: bugfixes and small improvements for details that became obvious only when documenting p44lrgraphics in full.
  • p44script: 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.
  • MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of these affordable input devices in automation projects, and coordinate with sound devices.
  • serial port support: p44script can now access serial ports.
  • p44script: define a default value for global variables (only applied when variable does not yet exist) using default keyword.
  • p44script: on (eventsource()) stable n { … } can now limit the event rate from eventsource to minimal interval as specified by n.
  • p44script playground (in IDE): bugfix: running in playground must not clear the context variables!
  • p44script debugging functions: improve existing introspection functions (e.g. contexthandlers()) and add new threads() and builtins().
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.

Changes since 1.7.0.35

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • ledchain "lightspot" (p44lrgraphics): coloring improved, better size and gradient control.
  • animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
  • p44lrgraphics: add vcr_osd_mono font as used at 37c3 :-)

Main additions since 1.7.0.3

  • There is a new feature allowing you to freely disable or enable receiving public beta firmware for your P44-LC device. Right now you are already running a beta version, but you can now opt-out from betas (and opt-in again later, of course) via the web interface. There is a new button labelled "Beta..." besides the "Check for new firmware version..." to open a dialog for enabling or disabling receiving betas.

  • p44script IDE: built-in integrated development environment (IDE). The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.
  • SmartLED Simulator/Debugger: Another very important tool for quick development of advanced SmartLED (WS281x) setups like tickers, animations etc.

    • see on-screen what is happening on the LED output (works via remote access, too)
    • inspect any view in the view hierachy
    • examine selected view's properties
    • configure views live by changing properties and immediately see the effects
  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.

Other important Changes since 1.7.0.3

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • p44lrgraphics: add more fonts. The font field of a text view now understands: 5x5, 5x7, 5x8, m3x6, m5x7, m6x11, bios and sixtyfour. Happy ticker hacking ;-)
  • p44script: removed confusing separation between "declaration" and "script" part
  • p44script: new compound operators (+=, -=, *=, etc), increment and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
  • p44script: 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.38 (testing)
released 2024-02-08

Firmware 1.7.0.38 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.37

  • SmartLED devices: When creating new 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.
  • p44script: improved thread and result handling, make abort() work for concurrent code used in functions.
  • p44lrgraphics: buxfix: re-added missing "torch" parameters. Canvas now supports line drawing with color gradient and copying pixels within canvas or from other views. Added blocks view based on canvas.

Changes since 1.7.0.36

  • matter: now based on matter SDK release 1.2.0.1
  • p44lrgraphics: bugfixes and small improvements for details that became obvious only when documenting p44lrgraphics in full.
  • p44script: 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.
  • MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of these affordable input devices in automation projects, and coordinate with sound devices.
  • serial port support: p44script can now access serial ports.
  • p44script: define a default value for global variables (only applied when variable does not yet exist) using default keyword.
  • p44script: on (eventsource()) stable n { … } can now limit the event rate from eventsource to minimal interval as specified by n.
  • p44script playground (in IDE): bugfix: running in playground must not clear the context variables!
  • p44script debugging functions: improve existing introspection functions (e.g. contexthandlers()) and add new threads() and builtins().
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.

Changes since 1.7.0.35

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • ledchain "lightspot" (p44lrgraphics): coloring improved, better size and gradient control.
  • animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
  • p44lrgraphics: add vcr_osd_mono font as used at 37c3 :-)

Main additions since 1.7.0.3

  • There is a new feature allowing you to freely disable or enable receiving public beta firmware for your P44-LC device. Right now you are already running a beta version, but you can now opt-out from betas (and opt-in again later, of course) via the web interface. There is a new button labelled "Beta..." besides the "Check for new firmware version..." to open a dialog for enabling or disabling receiving betas.

  • p44script IDE: built-in integrated development environment (IDE). The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.
  • SmartLED Simulator/Debugger: Another very important tool for quick development of advanced SmartLED (WS281x) setups like tickers, animations etc.

    • see on-screen what is happening on the LED output (works via remote access, too)
    • inspect any view in the view hierachy
    • examine selected view's properties
    • configure views live by changing properties and immediately see the effects
  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.

Other important Changes since 1.7.0.3

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • p44lrgraphics: add more fonts. The font field of a text view now understands: 5x5, 5x7, 5x8, m3x6, m5x7, m6x11, bios and sixtyfour. Happy ticker hacking ;-)
  • p44script: removed confusing separation between "declaration" and "script" part
  • p44script: new compound operators (+=, -=, *=, etc), increment and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
  • p44script: 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.37 (testing)
released 2024-01-22

Firmware 1.7.0.37 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.36

  • matter: now based on matter SDK release 1.2.0.1
  • p44lrgraphics: bugfixes and small improvements for details that became obvious only when documenting p44lrgraphics in full.
  • p44script: 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.
  • MIDI support: p44script now can send and receive MIDI messages (e.g. MIDI keyboard/controller connected via USB) to make use of these affordable input devices in automation projects, and coordinate with sound devices.
  • serial port support: p44script can now access serial ports.
  • p44script: define a default value for global variables (only applied when variable does not yet exist) using default keyword.
  • p44script: on (eventsource()) stable n { … } can now limit the event rate from eventsource to minimal interval as specified by n.
  • p44script playground (in IDE): bugfix: running in playground must not clear the context variables!
  • p44script debugging functions: improve existing introspection functions (e.g. contexthandlers()) and add new threads() and builtins().
  • triggers: fix bug that prevented saving triggers in the web-UI in some cases.

Changes since 1.7.0.35

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • ledchain "lightspot" (p44lrgraphics): coloring improved, better size and gradient control.
  • animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
  • p44lrgraphics: add vcr_osd_mono font as used at 37c3 :-)

Main additions since 1.7.0.3

  • There is a new feature allowing you to freely disable or enable receiving public beta firmware for your P44-LC device. Right now you are already running a beta version, but you can now opt-out from betas (and opt-in again later, of course) via the web interface. There is a new button labelled "Beta..." besides the "Check for new firmware version..." to open a dialog for enabling or disabling receiving betas.

  • p44script IDE: built-in integrated development environment (IDE). The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.
  • SmartLED Simulator/Debugger: Another very important tool for quick development of advanced SmartLED (WS281x) setups like tickers, animations etc.

    • see on-screen what is happening on the LED output (works via remote access, too)
    • inspect any view in the view hierachy
    • examine selected view's properties
    • configure views live by changing properties and immediately see the effects
  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.

Other important Changes since 1.7.0.3

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • p44lrgraphics: add more fonts. The font field of a text view now understands: 5x5, 5x7, 5x8, m3x6, m5x7, m6x11, bios and sixtyfour. Happy ticker hacking ;-)
  • p44script: removed confusing separation between "declaration" and "script" part
  • p44script: new compound operators (+=, -=, *=, etc), increment and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.
  • p44script: 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.36 (testing)
released 2024-01-10

Firmware 1.7.0.36 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.35

  • DALI: Hardware Summary improvements, in particular for manually configured DALI groups and S/N number display.
  • ledchain "lightspot" (p44lrgraphics): coloring improved, better size and gradient control.
  • animators: fixed "easeout" function, which was not at ease at all but did a sudden full range transition.
  • p44lrgraphics: add vcr_osd_mono font as used at 37c3 :-)

Changes since 1.7.0.34

  • p44script: up-to-date script reference
  • p44script: made hsv() and rgb() color conversion functions generally available (before, these were only available on devices with SmartLED/ledchain support enabled)
  • p44lrgraphics: bugfix: automatic view scroller was broken since 1.7.0.33, so for example text tickers did not scroll correcly any more.
  • p44lrgraphics: bugfix: new startscroll() function introduced in 1.7.0.33 could cause a crash.
  • p44lrgraphics: bugfix: some zoom_x/y factors could cause a crash.
  • p44lrgraphics: add more fonts. The font field of a text view now understands: 5x5, 5x7, 5x8, m3x6, m5x7, m6x11, bios and sixtyfour. Happy ticker hacking ;-)

Changes since 1.7.0.33

The only change in 1.7.0.34 is as follows:

  • There is a new feature allowing you to freely disable or enable receiving public beta firmware for your P44-LC device. Right now you are already running a beta version, but you can now opt-out from betas (and opt-in again later, of course) via the web interface. There is a new button labelled "Beta..." besides the "Check for new firmware version..." to open a dialog for enabling or disabling receiving betas.

Changes since 1.7.0.32

  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.
  • p44script: removed confusing separation between "declaration" and "script" part

  • p44script: added compound assignment operators (+=, -=, *=, etc)
  • p44script: added inrement and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.

Changes since 1.7.0.29

  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)
  • p44script: 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.

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.35 (testing)
released 2023-12-21

Firmware 1.7.0.35 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.34

  • p44script: up-to-date script reference
  • p44script: made hsv() and rgb() color conversion functions generally available (before, these were only available on devices with SmartLED/ledchain support enabled)
  • p44lrgraphics: bugfix: automatic view scroller was broken since 1.7.0.33, so for example text tickers did not scroll correcly any more.
  • p44lrgraphics: bugfix: new startscroll() function introduced in 1.7.0.33 could cause a crash.
  • p44lrgraphics: bugfix: some zoom_x/y factors could cause a crash.
  • p44lrgraphics: add more fonts. The font field of a text view now understands: 5x5, 5x7, 5x8, m3x6, m5x7, m6x11, bios and sixtyfour. Happy ticker hacking ;-)

Changes since 1.7.0.33

The only change in 1.7.0.35 is as follows:

  • There is a new feature allowing you to freely disable or enable receiving public beta firmware for your P44-LC device. Right now you are already running a beta version, but you can now opt-out from betas (and opt-in again later, of course) via the web interface. There is a new button labelled "Beta..." besides the "Check for new firmware version..." to open a dialog for enabling or disabling receiving betas.

Changes since 1.7.0.32

  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.
  • p44script: removed confusing separation between "declaration" and "script" part

  • p44script: added compound assignment operators (+=, -=, *=, etc)
  • p44script: added inrement and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.

Changes since 1.7.0.29

  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)
  • p44script: 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.

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.34 (testing)
released 2023-12-12

Firmware 1.7.0.34 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.32

  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.
  • p44script: removed confusing separation between "declaration" and "script" part

  • p44script: added compound assignment operators (+=, -=, *=, etc)
  • p44script: added inrement and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.

Changes since 1.7.0.29

  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)
  • p44script: 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.

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.33 (testing)
released 2023-12-01

Firmware 1.7.0.33 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should NOT be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.32

  • SmartLED graphics system: major overhaul

    • all views now can scroll (pan), zoom and rotate with antialiasing and sub-pixel precision. This allows creating smooth looking movements and crazy things like diagonal tickers.
    • all view properties are now directly accessible as fields on the view object. So you can now modify by writing lrg.findview('TEXT').x = 42 - in scripts or for live testing in the IDE. configure remains available for quickly creating views and entire view hierarchies in one step, also from json files.
  • p44script: removed confusing separation between "declaration" and "script" part

  • p44script: added compound assignment operators (+=, -=, *=, etc)
  • p44script: added inrement and decrement operators (++ and --)
  • p44script: added for (init; condition; next) { ... } loop construct
  • p44script: concurrent now has a passing option to pass values safely (glitch-free) into thread variables of the concurrently running code.

Changes since 1.7.0.29

  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)
  • p44script: 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.

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.32 (testing)
released 2023-11-23

Firmware 1.7.0.32 - Matter bridge und p44Script IDE beta testing

Test Version with Beta matter bridge and p44script IDE, SmartLED debugger on OpenWrt 22.03

Important: While the matter bridge has matured quite a bit over the past few months and is known working fine with different big name SmartHome systems, it is still a beta version and as such should not be considered production ready. In particular, please do not expect these beta setups to migrate seamlessly into a future certified release - most likely the commissioning will need to be reset and recreated at that time.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.29

  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)
  • p44script: 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.

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.31 (testing)
released 2023-11-21

Firmware 1.7.0.31 - Matter bridge und p44Script IDE beta testing

Test Version with p44script IDE, SmartLED debugger and p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.30

  • IDE and SmartLED debugger: Many detail improvements and bug fixes
  • SmartLED graphics: New text style options "bolden" and "stretch"

Changes since 1.7.0.29

  • New: SmartLED Simulator/Debugger: Another very important tool for quick development of advanced SmartLED (WS281x) setups like tickers, animations etc.

    • 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
  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

    Note that the IDE is a beta version, there are certainly some rough edges.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.30 (testing)
released 2023-11-17

Firmware 1.7.0.30 - Matter bridge und p44Script IDE beta testing

Test Version with p44script IDE, SmartLED debugger and p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.29

  • New: SmartLED Simulator/Debugger: Another very important tool for quick development of advanced SmartLED (WS281x) setups like tickers, animations etc.

    • 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
  • p44script IDE: many detail improvements, much better REPL/inspector (full-featured editor)

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

    Note that the IDE is a beta version, there are certainly some rough edges.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.29 (testing)
released 2023-11-10

Firmware 1.7.0.29 - Matter bridge und p44Script IDE beta testing

Test Version with p44script IDE and p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.28

  • p44script IDE: integrated development environment is now mostly complete. The new IDE allows comfortable editing and now conveniently debugging scripts interactively:

    • breakpoints: just click a line number in the left margin to set or clear them. Breakpoints remain set until the device is restarted, but they are active only when a browser has the IDE page open.
    • single stepping through scripts (step over F6, step into F7/step out F8 of functions)
    • inspection: at every pause (breakpoint or single step), the console area (lower left panel) allows typing variable names to see their values, but also execute any other statement in the context of the running script.
    • playground: for testing more complex script snippets, just choose "p44script playground" from the top left Open... menu. Use the =? evaluation button F9 to run the contents of the playground window and see the final result.
    • live log view: shows the activity of your P44. Use the buttons in the bottom right to clear the log view (not the log itself!), pause the log output and change the log detail level.

    All controls have tooltips to explain the function.

  • open the IDE directly using the new buttons on the System tab, or via the links in the right corner of every script editing field. Note: only one browser/tab should have the IDE open at the same time.

    Note that the IDE is a beta version, there are certainly some rough edges.

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.28 (testing)
released 2023-10-27

Firmware 1.7.0.28 - Matter bridge beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.27

  • matter beta: When the matter bridge is active, a new column "M" appears in the device list showing green dots for those devices that are bridged to matter.
  • Preview of big new feature: p44script IDE (integrated development environment): The new IDE has multiple editing tabs, access to all scripts via popup, and will (in upcoming versions) support debugging with breakpoints, single stepping and script context inspection. In this preview, open the IDE by clicking the "Edit script in p44script IDE" link below the plaintext script editing boxes, or navigate to ide.html.
    • the p44script IDE is fully embedded on your P44-xx device - no external dependencies, no cloud, everything on device. This means you can always fully access and maintain your installations with just a web browser.
    • Until now, script sources were stored as strings along with other settings in sqlite databases. To improve flexibility in maintaining and versioning, scripts are now stored in simple text files (with .p44s suffix) in /flash/scripts/vdcd on the device and in backups.
    • Debugging features will be added to the IDE in upcoming firmware versions soon.

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.27 (testing)
released 2023-10-06

Firmware 1.7.0.27 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.26

  • matter beta: support for push buttons. But current Apple/Google/Smartthings matter controllers seemingly do not yet support buttons at this time, so these are largely untested. If you have a matter controller which supports button, please let me know ;-)
  • matter beta: internal: using new build system configuration. Should not make any difference for using matter.
  • matter logging: separate settings for p44mbrd app and matter log levels.
  • 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).

Other important Changes since 1.7.0.3

  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)
  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • p44script: array elements can now be appended using the arr[] = newElem construct.
  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.
  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.26 (testing)
released 2023-08-11

Firmware 1.7.0.26 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.25

  • matter beta: Bridge now has a single experimental test "action". The matter standard provides actions as a means to access things like scenes from an existing smarthome system (like dS). However, it seems like neither Apple nor Google Home are actually exposing actions in their GUIs so far.
  • matter beta: Internal p44mbrd improvements in preparation toward certification, see current plan44 news.

Changes since 1.7.0.24

  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • matter beta: Display of bridge status (commissionable or not) should be more reliable, added buttons to enter/leave commissioning mode.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)

Changes since 1.7.0.23

  • mater beta: 1.7.0.24 is mainly a testing release for the refactored matter bridge daemon, which is an important step in a cooperative effort towards matter certification of the plan44 products.
  • p44script: array elements can now be appended using the arr[] = newElem construct.

Changes since 1.7.0.22

  • 1.7.0.23 is only a build system testing/verification release - this is the first 100% Intel free build ;-) Underlying OpenWrt and all plan44 software (vdcd, p44mbrd etc.) were built on arm64 (M2). There are no functional changes compared to 1.7.0.22.

Changes since 1.7.0.21

  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Other important Changes since 1.7.0.3

  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.25 (testing)
released 2023-08-04

Firmware 1.7.0.25 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.24

  • matter beta: Support for bridging roller blinds and jalousies, including live feedback when blinds are in movement.
  • matter beta: Display of bridge status (commissionable or not) should be more reliable, added buttons to enter/leave commissioning mode.
  • logging: Now uses symbol markers for loglevel differentiation (and can also produce ANSI-colored logs)

Changes since 1.7.0.23

  • mater beta: 1.7.0.24 is mainly a testing release for the refactored matter bridge daemon, which is an important step in a cooperative effort towards matter certification of the plan44 products.
  • p44script: array elements can now be appended using the arr[] = newElem construct.

Changes since 1.7.0.22

  • 1.7.0.23 is only a build system testing/verification release - this is the first 100% Intel free build ;-) Underlying OpenWrt and all plan44 software (vdcd, p44mbrd etc.) were built on arm64 (M2). There are no functional changes compared to 1.7.0.22.

Changes since 1.7.0.21

  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Other important Changes since 1.7.0.3

  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.24 (testing)
released 2023-07-19

Firmware 1.7.0.24 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.23

  • mater beta: 1.7.0.24 is mainly a testing release for the refactored matter bridge daemon, which is an important step in a cooperative effort towards matter certification of the plan44 products.
  • p44script: array elements can now be appended using the arr[] = newElem construct.

Changes since 1.7.0.22

  • 1.7.0.23 is only a build system testing/verification release - this is the first 100% Intel free build ;-) Underlying OpenWrt and all plan44 software (vdcd, p44mbrd etc.) were built on arm64 (M2). There are no functional changes compared to 1.7.0.22.

Changes since 1.7.0.21

  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Other important Changes since 1.7.0.3

  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.23 (testing)
released 2023-06-21

Firmware 1.7.0.23 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.22

  • 1.7.0.23 is only a build system testing/verification release - this is the first 100% Intel free build ;-) Underlying OpenWrt and all plan44 software (vdcd, p44mbrd etc.) were built on arm64 (M2). There are no functional changes compared to 1.7.0.22.

Changes since 1.7.0.21

  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Other important Changes since 1.7.0.3

  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.22 (testing)
released 2023-05-31

Firmware 1.7.0.22 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.21

  • matter beta: update to matter 1.1.0.1
  • web-UI: fixed the channel settings dialog, where value sliders sometimes were "jumpy" (since 1.7.0.7) and changed color settings when they should not.

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Other important Changes since 1.7.0.3

  • Enocean: add support for D2-07-00 door lock status profile.
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • Matter bridge: Also show manual paring code along with QR code.
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.
  • backups: P44-LC 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).
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • evaluators: improved logging to show which evaluator device is affected when there are unresolved value mappings
1.7.0.21 (testing)
released 2023-05-05

Firmware 1.7.0.21 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.20

  • matter beta: important stability fixes. In particular, this should make Apple Home integration more responsive especially when using the "new Home Architecture" as re-introduced with iOS/tvOS 16.4.
  • platform: updated to OpenWrt 22.03.5

Changes since 1.7.0.17

  • Enocean: add support for D2-07-00 door lock status profile.
  • p44features: many enhancements for rfid feature
  • 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.

Changes since 1.7.0.15

  • Animators: fixed bug that caused spurious glitches (animators seemingly not running or running too fast)
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • vDC API: added stopActions parameter to dimChannel. If not specified, actions will (as before) be stopped on dim stop, but not on dim start.
  • Matter bridge: Also show manual paring code along with QR code.

Changes since 1.7.0.14

  • Matter bridge: show QRcode with white border (some QRCode readers don't see the code otherwise).
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • "features": fixed bugs in "rfids" and "indicators" features.

Changes since 1.7.0.13

  • Matter bridge: fixed bugs in color control that could cause "accessory not responding" errors.
  • Matter bridge: fixed bug that could cause device endpoints IDs to get messed up after deleting and adding devices for matter bridging, possibly leading to messed up representation in matter controller UIs.
  • Matter bridge: fixed bug in illumination sensor mapping, was mapped to matter as humidity.
  • Matter bridge: fixed detail behaviour of dimming lights according to matter specs.
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.

Changes since 1.7.0.12

  • 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.

Changes since 1.7.0.11

  • backups: P44-LC 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).

Changes since 1.7.0.10

  • DALI: fixed problem with scene calls not working with some Tunable White dimmers (also depended on the scene settings, thus happened only in rare cases)

Changes since 1.7.0.9

  • bugfix: color mode attribute in matter color lights should work ok now

Changes since 1.7.0.8

  • compatibility: commissioning now works with iOS 16.2 beta
  • transition time: now works for fractions seconds (was truncated to integer seconds before)
  • identify: now works correctly (more than once per device)
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..

Changes since 1.7.0.7

  • sensors: temperature, humidity, illumination sensors now supported
  • composed devices: devices containing outputs and sensors will now be modelled as "composed device". Matter controller apps might not recognize composed devices yet and still show them like separate devices (as in iOS 16.1 Home.app)
  • non-light outputs: these are now bridged as "plug-in unit" into matter
  • identify: support for identifying lights during commissioning (however iOS 16.1's "Identify" button does not work with bridged devices yet)
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • platform: updated to OpenWrt 22.03.2

Changes since 1.7.0.6

  • bridge devices: do not monitor other scenes than on/off for areas and on/off bridges.
  • 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

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.7.0.17 (testing)
released 2023-02-01

Firmware 1.7.0.17 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.16

  • p44features: fixed bug in resource access path handling that prevented e.g. indicators to load view configs stored in the default indicator resources dir.

Changes since 1.7.0.15

  • Animators: fixed bug that caused spurious glitches (animators seemingly not running or running too fast)
  • 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.
  • click handling: dimming no longer stops running scene actions (especially for scene scripts providing effects that should be ongoing but still be dimmable)
  • vDC API: added stopActions parameter to dimChannel. If not specified, actions will (as before) be stopped on dim stop, but not on dim start.
  • Matter bridge: Also show manual paring code along with QR code.

Changes since 1.7.0.14

  • Matter bridge: show QRcode with white border (some QRCode readers don't see the code otherwise).
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to input or output a digital value
  • "features": fixed bugs in "rfids" and "indicators" features.

Changes since 1.7.0.13

  • Matter bridge: fixed bugs in color control that could cause "accessory not responding" errors.
  • Matter bridge: fixed bug that could cause device endpoints IDs to get messed up after deleting and adding devices for matter bridging, possibly leading to messed up representation in matter controller UIs.
  • Matter bridge: fixed bug in illumination sensor mapping, was mapped to matter as humidity.
  • Matter bridge: fixed detail behaviour of dimming lights according to matter specs.
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.

Changes since 1.7.0.12

  • 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.

Changes since 1.7.0.11

  • backups: P44-LC 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).

Changes since 1.7.0.10

  • DALI: fixed problem with scene calls not working with some Tunable White dimmers (also depended on the scene settings, thus happened only in rare cases)

Changes since 1.7.0.9

  • bugfix: color mode attribute in matter color lights should work ok now

Changes since 1.7.0.8

  • compatibility: commissioning now works with iOS 16.2 beta
  • transition time: now works for fractions seconds (was truncated to integer seconds before)
  • identify: now works correctly (more than once per device)
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..

Changes since 1.7.0.7

  • sensors: temperature, humidity, illumination sensors now supported
  • composed devices: devices containing outputs and sensors will now be modelled as "composed device". Matter controller apps might not recognize composed devices yet and still show them like separate devices (as in iOS 16.1 Home.app)
  • non-light outputs: these are now bridged as "plug-in unit" into matter
  • identify: support for identifying lights during commissioning (however iOS 16.1's "Identify" button does not work with bridged devices yet)
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • platform: updated to OpenWrt 22.03.2

Changes since 1.7.0.6

  • bridge devices: do not monitor other scenes than on/off for areas and on/off bridges.
  • 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

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.7.0.15 (testing)
released 2022-12-30

Firmware 1.7.0.15 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.14

  • Matter bridge: show QRcode with white border (some QRCode readers don't see the code otherwise).
  • Analogio: Added CWWW lights, add WebUI support for creating Linux-PWMChip-based lights.
  • p44script: Added digitalbus() to combine multiple GPIOs to output a digital value
  • "features": fixed bugs in "rfids" and "indicators" features.

Changes since 1.7.0.13

  • Matter bridge: fixed bugs in color control that could cause "accessory not responding" errors.
  • Matter bridge: fixed bug that could cause device endpoints IDs to get messed up after deleting and adding devices for matter bridging, possibly leading to messed up representation in matter controller UIs.
  • Matter bridge: fixed bug in illumination sensor mapping, was mapped to matter as humidity.
  • Matter bridge: fixed detail behaviour of dimming lights according to matter specs.
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.

Changes since 1.7.0.12

  • 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.

Changes since 1.7.0.11

  • backups: P44-LC 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).

Changes since 1.7.0.10

  • DALI: fixed problem with scene calls not working with some Tunable White dimmers (also depended on the scene settings, thus happened only in rare cases)

Changes since 1.7.0.9

  • bugfix: color mode attribute in matter color lights should work ok now

Changes since 1.7.0.8

  • compatibility: commissioning now works with iOS 16.2 beta
  • transition time: now works for fractions seconds (was truncated to integer seconds before)
  • identify: now works correctly (more than once per device)
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..

Changes since 1.7.0.7

  • sensors: temperature, humidity, illumination sensors now supported
  • composed devices: devices containing outputs and sensors will now be modelled as "composed device". Matter controller apps might not recognize composed devices yet and still show them like separate devices (as in iOS 16.1 Home.app)
  • non-light outputs: these are now bridged as "plug-in unit" into matter
  • identify: support for identifying lights during commissioning (however iOS 16.1's "Identify" button does not work with bridged devices yet)
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • platform: updated to OpenWrt 22.03.2

Changes since 1.7.0.6

  • bridge devices: do not monitor other scenes than on/off for areas and on/off bridges.
  • 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

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.7.0.14 (testing)
released 2022-12-16

Firmware 1.7.0.14 - Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.13

  • Matter bridge: fixed bugs in color control that could cause "accessory not responding" errors.
  • Matter bridge: fixed bug that could cause device endpoints IDs to get messed up after deleting and adding devices for matter bridging, possibly leading to messed up representation in matter controller UIs.
  • Matter bridge: fixed bug in illumination sensor mapping, was mapped to matter as humidity.
  • Matter bridge: fixed detail behaviour of dimming lights according to matter specs.
  • Channel transitions: improved wraparound channels (such as "hue") to allow full circle transitions in one step.
  • 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.

Changes since 1.7.0.12

  • 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.

Changes since 1.7.0.11

  • backups: P44-LC 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).

Changes since 1.7.0.10

  • DALI: fixed problem with scene calls not working with some Tunable White dimmers (also depended on the scene settings, thus happened only in rare cases)

Changes since 1.7.0.9

  • bugfix: color mode attribute in matter color lights should work ok now

Changes since 1.7.0.8

  • compatibility: commissioning now works with iOS 16.2 beta
  • transition time: now works for fractions seconds (was truncated to integer seconds before)
  • identify: now works correctly (more than once per device)
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..

Changes since 1.7.0.7

  • sensors: temperature, humidity, illumination sensors now supported
  • composed devices: devices containing outputs and sensors will now be modelled as "composed device". Matter controller apps might not recognize composed devices yet and still show them like separate devices (as in iOS 16.1 Home.app)
  • non-light outputs: these are now bridged as "plug-in unit" into matter
  • identify: support for identifying lights during commissioning (however iOS 16.1's "Identify" button does not work with bridged devices yet)
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • platform: updated to OpenWrt 22.03.2

Changes since 1.7.0.6

  • bridge devices: do not monitor other scenes than on/off for areas and on/off bridges.
  • 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

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.7.0.9 (testing)
released 2022-10-28

Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.8

  • compatibility: commissioning now works with iOS 16.2 beta
  • transition time: now works for fractions seconds (was truncated to integer seconds before)
  • identify: now works correctly (more than once per device)
  • web-UI: the status and info columns in the device tab are now refreshing every 15 seconds so the list should always show pretty much current information without the need to reload the entire list..

Changes since 1.7.0.7

  • sensors: temperature, humidity, illumination sensors now supported
  • composed devices: devices containing outputs and sensors will now be modelled as "composed device". Matter controller apps might not recognize composed devices yet and still show them like separate devices (as in iOS 16.1 Home.app)
  • non-light outputs: these are now bridged as "plug-in unit" into matter
  • identify: support for identifying lights during commissioning (however iOS 16.1's "Identify" button does not work with bridged devices yet)
  • web-UI: the channel settings dialog (sprocket icon, with sliders for adjusting channel values) now updates channel values live, so you can watch channel changes as they happen via matter.
  • platform: updated to OpenWrt 22.03.2

Changes since 1.7.0.6

  • bridge devices: do not monitor other scenes than on/off for areas and on/off bridges.
  • 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

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.7.0.6 (testing)
released 2022-10-04

Matter bridge early beta testing

Test Version with p44mbrd matter bridge on OpenWrt 22.03

Note: the 1.7.x.x matter-enabled beta versions are available upon request only at this time. See plan44 matter info page for details.

Important: This is really a beta version - matter itself and this firmware most probably contain bugs. It has been proved working fine in our internal tests, but still, be aware that there could be unexpected problems.

Please also do not forget to create a backup of your P44-LC configuration before upgrading!

Changes since 1.7.0.5

  • based on officially released matter SDK v1.0.0

Changes since 1.7.0.4

  • matter bridge restart and reset now works
  • better bridge status (commissionable, started, waiting for first device) info

Changes since 1.7.0.3

  • dynamic adding of newly bridged devices
  • can now start without bridged devices, delays matter-side startup until we have at least one device
  • deleting devices sets them unreachable in matter
1.6.8.0 (testing)
released 2023-06-07

Firmware 1.6.8.0

This Beta "testing" Firmware 1.6.8.0 for P44-LC devices is the "golden master" for and thus identical to production firmware 1.6.8. It contains some general improvements and bug fixes.

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

Changes since production version 1.6.6 and Beta-Version 1.6.7.0 testing, resp.

Bugfixes

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

Improvements

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

Changes since 1.6.5.11 / 1.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
1.6.5.11 (testing)
released 2022-09-06

This Beta "testing" Firmware 1.6.5.11 for P44-LC devices is the "golden master" for and thus identical to production firmware 1.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 1.6.4 and Beta-Version 1.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 not appear in Bonjour or Avahi network browsers. Now long names are automatically shortened to prevent this.
  • Certain broken DALI devices could cause the bus scanning taking forever with no result. This did not happen in normal operation with all DALI devices correctly operating. The bugfix however helps while diagnosing DALI bus errors.

p44script

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

Scripted devices/external device API

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

First release candiate for 1.6.5 production release

Changes since 1.6.5.9

  • DALI bugfix: scanning for devices in certain broken DALI bus/device cases could last forever.
  • p44script: added dnssdbrowse() to find devices in local network.

Changes since 1.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 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.
1.6.5.9 (testing)
released 2022-08-19

Changes since 1.6.5.7

  • Bugfix: assigning a very long name for the vdchost could cause dns-sd not being able to publish and thus device not appearing in "Bonjour" or "Avahi" network browsers.
  • 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 1.6.5.3

  • 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).

Changes since 1.6.4.0

  • WebUI: 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).
  • triggers: can now be represented as a slider or text input field in the custom action page, the value of the slider or text input gets available as triggerparam variable in the trigger action script.
  • transitions: improved timing accuray, independent transitions can now run in different channels simultaneously with different speeds.
  • p44script: add delayuntil() function for awaiting an 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. Add lowercase() and uppercase() function, add caseinsensitive option for find().
1.6.5.7 (testing)
released 2022-07-11

Changes since 1.6.5.3

  • 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).

Changes since 1.6.4.0

  • WebUI: 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).
  • triggers: can now be represented as a slider or text input field in the custom action page, the value of the slider or text input gets available as triggerparam variable in the trigger action script.
  • transitions: improved timing accuray, independent transitions can now run in different channels simultaneously with different speeds.
  • p44script: add delayuntil() function for awaiting an 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. Add lowercase() and uppercase() function, add caseinsensitive option for find().
1.6.5.3 (testing)
released 2022-05-06

Changes since 1.6.4.0

  • WebUI: 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).
  • triggers: can now be represented as a slider or text input field in the custom action page, the value of the slider or text input gets available as triggerparam variable in the trigger action script.
  • transitions: improved timing accuray, independent transitions can now run in different channels simultaneously with different speeds.
  • p44script: add delayuntil() function for awaiting an 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. Add lowercase() and uppercase() function, add caseinsensitive option for find().
1.6.5.1 (testing)
released 2022-04-04

Changes since 1.6.4.0

  • scene editing: when opening the channels dialog for a output device with 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.
1.6.5.0 (testing)
released 2022-04-01

Changes since 1.6.4.0

  • 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.
1.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 1.6.4.0, please let me know.

Changes since 1.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).

1.6.3.8 (testing)
released 2022-03-08

Changes since 1.6.3.6

  • DALI: fix brightness dimming for some RGB(WA) color dimmers.
  • shadow devices: should now get proper UI in digitalSTROM (added resp. modelfeatures)
  • platform: support for new p44-mini-e+l hardware.
  • p44script: restartapp() now can optionally also reboot, shutdown or start a firmware upgrade.

Changes since 1.6.3.5

  • Transition time: fix bugs that could occur in some edge cases such that scene transitions would not work as expected.
  • Ledchain: removed obsolete --ledchainmax command line option, use --ledpowerlimit instead.
  • 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 1.6.3.3

  • p44script: fixed 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: the 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. 
  • Web-UI: script reference was not up to date with actual functionality in 1.6.3.3.
  • p44script: new functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
1.6.3.6 (testing)
released 2022-02-07

Changes since 1.6.3.5

  • Transition time: fix bugs that could occur in some edge cases such that scene transitions would not work as expected.
  • Ledchain: removed obsolete --ledchainmax command line option, use --ledpowerlimit instead.
  • 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 1.6.3.3

  • p44script: fixed 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: the 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. 
  • Web-UI: script reference was not up to date with actual functionality in 1.6.3.3.
  • p44script: new functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
1.6.3.5 (testing)
released 2022-01-30

Changes since 1.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: the 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. 
  • Web-UI: script reference was not up to date with actual functionality in 1.6.3.3.
  • p44script: new functions maxblocktime() and maxruntime() for controlling script execution time slice and overall max run time.
1.6.3.3 (testing)
released 2022-01-28

Changes since 1.6.3.1

  • 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.
  • 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.
1.6.3.1 (testing)
released 2021-12-16

Changes since 1.6.2 / 1.6.2.3

  • 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).
  • log display: there is now a toggle to have log display wrap long lines
  • p44script: new sceneno() function.
  • 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.

1.6.2.1 (testing)
released 2021-11-15

Changes since 1.6.1 / 1.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).
  • plan44 tech docs: online docs updated theme with better navigation and readability, added new sections for modbus, i2c, spi

Changes since 1.6.0 / 1.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.
1.6.1.2 (testing)
released 2021-10-31

Changes since 1.6.0 / 1.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.

1.6.1.0 (testing)
released 2021-10-27

Changes since 1.6.0 / 1.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).

1.6.0.10 (testing)
released 2021-09-28

Second release candiate for 1.6.0 production release

The firmware 1.6.0 for P44-LC/AC devices (and 2.6.0 for P44-DSB) 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 1.5.0

Web Interface

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

DALI

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

Scripting

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

Standalone Controller (P44-LC only)

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

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

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

General

  • Platform: updated to OpenWrt 19.07.8
  • Other: of course, many detail improvement and bug fixes…
1.6.0.9 (testing)
released 2021-09-23

Second release candiate for 1.6.0 production release

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.6.0.8

  • WebUI: "Technical details" section includes link to open property tree
  • WebUI: visual feedback for buttons also in REPL and tweak screens
  • WebUI: pretty print JSON results in REPL and tweak screens
  • logging: much better context for p44script related messages.
  • ledchaindevices: simplified creating text, life, image based lights
  • bugfix: p44script throw() did not work properly in all cases
  • bugfix: errors were not reliably thrown in all cases

Changes since 1.6.0.7

  • WebUI: Optimized Lights tab for better usability on small screens. All controls are now reachable even on a small phone screen (in landscape mode)
  • 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)
  • DALI DT8: fix a case where a color change affecting only W or A (without change in R,G,B) in a RGBWA light was not always correctly applied.

Changes since 1.6.0.6

  • platform: updated to OpenWrt 19.07.8
  • triggers: proper editing for custom action buttons.
  • 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 1.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.
  • webserver: mg44 3.10 now can have separate auth (or none) for each API endpoint
  • p44script: add lock() for thread synchronisation
  • p44script: add support for websocket APIs with websocket() function.
  • p44script: accessing json object with numeric array subscript now returns field names.
  • p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.8 (testing)
released 2021-09-16

First release candiate for 1.6.0 production release

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.6.0.7

  • WebUI: Optimized Lights tab for better usability on small screens. All controls are now reachable even on a small phone screen (in landscape mode)
  • 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)
  • DALI DT8: fix a case where a color change affecting only W or A (without change in R,G,B) in a RGBWA light was not always correctly applied.

Changes since 1.6.0.6

  • platform: updated to OpenWrt 19.07.8
  • triggers: proper editing for custom action buttons.
  • 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 1.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.
  • webserver: mg44 3.10 now can have separate auth (or none) for each API endpoint
  • p44script: add lock() for thread synchronisation
  • p44script: add support for websocket APIs with websocket() function.
  • p44script: accessing json object with numeric array subscript now returns field names.
  • p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.7 (testing)
released 2021-09-03

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.6.0.6

  • platform: updated to OpenWrt 19.07.8
  • triggers: proper editing for custom action buttons.
  • 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 1.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.
  • webserver: mg44 3.10 now can have separate auth (or none) for each API endpoint
  • p44script: add lock() for thread synchronisation
  • p44script: add support for websocket APIs with websocket() function.
  • p44script: accessing json object with numeric array subscript now returns field names.
  • p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.6 (testing)
released 2021-08-23

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.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.
  • webserver: mg44 3.10 now can have separate auth (or none) for each API endpoint
  • p44script: add lock() for thread synchronisation
  • p44script: add support for websocket APIs with websocket() function.
  • p44script: accessing json object with numeric array subscript now returns field names.
  • p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.5 (testing)
released 2021-08-13

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.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: bugfix: calling user defined functions from concurrent blocks did not always work correctly.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.4 (testing)
released 2021-08-04

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.6.0.2

  • p44script: extended support for http client with httprequest() function.
  • p44script: bugfix: calling user defined functions from concurrent blocks did not always work correctly. 
  • 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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.3 (testing)
released 2021-07-27

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.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 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.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)
  • web-ui: wifi settings (P44-DSB-X only, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.1 (testing)
released 2021-07-07

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!
  • Documentation and Examples are available in p44 tech docs.

Changes since 1.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, Cmd/Ctrl-Shift click on "Edit Network Settings...") now allow configuring client and access point separately. 

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.6.0.0 (testing)
released 2021-07-01

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!
  • Documentation and Examples will be published in p44 tech docs.

Changes since 1.5.1.1

  • triggers: rudimentary editing support for custom action buttons (WIP)
  • p44script: better variable scopes, enhanced log() function now allows formatting like format(), appversion() function.
  • p44script: support for digitalIO, analogIO and DC motors.
  • triggers: now can set different trigger modes (before, trigger expression always had to change from false to true to fire trigger, which is still the default)
  • 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: 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: 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().
1.5.1.1 (testing)
released 2021-03-25

Changes since 1.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).
  • DALI: regression bugfix: DALI hardware summary did not show in some cases (when there were devices on the bus with no device info at all)
  • DALI: support for non-DT-8 tunable white lights providing one dimmer channel for brightness, and a second channel for color temperature (warm to cool)
  • Dimming: after turning on light via scene call, next dimming action with a single button will dim down (tried to dim up before, which usually makes no sense after turning on)
1.5.0.0 (testing)
released 2021-02-10

First release candiate for 1.5.0 production release

New features (since 1.0.5.0 production release)

  • Automatic check for Updates: optionally, the P44-LC can now automatically check if a new firmware version is available, and if so, show an alert when opening the web interface (the next available version number is also available as a p44script function for use in triggers and evaluators).
  • Scripting: a new scripting engine, p44script, now allows scripting almost every aspect of the device.
    • p44script has advanced features like user defined functions, concurrent operation, event handlers and a lot of functions from math to string handling to http and socket connections and much more.
    • p44script is fully compatible with the previous evaluator expressions and trigger/action scripts, but extends far beyond in functionality.
    • For editing longer source code, there is now a full-screen code editor with p44script syntax coloring and snippets (small link below the text fields)
    • For easily trying p44script features and code snippets, there is a REPL (Read Execute Print Loop) Web page at /repl.html.
    • See Script+Expression reference link below editors for a short reference for p44script.
    • Scripting is possible as before from internal action trigger type evaluator devices and from independent triggers on the trigger page.
    • In addition, every scene in every device can now have a scene script which is run when the scene is called. This allows advanced effects and transitions when scenes are invoked. To edit scene scripts (and other scene options), click the device's star icon in the lights page.
    • Individual device's scenes can be edited, saved and called by shift-clicking the sprocket icon in the lights or hardware tab (additional controls appear below the channel sliders).
    • For initializing and running custom setups, p44script provides a main script which is started with the device and may keep running in parallel with normal device operation.
  • Enhanced smart LED chain support (P44-LC-LED and P44-LC-E+L 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).
  • Platform: support for custom devices for smart LED installations: P44-LC-E+L, P44-LC-LED 
  • DALI: optimizer now can optimize DT8 lights, too.
  • 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.

Improvements (since 1.0.5.0 production release)

  • Better Versioning scheme:
    • Production versions will have numbers in the 1.5.0 form (major.minor.revision).
    • Testing/beta versions will keep the longer 1.5.0.0 form, with the fourth number being the beta build version.
    • Beta versions will start with the number of the next release version. So a beta version like 1.5.1.2 indicates that this is a beta for an upcoming 1.5.1 release.
  • Platform: updated to OpenWrt 19.07.6 
  • DALI: improved handling of DALI2 devices with multiple logical units (LUNs).
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices.
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • 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. 
  • LEDchains: now RGBW chains are supported, actual light color of W channel can be specified per chain.
  • LEDchains: --ledrefresh command line parameter to tune update rate (lower for very long chains)
  • LEDchains: ledchain driver with support for RGB (vs GRB) WS2815 LEDs
  • 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.

Bug fixes (since 1.0.5.0 production release)

  • DALI: fixed problems with groups where devices with valid GTIN, but duplicate serial numbers are involved (such devices are not really DALI conformant, but unfortunately exist).
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • 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 openExcept for rarely used EnOcean profiles A5-14-07/08, this is only a documentation/labelling change, because for generic contacts, configurations for both signal polarities existed already to cover different types of window/door contacts. (Note that this has nothing to do with the way window handle inputs work - for these the states were and still are: 0=closed, 1=open, 2=tilted).
  • Optimizer: 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).
1.4.9.16 (testing)
released 2021-01-29

Changes in 1.4.9.16

  • DALI: improved handling of DALI2 devices with multiple logical units (LUNs).
  • DALI: fixed problems with groups where devices with valid GTIN, but duplicate serial numbers are involved (such devices are not really DALI conformant, but unfortunately exist).

Changes in 1.4.9.14

  • hue: now works with on/off-only devices such as smart plugs.
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. 

Changes in 1.4.9.12

  • p44script/p44lrgaphics: functions for configuring led chain arrangements, checking current power and setting power limit from scripts.
  • p44script: adding JSON arrays now appends, adding JSON object merges fields now.
  • ledchains: now RGBW chains are supported, actual light color of W channel can be specified per chain.
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. 

Changes in 1.4.9.11

  • p44script/p44lrgaphics: better view/subview handling: makeview(), addview(), remove(), parent() functions added.
  • p44script: json leaf values now correctly work as strings/numbers without explicit conversion.

Changes in 1.4.9.10

  • p44script: macaddress(), substr() accepts negative start position as relative to end of string.
  • Platform: support for LC-E, LC-E+L, LC-LED, LC-DE 

Changes in 1.4.9.9

  • Evaluators: internal action evaluators can now have an empty "off" condition to just run the action once whenever "on" condition becomes true.
  • p44script: fix another bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.8

  • LEDchains: p44lrgraphics view animations and LED chain dimming now default to ledchain's update rate as specified via --ledrefresh command line parameter
  • p44script: support for UDP socket communication
  • p44script: fix trigger holdoff (was broken in 1.4.9.7).
  • Window/door contacts: meaning of the active state (binary input = 1) is closed.

Changes in 1.4.9.7

  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
  • p44script: fix bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 will 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 veryadventurous, 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. 
  • 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).
1.4.9.14 (testing)
released 2021-01-22

Changes in 1.4.9.14

  • hue: now works with on/off-only devices such as smart plugs.
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. 

Changes in 1.4.9.12

  • p44script/p44lrgaphics: functions for configuring led chain arrangements, checking current power and setting power limit from scripts.
  • p44script: adding JSON arrays now appends, adding JSON object merges fields now.
  • ledchains: now RGBW chains are supported, actual light color of W channel can be specified per chain.
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. 

Changes in 1.4.9.11

  • p44script/p44lrgaphics: better view/subview handling: makeview(), addview(), remove(), parent() functions added.
  • p44script: json leaf values now correctly work as strings/numbers without explicit conversion.

Changes in 1.4.9.10

  • p44script: macaddress(), substr() accepts negative start position as relative to end of string.
  • Platform: support for LC-E, LC-E+L, LC-LED, LC-DE 

Changes in 1.4.9.9

  • Evaluators: internal action evaluators can now have an empty "off" condition to just run the action once whenever "on" condition becomes true.
  • p44script: fix another bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.8

  • LEDchains: p44lrgraphics view animations and LED chain dimming now default to ledchain's update rate as specified via --ledrefresh command line parameter
  • p44script: support for UDP socket communication
  • p44script: fix trigger holdoff (was broken in 1.4.9.7).
  • Window/door contacts: meaning of the active state (binary input = 1) is closed.

Changes in 1.4.9.7

  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
  • p44script: fix bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.12 (testing)
released 2021-01-06

Changes in 1.4.9.12

  • p44script/p44lrgaphics: functions for configuring led chain arrangements, checking current power and setting power limit from scripts.
  • p44script: adding JSON arrays now appends, adding JSON object merges fields now.
  • ledchains: now RGBW chains are supported, actual light color of W channel can be specified per chain.
  • DALI: better description text (hover over dSUID in info dialog) for grouped devices. 

Changes in 1.4.9.11

  • p44script/p44lrgaphics: better view/subview handling: makeview(), addview(), remove(), parent() functions added.
  • p44script: json leaf values now correctly work as strings/numbers without explicit conversion.

Changes in 1.4.9.10

  • p44script: macaddress(), substr() accepts negative start position as relative to end of string.
  • Platform: support for LC-E, LC-E+L, LC-LED, LC-DE 

Changes in 1.4.9.9

  • Evaluators: internal action evaluators can now have an empty "off" condition to just run the action once whenever "on" condition becomes true.
  • p44script: fix another bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.8

  • LEDchains: p44lrgraphics view animations and LED chain dimming now default to ledchain's update rate as specified via --ledrefresh command line parameter
  • p44script: support for UDP socket communication
  • p44script: fix trigger holdoff (was broken in 1.4.9.7).
  • Window/door contacts: meaning of the active state (binary input = 1) is closed.

Changes in 1.4.9.7

  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
  • p44script: fix bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.8 (testing)
released 2020-11-03

Changes in 1.4.9.8

  • LEDchains: p44lrgraphics view animations and LED chain dimming now default to ledchain's update rate as specified via --ledrefresh command line parameter
  • p44script: support for UDP socket communication
  • p44script: fix trigger holdoff (was broken in 1.4.9.7).
  • Window/door contacts: meaning of the active state (binary input = 1) is closed.

Changes in 1.4.9.7

  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
  • p44script: fix bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.7 (testing)
released 2020-10-29

Changes in 1.4.9.7

  • EnOcean: improved upgrading from insecure to encrypted communication, rolling counter refresh.
  • p44script: fix bug that could cause trigger/evaluator to re-evaluate multiple times (or endlessly).

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.6 (testing)
released 2020-10-16

Changes in 1.4.9.6

  • EnOcean: improved out-of-sync RLC handling again, better log messages for encryption related warnings
  • p44script: fixed chained and delayed animator (did not start), improved logging
  • platform: basic experimental support for P44-LC-LED

Changes in 1.4.9.5

  • EnOcean: prevent encrypted sensors with repeaters to get out of sync (rolling counter) and seem "inactive" for some periods of time
  • LEDchain: ledchain driver with support for RGB (vs GRB) WS2815 LEDs

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.4 (testing)
released 2020-09-30

Changes in 1.4.9.4

  • EnOcean: fix problems with secure devices persistence (inactive after restart)
  • Internal: Free GPIO44 from being system LED
  • LEDchain: default MAXTPASSIVE for WS2813/15 is now 40µS (rather than 100µS, which causes flicker)

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene not loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.3 (testing)
released 2020-09-24

Changes in 1.4.9.3

  • Optimizer: fix bug that could cause scene no loading correctly.
  • DALI: optimizer now can optimize DT8 lights, too
  • DALI: bus with non-fatal errors now allows using the devices that are normally accessible.
  • DALI: fix RGBWAF value range (0..254, not 0..127)
  • p44Script: savescene() function
  • p44Script: bugfixes around assigning thread variables (concurrent as xx statement) 
  • WebUI: actions.html page now displays a button for each trigger which has a name starting with 'WEBACTION_'. This is for remote control situations e.g. from a small screen device.

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.2 (testing)
released 2020-09-16

Changes in 1.4.9.2

  • LED chains: add --ledrefresh command line parameter to slow down refresh rate when using very long LED chains
  • Scene editor: fixed toggle switches (were saved as "on" even when "off" in some cases).
  • DALI: fix reading from bank1 (OEM GTIN)
  • DALI: display RGB(WAF)-only dimmers as "color" dimmer in "model" column (these did work as color lights already, but were listed as plain dimmers)

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.1 (testing)
released 2020-09-10

Changes in 1.4.9.1

  • LED-chain based lights: 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 when a scene is called.

Changes in 1.4.9.0

  • Version number jump: The jump from 1.0.5 to 1.4.9 is because the next production firmware is planned to be 1.5, while also reducing the version number to 3 levels (1.5.0, instead of 1.5.0.0). The early betas for 1.5 will have 1.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 veryadventurous, 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. 
  • 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).
1.4.9.0 (testing)
released 2020-08-11

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 veryadventurous, 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. 
  • 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).
1.0.5.6 (testing)
released 2020-07-02

Changes in 1.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 1.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: added modulo operator (%) and epochtime() function.
  • expressions: now can use logloglevel and logleveloffset functions for debugging. To use these null-returning side-effect-only functions and still produce a expression result, lastarg can be used.
  • sensor RRDB: improved case of sensors with infrequent changes
  • vdc API: string channels
  • platform: update to OpenWrt 19.07.3
  • platform: fix UART1 + UART2 in device tree
  • 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.

Changes in 1.0.5.2

  • platform: now based on OpenWrt 19.07
  • 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.

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)
  • Scripts: larger text fields for editing, built-in short reference page.
  • Expressions: all expressions can now access global variables.
  • Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone. 
  • EnOcean: support for D2-03-0A single button
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.5.5 (testing)
released 2020-06-17

Changes in 1.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: added modulo operator (%) and epochtime() function.
  • expressions: now can use logloglevel and logleveloffset functions for debugging. To use these null-returning side-effect-only functions and still produce a expression result, lastarg can be used.
  • sensor RRDB: improved case of sensors with infrequent changes
  • vdc API: string channels
  • platform: update to OpenWrt 19.07.3
  • platform: fix UART1 + UART2 in device tree
  • 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.

Changes in 1.0.5.2

  • platform: now based on OpenWrt 19.07
  • 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.

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)
  • Scripts: larger text fields for editing, built-in short reference page.
  • Expressions: all expressions can now access global variables.
  • Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone. 
  • EnOcean: support for D2-03-0A single button
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.5.2 (testing)
released 2020-05-06

Changes in 1.0.5.2

  • platform: now based on OpenWrt 19.07
  • 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.

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)
  • Scripts: larger text fields for editing, built-in short reference page.
  • Expressions: all expressions can now access global variables.
  • Web-UI: support for setting geographic location (for sunrise/sunset calculations) and time zone. 
  • EnOcean: support for D2-03-0A single button
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.5.0 (testing)
released 2019-12-05

Changes in 1.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 

Changes in 1.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 1.0.4.5

  • DALI DT8: improved compatibilty with dimmers that show wrong colors when activated twice in quick succession.

Changes in 1.0.4.3

  • Dimming: fixed regression, was broken in 1.0.4.2
  • EnOcean: support for D2-03-0A single button
  • Hue: workaround for unreliable third-party lights
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 

Changes in 1.0.4.2

  • LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-LC-E+ only)
  • EnOcean: fix list of available configurations for A5-04-01/02 devices.

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.6 (testing)
released 2019-11-13

Changes in 1.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 1.0.4.5

  • DALI DT8: improved compatibilty with dimmers that show wrong colors when activated twice in quick succession.

Changes in 1.0.4.3

  • Dimming: fixed regression, was broken in 1.0.4.2
  • EnOcean: support for D2-03-0A single button
  • Hue: workaround for unreliable third-party lights
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 

Changes in 1.0.4.2

  • LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-LC-E+ only)
  • EnOcean: fix list of available configurations for A5-04-01/02 devices.

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.5 (testing)
released 2019-10-17

Changes in 1.0.4.5

  • DALI DT8: improved compatibilty with dimmers that show wrong colors when activated twice in quick succession.

Changes in 1.0.4.3

  • Dimming: fixed regression, was broken in 1.0.4.2
  • EnOcean: support for D2-03-0A single button
  • Hue: workaround for unreliable third-party lights
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 

Changes in 1.0.4.2

  • LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-LC-E+ only)
  • EnOcean: fix list of available configurations for A5-04-01/02 devices.

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.3 (testing)
released 2019-09-22

Changes in 1.0.4.3

  • Dimming: fixed regression, was broken in 1.0.4.2
  • EnOcean: support for D2-03-0A single button
  • Hue: workaround for unreliable third-party lights
  • Triggers: re-triggering now aborts script from previous triggering if it is still running.
  • LED Chains: --ledchain now can be used to map multiple areas onto the same chain (same driver name) 

Changes in 1.0.4.2

  • LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-LC-E+ only)
  • EnOcean: fix list of available configurations for A5-04-01/02 devices.

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.2 (testing)
released 2019-09-11

Changes in 1.0.4.2

  • LED Chains+Matrices: all p44lrgraphics views can be used to compose lights, including game-of-life, torch, PNG images... (P44-LC-E+ only)
  • EnOcean: fix list of available configurations for A5-04-01/02 devices.

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.1 (testing)
released 2019-09-05

Changes in 1.0.4.1

  • Transition times: fixed bugs, now works better also with optimized hue and DALI lights.

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.4.0 (testing)
released 2019-09-03

Changes in 1.0.4.0

  • Time related conditions: now changes in time zone and updates of real time (e.g. via NTP after a reboot) will cause all conditions to get re-evaluated.
  • Color lights: better handling of color modes - off scenes with brightness=0 will no longer cause color mode changes
  • Scripts: trigger, evaluator and scene scripts can now be aborted (buttons in the web-UI)
  • Triggers+Evaluators: conditions are re-evaluated when network becomes available, because local time might change then (ntp update)
  • http requests: fix timeout to work while reading headers from a server.

Other recent changes:

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)
  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture
  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.3.2 (testing)
released 2019-08-22

Changes in 1.0.3.2

  • EnOcean: Support for D2-14-30 Smoke/Temperature/Humidity sensor
  • LED Chains+Matrices: feature light with position, zoom, rotation, linear/radial gradients for brightness, hue and saturation (P44-LC-E+ only)

Changes in 1.0.3.1:

  • Scene Scripts: scenes can now have scene scripts, triggered by scene effect 6
  • Ledchain: supports new LEDchain architecture

Other recent changes:

  • Triggers/Evaluators: completely rewritten the expression evaluation code, now is a fully functional script engine.
  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.3.0 (testing)
released 2019-08-13

Changes in 1.0.3.0

  • Triggers/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 ;-)
    • Trigger Actions and 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 changes:

  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes
  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.2.7 (testing)
released 2019-06-25

Changes in 1.0.2.7:

  • WebUI: better contrast in general.
  • Triggers: can now use sensors and buttons in trigger condition expression.
  • Buttons: more configuration options, for example a button can now also be configured to dim hue or colortemperature.
  • Optimizer for hue: improved handling of bridge errors when deleting old scenes to make room for new ones.
  • Experimental support for automating shadow devices (jalousies) along with light.
  • Many small improvements and bugfixes

Recent new features:

  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
1.0.2.4 (testing)
released 2019-05-30

Changes in 1.0.2.4:

  • EnOcean: support for A5-3F-7F (manufacturer specific) for SR65 3AI (Thermokon 3*0..10V input).
  • WebUI: fixed problem with DALI diagnostics which sometimes did not show any devices in the address map.
  • WebUI: better contrast for presenting dialogs.
  • WebUI: fixed problems with downloading config backup, restore, IP settings.

Changes in 1.0.2.3:

  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
  • Zone state tracking, areas: improved, trigger actions and Web-UI scene calls are now tracked as well, area local priority works.
  • Button configuration: button function (room or area button, preset group to use) can now be configured.

Changes in 1.0.2.2:

  • Announcing via UPnP: makes device visible in Windows network environment.

Changes in 1.0.1.1:

  • 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.

Changes in 1.0.0.11

  • better scene list (includes named area and extended scenes, and global presets)

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.2.3 (testing)
released 2019-05-16

Changes in 1.0.2.3:

  • Timed triggers: enhanced, new functions dawn(), sunrise(), sunset(), dusk() allow timing relative to the sun, time literals can be specified in h:m or h:m:s format, between_yeardays() function can restrict timer to part of the year.
  • Zone state tracking, areas: improved, trigger actions and Web-UI scene calls are now tracked as well, area local priority works.
  • Button configuration: button function (room or area button, preset group to use) can now be configured.

Changes in 1.0.2.2:

  • Announcing via UPnP: makes device visible in Windows network environment.

Changes in 1.0.1.1:

  • 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.

Changes in 1.0.0.11

  • better scene list (includes named area and extended scenes, and global presets)

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.2.2 (testing)
released 2019-05-06

Changes in 1.0.2.2:

  • Announcing via UPnP: makes device visible in Windows network environment.

Changes in 1.0.1.1:

  • 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.

Changes in 1.0.0.11

  • better scene list (includes named area and extended scenes, and global presets)

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.1.1 (testing)
released 2019-04-09

Changes in 1.0.1.1:

  • 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.

Changes in 1.0.0.11

  • better scene list (includes named area and extended scenes, and global presets)

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.0.11 (testing)
released 2019-03-22

Changes in 1.0.0.11

  • better scene list (includes named area and extended scenes, and global presets)

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.0.8 (testing)
released 2019-03-01

Changes in 1.0.0.8

  • vdcd 2.0.0.8 working with multiple network interfaces
  • EnOcean: FAH60 variant of A5-06-01 profile has no supply voltage sensor
  • EnOcean: A5-13-xx weather station now detects and displays/reports broken connection to sensor

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.0.7 (testing)
released 2019-03-01

Changes in 1.0.0.7

  • Based on OpenWrt v18.06.2

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.0.6 (testing)
released 2019-02-07

Changes in 1.0.0.6

  • Zone editor (rename, delete when no devices are in a zone)
  • Bugfix in password change - works again

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
1.0.0.5 (testing)
released 2019-02-06

Changes in 1.0.0.5

  • Simple triggers for timed call of scenes with transition time
  • Improvements from P44-DSB 2.0

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
0.9.9.4 (testing)
released 2018-10-17

Changes in 0.9.9.4

  • EnOcean: support for D2-01-xx switches and dimmers

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
0.9.9.2 (testing)
released 2018-10-02

Changes in 0.9.9.2

  • Single page including log and about again
  • Extended scenes toggle
  • no dummy "triggers" tab any more
  • Tooltips for many buttons
  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
0.9.9.1 (testing)
released 2018-09-29

Changes in 0.9.9.1

  • Enabled hue support
  • Fixed tweak and props

0.9.9.0: First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
0.9.9.0 (testing)
released 2018-09-24

First functionally complete beta version

  • Can create and assign zones (rooms)
  • Can call and save and name scenes
  • implements basic click and dim behaviour for buttons
0.0.0.4 (testing)
released 2017-09-20
  • third FW version via regular update mechanism
  • now has functional "Lights" screen with direct control of brightness, color temperature and color
  • "Triggers" screen is still mockup only
  • DALI buttons can be added, but currently just switch on/off all lights
0.0.0.3 (testing)
released 2017-09-13
  • second FW version via regular update mechanism
0.0.0.2 (testing)
released 2017-09-01
  • first FW version via regular update mechanism

Show production releases