Switching from Zwave 1.4 (Deprecated) to Zwave JS

As a enthusiast of HA but don’t have the technical knowledge of some of the users in this thread I would like to know if there is going to be a notice of some sort that advises that there is a migrations path that developers are confident with?

I know nothing is ever perfect but if the migration / switching is still under construction it makes me hesitant.
I don’t have a huge network but as other people in my household rely on the automation’s I need to keep their confidence in the system.

Can anyone in the development team shed some light on this please.

Thank you

Can anyone share a working configuration file for zwave-js-server (with the network key maybe changed to all 00, but still syntactically correct)? All the guides tell me how to get my zwave network key, which I already knew how to do. But unfortunately none of them actually explain how to configure zwave-js-server to use that key. There’s of course this: https://zwave-js.github.io/node-zwave-js/#/api/driver?id=zwaveoptions but it’s an abstract description, and I want to know concretely what to put in the file.

For anyone stuck even before this phase, I figured out how to install zwave-js-server like this:

git clone https://github.com/zwave-js/zwave-js-server.git
cd zwave-js-server
git checkout 1.1.0
npm i
PREFIX=$VIRTUAL_ENV npm i -g

I assume I need to run it as zwave-server --config=/WHERE/EVER/zwavejs.conf /dev/ttyACM0. Now I just need to figure out what to put in the configuration file. Thanks.

Okay, this might not be the right way to do it, but I think I’ve found something that works. My zwavejs.conf file looks like this now:

exports.networkKey = "00000000000000000000000000000000"

Just did the switch and went right back to 1.4

Following the guide it was easy enough to get the add on up and running.

Problem was that the Zwave JS logs would show info for my Zooz 4-in-1 sensor such as temp, humidity, light, motion but the entities wouldn’t populate on the device-side.

Also my Dome battery water sensors would not show even when force waking one by removing the battery and replacing.

Renaming also wasn’t a simple task - simply naming the device similarly to prior did not mean the entities would be named correctly as Zwave JS seems to have new ways of naming.

I’ll wait a bit longer - not broke so no need to fix/switch

Hi guys,

I think I’m to stupid to get it :slight_smile:
So I succeded by accessing the HA with SSH.
Unfortunately the command

cat /config/.storage/core.config_entries | grep network_key

Just returned a

“network_key”: null,

Any idea where to find the network key else?

After re-reading again - could it be that I just don’t ever set a key and therefore do not have one?
Do I then just use Null value in the Zwave JS integration?
Thanks a lot!

My personal suggestion is to use ZwaveJS2MQTT instead of ZwaveJS or implement ZwaveJS2MQTT on another box and remote control the ZwaveJS instance. You have a lot more options for control doing this.

There’s a good chance you don’t have a network key. I didn’t.

Just leave that blank in the new addon

1 Like

Mine was set to null as well. The new integration seems to not accept a blank key, but creates its own.

1 Like

Thanks very much for the how-to. Very helpful!

I have a bunch of entities that I’ve removed physically but never from the old Z-wave configuration, waiting to sell them but haven’t taken the time to do it. Since they’re not hooked up to power any longer, I cannot exclude them. What’s the best way to remove these?


Thanks!

Go to the zwave configuration panel and select the node and the click “remove dead node” (something like that…I don’t have any dead nodes so I can’t remember exactly what it’s called).

Hmm. I don’t have that option anywhere. The old Zwave config had a dead nodes button.

You can do this but you need the Zwave2jsmqtt ui. On the node it’s an option under the drop down menu.

Sorry, I thought you were talking about in the old zwave integration.

Is there going to be a new version of z-wave js soon that allows me to removed dead node and to heal the alive nodes?

Hi all, when trying to install Z-Wave JS, I get a prompt to input my network key and USB path. I enter:

USB path: /dev/ttyUSB0
Network key: D8CAF2[…]6E2A [truncated for brevity]

However, I get an error:

Failed to set Z-Wave JS add-on config: Failed to set the Z-Wave JS add-on options

More detail from Supervisor logs:

WARNING (MainThread) [supervisor.addons.options] Option ‘options’ does not exist in the schema for Z-Wave JS (core_zwave_js)

1 Like

I fixed this error by navigating to Supervisor > Dashboard (tab) > Z-Wave JS > Configuration (tab)

Then, choose the correct device from the “device” dropdown.

Did you succeed with your fibaro devices? Did you install zwavejs2mqtt? I have the same situation with 10 Fibaro FGS223. Renaming will be a big pain. Any last hints or tips before I start? Will try the migration on the weekend.

For powered devices, the migration process (manual, though) was OK. I did have to spend some time renaming entities (furthermore, there are some entities missing, some other added when compared to OZW 1.4), but that it is just a matter of getting your hand on and hope to do it as quick as possible.

Regarding battery operated devices, this migration is just a nightmare. I only succeeded to make one device working (a Fibaro door/window sensor, the one closer to the RPI). I still have 5 Fibaro door/window sensors that never managed to get properly interviewed (I keep waking them up during the interview process, but although the controller identifies that the device woke up and starts interviewing it, it eventually starts having timeouts thus failing the complete interview). Something similar goes for a couple of flood sensors that I placed near the RPI to get them properly interviewed, but after placing them in their intended place, they stopped communicating on a regular basis.

I’m not sure if the neighbour list is managed by the driver, but if that is the case I guess that this may be the reason why I am having so much trouble with my battery operated devices (they all need at least one hop to be in reach with the controller).

1 Like

Thanks for the reply nfh!
I guess I wait some more releases.
Also I’m still in doubt if I take the ZwaveJS or the ZWaveJs2Mqtt - as this has some fancy GUI (which might make config easier).

I did an honest attempt to migrate over to Zwave JS from legacy yesterday.
Sadly my experience is the same as yours.
The most direct-powered one worked out ok after a while. However, most battery-powered never worked fully. No matter how many times I did wake them up and reboots off the system they remained as “unknown”. Also, some direct power nodes never showed up at all.
It stopped at exactly 100 devices and no more devices were added after that. Feels a bit too exact number to be a coincidence.

Maby I have missed something about this in the documentation tho