Home Assistant – Migrate from Zwave-integration to OpenZwave (beta)

Robert AndresenHome Assistant, Internet of things, Tutorials Leave a Comment

I have had devices not supported by the old Zwave-version in Home Assistant for a long time, e.g. MCO Home Air Quality monitor – and I had to run a Tellstick in addition to the Zwave in HA for this.

I have been waiting for a migration tool, which is said to be released in 2021 by the HA conference – but what the heck… I am not that patient.

I started watching this video and followed him.

WARNING: See the whole video and maybe read the whole article before you start – as I found some quirks after he recorded his video.

Link: https://www.youtube.com/watch?v=f3-0F_9tNtE


As there already exists tutorials on this, I am just going to write step-by-step.

My setup

Home Assistant running on NUC, with version 2020.12.7 and OS-version 5.8 – with Aeotec Z-Stick Gen5 EU (ZW090) by AEON Labs.


Check that you have an MQTT-broker avaliable. I had one added from the Add-on store.

Copy your current list of nodes

Go to the Developer Tools, search for node and copy the entire list into something like Excel. This is because all you entities will be default named when you get OpenZwave running.

Get your current network-key

For my setup, my network-key was stored in my secret-file. In the video above, he shows another method.

Also try to find your USB-path.

Delete current integration

This step is important, as you can’t have two integrations using your same USB.

I restarted Home Assistant after removing the integration. Not sure if it is necessary, but it is a good way to clean up the entities.

Install OpenZwave

Go to the Add-on Store in Supervisor and install OpenZWave.

Enter OZW config

Enter the USB-path and network-key under your new installation of the OpenZwave.

Add the integration

Go to your integrations. There you will see a new integration (OpenZWave) to configure.

…and now wait…

At first there was no devices there for me, but they slowly came in… one by one. After maybe an hour, most of my devices was there – but not the battery-powered devices.

There have been some new devices since yesterday, so I think they just have to wake up.

Rename the entities

Here is where the list you first copied gets handy. When you click on devices on the integration (where it says 31 devices in my case), you will see that they are default named. I started renaming the entities almost right away to the same as before, so all my names and automations worked.