Z-Wave Devices Going Unavailable, Need Help Resolving

Hey everyone,

I’ve been using Home Assistant with Z-Wave for many years and have been managing my Z-Wave devices through the Z-Wave JS UI add-on. I have a combination of ~50 powered / battery operated devices. Over the past six months, I’ve noticed an issue where devices randomly become unavailable throughout the week. However, if I ping the device, it comes back online.

This has been causing problems with my dashboards, which auto-populate light controls, and also with automations that don’t trigger because the device is unavailable.

Has anyone else experienced this issue? What could be causing it, and how do I go about fixing it? Any advice would be appreciated!

1 Like

If it recently started, then I would suspect there is some new radio interference present. However, there’s not much you can do about that unless you can control it. Did you perhaps add a new routers?

You can set up an automation to periodically ping all the devices if that resolves it, though.

The only similar thing I have experienced is if there are too many devices sending out power reports too frequently it can flood the network and make devices unavailable.

Sorry I can’t be of more help.
-David

Does anyone have a script example that pings all Unavailable devices like this?

This looks promising:

Got the same issue since some weeks but I cannot say if it is happening since a specific update or something.

I am currently having around 85 zwave devices with a zwave.me razberry board on a raspberry4.

Which hardware are you running?

I have the exact same problem, with more info: The devices are NOT unavailable in Z-Wave JS UI, only in Hass. Har anybody seen the same thing and found a fix for it?

What happens if you restart ZW JS UI? Does the device come back online in HASS? Does the Interview status show COMPLETE (green) or does it show PROTOCOLINFO (red)?

Sorry, I can’t answer that right now. I fixed all my devices (it’s in a house with a wife…) after I wrote the post. I have to wait until it happens again, it is very erratic. It can take a day or two (which it didn’t) or it can take a week or two. I will get back to the thread when it happens again. If it does, I have decided to build that Pi from ground up again, while keeping the configuration files for the Docker images of everything. That may solve it, I see that this build is two years old, I thought it was newer.

1 Like

@glenmm OK, I have another one (I have had a few others but, they had to be fixed at once because they were in use). This is how it looks in Hass:

This is what it looks like in Z-Wave JS UI:

Restarting Z-Wave JS UI did not change anything, it only lost a couple of more devices (now the ID Lock 150 is gone too). Running a ping make them come back at once, both the lock (which is on battery, so I find it weird that it should react to a ping that fast if that was really what happende) and the siren. Any ideas from that info?

I’ve not experienced your exact case (with the ping restoring the device) but the single Configuration value is similar to the issue I have seen when the ZWJSUI is restarted - it loses all the Node information. Under Advanced, try to re-interview the node and see if it comes back with more values. The issue I had was with the Zwave stick being secondary, and not primary SUC/SIS. Was there ever another zwave controller on your mesh?

The values arrive as soon as I do the ping. I have had this running for seven years, it was set up in March 2018. The same controller all the time, and no extra controllers. I have so much powered stuff, like floor thermostats, that there is no need for extra controllers.

The family that has rented parts of my house close to six years is moving out in one and a half month and I am seriously considering excluding everything I have, device by device, to set up the network all over again, with a newer controller. I just need to find out what controller will work best with a Pi 5, Docker and Home Assistant, it doesn’t seem to be completely straight-forward, with the newer 700 and 800 still reported as buggy in the documentation. I am wondering though if the HomeSeer G8 800 Z-Wave Stick may work with the correct firmware.

You might want to try chatting on the ZWJSUI HA Discord about your issue, they’re very helpful.

Thanks, but I think I will try the full new setup first. I think I’ll go for that Home Seer G8. I have the experience that my problems often are one-of stuff. :grin:

I don’t think you’re alone. I have had this issue for a few months now coming off of years of a stable setup.

The prevailing wisdom that this issue is somehow radio interference feels off since, as you’ve demonstrated, the issues are only in hass and not zwave js. For me, ping also instantly resolves with absolutely zero failures.

If anyone comes up with a resolution please share here as I suspect there are others experiencing this.

I have set up parts of the network anew, with a Home Seer G800 stick, and the part that I have set up again, has not had any problems in the two weeks it has been running.

