Random ZWave JS Disconnect

I have recently been having strange issues with Z-Wave JS. When it is connected, everything works fine, but the Z-Wave JS Integration would just fail to connect to the Z-Wave JS add-on Retrying setup: Failed to connect: Cannot connect to host core-zwave-js:3000 ssl:default [Connect call failed ('172.30.33.1', 3000)]. Sometimes I managed to get it reconnected by restarting the add-on and/or the Integration, but it doesn’t always work. Restarting Home Assistant doesn’t resolve it either.

The Z-Wave JS Control Panel shows everything is working as expected (with I believe is the add-on), but Home Assistant can’t talk to my Z-Wave devices because of the failed Integration connection. I am not really sure what is wrong or were to even start troubleshooting the issue. As far as I can tell, everything should be working as expected (since I can get it to work without any config changes sometimes), but the Integration doesn’t want to connect to the Z-Wave JS Docker.

All software is up to date (Home Assistant, Z-Wave JS, and the Z-Wave JS Integration) and I am using the Home Assistant Yellow platform. My Z-Wave JS dongle is a Aeotec Z-Stick 7 with updated firmware (I don’t believe this is the issue as the Z-Wave JS add-on is still talking to the Z-Wave devices when the Z-Wave JS Integration is down). Any thoughts on what I can try or look at for troubleshooting?

Home Assistant 2022.7.6
Supervisor 2022.07.0
Operating System 8.2
Frontend 20220707.1 - latest
Z-Wave JS Add-On (using HACS 1.26.0 - FrontEnd 20220709114425) - 0.1.64

I think I figured out the issue. I have both Z-Wave JS (the native client for Home Assistant) and Z-Wave JS to MQTT (the one with the Control Panel). After reading through the documents, towards the end where the FAQ is, it mentions that you can only run one.

However, the documents seem to be out dated as it does say you can run the Z-Wave to MQTT in Control Panel only. I have also followed the steps listed to switch from Z-Wave JS to the Z-Wave JS to MQTT and they do not work (which has you Disable the integration and add a new one, which it will not do because you already have the integration added). The one about running the Control Panel only isn’t correct either as it requires you to enter in the Z-Wave controller information for it to function (which is in use).

I did see a post in the Github about documents being outdated (I didn’t read it, so I am not 100% sure if it is talking about Z-Wave or not), but I do know Home Assistant has changed the layout and a lot of instructions still talk about going to the Supervisor (which was changed to Settings), or going a route that has changed.

“Control Panel” only means running without using MQTT. Nothing incorrect about that. It still requires exclusive access to the Z-Wave Controller.

That is the correct method to switch. It will change the configuration.

Here is a link to the directions (Z-Wave JS - Home Assistant).
Step 4 says “Add the Z-Wave JS integration again (even though it is still installed), and uncheck the “Use the Z-Wave JS Supervisor add-on”. Enter the correct address for the community add-on in the URL field in the next step.” When I do this step, it comes up with a message saying “Device is already configured” and doesn’t connect to Z-Wave JS to MQTT.

image

Although I will also say, I am not sure how my Z-Wave is working right now. When I look at the Z-Wave JS service, it shows it being pointed to the Z-Wave JS to MQTT docker which isn’t running. Currently the Z-Wave JS is running. I am guessing a reboot will break it and cause it to update to different settings.

I wrote a step-by-step guide for switching. That message is completely normal (see Step 10).

Go to the Integration configuration, and check the Server URL. If it’s configured with the z2m addon’s URL, then that means you were successful. It also means the add-on is configured and running, if it shows as connected.

If not connected, check the add-on configuration.

You might not believe me, but when I looked at it on both my Desktop and Mobile it showed ws://a0d7b954-zwavejs2mqtt:3000 as the Server URL. When I went to the Add-Ons and go into the Z-Wave JS to MQTT add-on, it was shutdown and not running. When I checked the Z-Wave JS add-on it showed as running and my Z-Wave was working as expected (not the Control Panel as that is part of the Z-Wave JS to MQTT). Rebooting the device and checking the URL in the integration again showed the correct URL (which was to the Z-Wave JS).

I did give it another try before you posted your step-by-step guide and it worked as it should (got the message and continued, also cleared my browser cache to make sure it updated correctly) and seems to be working. I think caching (somewhere as it showed the same info between Desktop and Mobile) was causing a lot of my confusion when it shows one thing, but is really something else (that and the misleading message when updating the integration). As I noted earlier, I was following the Wiki (which still calls the Settings area in the newest version the Supervisor) and it doesn’t mention error message being false (leading me to believe, it failed).

The docs are updated by the community. There’s an Edit button on the bottom if you’re so inclined.