My Z-Wave network regularly stops working. After a power cycle it will last somewhere between a few hours to a few days. I feel like it was slightly more reliable when I first set it up, but it has been problematic for a long time now.
Power cycling my Raspberry Pi 4 or just unplugging and replugging the Z-Wave dongle solves the problem temporarily until the next crash. The dongle is connected to a USB 2 port on the Pi through an extender cable about 2 or 3 feet long and suspended as far away from any electronics as possible.
I am using a SLUSB001A by Silicon Labs which is a 700 series controller. I have updated the firmware to 7.18.2 and it shows up like so in Home Assistant devices:
ZST10-700
by Silicon Labs
Firmware: 7.18.2
The firmware update did not seem to have any effect.
I have a total of 13 Z-Wave devices. Only 3 of them are battery powered and I believe the rest are acting as repeaters. I have tried healing the network several times to no effect.
Here is my Home Assistant information:
Home Assistant 2023.1.4
Supervisor 2022.12.1
Operating System 9.4
Frontend 20230110.0 - latest
Below is the log for the zwaveJS add-on. Iāve tried searching some of the lines in there and am getting very few results, nothing that is really helping me out.
Any suggestions for what I might try next to get a bit more stability? Any other information I can provide?
Z-Wave error ZWaveError: Timeout while waiting for an ACK from the controller (ZW0200)
at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)
at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)
at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)
at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)
at ConfigurationCCAPI.set (/usr/src/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:647:24)
at Proxy.ConfigurationCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:420:29)
at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)
at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)
at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)
at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99) {
code: 200,
context: undefined,
transactionSource: ' at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)\n' +
' at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)\n' +
' at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)\n' +
' at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)\n' +
' at ConfigurationCCAPI.set (/usr/src/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:647:24)\n' +
' at Proxy.ConfigurationCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:420:29)\n' +
' at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)\n' +
' at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)\n' +
' at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)\n' +
' at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99)'
}
2023-01-16T16:39:25.999Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:39:27.105Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
2023-01-16T16:39:29.211Z CNTRLR [Node 017] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
2023-01-16T16:39:30.724Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:39:31.830Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
2023-01-16T16:39:33.939Z CNTRLR [Node 017] did not respond after 2/3 attempts. Scheduling next try in 500 ms.
2023-01-16T16:39:35.457Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:39:36.563Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
Z-Wave error ZWaveError: Timeout while waiting for an ACK from the controller (ZW0200)
at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)
at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)
at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)
at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)
at Proxy.set (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:238:24)
at Proxy.MultilevelSwitchCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:344:6)
at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)
at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)
at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)
at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99) {
code: 200,
context: undefined,
transactionSource: ' at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)\n' +
' at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)\n' +
' at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)\n' +
' at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)\n' +
' at Proxy.set (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:238:24)\n' +
' at Proxy.MultilevelSwitchCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:344:6)\n' +
' at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)\n' +
' at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)\n' +
' at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)\n' +
' at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99)'
}
2023-01-16T16:39:52.078Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:39:53.185Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
2023-01-16T16:39:55.291Z CNTRLR [Node 009] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
2023-01-16T16:39:56.803Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:39:57.909Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
2023-01-16T16:40:00.016Z CNTRLR [Node 009] did not respond after 2/3 attempts. Scheduling next try in 500 ms.
2023-01-16T16:40:01.527Z CNTRLR Failed to execute controller command after 1/3 attempts. Scheduling next try i
n 100 ms.
2023-01-16T16:40:02.634Z CNTRLR Failed to execute controller command after 2/3 attempts. Scheduling next try i
n 1100 ms.
Z-Wave error ZWaveError: Timeout while waiting for an ACK from the controller (ZW0200)
at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)
at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)
at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)
at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)
at Proxy.set (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:238:24)
at Proxy.MultilevelSwitchCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:344:6)
at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)
at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)
at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)
at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99) {
code: 200,
context: undefined,
transactionSource: ' at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)\n' +
' at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)\n' +
' at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)\n' +
' at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)\n' +
' at Proxy.set (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:238:24)\n' +
' at Proxy.MultilevelSwitchCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/MultilevelSwitchCC.ts:344:6)\n' +
' at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)\n' +
' at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)\n' +
' at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)\n' +
' at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99)'
}