Personally - I used to run Smarthings ↔ HA until they sold to Samsung and then switched to ZWave JS via HA direct. Was solid for a bit, but then started seeing these exact same issues after ZWave JS 11 → 12 update back in Q4 2023. I fought it for 3-4 months and finally threw in the towel.

Now running Hubitat C8 ↔ HA and it’s been ROCK solid. Added benefit of not having to rebuild my ZWave/Zigbee meshes every time I do an update / upgrade / power cycle on my HAOS VM. Currently have ~30 ZWave and 40 Zigbee devices. Little-to-no lag - and also allowed me to put the Hubitat on top of my upper kitchen cabinets - which is more central to the house - vs. my network closet that’s upstairs and in the back corner of my home.

Also worth noting I do NOT subscribe (nor have I ever logged my Hubitat into their cloud) - so everything is done locally (point of ZWave/Zigbee in the first place if you ask me).

My Z-Wave JS UI setup just went off the rails in the past week or so.

If I restore Z-Wave JS UI from a backup or install an update (like today’s), everything will work correctly for some time (some minutes or more). Then devices will stop responding instantly and take 30 seconds to multiple minutes to respond.

This shows up in the Z_Wave JS UI log:

06-04 09:40:05.123 INFO Z-WAVE: [Node 028] Is now dead
2025-06-04 09:40:05.127 ERROR Z-WAVE-SERVER: The node did not acknowledge the command (ZW0204)
ZWaveError: The node did not acknowledge the command (ZW0204)
    at Driver.sendMessage (/opt/node_modules/zwave-js/src/lib/driver/Driver.ts:7057:23)
    at Driver.sendCommandInternal (/opt/node_modules/zwave-js/src/lib/driver/Driver.ts:7253:28)
    at Driver.sendSupervisedCommand (/opt/node_modules/zwave-js/src/lib/driver/Driver.ts:7299:27)
    at Driver.sendCommand (/opt/node_modules/zwave-js/src/lib/driver/Driver.ts:7354:30)
    at Proxy.set (/opt/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:695:20)
    at Proxy.set (/opt/node_modules/@zwave-js/cc/src/cc/ConfigurationCC._validateArgs.ts:38:30)
    at Proxy.<anonymous> (/opt/node_modules/@zwave-js/cc/src/cc/ConfigurationCC.ts:450:30)
    at ZWaveNode2.setValue (/opt/node_modules/zwave-js/src/lib/node/Node.ts:555:39)
    at NodeMessageHandler.handle (/opt/node_modules/@zwave-js/server/dist-esm/lib/node/message_handler.js:23:43)
    at Client.receiveMessage (/opt/node_modules/@zwave-js/server/dist-esm/lib/server.js:134:100)
2025-06-04 09:40:05.264 INFO Z-WAVE: [Node 040] Value updated: 37-0-targetValue false => true

Best solution I was able to come up with and everything is running smooth now - much more so than at any other time in the past.

  1. Uninstalled/deleted the Z-Wave JS UI add-on from Home Assistant
  2. Installed stand-alone Z-Wave JS UI DOCKER container

That’s it. The stand-alone docker works as expected and doesn’t crap out after a few minutes like the add-on.

No idea why the add-on started doing this within the past couple of weeks, but at this point I can’t begin to care.

Actually I have the problem with the standalone Docker container. And now it has gotten worse, affecting both the house and my cabin by the sea. So something must have changed somewhere. Both have Aeotec Z-Stick 5, bought at about the same time. So now I have bought a Homeseer G8 stick for the cabin as well, I think it’s something about those Z-Sticks being near end of service because of something. The G8 that I set up in the house has not had any instances of stuff becoming unavailable, so that seems to be the way forward. I just need to take a day to resetting and pairing stuff, some of it insie the wall. That is a PITA, but I am not doing a backup/restore, if that’s even possible. I fear that it will propagate the error to the new system. I just wish it was possible to do resetting of Z-Wave stuff from the controller and setting it in a pairing mode.

I have now moved everything over to the G800 stick, and I have only one device that still is troublesome every now and then. That’s a power switch on the very edge of the coverage area, away from other devices and underneath a deck, so there’s a lot of wood between it and the closest of the other devices. I am suspecting that the much lower range of the Z-Stick 5 has something to do with it, that newer versions of Z Wave JS UI/Home Assistant is less leniant when it comes to weak signals.