Z-wave stopped working after update z-wave js UI 3.18.0

Hello,

I’m experiencing problems when I update z-wave js UI to 3.18.0 or higher.
3.17.0 just works.
When 3.18.0 was available I updated and all z-wave stopped working.
Reverted back to 3.17.0 and it all was fine again.
Couple of days ago 3.19.0 was available for z-wave js UI.
Tried to update again. And again all z-wave is unavailable.

Where to start looking what is going on?
The loggings would say it cannot open the port for the Z-wave stick.
But with 3.17.0 there is no prolem at all.
What changed in 3.18.0 and 3.19.0 to cause this issue?

Home assistant is up to date with version 2025.1.4

part of the supervisor logging:

2025-01-25 15:27:51.954 WARNING (MainThread) [supervisor.addons.addon] Watchdog found addon Z-Wave JS UI is failed, restarting...

2025-01-25 15:27:51.966 INFO (SyncWorker_1) [supervisor.docker.manager] Cleaning addon_a0d7b954_zwavejs2mqtt application

2025-01-25 15:27:52.663 INFO (MainThread) [supervisor.docker.addon] Starting Docker add-on ghcr.io/hassio-addons/zwave-js-ui/aarch64 with version 3.19.0

2025-01-25 15:27:59.550 INFO (MainThread) [supervisor.auth] Auth request from 'core_mosquitto' for 'mqtt'

2025-01-25 15:28:00.058 INFO (MainThread) [supervisor.auth] Successful login for 'mqtt'

2025-01-25 15:28:03.884 INFO (MainThread) [supervisor.hardware.monitor] Detecting remove hardware /dev/ttyACM0 - /dev/serial/by-id/usb-0658_0200-if00

2025-01-25 15:28:03.890 INFO (MainThread) [supervisor.hardware.monitor] Detecting remove hardware /dev/bus/usb/001/011 - None

2025-01-25 15:28:06.225 INFO (MainThread) [supervisor.hardware.monitor] Detecting add hardware /dev/bus/usb/001/012 - None

2025-01-25 15:28:06.230 INFO (MainThread) [supervisor.hardware.monitor] Detecting add hardware /dev/ttyACM0 - /dev/serial/by-id/usb-0658_0200-if00

2025-01-25 15:28:11.561 INFO (MainThread) [supervisor.hardware.monitor] Detecting remove hardware /dev/ttyACM0 - /dev/serial/by-id/usb-0658_0200-if00

2025-01-25 15:28:11.566 INFO (MainThread) [supervisor.hardware.monitor] Detecting remove hardware /dev/bus/usb/001/012 - None

2025-01-25 15:28:13.897 INFO (MainThread) [supervisor.hardware.monitor] Detecting add hardware /dev/bus/usb/001/013 - None

2025-01-25 15:28:13.904 INFO (MainThread) [supervisor.hardware.monitor] Detecting add hardware /dev/ttyACM0 - /dev/serial/by-id/usb-0658_0200-if00

2025-01-25 15:28:56.565 WARNING (MainThread) [supervisor.addons.addon] Watchdog found addon Z-Wave JS UI is failed, restarting...

part of the z-wave JS logging:

2025-01-25 15:31:15.212 INFO Z-WAVE: [Node 085] Value added 85-38-2-currentValue => null
2025-01-25 15:31:15.213 INFO Z-WAVE: [Node 085] Value added 85-38-2-Up => undefined
2025-01-25 15:31:15.214 INFO Z-WAVE: [Node 085] Value added 85-38-2-Down => undefined
2025-01-25 15:31:15.215 INFO Z-WAVE: [Node 085] Value added 85-38-2-restorePrevious => undefined
/opt/server/lib/Gateway.js:1540
            data.nodeName = node.name;
                          ^
