Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(config): param 9 for STEINEL devices, rework to templates #4895

Merged
merged 11 commits into from Aug 9, 2022
Merged

fix(config): param 9 for STEINEL devices, rework to templates #4895

merged 11 commits into from Aug 9, 2022

Conversation

nechry
Copy link
Contributor

@nechry nechry commented Aug 8, 2022

PR description here
fix(config): param 9 for STEINEL devices

@zwave-js-assistant zwave-js-assistant bot added the config ⚙ Configuration issues or updates label Aug 8, 2022
@zwave-js-assistant
Copy link

🚧 It seems like this PR has lint errors 🚧

I should be able to fix them for you. If you want me to, just comment
@zwave-js-bot fix lint

@nechry
Copy link
Contributor Author

nechry commented Aug 8, 2022

@zwave-js-bot fix lint

@zwave-js-bot
Copy link
Collaborator

🐌 Please wait for the lint check to complete, then try again.

@blhoward2 blhoward2 self-requested a review August 8, 2022 21:23
Copy link
Collaborator

@blhoward2 blhoward2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for helping out! Your changes are great so far, but we generally try to avoid descriptions where we can. Could you please take another look and remove them if unneeded? If necessary, sometimes modifying the label (while keeping them short) makes them redundant. If something must truly be described that's fine but they clutter up the UIs.

@nechry
Copy link
Contributor Author

nechry commented Aug 9, 2022

Hello, I simply used the labels and descriptions already present for the xled_home_2 and applied to the other models as they share the same configuration base.
I will look to simplify them or as you recommended to remove them.

I fully understand your point, I maintained for more than 8 years the configuration files for the openzwave library

@AlCalzone
Copy link
Member

Hey @nechry nice to see you at the other side of Z-Wave land.

We like to take the chance to clean up files (many of which were auto-imported from various sources at some point) when somebody touches them.

@nechry
Copy link
Contributor Author

nechry commented Aug 9, 2022

@AlCalzone Well noted, I think I'm getting more and more involved here.

@nechry
Copy link
Contributor Author

nechry commented Aug 9, 2022

@blhoward2 done, always happy to contribute

Copy link
Member

@AlCalzone AlCalzone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm going to take over and template this and the other parameters too. Just one question...

@AlCalzone AlCalzone changed the title fix(config): param 9 for STEINEL devices fix(config): param 9 for STEINEL devices, rework to templates Aug 9, 2022
@AlCalzone AlCalzone enabled auto-merge (squash) August 9, 2022 08:39
@blhoward2
Copy link
Collaborator

blhoward2 commented Aug 9, 2022

@AlCalzone Well noted, I think I'm getting more and more involved here.

As Al said, welcome to the other side! We can always use more help with the device files. If you're going to contribute more, in the docs there is a style guide for device files and sections on templating parameters and conditional parameters. That should take out some of the mystery of where our requested changes frequently come from, to avoid less back and forth.

