The problem
Zwave-js update to 1.46 did heavely crash the system.
Even a restore of a backup is not working
Updating the VM running HA gives an error the zwave USB is not recognized anymore.
I had to run a working backup at HA and restart the NUC for getting up and running
Environment
- Add-on with the issue: Zwave-js
- Add-on release with the issue: 1.46
- Last working add-on release (if known): 1.45
- Operating environment (OS/Supervised):
System Health
| version |
core-2021.11.1 |
| installation_type |
Home Assistant OS |
| dev |
false |
| hassio |
true |
| docker |
true |
| user |
root |
| virtualenv |
false |
| python_version |
3.9.7 |
| os_name |
Linux |
| os_version |
5.10.75 |
| arch |
x86_64 |
| timezone |
Europe/Amsterdam |
Home Assistant Community Store
| GitHub API |
ok |
| Github API Calls Remaining |
4268 |
| Installed Version |
1.16.0 |
| Stage |
running |
| Available Repositories |
889 |
| Installed Repositories |
29 |
Home Assistant Cloud
| logged_in |
false |
| can_reach_cert_server |
ok |
| can_reach_cloud_auth |
ok |
| can_reach_cloud |
failed to load: timeout |
Home Assistant Supervisor
| host_os |
Home Assistant OS 6.6 |
| update_channel |
stable |
| supervisor_version |
supervisor-2021.10.8 |
| docker_version |
20.10.8 |
| disk_total |
48.5 GB |
| disk_used |
7.6 GB |
| healthy |
true |
| supported |
true |
| board |
ova |
| supervisor_api |
ok |
| version_api |
ok |
| installed_addons |
File editor (5.3.3), NGINX Home Assistant SSL proxy (3.0.2), Node-RED (10.0.1), Samba share (9.5.1), Terminal & SSH (9.2.1), Z-Wave JS (0.1.45), Samba Backup (5.0.0), ESPHome (2021.10.3), Duck DNS (1.14.0) |
Lovelace
| dashboards |
3 |
| resources |
21 |
| views |
97 |
| mode |
storage |
## Problem-relevant configuration
Traceback/Error logs

