This guide is for switching from Zwave 1.4 to Zwave JS.
Preparation
In home assistant.
-
Browse to Developer Tools.
-
Click on the template tab
-
Paste the following code into the template section.
{%- for node, zstates in states | selectattr('attributes.node_id', 'in', range(1000)) | groupby('attributes.node_id') %} {{ node }}: {%- for s in zstates %} - {{ s.name }} {{ s.entity_id }} {% endfor %} {%- endfor %}
-
Copy the results and paste them to a text file for safe keeping. You’ll reference this at a later time.
Migration
-
Locate your device and network_key. If you don’t already know them, they will be in a hidden file within your configuration folder.
device - This is the path for the USB Stick
network_key - This is the key used when adding a secure node.1.1 Browse to
/config/.storage/
1.2 Opencore.config_entries
with a text editor.
1.3 Search for Zwave in the file.
1.4 Inside that section will be a path to a usb device and a key. The usb device will look something like/dev/ttyACM0
or/dev/serial/by-id/usb-<bunch of numbers>
. The key will have the format0xD3, 0x05, 0x0A, etc
. -
Save the device and network_key to a text file for later use.
-
Remove Zwave 1.4 from HA.
This requires you to delete it from the integrations in the UI
or
Delete it from configuration.yamlThis of course depends on how you integrated it.
-
Reboot your entire system.
These steps are needed because the zwave 1.4 is tightly integrated with home assistant. Without restarting the hardware, home assistant keeps holding on to the zstick.
-
Install Zwave JS addon.
-
Add the copied device and network_key from the
.storage
files into the Zwave JS configuration. Remove the 0x’s and the commas and spaces from the network key, so 0x1A, 0x23, 0x5D becomes 1A235D. -
Watch the logs and wait for it to fully start up.
-
Fix all ‘unknown’ devices by waking them up. No need for a refresh node, just wake them up.
-
Install Zwave JS integration and see what you have.
(optional but this is what I did)
7.1. Delete Zwave JS integration (I did this because names were unknown in HA still)
7.2. Restarted Zwave JS after waking all devices.
7.3. Install Zwave Js Integration and see what you have.
7.4. Go to Step 7.1 if things aren’t where you want them. -
Rename Devices using the text file as a reference from the Preparation #4 step. This is the most time consuming step