Running HA on a RPi4 with a UZB stick. Have ~50 zwave devices and loads of issues with the old integration, so took the plunge and reset the UZB then started from scratch with the new zwave-JS integration, plus JS-to-MQTT as control panel.
Initially everything worked great – much faster device response and distant devices were consistently responsive (no node is >2 hops away from the controller, but some of the further out ones would constantly drop out on the old integration, although they never did with my old Fibaro HC2 controller)
A day after moving across, all nodes became unresponsive overnight, and the JS-to-MQTT control panel showed the controller as unavailable. Soft rebooting didn’t help but power cycling fixed it. Same thing happened again a few hours later so I looked harder, and a handful of devices were “available” but most were unavailable, plus the control panel was again reporting controller/driver as unavailable. I can’t remember the error msg but sounded like the port was locked by something else? Looking in the zwave-JS log it still looked like the network was up and running, but the control panel (JS-to-MQTT) log showed the same driver unavailable error. Hard rebooted and it started working again.
Separate to this, I’ve had several instances where the network becomes unusably slow (30 seconds plus to register a command). I’m no zwave expert but I couldn’t see anything in the log to suggest why. The only thing that fixes it seems to be a hard reboot.
I know the integration is a work in progress (and massive kudos for getting it to this state so quickly!) but I guess I have three questions:
1) How do the zwave-JS and zwave-JS-to-MQTT integrations work together? I assume they can both act as gateways, as their configs both ask for a USB device. I have the MQTT one set to disable gateway. Which log do I look at for info on my nodes? Have I set them up correctly? Is there anything I can do to stop these controller-dropouts happening?
2) What is actually happening when the control panel reports that the driver is inaccessible, and my devices all appear as unavailable, yet in the zwave-JS integration log it sometimes looks like they’re still active?
3) How do I troubleshoot a suddenly-very-slow zwave network with this integration?
You can only have one “system” (add-on/docker container/server, etc) connected to the zwave controller device at a time.
if you have the zwavejs add-on (NOT integration) and the zwavejs2mqtt add-on running at the same time there will be issues.
you need to completely disable one of the add-ons and make sure that the old zwave integration is also removed as well as it is also trying to access the zwave controller itself too.
Note that the zwavejs integration is completely different than the zwavejs add-on. And there is no such thing as a “zwavejs2mqtt integration”.
You have to have the zwavejs integration when using (only one of…) the zwavejs or zwavejs2mqtt add-ons.
I feel like an absolute dumbass – just removed the zwavejs addon, left the zwavejs2mqtt addon and zwavejs integration alone, and rebooted. All working fine. Hopefully it stays that way!
Thanks for having the patience to point out the obvious
Hi – I’m still having significant problems with the whole zwave-js/zwavejs2mqtt thing…
Once every day or two, the network will become so slow it’s unusuable, or devices will drop off, or the names will change (seriously) and require setting up my dashboards again.
Sometimes (despite stopping, uninstalling, etc etc) the zwave-JS add-on will reappear and be running. If I stop it, it sometimes restarts. If I uninstall it, it eventually reappears. Unchecking start on boot, watchdog etc does not seem to help at all. Looking at the zwave2mqtt add-on , it is usually running OK but will error as you described above when zwave-JS revives itself.
Tonight, all my devices went unavailable and on reboot they all seem to have changed their names (and are still unavailable). In the zwave2mqtt add-on control panel, most if not all devices seem to appear under the names I initially assigned on pairing them, but this is not translating into HA.
Can you indulge me and explain what zwave-js add-on, zwavejs2mqtt add-on, and zwave-js integration all are, and how they should be interacting with each other? I want a control panel to set up devices, associations etc so need zwavejs2mqtt’s functionality here, but I can’t seem to just use this as an add-on, and the coexistence of both is I think what is continuing to give me so many problems.
Had 5.1.1 but not using mqtt at present so uninstalled it completely – I assume it’s not necessary if I’m only using zwave2mqtt as a zwave controller/control panel? Will see if it has an effect, thanks
I don’t think it does. My understanding (and I’m desperate for someone to step in and clarify this!) is:
zwave-js (latest v.7.0.1) is a javascript-based zwave driver that HA is gradually switching to, given the limited development of the prev HA driver and OZW.
the HA zwave-js add-on (latest v.0.1.15) is an official HA addon that runs a zwave server using the zwave-js driver.
the HA zwavejs2mqtt add-on (latest v0.9.0) is a not-official HA addon that also runs a zwave server using the zwave-js driver. unlike the other add-on, it can send/receive data over MQTT, but it doesn’t have to. also unlike the other add-on, it has a more fully-fledged zwave control panel. apparently it will automatically configure itself to chat with Mosquitto if that’s installed.
the HA zwave-js integration will chat to either of the two add-ons to discover devices. or in my case, constantly bash its head against the wall trying to chat to both.
I’ve now uninstalled Mosquitto (and it’s blissfully stayed uninstalled). zwavejs2mqtt seems to work fine, but every so often my devices all become unavailable, and when I look, zwavejs has reappeared, despite stopping and uninstalling it numerous times. How can I fix this?
I ran into this, saw your post, and hopped on the discord chat to get input to make sure I didn’t break my install. They indicated zwave js to mqtt should be in the add on and the zwave js should be integrations and that I should uninstall the extraneous Zwave js add-on. (So confusing.)