Releases: zwave-js/node-zwave-js
Release v12.12.2
Bugfixes
- When responding to
Version CC Get
queries, Z-Wave JS's own version is now included as theFirmware 1
version (#6982) - When receiving a notification with an unknown notification type, the created "unknown" value now correctly has metadata set (#6981)
- When receiving an idle notification, the values for unknown notification events are now also reset to idle (#6980)
- Auto-enable all supported Barrier Operator signaling subsystem during the interview (#6979)
Release v12.12.1
Bugfixes
- Fixed an issue where the watchdog feature could cause Z-Wave JS to stall after attempting controller recovery (#6968)
- Reset controller again when transmitting to a problematic node makes the controller become unresponsive again after automatic recovery (#6968)
- Node interviews are now aborted in more cases when node is determined to be dead (#6967)
- Expose Basic CC
currentValue
when certain compat flags are set (#6964)
Release v12.12.0
We were informed by Silicon Labs that 700/800 series controllers have a hardware watchdog that can reset the controller when it becomes unresponsive. This feature is now enabled by default in Z-Wave JS and should prevent the controller from hanging indefinitely.
In case this causes new issues, the feature can be disabled by setting the environment variable ZWAVEJS_DISABLE_WATCHDOG
to any non-empty value, or by setting the driver option features.watchdog
to false
.
Please let us know if this actually helps or not.
Features
- Enable hardware watchdog on 700/800 series controllers (#6954)
- Add method to query supported RF regions (#6957)
- Add notification variable for Door/Window tilt state (#6958)
Bugfixes
- Fixed an issue where value metadata for unknown notification events with known notification types would only be created if the CC version was exactly 2 (#6959)
Release v12.11.2
Release v12.11.1
Bugfixes
- Add compat flag to always encode Set-type commands using target node's CC version (#6918)
- Export
NodeDump
type (#6915) - Redact secret values in
NodeDump
(#6934) - Added a workaround for devices that incorrectly send their
Binary Sensor Reports
using the sensor typeAny (0xff)
. Those reports are now interpreted as if they were using the first supported sensor type (#6933) - After adding an association to a LR node, Z-Wave JS no longer attempts assigning routes (#6936)
- Removed some unnecessary log outputs during
rebuildNodeRoutes
when the node has no other associations than the controller (#6940) - Pings in route health checks no longer use explorer frames (#6942)
- When attempting communication with a node that's considered dead, the command is now sent immediately instead of pinging first (#6944)
- Fixed an issue where the priority and tag of a transaction would not be preserved when moving it to the wakeup queue (#6944)
Config file changes
- Remove endpoint workaround for Zooz ZEN30 800LR (#6931)
- Encode CCs using target's CC version for
TKB Home TZ67
(#6918)
Changes under the hood
- GitHub links in the released
package.json
now point to the Z-Wave JS org (#6930)
Release v12.11.0
Features
- Add
ZWaveNode.createDump()
method to save debug information in a format Z-Wave JS understands (#6906) - Support node dumps created by
ZWaveNode.createDump()
as input for `mock-server' (#6907) mock-server
: enable mDNS discovery (#6909)- Add driver option to configure vendor-specific constants Z-Wave JS uses to reply to requests from other nodes, including manufacturer ID, product type/ID and hardware version (#6876)
Bugfixes
- Fixed a race condition that would cause a timeout error to be shown after an actually successful OTW update (#6912)
- Create
supportedNotificationTypes
andsupportedNotificationEvents
values withalarmMapping
compat flag (#6914)
Config file changes
- Correct config parameters for Minoston MP21ZD Dimmer Plug (#6686)
Release v12.10.1
This release implements the workaround mentioned by Silicon Labs in their SDK 7.21.3 release notes. Jammed 700/800 series controllers (fail to transmit continuously) are now restarted when this situation is detected, which hopefully resolves the issue temporarily.
Unfortunately I have no way to reproduce the situation other than simulated tests, so please let us know if this actually helps or not.
Bugfixes
- Set
supportsLongRange
tofalse
on controllers known not to support LR ever (#6894) - Attempt to recover jammed controller by soft-resetting (#6900)
Config file changes
- Add fingerprint
0x0004:0xffff
to "Yale YRD210" (#6899)
Changes under the hood
- Migrate pack PR action to github-script (#6897)
Release v12.10.0
Features
- Support
SendTestFrame
command and perform powerlevel tests on behalf of other nodes (#6889)
Bugfixes
- Respond to more queries from other devices (#6866)
- Handle supervised queries from other devices correctly (#6866)
- Harden S2 extension parsing and validation (#6866)
- Fixed some more edge cases found by S2 certification tests (#6887)
- Abort S2 bootstrapping when CSA is requested (not supported in Z-Wave JS) (#6890)
Config file changes
Release v12.9.1
Release v12.9.0
This release contains several bugfixes and improvements for Zniffer, as well as fixing some deviations from the Z-Wave specification.
Features
- Zniffer: Expose raw capture data in emitted frames (#6852)
- Zniffer: Expose previously captured frames using
capturedFrames
property andclearCapturedFrames()
method (#6852) - Zniffer: Add method to return saved capture file as Buffer (#6836)
- Zniffer: Add a special frame type to distinguish Broadcast frames from singlecast frames without having to inspect the node ID (#6863)
- Zniffer: Add an optional parameter for
znifferProtocolDataRateToString
to omit the protocol name (#6863) - Zniffer: Add an option to limit the number of captured frames kept in memory (#6863)
Bugfixes
- Always query Basic CC version as part of the interview
- Do not report
Z-Wave Protocol CC
andZ-Wave Long Range CC
as supported - Encode CCs using the version implemented by Z-Wave JS, not the target's version
- Abort S2 bootstrapping when first
KEXReport
incorrectly has echo flag set - Correct NIF contents, distinguish between securely and insecurely supported commands
- Respond to
ManufacturerSpecificCCGet
- Correct parsing of auto-channel capabilities in
GetLongRangeChannelResponse
(#6850) - Include LR node information in NVM conversion (#6846)
- Zniffer: Expose
rssi
field in allFrame
types (#6851) - Zniffer: Expose payload in ExplorerInclusionRequest frame