TypeError: Cannot set properties of null (setting 'nodeName')
    at Gateway._onValueChanged (/opt/server/lib/Gateway.js:1540:27)
    at ZwaveClient.emit (node:events:517:28)
    at ZwaveClient.emitValueChanged (/opt/server/lib/ZwaveClient.js:1458:14)
    at /opt/server/lib/ZwaveClient.js:3464:40
    at Array.forEach (<anonymous>)
    at ZwaveClient._onNodeReady (/opt/server/lib/ZwaveClient.js:3464:24)
    at EventTarget.wrapper (/opt/node_modules/@zwave-js/shared/src/EventTarget.ts:89:5)
    at EventTarget.[nodejs.internal.kHybridDispatch] (node:internal/event_target:786:20)
    at EventTarget.dispatchEvent (node:internal/event_target:721:26)
    at ZWaveNode2.emit (/opt/node_modules/@zwave-js/shared/src/EventTarget.ts:173:27)
[15:31:15] INFO: Service Z-Wave JS UI exited with code 1 (by signal 0)
[15:31:16] INFO: Successfully send discovery information to Home Assistant.
s6-rc: info: service discovery successfully started
s6-rc: info: service legacy-services: starting
[15:31:16] INFO: Starting the Z-Wave JS UI...
s6-rc: info: service legacy-services successfully started
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service discovery: stopping
s6-rc: info: service nginx: stopping
s6-rc: info: service discovery successfully stopped
[15:31:16] INFO: Service NGINX exited with code 0 (by signal 0)
s6-rc: info: service nginx successfully stopped
s6-rc: info: service init-nginx: stopping
s6-rc: info: service zwave-js-ui: stopping
s6-rc: info: service init-nginx successfully stopped
[15:31:16] INFO: Service Z-Wave JS UI exited with code 256 (by signal 15)
s6-rc: info: service zwave-js-ui successfully stopped
s6-rc: info: service init-zwave-js-ui: stopping
s6-rc: info: service init-zwave-js-ui successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service base-addon-log-level: stopping
s6-rc: info: service base-addon-log-level successfully stopped
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service base-addon-banner: stopping
s6-rc: info: service base-addon-banner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped

part of z-wave js log:

cont-init: info: running /etc/cont-init.d/config.sh
[15:00:41] INFO: Both 'network_key' and 's0_legacy_key' are set and match. All ok.
[15:00:48] INFO: Soft-reset set to automatic
[15:00:48] INFO: Virtual Machine not detected, enabling soft-reset
cont-init: info: /etc/cont-init.d/config.sh exited 0
cont-init: info: running /etc/cont-init.d/structure.sh
cont-init: info: /etc/cont-init.d/structure.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun zwave_js (no readiness notification)
s6-rc: info: service legacy-services successfully started
[15:00:53] INFO: Successfully send discovery information to Home Assistant.
2025-01-25T14:00:56.847Z DRIVER   ███████╗        ██╗    ██╗  █████╗  ██╗   ██╗ ███████╗          ██╗ ███████╗
                                  ╚══███╔╝        ██║    ██║ ██╔══██╗ ██║   ██║ ██╔════╝          ██║ ██╔════╝
                                    ███╔╝  █████╗ ██║ █╗ ██║ ███████║ ██║   ██║ █████╗            ██║ ███████╗
                                   ███╔╝   ╚════╝ ██║███╗██║ ██╔══██║ ╚██╗ ██╔╝ ██╔══╝       ██   ██║ ╚════██║
                                  ███████╗        ╚███╔███╔╝ ██║  ██║  ╚████╔╝  ███████╗     ╚█████╔╝ ███████║
                                  ╚══════╝         ╚══╝╚══╝  ╚═╝  ╚═╝   ╚═══╝   ╚══════╝      ╚════╝  ╚══════╝
2025-01-25T14:00:56.855Z DRIVER   version 13.10.3
2025-01-25T14:00:56.856Z DRIVER   
2025-01-25T14:01:05.932Z DRIVER   Failed to open the serial port: Error Resource temporarily unavailable Cannot 
                                  lock port
Unable to start driver ZWaveError: Failed to open the serial port: Error Resource temporarily unavailable Cannot lock port (ZW0100)
    at Driver.openSerialport (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:1398:9)
    at Immediate.<anonymous> (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:1230:5) {
  code: 100,
  context: undefined,
  transactionSource: undefined
}
[14:01:06] WARNING: Halt add-on
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped

What is your install method?

The log shows zwavejs v13.10.3
Latest version is 14.3.7

This is likely the issue.
What version shows when it works?