manufacturer ID: 0x86
product type: 0x01
product ID: 0x5a
supported functions:
· GetSerialApiInitData (0x02)
· FUNC_ID_SERIAL_API_APPL_NODE_INFORMATION (0x03)
· ApplicationCommand (0x04)
· GetControllerCapabilities (0x05)
· SetSerialApiTimeouts (0x06)
· GetSerialApiCapabilities (0x07)
· SoftReset (0x08)
· UNKNOWN_FUNC_UNKNOWN_0x09 (0x09)
· SetRFReceiveMode (0x10)
· UNKNOWN_FUNC_SET_SLEEP_MODE (0x11)
· FUNC_ID_ZW_SEND_NODE_INFORMATION (0x12)
· SendData (0x13)
· SendDataMulticast (0x14)
· GetControllerVersion (0x15)
· SendDataAbort (0x16)
· FUNC_ID_ZW_R_F_POWER_LEVEL_SET (0x17)
· UNKNOWN_FUNC_SEND_DATA_META (0x18)
· FUNC_ID_ZW_GET_RANDOM (0x1c)
· GetControllerId (0x20)
· UNKNOWN_FUNC_MEMORY_GET_BYTE (0x21)
· UNKNOWN_FUNC_MEMORY_PUT_BYTE (0x22)
· UNKNOWN_FUNC_MEMORY_GET_BUFFER (0x23)
· UNKNOWN_FUNC_MEMORY_PUT_BUFFER (0x24)
· UNKNOWN_FUNC_FlashAutoProgSet (0x27)
· GetNVMId (0x29)
· ExtNVMReadLongBuffer (0x2a)
· ExtNVMWriteLongBuffer (0x2b)
· ExtNVMReadLongByte (0x2c)
· ExtExtWriteLongByte (0x2d)
· GetNodeProtocolInfo (0x41)
· HardReset (0x42)
· FUNC_ID_ZW_REPLICATION_COMMAND_COMPLETE (0x44)
· FUNC_ID_ZW_REPLICATION_SEND_DATA (0x45)
· AssignReturnRoute (0x46)
· DeleteReturnRoute (0x47)
· RequestNodeNeighborUpdate (0x48)
· ApplicationUpdateRequest (0x49)
· AddNodeToNetwork (0x4a)
· RemoveNodeFromNetwork (0x4b)
· FUNC_ID_ZW_CREATE_NEW_PRIMARY (0x4c)
· FUNC_ID_ZW_CONTROLLER_CHANGE (0x4d)
· FUNC_ID_ZW_SET_LEARN_MODE (0x50)
· AssignSUCReturnRoute (0x51)
· FUNC_ID_ZW_REQUEST_NETWORK_UPDATE (0x53)
· SetSUCNodeId (0x54)
· DeleteSUCReturnRoute (0x55)
· GetSUCNodeId (0x56)
· UNKNOWN_FUNC_SEND_SUC_ID (0x57)
· FUNC_ID_ZW_EXPLORE_REQUEST_INCLUSION (0x5e)
· RequestNodeInfo (0x60)
· RemoveFailedNode (0x61)
· IsFailedNode (0x62)
· ReplaceFailedNode (0x63)
· UNKNOWN_FUNC_UNKNOWN_0x66 (0x66)
· UNKNOWN_FUNC_UNKNOWN_0x67 (0x67)
· GetRoutingInfo (0x80)
· UNKNOWN_FUNC_LOCK_ROUTE_RESPONSE (0x90)
· UNKNOWN_FUNC_GET_PRIORITY_ROUTE (0x92)
· UNKNOWN_FUNC_SET_PRIORITY_ROUTE (0x93)
· UNKNOWN_FUNC_UNKNOWN_0x98 (0x98)
· UNKNOWN_FUNC_UNKNOWN_0xB4 (0xb4)
· UNKNOWN_FUNC_WATCH_DOG_ENABLE (0xb6)
· UNKNOWN_FUNC_WATCH_DOG_DISABLE (0xb7)
· UNKNOWN_FUNC_WATCH_DOG_KICK (0xb8)
· UNKNOWN_FUNC_UNKNOWN_0xB9 (0xb9)
· UNKNOWN_FUNC_RF_POWERLEVEL_GET (0xba)
· UNKNOWN_FUNC_GET_LIBRARY_TYPE (0xbd)
· UNKNOWN_FUNC_SEND_TEST_FRAME (0xbe)
· UNKNOWN_FUNC_GET_PROTOCOL_STATUS (0xbf)
· UNKNOWN_FUNC_UNKNOWN_0xD2 (0xd2)
· UNKNOWN_FUNC_UNKNOWN_0xD3 (0xd3)
· UNKNOWN_FUNC_UNKNOWN_0xD4 (0xd4)
· undefined (0xee)
· UNKNOWN_FUNC_UNKNOWN_0xEF (0xef)
2021-11-05T20:07:50.014Z CNTRLR Performing soft reset...
2021-11-05T20:07:50.033Z CNTRLR Waiting for the controller to reconnect...
2021-11-05T20:07:51.535Z CNTRLR Re-opening serial port...
2021-11-05T20:08:00.554Z DRIVER Failed to open the serial port: Error: No such file or directory, cannot open
/dev/ttyACM0
Error in driver ZWaveError: Failed to open the serial port: Error: No such file or directory, cannot open /dev/ttyACM0 (ZW0100)
at Driver.tryOpenSerialport (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:874:17)
at Driver.ensureSerialAPI (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:1846:4)
at Driver.softResetInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:1810:9)
at Driver.initializeControllerAndNodes (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:959:6)
at Immediate.<anonymous> (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:817:5) {
code: 100,
context: undefined,
transactionSource: undefined
}
Shutting down
2021-11-05T20:08:00.562Z CNTRLR Waiting for the Serial API to start...
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] waiting for services.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
Additional information
In https://github.com/home-assistant/addons/pull/2261 we’ve added detection of VM in use and automatic disable of soft-reset. We want to allow users to get running as easy as possible without configuring options as far as possible.
An option for advanced users, that can configure their VM and want to use soft-reset, is ok to add but it must be compatible with the automatic handling. 👍
Please test version 0.1.47 when it shows up and report the success/failure. Thanks!
Please refrain from posting “same issue” and similar replies without adding new information. Every new post sends a notification to all people subscribed to the issue. The appropriate way of showing that you’re affected by the issue is by reacting with 👍 to the top post.
Thanks!
I have the same issue. Rolling back to version 1.45 made it work again. Can someone implement an option to disable the “soft reset” of the Z-wave stick?
Closing here since 0.1.47 seems to resolve the issue. We’ll continue to try improve how soft-reset is handled and welcome help with that.
I’ve opened a PR that allows the user to disable the soft reset from within Home Assistant: https://github.com/home-assistant/addons/pull/2260
If you’re running your VM on libvirt (KVM) as is pretty common, you can use udev rules to automatically reattach the USB when it gets disconnected. I wrote a small guide here.
In theory, this is better that just disabling the soft-reset, as I assume there are good reasons for doing so or they wouldn’t have added that “feature”.
Same issue here. Back Up of .45 and reboot fixes the issue, but impossible to upgrade to .46.
Yes 1.47 did the trick. Thanks!!!
0.1.47 works for me as well (Synology VMM). Much appreciate the fix.
Try refreshing the add-on store.
Yup, same here. If anyone still needs an option to turn it on or off manually, let me know.
Works perfect. But had to restart HA server after update to .47. Thank you allot 🤝
This already exists in the version of node-zwave-js that that addon has upgraded to. In addition to detecting specific controllers that are known to be problematic, the driver is also supposed to remember if a soft-reset fails, and avoid it in future startups, but that isn’t working as intended. If it was, at worst it would have been a one-time failure (with perhaps a host restart) and correctable w/o changing any settings. Unfortunately, there isn’t the manual fallback to workaround it.
To be fair, ZWaveJS has implemented soft reset knowing that a) it breaks certain configurations, but more importantly b) it provides a mechanism to override/revert to the previous behaviour. The next version of ZWaveJS actually tries to auto detect problematic ZWave controllers to prevent the soft reset from occurring.
It’s the “official” HA ZWaveJS add-on that does not appear to have taken either point into account.
Strangely, when I downgrade (I can only downgrade to 1.4.0), I get immediately upgraded again automatically to 1.4.6. Auto update is turned off. So I don’t really have a workaround (using Synology virtual machine)
I am also on unRaid running HASSOS in a vm and downgrading to 1.45 and rebooting the vm didn’t solve the issue.
0.1.46 upgraded the z-wave driver. The new version will perform a “soft-reset” of the z-wave controller upon startup. This isn’t compatible with all systems, because it can result in a removal and re-insertion of the USB device. The soft-reset can be disabled, but the addon does not provide that option yet.
You can’t run both the official add-on
core_zwave_jsand the community add-on for zwavejs2mqtt connecting to the same controller at the same time.If you have set up the integration to use the official add-on the integration will manage the add-on and try to install and upgrade it if it detects it not running.
If you don’t want to use the official add-on you need to re-configure the server in the integration configuration panel to not use the official add-on and enter the websocket URL to the community zwavejs2mqtt add-on manually.
This problem is not related to this issue, so please continue troubleshooting in our help channels if needed: https://www.home-assistant.io/help/#communication-channels
Thanks so much!
I can confirm that 0.1.47 is working fine.
ESXi 7.0.3 Hassos 6.6 VM
Thank you. It was the zwave2mqtt addon. Great 😃
Martin Hjelmare @.***> schrieb am Di., 9. Nov. 2021, 20:35:
Same here, the update seems to have fixed the issue.
Thank you so much guys,
I can confirm that 0.1.47 is working fine.
UnRaid 6.9.2 Hassos 6.6 VM
Hi guys, Maybe i’m not suppose to yet but i cant see the 0.1.47 update?
0.1.47 Tested with hass 2021.11.2 on ESXi 7.0U2a. Issue resolved. Thank you very much for the fix!
0.1.47 tested with hass 2021.11.2 on ESXi 6.7. Issue resolved. Thank you very much for the fix!
I have. I also physically unplugged it, checked the vm, then added it back in. I switched to an external zwavejs2mqtt this morning as a workaround.