You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#396 changed the manner in which binary sensors with only two states are handled. As a result, double tap events no longer work because they are not a valueId.list and the nesting of the else statement prevents a sensor_generic being setup. While investigating this, I realized that fixing it by re-nesting the else statement to the correct position broke other notification events that ARE a valueId.list but whose length is longer than 2.
To Reproduce
Steps to reproduce the behavior:
Run the most recent dev image or build from master
Expected behavior
Double taps should keep working as they were
Additional context
MQTT log:
2021-02-01 20:40:37.572 INFO ZWAVE: Node 3 is alive
2021-02-01 20:40:37.725 ERROR GATEWAY: Error while discovering value 3-32-0-event of node 3: Cannot read property 'discovery_payload' of undefined Cannot read property 'discovery_payload' of undefined
TypeError: Cannot read property 'discovery_payload' of undefined
at Gateway.discoverValue (/usr/src/app/lib/Gateway.js:1828:25)
at Gateway.onNodeStatus (/usr/src/app/lib/Gateway.js:358:12)
at ZwaveClient.emit (events.js:314:20)
at ZwaveClient.EventEmitter.emit (domain.js:483:12)
at ZwaveClient.onNodeStatus (/usr/src/app/lib/ZwaveClient.js:317:10)
at ZwaveClient.onNodeReady (/usr/src/app/lib/ZwaveClient.js:361:16)
at ZWaveNode.emit (events.js:326:22)
at ZWaveNode.EventEmitter.emit (domain.js:483:12)
at ZWaveNode.onReadyChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:424:19)
at /usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:217:10
at Interpreter.update (/usr/src/app/node_modules/xstate/lib/interpreter.js:255:17)
at /usr/src/app/node_modules/xstate/lib/interpreter.js:125:23
at Scheduler.process (/usr/src/app/node_modules/xstate/lib/scheduler.js:60:13)
at Scheduler.schedule (/usr/src/app/node_modules/xstate/lib/scheduler.js:44:14)
at Proxy.Interpreter.send (/usr/src/app/node_modules/xstate/lib/interpreter.js:121:29)
at ZWaveNode.onStatusChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:366:21)
After re-nesting the else statement, I get:
2021-02-02 00:02:05.563 ERROR GATEWAY: Error while discovering value 77-113-0-Power Management-Battery maintenance status of node 77: Cannot read property 'discovery_payload' of undefined Cannot read property 'discovery_payload' of undef$
TypeError: Cannot read property 'discovery_payload' of undefined
at Gateway.discoverValue (/usr/src/app/lib/Gateway.js:1828:25)
at Gateway.onNodeStatus (/usr/src/app/lib/Gateway.js:358:12)
at ZwaveClient.emit (events.js:314:20)
at ZwaveClient.EventEmitter.emit (domain.js:483:12)
at ZwaveClient.onNodeStatus (/usr/src/app/lib/ZwaveClient.js:317:10)
at ZwaveClient.onNodeReady (/usr/src/app/lib/ZwaveClient.js:361:16)
at ZWaveNode.emit (events.js:326:22)
at ZWaveNode.EventEmitter.emit (domain.js:483:12)
at ZWaveNode.onReadyChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:424:19)
at /usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:217:10
at Interpreter.update (/usr/src/app/node_modules/xstate/lib/interpreter.js:255:17)
at /usr/src/app/node_modules/xstate/lib/interpreter.js:125:23
at Scheduler.process (/usr/src/app/node_modules/xstate/lib/scheduler.js:60:13)
at Scheduler.schedule (/usr/src/app/node_modules/xstate/lib/scheduler.js:44:14)
at Proxy.Interpreter.send (/usr/src/app/node_modules/xstate/lib/interpreter.js:121:29)
at ZWaveNode.onStatusChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:366:21)
and:
2021-02-02 00:03:34.918 ERROR GATEWAY: Error while discovering value 120-113-0-Heat Alarm-Heat sensor status of node 120: Cannot read property 'discovery_payload' of undefined Cannot read property 'discovery_payload' of undefined
TypeError: Cannot read property 'discovery_payload' of undefined
at Gateway.discoverValue (/usr/src/app/lib/Gateway.js:1828:25)
at Gateway.onNodeStatus (/usr/src/app/lib/Gateway.js:358:12)
at ZwaveClient.emit (events.js:314:20)
at ZwaveClient.EventEmitter.emit (domain.js:483:12)
at ZwaveClient.onNodeStatus (/usr/src/app/lib/ZwaveClient.js:317:10)
at ZwaveClient.onNodeReady (/usr/src/app/lib/ZwaveClient.js:361:16)
at ZWaveNode.emit (events.js:326:22)
at ZWaveNode.EventEmitter.emit (domain.js:483:12)
at ZWaveNode.onReadyChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:424:19)
at /usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:217:10
at Interpreter.update (/usr/src/app/node_modules/xstate/lib/interpreter.js:255:17)
at /usr/src/app/node_modules/xstate/lib/interpreter.js:125:23
at Scheduler.process (/usr/src/app/node_modules/xstate/lib/scheduler.js:60:13)
at Scheduler.schedule (/usr/src/app/node_modules/xstate/lib/scheduler.js:44:14)
at Proxy.Interpreter.send (/usr/src/app/node_modules/xstate/lib/interpreter.js:121:29)
at ZWaveNode.onStatusChange (/usr/src/app/node_modules/zwave-js/src/lib/node/Node.ts:366:21)
The text was updated successfully, but these errors were encountered:
Before submitting a bug please read: https://zwave-js.github.io/zwavejs2mqtt/#/troubleshooting/bug_report
Version
Build/Run method
zwavejs2mqtt version: 1.0.0
zwavejs version: 6.0.0
Describe the bug
#396 changed the manner in which binary sensors with only two states are handled. As a result, double tap events no longer work because they are not a valueId.list and the nesting of the else statement prevents a sensor_generic being setup. While investigating this, I realized that fixing it by re-nesting the else statement to the correct position broke other notification events that ARE a valueId.list but whose length is longer than 2.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Double taps should keep working as they were
Additional context
MQTT log:
After re-nesting the else statement, I get:
and:
The text was updated successfully, but these errors were encountered: