Releases: zwave-js/node-zwave-js
Releases · zwave-js/node-zwave-js
Release v5.2.2-artecktest.1
Debug release for Arteck
Bugfixes
- Nodes are sent to sleep again when they have no pending messages
- Compat queries are removed from the queue when a node goes to sleep
- Pending pings are resolved when a node wakes up
Release v5.2.2-artecktest.0
Debug release for Arteck
Release v5.2.1
Bugfixes
- Fixed a crash while trying to determine the notification mode of a node
- Fixed a crash while defining metadata for a non-idle notification value
Release v5.2.0
Features
- It is now possible to add an expiration timeout to sent messages by using the
expire
option forsendMessage
. Security CC
now stores unsolicited nonces as "free" and tries to use free nonces instead of requesting a new one if possible.- Several improvements to
Notification CC
:- The interview now detects whether a node is push or pull
- Push nodes now have their supporting values set to idle if no value is yet known
- Pull nodes are now auto-refreshed every 6 hours and on wakeup
Bugfixes
- During secure inclusion, the timeouts required by the Z-Wave specs are now correctly enforced
- When starting a network heal, the
"heal network progress"
event is now emitted immediately with the initial progress. - Fixed a crash that could when queueing handshake messages while controller messages are pending
Thermostat Setpoint Set
commands now use the device-preferred scale instead of defaulting to the first one.- A couple of
Notification CC
variables were changed to not have an idle state
Changes under the hood
- Formatting log messages has been simplified. Log messages are now defined as objects and the log formatter auto-aligns the values.
- All remaining CCs had their log representation improved. If an error occurs during this conversion, this error is now caught.
- Code cleanup: TODOs, useless string interpolations
- Updated a bunch of dependencies
Release v5.1.0
Features
- Added support for
User Code CC V2
- All timeouts and the number of retry attempts are now configurable through the
Driver
options.
Bugfixes
- Nodes are now only marked as dead or asleep if the controller receives no ACK for the sent messages. Missing responses to potentially unsupported requests no longer change the node status.
SendSupervisedCommandOptions
now correctly extendsCommandOptions
- Timeouts configured through
Driver
options are now respected correctly
Release v5.0.0
Breaking changes
- The status
Alive
was added to theNodeStatus
enumeration. The node status can no longer switch between all states, only betweenDead
andAlive
, betweenAsleep
andAwake
and from and toUnknown
. - The
status
property onZWaveNode
is now readonly. To change the status, use themarkAsAsleep
and similar methods, which only change the status if it is legal to do so. - Unsolicited commands are now discarded in accordance with the Z-Wave specs if they are unencrypted but the CC is supported secure only
driver.start()
now throws if no handler for the"error"
is attached
Features
- A new method
withOptions
was added toCCAPI
, which controls the usedSendCommandOptions
. For example, this allows changing the priority of each API call for that instance. - All interview messages now automatically have a lower priority than most other messages, e.g. the ones created by user interaction. This should make the network feel much more responsive while an interview process is active.
- The node events
asleep
,awake
,alive
anddead
now include the previous status aswell. - Added the method
isEncapsulatedWith
toCommandClass
to perform checks on the encapsulation stack. - In addition to serial ports, serial-over-tcp connections (e.g. by using
ser2net
) are now supported. You can connect to such a host using a connection string of the formtcp://hostname:port
. Use theseser2net
settings to host a serial port:<external-port>:raw:0:<path-to-serial>:115200 8DATABITS NONE 1STOPBIT
Bugfixes
- Improved performance of reading from the Value DB
- Retransmission of commands now distinguishes between errors on the controller side and missing responses from nodes
- If a node that is known to be included securely does not respond to the
Security CC
interview, it is no longer assumed to be non-secure - If a node that is assumed to be included non-securely sends secure commands, it is now marked as secure and the interview will be restarted
- The interview for sensor-type CCs is now skipped if a timeout occurs waiting for a response. Previously the whole interview was aborted.
Basic CC
values that are mapped toBinary Switch
orBinary Sensor
are now interpreted correctly.- Fixed a crash that could occur when assembling a partial message while the driver is not ready yet.
Changes under the hood
- The driver has been completely rewritten with state machines for a well-defined program flow and better testability. This should solve issues where communication may get stuck for unknown reasons.
- A node's
status
andready
properties are now managed by state machines to have better control over how and when the status changes. - Enabled the TypeScript option
strictFunctionTypes
and the usage of several decorators is now statically enforced - Added more fine-grained control over expected responses, and distinguish between responses, callbacks and node updates for sent messages.
- Many CCs had their log representation improved. If an error occurs during this conversion, this error is now caught and logged.
Release v4.2.3
Config changes
- Add support for
Everspring AC301
Release v4.2.2
Config changes
- Removed parameter #5 from
Aeon Labs ZW130
because it doesn't seem to be supported in any firmware version
Bugfixes
- A node is no longer marked as dead or asleep if it fails to respond to a
Configuration CC::Get
request. This can happen if the parameter is not supported.
Release v4.2.1
Config changes
- Added a configuration file for
ABUS CFA3010
.
Release v4.2.0
Features
- Invalid
Multi Channel CC::Command Encapsulation
which follow the V2+ format but use a V1 header are now treated like valid commands
Bugfixes
- Further performance improvements while decoding
Configuration CC::Report
s