close

No account? Please just register for free

Firmware info + supported devices list

Firmware information for P44-LC-X

Firmware version Release Notes
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. 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

  • 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.0.9 (testing)
released 2024-10-03

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).
  • RaspberryPi: WS281x smartled driver now supports newer RPi4 models, too.

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.
  • Remote access: fix occasional crash in pagekite that could prevent remote access working, more likely on RPi3,4 than older, slower models.
  • 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.
  • RaspberryPi: WS281x smartled driver now supports newer RPi4 models, too.

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.6 (testing)
released 2024-09-05

Firmware 1.8.0.6

Beta Test Version with general improvements.

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

Changes since 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.7.0.46 (testing)
released 2024-05-06

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

  • platform: P44-LC is now based on OpenWrt 22.03
  • logging: Now uses colored symbol markers for loglevel differentiation
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).

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-15

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

  • platform: P44-LC is now based on OpenWrt 22.03
  • logging: Now uses colored symbol markers for loglevel differentiation
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).

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

  • platform: P44-LC is now based on OpenWrt 22.03
  • logging: Now uses colored symbol markers for loglevel differentiation
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).

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-14

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

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-11

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

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-02-02

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

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-11

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

  • 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)
  • New: 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
  • p44lrgraphics: New text style options "bolden" and "stretch"

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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)
  • New: 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
  • p44lrgraphics: New text style options "bolden" and "stretch"

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-15

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.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)
  • New: 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
  • p44lrgraphics: New text style options "bolden" and "stretch"

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-06

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)
  • New: 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
  • p44lrgraphics: New text style options "bolden" and "stretch"

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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)
  • New: 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
  • p44lrgraphics: New text style options "bolden" and "stretch"

  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-11

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-28

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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.
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).
  • RPi: /boot partition enlarged to 64M (this is OpenWrt 22.03 standard, but was not possible to upgrade from previous 20M size because of an openwrt bug until a workaround has been found now).
  • RPi: fixed an openwrt problem that could, in rare cases, break the upgrade.

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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.
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).
  • RPi: /boot partition enlarged to 64M (this is OpenWrt 22.03 standard, but was not possible to upgrade from previous 20M size because of an openwrt bug until a workaround has been found now).
  • RPi: fixed an openwrt problem that could, in rare cases, break the upgrade.

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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-06-09

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.
  • WiFi lock-out prevention: For P44-xx-TORCH and P44-xx-X RPi based DIY devices without wired network, the device reverts to access point mode when it does not get network connection via the configured WiFi client settings, to make sure there's always a way to access the device (without having to resort to factory reset).
  • RPi: /boot partition enlarged to 64M (this is OpenWrt 22.03 standard, but was not possible to upgrade from previous 20M size because of an openwrt bug until a workaround has been found now).
  • RPi: fixed an openwrt problem that could, in rare cases, break the upgrade.

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).
  • 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.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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).

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

  • bugfix: color mode attribute in matter color lights should work ok now
  • platform: WiFi should work on RPi3 again

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-20

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.
  • LED chains on RaspberryPi: can now explicitly specify gpio21 (for using PCM), gpio10 (for using SPI) and optionally gpio18 (for using PWM, this was the only option supported before).

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

  • bugfix: color mode attribute in matter color lights should work ok now
  • platform: WiFi should work on RPi3 again

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

Note that this update is always needed as an intermediary step to firmware 1.7.0.x and beyond. So, please check for new firmware again after installing this version, there might be a newer firmware already.

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

Changes since production version 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)
  • upgrading: ready for upgrading to 1.7.0.x and beyond, which expands the /boot partition from 20M to 64M. Installing 1.6.8.0 is required as an intermediate step in all cases. Please check for updates again after installing.

Improvements

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

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).
  • New "Feature" keyevents: this feature allows getting events from pressing and releasing keys from a linux /dev/input/xx device (P44-LC-X only).
1.6.5.10 (testing)
released 2022-09-02

First release candiate for 1.6.5 production release

Changes since 1.6.5.9

  • 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.
  • New "Feature" keyevents: this feature allows getting events from pressing and releasing keys from a linux /dev/input/xx device (P44-LC-X only).
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-01

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

  • 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: 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.5 (testing)
released 2022-01-31

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

P44-LC-X: free do-it-yourself version of the standalone plan44 light controller

Show production releases