Skip to content

Releases: zwave-js/node-zwave-js

Release v12.1.0

11 Oct 14:21
Compare
Choose a tag to compare

Config file changes

Almost 1000 device configuration files have been reworked to be more consistent, mostly affecting device labels, parameter labels, descriptions and predefined options.
After updating, you should expect to see several notifications for changed device configurations, prompting you to re-interview the affected nodes.
Unless the device is mentioned below, there's no need to do this immediately.

  • Always set time for Namron 16A thermostats as UTC (#6388)
  • Add Alloy (Zipato) devices (#6331)
  • Parameter 21 of Inovelli VZW31-SN is readonly (#6389)
  • Add Shelly Wave Shutter (#6382)
  • Add Eurotronic Comet Z (700 series) (#6336)
  • Add params 7, 18, 19 to Zooz ZEN71 FW 10.20 (#6375)
  • Add Qubino Shades Remote Controller (#6335)
  • Add fingerprint for new MH8-FC version, add new option for param 1 (#6358)
  • Add Hank HKZW-SO08 (#6383)
  • Add link to manual of Honeywell T6 Pro Thermostat (#6353)

Bugfixes

  • When a device has a default wakeup interval of 0 (never wake up), this is now preserved during the interview, even when outside of the valid range advertised by the device (#6387)
  • Added a compat flag to always set the time using Time Parameters CC as UTC, even if the device exposes way to set the timezone (#6388)

Changes under the hood

  • Lots of config file requirements from the style guide, especially regarding Title Case and Sentence case of strings, are now automatically enforced using ESLint (#6345)

Release v12.0.4

09 Oct 08:41
Compare
Choose a tag to compare

Bugfixes

  • Normalize result of Controller.getAvailableFirmwareUpdates to always include channel field (#6359)
  • Fixed a crash that could happen while logging dropped sensor readings (#6379)
  • Increased the range and default of the response timeout to accomodate slower 500 series controllers (#6378)

Config file changes

  • Treat Basic Set as events for TKB TZ35S/D and TZ55S/D (#6381)
  • Add Zooz ZAC38 Range Extender (#6136)
  • Corrected the label of the notification event 0x0a to be Emergency Alarm (#6368)

Release v12.0.3

05 Oct 20:07
Compare
Choose a tag to compare

The v12 release was supposed to increase reliability of Z-Wave JS, primarily by detecting situations where the controller was unable to transmit due to excessive RF noise or being unresponsive and automatically taking the necessary steps to recover.

Instead, it uncovered bugs and erratical behavior in the 500 series firmwares, which triggered the automatic recovery in situations where it was not necessary. In the worst case, this would cause Z-Wave JS to end up in an infinite loop or restart over and over.

This patch should fix and/or work around most (if not all) of these issues. Really sorry for the inconvenience!

Bugfixes

  • Fixed an infinite loop caused by assuming the controller was temporarily unable to transmit when when sending a command results in the transmit status Fail (#6361)
  • Added a workaround to avoid a restart loop caused by 500 series controllers replying with invalid commands when assigning routes back to the controller (SUC) failed (#6370, #6372)
  • Automatically recovering an unresponsive controller by restarting it or Z-Wave JS in case of a missing callback is now only done for SendData commands. Previously some commands which were expecting a specific command to be received from a node could also trigger this, even if that command was not technically a command callback. (#6373)
  • Fixed an issue where rebuilding routes would throw an error because of calling the wrong method internally (#6362)

Release v12.0.2

29 Sep 11:20
Compare
Choose a tag to compare

Bugfixes

  • The workaround from v12.0.0 for the 7.19.x SDK bug was not working correctly when the command that caused the controller to get stuck could be retried. This has now been fixed. (#6343)

Release v12.0.1

29 Sep 10:30
Compare
Choose a tag to compare

Bugfixes

  • Ignore when a node reports Security S0/S2 CC to have version 0 (unsupported) although it is using that CC (#6333)

Config file changes

  • Add Shelly to manufacturers (#6339)
  • Add Shelly Wave 1, Wave 2PM, update Wave 1PM association labels (#6326)
  • Add Sunricher SR-ZV2833PAC (#6310)

Changes under the hood

  • Added an ESLint rule to help with deciding whether a config parameter needs to be unsigned or not (#6325, #6338)

Release v12.0.0

26 Sep 08:12
Compare
Choose a tag to compare

Application compatibility

Home Assistant users who manage zwave-js-server themselves, must install the following upgrades before upgrading to this driver version:

  • Home Assistant 2023.10.0 or higher
  • zwave-js-server 1.32.0

Breaking changes · Migration guide

  • Removed auto-disabling of soft-reset capability. If Z-Wave JS is no longer able to communicate with the controller after updating, please read this issue (#6256)
  • Remove support for Node.js 14 and 16 (#6245)
  • Subpath exports are now exposed using the exports field in package.json instead of typesVersions (#5839)
  • The "notification" event now includes a reference to the endpoint that sent the notification (#6083)
  • Keep separate Supervision session ID counters for each node (#6175)
  • Validate the device fingerprint before installing firmware update instead of when checking for updates (#6192)
  • Removed some deprecated methods (#6250)
  • Managing SUC routes with the non-SUC method variants is no longer allowed (#6251)
  • "Heal (network)" was renamed to "rebuild routes" to better reflect what it does (#6252)
  • Corrected the argument type for Driver.constructor, updateLogConfig and updateOptions (#6254, #6319)

Features

  • Detect an unresponsive stick and reset it (#6244)
  • The default time after which battery-powered devices with no pending commands are sent back to sleep is now 250 ms (down from 1000ms). This timeout is now configurable using the driver option timeouts.sendToSleep. This should result in significant battery savings for devices that frequently wake up. (#6312)

Bugfixes

  • A bug in the 7.19.x SDK has surfaced where the controller gets stuck in the middle of a transmission. Previously this would go unnoticed because the failed commands would cause the nodes to be marked dead until the controller finally recovered. Since v11.12.0 however, Z-Wave JS would consider the controller jammed and retry the last command indefinitely. This situation is now detected and Z-Wave JS attempts to recover by soft-resetting the controller when this happens. (#6296)
  • Default to RF protection state Unprotected if not given for Protection CC V2+ (#6257)

Config file changes

  • Add Heatit Z-Water 2 (#6299)
  • Add Shelly Wave 1PM (#6280, #6317)
  • Add Heatit Z-TRM6 (#6263)
  • Increase poll delay for ZW500D (#6270)
  • Add fingerprint for Simon IO Master Roller Blind (#6262)
  • Add HOPPE eHandle ConnectSense (#6269)
  • Add parameters to Zooz ZEN17 from firmware 1.30 (#6189)
  • Update Zooz ZEN32 config to the latest firmware, include 800 series (#6283)

Changes under the hood

  • Fixed the interpretation of limit_options in OpenSmartHouse import script (#6313)
  • Some Z-Wave JS specific implementation checks are now done using a custom ESLint plugin (#6276, #6279, #6315)
  • Migrated more Z-Wave JS specific checks to the custom ESLint plugin (#6297, #6302)
  • Use ESLint to enforce consistent property ordering in config parameters and avoid unnecessary minValue/maxValue (#6321, #6322)
  • yarn test now only runs tests affected by changed files by default. This is also done on CI in PRs to speed up check times (#6274)
  • Upgraded lots of dependencies (#6258)

Release v12.0.0-beta.4

25 Sep 13:50
Compare
Choose a tag to compare
Pre-release

Features

  • The default time after which battery-powered devices with no pending commands are sent back to sleep is now 250 ms (down from 1000ms). This timeout is now configurable using the driver option timeouts.sendToSleep. This should result in significant battery savings for devices that frequently wake up. (#6312)

Bugfixes

  • Add missing export for PartialZWaveOptions (#6319)

Config file changes

  • Add Heatit Z-Water 2 (#6299)

Changes under the hood

  • Correct build configuration for ESLint plugin (#6315)
  • Fixed the interpretation of limit_options in OpenSmartHouse import script (#6313)

Release v12.0.0-beta.3

22 Sep 10:28
Compare
Choose a tag to compare
Pre-release

Bugfixes

  • A bug in the 7.19.x SDK has surfaced where the controller gets stuck in the middle of a transmission. Previously this would go unnoticed because the failed commands would cause the nodes to be marked dead until the controller finally recovered. Since v11.12.0 however, Z-Wave JS would consider the controller jammed and retry the last command indefinitely. This situation is now detected and Z-Wave JS attempts to recover by soft-resetting the controller when this happens. (#6296)

Config file changes

  • Add Shelly Wave 1PM (#6280)

Changes under the hood

  • Migrated more Z-Wave JS specific checks to the custom ESLint plugin (#6297, #6302)

Release v12.0.0-beta.2

21 Sep 08:05
Compare
Choose a tag to compare
Pre-release

Bugfixes

  • Fixed an issue where some Notification CC Reports including an enumeration value would cause the corresponding value ID to be set to the wrong value (#6282)
  • When the Serial API on a controller restarts unexpectedly, the node ID length is now synchronized again (#6271)

Config file changes

  • Add Heatit Z-TRM6 (#6263)
  • Increase poll delay for ZW500D (#6270)
  • Add fingerprint for Simon IO Master Roller Blind (#6262)
  • Add HOPPE eHandle ConnectSense (#6269)
  • Add parameters to Zooz ZEN17 from firmware 1.30 (#6189)
  • Update Zooz ZEN32 config to the latest firmware, include 800 series (#6283)
  • Add warnings about broken controller firmware versions (#6293)

Changes under the hood

  • Some Z-Wave JS specific checks are now done using a custom ESLint plugin (#6276, #6279)
  • yarn test now only runs tests affected by changed files by default. This is also done on CI in PRs to speed up check times (#6274)

Release v11.14.3

21 Sep 08:10
Compare
Choose a tag to compare

Bugfixes

  • Fixed an issue where some Notification CC Reports including an enumeration value would cause the corresponding value ID to be set to the wrong value (#6282)
  • When the Serial API on a controller restarts unexpectedly, the node ID length is now synchronized again (#6271)

Config file changes

  • Add warnings about broken controller firmware versions (#6293)