Set reaction triggering wrong z-wave device
-
Here's a better output of the logs. I was providing output from Proxmox, which is awful for copying text.
root@docker:/home/tmorgenthaler/reactor/logs# cat reactor.* | grep 137-0 | grep zwavejs | grep T22:29 [latest-26011]2026-01-30T22:29:00.005Z <ZWaveJSController:INFO> ZWaveJSController#zwavejs performing power_switch.on on Front Porch Lights (Switch#zwavejs>137-0) with { } [latest-26011]2026-01-30T22:29:00.918Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-30T22:29:01.169Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-30T22:29:02.240Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-30T22:29:02.241Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-30T22:29:02.241Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-30T22:29:02.241Z <ZWaveJSController:5:ZWaveJSController.js:1270> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_targetValue to true [latest-26011]2026-01-30T22:29:02.241Z <ZWaveJSController:5:ZWaveJSController.js:1255> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-30T22:29:02.242Z <ZWaveJSController:5:ZWaveJSController.js:1166> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-30T22:29:02.242Z <ZWaveJSController:5:ZWaveJSController.js:1179> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value" }, "value": true, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-30T22:29:02.242Z <ZWaveJSController:5:ZWaveJSController.js:1270> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to true [latest-26011]2026-01-30T22:29:02.491Z <ZWaveJSController:5:ZWaveJSController.js:966> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 root@docker:/home/tmorgenthaler/reactor/logs# cat reactor.* | grep 136-0 | grep zwavejs | grep T22:29 root@docker:/home/tmorgenthaler/reactor/logs#This was the timestamp for when that particular rule was triggering. As you can see, the 137-0 entity has several entries for that timestamp, but 136-0 does not, yet I've been able to replicate that is what is occuring.
-
Please go to the Entities list, find entity
zwavejs>137-0, open its detail panel, and copy-paste the output from the Copy Attributes button here (as text, no screen shots). -
Please go to the Entities list, find entity
zwavejs>137-0, open its detail panel, and copy-paste the output from the Copy Attributes button here (as text, no screen shots).@toggledbits said in Set reaction triggering wrong z-wave device:
Please go to the Entities list, find entity zwavejs>137-0, open its detail panel, and copy-paste the output from the Copy Attributes button here (as text, no screen shots).
I've providing a link as text file. I got a warning about the number of characters when I tried to paste into the reply directly.
-
OK. Everything checks out there. I would upgrade to the latest ZWaveJSController -- it looks like you are a release behind. That version added logging for what is actually sent to ZWaveJS, which may be instructive. But restarting for that update and rebuilding the state data may resolve the issue (you've probably done the former, I assume, but the latter is less obvious), so we're changing the conditions of the test. But let's see what happens when you upgrade, and then see what the log entries look like if the behavior is the same, because it sure looks like ZWaveJSController has it correct.
-
I wasn't sure if I was on the correct release or not. Does the Docker image include the Zwave release in the pull?
said in Set reaction triggering wrong z-wave device:
I wasn't sure if I was on the correct release or not. Does the Docker image include the Zwave release in the pull?
Never mind. It's says it does not in your documentation.

I updated to v25304 and restarted Reactor. I'll run some tests now.
-
said in Set reaction triggering wrong z-wave device:
I wasn't sure if I was on the correct release or not. Does the Docker image include the Zwave release in the pull?
Never mind. It's says it does not in your documentation.

I updated to v25304 and restarted Reactor. I'll run some tests now.
said in Set reaction triggering wrong z-wave device:
I updated to v25304 and restarted Reactor. I'll run some tests now.
Alright, it still seems to be doing the same thing. I'm tailing the zwavejs log, and pressing the button for the Set Reaction. I see it pushing the command for 137-0, however, the soffit lights (136-0) are coming on.
root@docker:/home/tmorgenthaler/reactor/logs# tail -f zwavejs.log | grep 137-0 [latest-26011]2026-01-31T20:25:01.008Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:25:01.008Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-31T20:25:01.008Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": true, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:25:01.009Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to true [latest-26011]2026-01-31T20:25:01.104Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:15.710Z <ZWaveJSController:INFO> ZWaveJSController#zwavejs performing power_switch.on on Front Porch Lights (Switch#zwavejs>137-0) with { } [latest-26011]2026-01-31T20:25:15.973Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:16.125Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:16.125Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_targetValue to true [latest-26011]2026-01-31T20:25:16.125Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:16.126Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:25:16.126Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-31T20:25:16.126Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": true, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:25:16.126Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to true [latest-26011]2026-01-31T20:25:16.224Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:33.510Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:33.661Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:33.661Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:25:33.662Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_targetValue to false [latest-26011]2026-01-31T20:25:33.666Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:25:33.666Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-31T20:25:33.666Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": false, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:25:33.666Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to false [latest-26011]2026-01-31T20:25:33.760Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0I also see the results of turning off the device from HAAS in the ZWaveJS logs.
Here are the entries for the devices in HAAS from ZwaveJS-UI
Screenshot 2026-01-31 at 3.29.10 PMI've also creating an attirbutes text file for 136-0. Maybe something is funky in that entry.
-
Here are some logs of me turning the entities on and off from HAAS.
root@docker:/home/tmorgenthaler/reactor/logs# tail -f zwavejs.log | grep 13'[6-7]'-0 [latest-26011]2026-01-31T20:37:00.403Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>136-0 power_switch.state [latest-26011]2026-01-31T20:37:00.403Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>136-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": true, "__endp": { "power_switch.state": { "entity": "136-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:37:00.403Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>136-0.x_zwave_values.Binary_Switch_currentValue to true [latest-26011]2026-01-31T20:37:00.648Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>136-0 [latest-26011]2026-01-31T20:37:18.529Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>136-0 [latest-26011]2026-01-31T20:37:18.553Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>136-0 [latest-26011]2026-01-31T20:37:18.553Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>136-0.x_zwave_values.Binary_Switch_targetValue to false [latest-26011]2026-01-31T20:37:18.559Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>136-0 [latest-26011]2026-01-31T20:37:18.559Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "136-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:37:18.559Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>136-0 power_switch.state [latest-26011]2026-01-31T20:37:18.559Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>136-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": false, "__endp": { "power_switch.state": { "entity": "136-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:37:18.560Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>136-0.x_zwave_values.Binary_Switch_currentValue to false [latest-26011]2026-01-31T20:37:18.779Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>136-0 [latest-26011]2026-01-31T20:37:25.647Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:25.803Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:25.803Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:25.804Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_targetValue to true [latest-26011]2026-01-31T20:37:25.808Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:37:25.808Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-31T20:37:25.808Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": true, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:37:25.809Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to true [latest-26011]2026-01-31T20:37:25.898Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:29.297Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:29.447Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:29.448Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event value updated entity Switch#zwavejs>137-0 [latest-26011]2026-01-31T20:37:29.448Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_targetValue to false [latest-26011]2026-01-31T20:37:29.453Z <ZWaveJSController:5:ZWaveJSController.js:1237> ZWaveJSController#zwavejs updating attribute power_switch.state with { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } [latest-26011]2026-01-31T20:37:29.453Z <ZWaveJSController:5:ZWaveJSController.js:1148> ZWaveJSController#zwavejs _apply_value entity Switch#zwavejs>137-0 power_switch.state [latest-26011]2026-01-31T20:37:29.453Z <ZWaveJSController:5:ZWaveJSController.js:1161> ZWaveJSController#zwavejs handling Switch#zwavejs>137-0 power_switch.state by { "valueId": "37:currentValue:" } with { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 2, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value", "stateful": true, "secret": false }, "value": false, "__endp": { "power_switch.state": { "entity": "137-0", "impl": { "valueId": "37:currentValue:" } } } } [latest-26011]2026-01-31T20:37:29.453Z <ZWaveJSController:5:ZWaveJSController.js:1252> ZWaveJSController#zwavejs setting Switch#zwavejs>137-0.x_zwave_values.Binary_Switch_currentValue to false [latest-26011]2026-01-31T20:37:29.547Z <ZWaveJSController:5:ZWaveJSController.js:948> ZWaveJSController#zwavejs handling node event statistics updated entity Switch#zwavejs>137-0 -
I also just noticed that if I performed an action from the Entities page in MSR fr 137-0, it's turning on 136-0 in HAAS. If I turn on 136-0 through entities, it's turning on 137-0 in HAAS. It would appear these devices are somehow switching actions, despite everything showing what they are.






