How to replace an existing Z-wave USB controller

This is a follow up on Replacing ZWave Stick - How to make it seamless.

I’m using Home Assistant Add-on Z-Wave JS with Z-Wave JS integration (Z-Wave - Home Assistant) today. My current Z-wave USB dongle works fine (Z-Wave.Me USB Stick ZMEEUZB1) but I have started to think that I should have a replacement if it fails.

I do not quite understand how much help I will get from the Z-Wave JS integration if I replace the first one with another USB-zwave-dongle in my home assistant raspberry pi?

  1. Will a new (another) ZMEEUZB1 be fully equivalent in my setup?
  2. Will a new controller connect to the existing Z-wave network?
  3. Will it be able to manage my existing Z-wave devices?

Answer is Yes to 1-3

You should be able to backup that stick. After backup you may restore to a new(same model) stick.

The network is stored on the stick so if you backup old and restore to new stick everything should just work without issue. You cannot use both at same time.

Thanks for your answer @tmjpugh!

This is how it looks for me:
Integration:

Addon:

Do you know where the backup functionality is hiding?

Once you make the NVM backup, make sure you can restore it to the backup stick. There are some firmware nuances with some sticks that may prevent a restore from working. So good to test it out. And then you can run off the backup stick. I cycle mine every 6 months.

How and where do I make a “NVM backup” @PeteRage?

The Z-Wave JS add-on, nor the Z-Wave integration support NVM backups. You’ll need to switch to Z-Wave JS UI to do that.

can do it too, no need to switch addons in HA.

Silicon Labs PC Controller software works well if you don’t mind removing your USB stick and moving it to a Windows PC every time you want to make a backup. You can possibly brick your device if the source and target NVM formats are not compatible, e.g. going from 500 to 700 or 800. For a backup of identical controllers that is not an issue.

Switching to ZUI is only a one-time effort. Afterwards, NVM backups can be created anytime without completely interrupting the network (radio is disabled only temporarily, and automatically restored). The backups are compatible between 500 and 700 controllers (and eventually 800, but not yet), so you can restore to non-identical controllers without worry. You also have the option of automating backups for every node inclusion or removal, which will keep the backup up-to-date.

1 Like

Thanks @freshcoast and @BebeMischa! So, my goal and purpose is mainly one thing: better safe than sorry. I’m happy with my UZB1 gadget (at least I think so), AFAIK it is reliable, but I have had it up for some years now and I wouldn’t be very happy if something bad happened.

  1. Would Simplicity Studio - Silicon Labs (link from @BebeMischa) and a spare, similar, ZMEEUZB1 solve my problem?

  2. Can I backup my existing ZMEEUZB1 and restore it on a Aeotec Z-Stick Gen5+ (I’m sorry but I am not sure about 500, 700, 800 @freshcoast)? Not sure I can find another ZMEEUZB1, thats why I ask.

Not sure about both of those question. But I think, you can’t transfer a backup between two different devices.

But an answer on the question, that is not said :smiley: :

They still are available. I got my spare month ago, reading all the problems with 700 and 800 generation I decided to wait, how it develops.
Until then I just have a spare ZMEEUZB1 just for the case… But this stick looks immortal :slight_smile:

1 Like

If you don’t plan to make backups frequently, and want to restore to the same controller, PC Controller (small application included in giant Simplicity Studio download) will work fine.

If you want to backup to a Gen5+, Z-Wave JS UI would be required and both your ZMEEUZB1 and Gen5+ Z-Wave SDK versions will need to be at least v6.81. For Gen5+ that would be their firmware v1.02 (1.2), not sure for Z-wave.me.

Switching to Z-Wave JS UI is arguably easier to do than create an SI Labs account, login and agree to their TOS, and download Simplicity Studio.

Although, I’d be hesitant to advise switching to the Z-Wave JS UI add-on at this very moment because it is currently almost a month out of date of upstream, and is missing some possibly important driver fixes, compared to the Z-Wave JS add-on. These fixes aren’t needed for everyone though, just depends on the network.

1 Like

Yes, true. But it is also switching from officially supported to not officially supported. And knowing, how HA developers treat such things, seeing it happen before, I’m still refusing to take that step. Because when it stops working one day, you are left on your own.
Been there, seen that multiple times here…

Luckily, it’s even easier to switch from ZUI back to the Z-Wave JS add-on, so there’s no risk of that ever being a problem.

That’s now, still not granted for tomorrow :wink:

They are the same underlying software essentially, so it will still work tomorrow.

The one piece I don’t quite understand is the complete restore process within zwavejsui. I’m running on docker.

So if I have a backup and a new stick. If I shutdown zwavejsui, plug in the new stick and restart - what does that do to HA? Does it delete all my existing devices? And then when I restore how does that affect HA?

It always seemed to me, that I should shutdown HA, shutdown zwavejsui, copy my existing zwavejs config to a new folder and create a new container (or use an empty folder and create a new container), restore the stick and once that is complete, shutdown and go back to the original containers.

This way HA won’t get confused by a bunch of devices going away, a new stick with a new home Id being detected, etc. Seemed like lots of opportunity for problems.

You’ll get an error that the home ID has changed and the integration won’t load. At least this is the case when you try to re-configure.

EDIT: the same re-configure check is not done in normal usage, so the devices will eventually be deleted when reverting back to the restore, at least from my testing. Seems like a bug.

I’d still recommend disabling the integration while you perform the restore. No reason to shutdown HA though.

So to avoid that device bug, I’d be better off

A) disable the integration in HA or shutdown
B) shutdown zwavejsui docker container
C) create and start new zwavejsui container with a copy of the config
D) restore the new stick using the new zwavejsui container
E) verify the network and nodes are up
F) shutdown new zwavejsui container and restart old
G) restart HA

I’ve done a simile process with the Aeotec backup restore tool, for that I use the container created in (C) to verify the network. I dislike this process as making backups is harder since I need to move the stick between computers. So recently I’ve been taking backups in zwavejsui but haven’t verified I can actually restore them.

Thanks @freshcoast and @BebeMischa!

If a future reader wants to know:
The software “Simplicity Studio” and its tool “Z-Wave PC Controller” helped me with backup an restore. From a source UZB-dongle, to a spare (other UZB-dongle).

2 Likes