@AlCalzone AlCalzone disabled auto-merge August 9, 2022 18:27
@AlCalzone AlCalzone merged commit c75d396 into zwave-js:master Aug 9, 2022
AlCalzone added a commit that referenced this pull request Aug 9, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically when supported and for more CCs than just `Multilevel Switch CC` (#4761)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 10, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically when supported and for more CCs than just `Multilevel Switch CC` (#4761)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 15, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically when supported and for more CCs than just `Multilevel Switch CC` (#4761)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 16, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically when supported and for more CCs than just `Multilevel Switch CC` (#4761)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)
* Fixed a bug where commands that should be discarded because of a lower than expected security level would still store their values into the value DB (#4924)
* Fixed looking up a node's provisioning entry using its node ID. This didn't work previously and would cause excluded SmartStart nodes to be included again immediately. (#4925)
* No longer overwrite the security classes of a node when they are known for certain, and retry querying securely supported CCs during the interview (#4923)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)
* Fixed a typo in `AddNodeStatusContext`, which would result in an `UNKNOWN` device class of newly included nodes (#4922)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 22, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically when supported and for more CCs than just `Multilevel Switch CC` (#4761)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)
* Support updating some driver options on the fly (#4930)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)
* Fixed a bug where commands that should be discarded because of a lower than expected security level would still store their values into the value DB (#4924)
* Fixed looking up a node's provisioning entry using its node ID. This didn't work previously and would cause excluded SmartStart nodes to be included again immediately. (#4925)
* No longer overwrite the security classes of a node when they are known for certain, and retry querying securely supported CCs during the interview (#4923)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)
* Fixed a typo in `AddNodeStatusContext`, which would result in an `UNKNOWN` device class of newly included nodes (#4922)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)
* Add new 700 series Jasco devices (#4928)
* Update description on several Jasco manufactured devices (#4927)
* Apply compat flag to GreenWave PowerNode 5 (#4934)
* Add wakeup instruction to Zooz ZEN34 (#4932)
* Add parameter 15 Invert Output to Heatit Z-Temp2 (#4915)
* Add Enbrighten 58438 / ZWA3016 (#4913)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 24, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically for almost all CCs when supported (#4761, #4945)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)
* Support updating some driver options on the fly (#4930)
* Support correlating node responses to requests for which the ACK hasn't been received yet (#4946)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)
* Fixed a bug where commands that should be discarded because of a lower than expected security level would still store their values into the value DB (#4924)
* Fixed looking up a node's provisioning entry using its node ID. This didn't work previously and would cause excluded SmartStart nodes to be included again immediately. (#4925)
* No longer overwrite the security classes of a node when they are known for certain, and retry querying securely supported CCs during the interview (#4923)
* Increase wait time after firmware update and reset nonces before attempting communication (#4944)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)
* Fixed a typo in `AddNodeStatusContext`, which would result in an `UNKNOWN` device class of newly included nodes (#4922)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)
* Add new 700 series Jasco devices (#4928)
* Update description on several Jasco manufactured devices (#4927)
* Apply compat flag to GreenWave PowerNode 5 (#4934)
* Add wakeup instruction to Zooz ZEN34 (#4932)
* Add parameter 15 Invert Output to Heatit Z-Temp2 (#4915)
* Add Enbrighten 58438 / ZWA3016 (#4913)
* Add alarm mappings to ZSMOKE (#4942)
* Add Zooz ZEN14 (#4921)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
AlCalzone added a commit that referenced this pull request Aug 25, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically for almost all CCs when supported (#4761, #4945)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)
* Support updating some driver options on the fly (#4930)
* Support correlating node responses to requests for which the ACK hasn't been received yet (#4946)
* `"notification"` events are now logged (#4948)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)
* Fixed a bug where commands that should be discarded because of a lower than expected security level would still store their values into the value DB (#4924)
* Fixed looking up a node's provisioning entry using its node ID. This didn't work previously and would cause excluded SmartStart nodes to be included again immediately. (#4925)
* No longer overwrite the security classes of a node when they are known for certain, and retry querying securely supported CCs during the interview (#4923)
* Increase wait time after firmware update and reset nonces before attempting communication (#4944)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)
* Fixed a typo in `AddNodeStatusContext`, which would result in an `UNKNOWN` device class of newly included nodes (#4922)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)
* Add new 700 series Jasco devices (#4928)
* Update description on several Jasco manufactured devices (#4927)
* Apply compat flag to GreenWave PowerNode 5 (#4934)
* Add wakeup instruction to Zooz ZEN34 (#4932)
* Add parameter 15 Invert Output to Heatit Z-Temp2 (#4915)
* Add Enbrighten 58438 / ZWA3016 (#4913)
* Add alarm mappings to ZSMOKE (#4942)
* Add Zooz ZEN14 (#4921)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
* Add some `"silly"` logging to `handleNotificationReport` (#4949)
AlCalzone added a commit that referenced this pull request Aug 25, 2022
### Breaking changes · [Migration guide](https://zwave-js.github.io/node-zwave-js/#/getting-started/migrating-to-v10)
* Dropped support for Node.js 12 (#4824, #4491)
* Moved `Driver.interviewNode` method to the `ZWaveNode` class (#4823)
* Added support to provide an API key for the firmware update service, soon mandatory (#4816)
* Removed several deprecated things and reworked `beginExclusion` to use an options object instead (#4699)
* CC implementations were moved into their own package (#4668)
* CC code can now be used mostly without a driver instance (#4651)
* Implement discoverable and transparently-typed CC value definitions instead of `getXYZValueId` methods (#4704)
* `Supervision CC` is now used automatically for almost all CCs when supported (#4761, #4945)
* Updated the argument type of the `"node found"` event to indicate that it is not an operational node (#4825)
* S2 inclusion user callbacks were moved into `ZWaveOptions` (#4856) with the possibility to override them for individual inclusion attempts (#4911)
* Node firmware versions are now exposed as `major.minor.patch` where supported (#4857)

### Features
* Implement Z-Wave Protocol CC, for internal use (#4691)
* Implemented mock controller and mock nodes to vastly improve how integration tests are written (#4697, #4892)
* Add values to `Basic CC` and `Multilevel Switch CC` to restore previous non-zero level (#4732)
* Answer incoming requests with the same encapsulation (#4832)
* Allow passing a custom serial port implementation in `port` param of the Driver class (#4885)
* Support sending `TimeCC` reports and automatically respond to requests (#4858)
* Allow overriding API key for the FW update service per call (#4912)
* Support updating some driver options on the fly (#4930)
* Support correlating node responses to requests for which the ACK hasn't been received yet (#4946)
* `"notification"` events are now logged (#4948)

### Bugfixes
* Swap order of `destroy()` call and `Driver_Failed` error after restoring NVM (#4661)
* Do not request ACK when sending node to sleep (#4826)
* Correctly interpret powerlevel values as signed in `GetPowerlevelResponse` (#4827)
* Add missing `reflect-metadata` dependency to some packages that were meant to be used standalone (#4846)
* Fixed an off-by-one error while parsing the `supportedOperationTypes` bitmask of `User Code CC` (#4848)
* Query user codes 1-by-1 if bulk reading is not supported (#4849)
* Include both V1 values and V2+ values in `Notification CC` logs (#4904)
* Obfuscate keys in `Entry Control CC` logs (#4905)
* Improved command flow for S2-encrypted communication when both parties transmit at the same time (#4900)
* Fixed a bug where commands that should be discarded because of a lower than expected security level would still store their values into the value DB (#4924)
* Fixed looking up a node's provisioning entry using its node ID. This didn't work previously and would cause excluded SmartStart nodes to be included again immediately. (#4925)
* No longer overwrite the security classes of a node when they are known for certain, and retry querying securely supported CCs during the interview (#4923)
* Increase wait time after firmware update and reset nonces before attempting communication (#4944)

### Bugfixes (broken and fixed in v10 beta)
* Emit value event after successful supervised `setValue` (#4899)
* Correct nested encapsulation of Supervision CC Reports (#4890)
* Ensure the `major.minor.patch` firmware version matches the legacy `major.minor` field before using it (#4906)
* Move `"notification"` event args types back into `zwave-js` package (#4907)
* Fixed a typo in `AddNodeStatusContext`, which would result in an `UNKNOWN` device class of newly included nodes (#4922)

### Config file changes
* Corrected manufacturer and device labels for Heatit devices (#4838)
* Slightly clean up the Fibaro Motion Sensor config (#4790)
* Update Zooz ZEN17 to firmware 1.10 (#4809)
* Add NewOne N4003, template more in the Minoston directory (#4834)
* Add Fibaro Wall Plug UK - FGWPG-111 (#4865)
* Correct param 9 for STEINEL devices, rework to templates (#4895)
* Add Zooz Zen05 Outdoor Smart Plug (#4896)
* Add MP31ZP (rebranded MP21ZP) (#4894)
* Update Zooz ZEN20 with additional parameters 28 - 36 (#4898)
* Clean up branding of Jasco devices (#4873)
* Add new 700 series Jasco devices (#4928)
* Update description on several Jasco manufactured devices (#4927)
* Apply compat flag to GreenWave PowerNode 5 (#4934)
* Add wakeup instruction to Zooz ZEN34 (#4932)
* Add parameter 15 Invert Output to Heatit Z-Temp2 (#4915)
* Add Enbrighten 58438 / ZWA3016 (#4913)
* Add alarm mappings to ZSMOKE (#4942)
* Add Zooz ZEN14 (#4921)

### Changes under the hood
* Patch `tsserver` after install to allow displaying large types
* Upgrade dependencies (#4820, #4663)
* Make several reflection decorators generic and untangle `Manufacturer Proprietary CC` implementations (#4701)
* Fixed typos throughout the project (#4837, #4842)
* Added compliance tests for Z-Wave certification (#4832)
* Removed a polyfill for `Object.entries` (#4859)
* Added best practices for a reliable mesh to the docs (#4875)
* Changes to the public API surface are now tracked using `@microsoft/api-extractor` (#4860)
* Reorganized the CI jobs to only compile TypeScript once and reuse the build output during subsequent jobs (#4880)
* Move Supervision Session ID onto `ZWaveHost` interface (#4891)
* Add some `"silly"` logging to `handleNotificationReport` (#4949)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
config ⚙ Configuration issues or updates
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants