ZWave JS not connecting to battery powered devices

My problem is that almost all my battery powered devices show up but without any information or enteties. Two of the battery powered devices and all with wired power show up fine.

Background: I migrated from legacy 1.4 Zwave to ZwaveJS2MQTT a month ago running a docker container inside Hassio. Im using a Raspberry pi with HA core-2021.2.3 and an Aeotec gen 5+ Zwave USB dongle. My setup was running fine with 17 devices.
I migrated yesterday to Zwave JS add-on and integration. Mostly for the more simple management and updates.

In the add-on configuration I only get two options for device location and none of those is the one I used before. The one that seems to work is /dev/serial/by-id/usb-0658_0200-if00. The other one is dev/ttyAMA0 but using that no devices show up. I previously used /dev/ttyACM0.

The driver tries to communicate with all devices but in the log the battery powered devices looks like this:

21:19:34.549 CNTRLR   [Node 009] Failed all interview attempts, giving up.

I have pressed the wake up button on a few devices but no luck. With ZwaveJS2MQTT the devices showed up one by one after a few hours but not now.

Clicking the button on my Fibaro motion sensor results in this in the log but no device information in the integration.

22:53:25.988 CNTRLR « [Node 005] received wakeup notification

There are also these messages in the log:

21:52:03.427 DRIVER   Dropping message with invalid data (Reason: Invalid auth code, won't accept se
                      curity encapsulated command.):
                      0x0121000400161b9881a0f03241a965b7b7d725264961bc9babdf93660e25bdb3a910e7

I have a network security code and it is added to the configuration. Only some of the devices is added with secure mode and my lock is one of them and that shows up fine.

Can anybody point me in the right direction to fix this issue?

I haven’t done it myself but my understanding is that you need to wake up the node with whatever method the device manual suggests and then select re-interview node from the control panel.

I’ve heard this can take a bit to completely interview the node and the device needs to be awake for that interview to complete so you may have to keep it awake until it finally shows up.

Hopefully it will only be a minute or two at most.

I would try it with one node and see if it works before attempting all the rest.

If it works I’d be interested to know your experience with it.

If that doesn’t work then the harder route would be to remove the node from the controller and then re-add it via zwavejs2mqtt itself. But I’ve heard that can be finicky as well.

I experienced the same thing with my Econet door sensors. I eventually just pulled the cover off of them so they’d be awake in a tamper alarm mode and eventually they were added… But it took a lot of tries. All I can suggest is if you can do something to make it stay awake more than just pushing a button then try that. You should get them in there eventually.

I’ve found that I need to restart the add-on while the battery device is awake. When the add-on starts, it starts interviewing nodes. If they are asleep, the add-on gives up after a number of tries. When you restart the add-on, it restarts the node interview / configuration process. For some devices (First Alert Smoke / CO Detector), it requires 2 or 3 restarts, with trying to keep the device awake at the same time. The log will show when the interview is complete, and under devices, it will show Node Ready: Yes.

Thank you all for your help. I will try this.

When I had zwavejs2mqtt I had a control panel for zwavejs which I cannot find now. What is the address to it?

@martin_larsson, there is no control panel for zwavejs. According to the roadmap for this addon, it is planned for the future, but for now we need to rely on something else to configure devices.

I reverted back to zwavejs2mqtt. There were too many drawbacks right now. Ill try again in a few months I guess. The control panel is nice and the hassle to get the devices in is not worth it.

Thanks for all your help!

1 Like

I am having the same issue. I have 17 ZWave devices: 13 powered an 4 on battery. The 4 are showing up in the interface but with no information (“unknown” for both “Manufacturer” and “Model”). The 13 are just fine.
Background: I reinstalled HA from scratch on my Raspberry PI 3 keeping the Aeotec and RFXCom controller inserted. While RFXCom demanded more work to get back on track, it was quite easy to do. ZWave JS gently re-discovered all powered device but only showed empty info for battery devices. I tried waking up one of them and that didn’t help.
I have two questions:

  1. How can I turn on verbose logging for ZWave? I tried adding “homeassistant.components.zwave: debug” in configuration.yaml but doesn’t seem to work.
  2. @sneared, you mentioned you restarted the add-on, how do you do that? I only see an option for integration “Reload”, is this what you mean?

Thanks!

I’m guessing you’re using docker. So i’m guessing the answer is yes.

I’m using HA OS so, Under Supervisor > dashboard click on Z-Wave JS add-on. Under the Info tab, I have two choices when the add-on is running: Stop and Re-Start. Clicking on either will stop the add-on. If you clicked Stop, you will have to select Start to re-start the add-on. Re-Start will stop the add-on then re-start it without the extra step. In either case, when the add-on starts up, it will begin to interview all the nodes. That’s when you have to have the battery device awake. As I said, sometimes it take multiple re-starts of the add-on (and keeping the battery device awake) before the node information is loaded and the device is ready for use.

Hope I wasn’t too simplistic. I’m hoping z-wave JS improvements will make the process easier.

Don’t get too frustrated or give up. I’ve been with z-Wave for several years and HA beats anything commercial. I came from the Wink hub. I was so frustrated with the unreliability that I was about to give up on Z-wave. HA changed all that. I have Aerotec and Zooz sticks on a Pi3B+ and Pi4. Both work reliably, but the Zooz is hard to beat.

BTW, I have a device or so that also has unknown for the manufacturer, but the node has all the entities to still use the device. My understanding is that they are still working on the device configuration files.

I have not tried to remove the node (exclude the node from the network) then try to add it back in. but that is another option you could try to see if it fixes the problem.

I am using HA OS too and I just forgot about the add-on panel as I focused only on the integration part as the ZWave control panel… Shame on me!
Now I see where I can restart the add-on. @sneared, you are 100% right when you say to keep trying and not give up because it worked! The battery powered device I had finally working is a Garage Door Tilt Sensor which will wake up as soon as its cover gets removed (tamper protection). So I woke up this device and tried multiple times to restart the add-on. While it didn’t work at the first attempts, I noticed that the add-on also had an update available, which I applied. I also approched my device to the controller, like 1 meter away. And after that last add-on restart, the device got interviewed and now works like a charm.

The misleading part is the following, in my opinion: when you know how ZWave works, you know that battery powered devices will wake up automatically (like once an hour, depending on devices) so you can presume that it gets interviewed at that moment, but its not. Plus, you see these devices, in an unknown state but they are there so controller knows about them too. So the key is really to have the add-on/controller/HA initiate the interviews when the device is awaken.

Huge thank you to you @sneared!