Releases: zwave-js/node-zwave-js
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
Changes under the hood
Release v12.8.1
Bugfixes
This release adds a bit of polishing for Zniffer and some bugfixes (#6849):
- Z-Wave Classic inclusion frames from LR devices are now parsed instead of logging an error
- Z-Wave LR protocol frames are now recognized (but not parsed in detail) instead of logging an error
- The
payload
property for routed frames contains the parsed CC now - Expose the
active
property used to determine whether the Zniffer is currently capturing traffic
Release v12.8.0
Features
- Automatically prefer LR-capable RF regions over their non-LR counterparts (#6843, #6845)
- Add
destroy
method to Zniffer to free serial port (#6848) - Expose more Long Range RF settings as methods, controller properties and driver options (#6841)
Config file changes
- Disable Supervision for Everspring EH403 (#6847)
Release v12.7.0
Features
- Add methods to get/set max. LR powerlevel, add driver option to automatically configure it (#6824)
Bugfixes
- Fixed a bug causing the device class of a node to be unintentionally be deleted (#6840)
- Forbid associations from and to LR devices, except for the lifeline (#6819)
- Zniffer: convert LR beam TX power to dBm, add documentation for beam frames (#6820)
Config file changes
- Override CC versions for Wayne Dalton WDTC-20 (#6822)
Changes under the hood
- Refactor Zniffer exports, add them to
/safe
entrypoint (#6830)
Release v12.6.0
This release enhances the diagnostics in Z-Wave JS by adding support for controlling a Zniffer, which allows inspecting traffic from any Z-Wave network. See here for details on using this API, and here for information on how to create a Zniffer device.
Features
- Add Zniffer support (#6651)
Bugfixes
- Ignore SmartStart requests and log errors when some keys for the granted security classes were not configured (#6787)
- Fixed an issue where excluded ZWLR nodes were not removed from the list of nodes until restart (#6795)
- The mandatory CCs for a device class are no longer automatically considered supported. Instead only the NIF is used to determine them (#6788)
- The
mandatorySupportedCCs
andmandatoryControlledCCs
properties of theDeviceClass
class are now deprecated and return an empty array (#6796)
Config file changes
- Use specific float encoding for Namron 4512757 (#6793)
- Add fingerprint for Aeotec MultiSensor 7 (#6807)
Changes under the hood
- Fix links on Long Range documentation page (#6790)
Release v12.5.6
Bugfixes
- NVM restore works around an issue in some 800 series controllers where the NVM migration built into the Z-Wave firmware would not work due to the SDK version being encoded incorrectly (#6777)
Config file changes
Release v12.5.5
Features
- Rework compat flags for
Basic CC
mapping (#6773)
Bugfixes
- The
protocolDataRate
field inRouteStatistics
is optional (#6746) - Fixed an infinite loop during NVM migration which could happen in rare cases (#6769)
Config file changes
- Always map
Basic CC
toBinary Sensor CC
for Aeotec ZW100 Multisensor 6 (#6773)
Changes under the hood
- Reword recommendations on encrypting traffic (#6770)