No idea anymore. Its installed years ago.
Shouldn’t it update automatically?
What is not up to date?

With Z-wave JS UI running and working on 3.17.0, Z-Wave JS is not even started.

image

image

image

looks like the correct z-wave JS version:

Check the version of your Z-Wave JS integration, not the add on. (The naming of these components is so stupid unfortunate.)

Go to Settings → Devices & Services → Integrations → Z-Wave. Click on Configure to see the Driver Version - the current one is 14.3.7.

No. I already said that is the wrong version

To Be clear:
zwavejsui is zwavejs with a UI
zwavejs is just zwave js with no UI

It looks like your first image show zwavejs stopped and zwavejsui running. This is correct. both cannot run at same time. remove the one that you do not need.

If you try to run zwavejs and zwavejsui at same time you will get “failed to open the serial port” error. It is hard to tell but maybe this is what your are doing.

current zwavejs version is 14.3.7
current zwvaejsui version is 9.29.1

Your version are zwavejs 13.10.3 and zwavejsui 9.26.0. This is wrong.
You must update zwavejsui to latest version. The latest version zwavejsui will include the latest version of zwavejs.

Updating Z-Wave JS UI to the latest 3.19.0 will break everything.
It now runs zwave-js UI 3.17.0 and the latest is 3.19.0.

image

The Z-Wave JS Addon is version 0.9.0 and that version contains zwavejs 13.10.3 as you can see in the screenshot from Github.

I also saw other people having the same issue.

That issue doesn’t seem to be the same problem you are having. Your error is somewhere in the MQTT gateway code, perhaps an unidentified bug.

Why are you using MQTT? You can try disabling MQTT in v3.17 then upgrade.

Sorry, dont know that version numbering so that was unclear.
zwavejs addon is irrelevant because you are using zwavejsui.

The fail log you sent shows its not connect to usb stick (“failed to open the serial port”)

I would guess either USB stick is being held but uninstalled zwavejsui service, usb stick has changed location of hardware or some other random.

Did you try reboot Hardware, not just HA, after update?

Did you try backup HA >> uninstall zwavejsui >> reboot >> reinstall zwavejsui >> check >> reboot if still not work?

You did not clarify that you understand and are not running both zwavejsui and zwavejs?

That version numbering comes straight from the HA add-on page.
if there is an update You get the information a newer version can be installed.
like this:
image

So its runs the latest versions as is from the add-on page.
If there are newer underlaying versions. Those are not intergrated in the add-ons yet from HA.
As I can recall in the past (3+ years ago) You needed both zwavejsui and zwavejs.
Because zwavejsui didn’t install the core zwavejs.

I don’t want to try to uninstall it. Already lost my z-wave modules a couple of times. And reintergrating 70+ modules is no fun.

Z-Wave JS is “linked” to Z-Wave JS UI through MQTT I think:
image

Sorry, but this has never been true. At no time in the history of Z-Wave JS and HA has it been true. Maybe you are confusing integrations and add-ons.

https://www.home-assistant.io/integrations/zwave_js/#can-i-switch-between-z-wave-js-and-z-wave-js-ui

To keep up to date on version information, including add-ons, consult https://zwave-js.github.io/which-version/.

You can switch between the official Z-Wave JS add-on and the Z-Wave JS UI add-on. However, but you cannot run them both at the same time. Only one of them can be active at the same time.

It’s been so confusing I wrote a guide to switch. Before you troubleshoot further, you should figure out what you are using.

For Z-Wave to work correctly:

  • The Integration “Z-Wave JS” must be running (Settings → Devices & Services → Integrations)
  • One and only one of the Add-on’s must be running, either “Z-Wave JS” or “Z-Wave JS UI” (Settings → Add-ons)

Done the Tutorial. Was already set correctly.
100% sure I’m running the Z-Wave JS UI add-on.
Never ran the standard Z-wave JS.
Deleting the Z-wave JS add-on did the trick.
now Z-Wave JS UI is updated to the lastest 3.19.0 and it doesn’t give me any errors.

image

thanks for the help.

And YES, I did mix up intergrations and addons :smile:

Yay - Glad it’s sorted! That naming has mixed us all up at one time or another…