Zwave 500 to 800 Migration [GoControl HUSBZB-1 -> Zooz ZST39]

Because of all the recent issues with 500 series controllers in ZWaveJS version 12, I’m moving from a 500 series GoControl HUSBZB-1 to an 800 series Zooz ZST39 Z-Wave controller. I understand these 800 series sticks can’t take a NVM backup from a 500 series (“this feature is currently not supported and will brick the product”), but there is also a video doing just that albeit with lots of “i bricked my controller” comments. I also have read that ZWaveJS does not support a secondary controller.

It seems like there is are no easy way to migrate my 50+ ZWave devices without excluding and re-interviewing each one, one at a time, not to mention having to get them all working in Home Assistant again. Does anyone know of any other options? Is Zooz’s statement on the migrations incorrect? Are there any guides to help expedite the process? I just want to make sure I’m making the best decisions along the way. Thanks

1 Like

Watch this video - this is the best way. @cornellrwilliams

Myself, I’m waiting for Silicon Labs and then Zooz to release the update that allow NVM backup, as once I migrate to 800 I’ll want to be able to backup and restore.

Why not just stay put on the 500 series controller? I’m sticking with mine (I didn’t upgrade through the problem versions, and it seems the new one has this under control). Keep a backup of your system and wait 30 days before upgrading and you should be good. There was a lot more FUD than real problems going on during that time. Home Assistant analytics show 22.5 thousand Z-wave integration installations, the number of people “me-too”-ing on the threads wasn’t that high.

1 Like

That’s the video I linked, and the creator himself, among others, states “My ZST39 is also bricked and I also have a case open.”. I’m not really trying to join the club.

1 Like

Sadly I did not take a backup before moving to 2023.10 and now it requires the new version of ZWaveJS which my stick is not working at all with. I’ve reported the issue, but for quicker resolution I opted to just get a new stick that hopefully works with the new version. So, no path back to 2023.09 which doesn’t require the new version, and no way to successfully run the new version. I’m dead in the water.

Those comments are referring to using NVM backup to the 800, which is known to not be working.

That said, there should be no hurry to migrate. Even today there are some improvements to Z-Wave JS for these problems.

And to answer your original questions, there are no other easy options. You can get a 700 series stick instead, and upgrade the HUSBZB-1 firmware, then do NVM backup/restore but that also has a chance of bricking the HUSBZB-1 controller. Your best options then are to revert to a previous version of Z-Wave JS and HA, wait for the new driver release and see if there are any improvements, or manually migrate to the 800.

Ah, I didn’t realize you were in that tight spot. If I was there I’d spin up a new copy of 2023.9 with Just the Z-wave integration and add-on, the use the RemoteHomeAssistant integration to mirror the Z-wave devices to your existing install. Another option would be to use MQTT to sync them. It would be a short term solution at best, but could buy you time for a more thoughtful migration strategy.

I installed the ZST39 tonight and excluded then included 40 of my devices. So far it’s been smooth sailing on the new controller and hoping it stays that way. The rest I’ll do over the weekend. Smart Start has been pretty nice.
Thanks to all for the replies.

I am in exactly the same boat as you. Tomorrow I’m planning to just spend all day excluding and including devices. I’m not aware of what issues are on 2023.10. I am running 2023.10.2 right now and my Z-Wave network still works. I’m really not sure the best way to do this, but I guess I’m going to have to exclude every device first ,install the new Z-Wave dongle, and then start to include everything. Does that sound about right?

I did this specifically for the reason you noted. I didn’t find an easy way to migrate, but I only have 13 devices.

The walk to the 800 side of the street wasn’t short, and sadly after reaching the other side there are still problems with Z-Wave. For me, the platform in general has been very unreliable beginning in August. I don’t really think that my configuration is complex, or that the devices I use are out of the ordinary.

So, for those thinking of changing to 800-series controllers thinking it will solve the recent Z-Wave issues, I’d recommend you stick with what you have. It could very well be a sunk cost in terms of time. Also, there are so many installations with 500-series controllers I think it might be the better choice as there is more familiarity with that chipset and its nuances.

I am in the midst of trying to move completely away from the platform as I have lost confidence that it will be as reliable as it was prior to August.

I did it slightly differently. I just plugged in the new stick, which caused all the devices to disappear (as you’d expect), then excluded and included, one at a time. The exclusion behavior is kind of strange because it doesn’t find the device to delete, but it does ultimately do what’s required by the device (switch, outlet, etc) to be excluded. Then just go back into the menu and include the now-excluded device. I just did that and repeat it for every device. It was a good chance to get things properly named and set their correct locations.

Sorry to hear you had issues with the 800 series controller. I do feel like I went on a whim, buying a device knowing it doesn’t have full support. Fortunately for me, I haven’t had any issues so far. The network has been solid, and is even slightly faster now. Not so fortunate for me, my controller did not work at all so it was not much of a choice :slight_smile: .

I have to say this has been a painful weekend dealing with old Zooz ZEN21 and ZEN22 switches that are utter c-r-a-p. It took 45 minutes of hitting buttons and excluding just to get one controller off. I have another computer on my network so I just added the new stick to that, ported my docker containers and HA to there, and ran two instances. I have been excluding them one at a time and adding much to my pain trying to figure out every single unique mfgr instructions. Some switches are so easy to do. I literally hit the button once and it is excluded and then hit the button once and it includes. I have 60 total devices and about 40 of the way through porting. I am adding directly into zwave-js and on my second HA instance I can see all of my groupings and lovelace view slowly coming back. Once I have ported it should be as simple as moving my dongle back to my main HA, rework the docker container to take that one in, and restart. I looked into a mqtt temporary solution using an eclipse docker container. Unfortunately the zwave-js can’t connect to it despite being able to ping it from within the container. After an hour on that I regrouped and am refocused on porting things over manually. No stop gap solution here.

I just completed upgrading to a Zooz ZST39 controller. Fully manual, but it wasn’t too bad as I only have 22 Z-wave devices.

My steps were:

  1. document the heck out of everything, including each device’s exclusion/inclusion steps,
  2. full system backup,
  3. power down, remove old stick, install new stick,
  4. power up and ensure the new stick shows up ok,
  5. for each device, using zwave-js-ui, perform the exclusion then the inclusion step.

It was helpful to change the “Inclusion/Exclusion timeout” value from 30 to 60 seconds on the zwave-js-ui → settings → z-wave page.

I started with the devices closest to the controller and worked my way out, hoping this would improve my mesh network.

The biggest issue I encountered was a few devices that gave me a hard time with the exclusion/inclusion. The documentation of older devices such as the GoControl WO15Z-1 is often just plain wrong – such as saying “press the button once” when twice, three times, or a “press for at least 10 seconds” is required.

I was pleased that while my Node ID values all changed, my node-red automations were fine since I gave every device the exact same name during inclusion that it had previously.

It took several hours and required lots of walking around and climbing on a few ladders to push all the buttons, but in the end my whole network is back, and I should be future-proofed for a while.

2 Likes

I wish I knew this setting was there. I had 56 devices total with 4 of the zen21/zen22 switches proving to be the most difficult. I also had a bunch of issues with things only partially including but not able to probe the manufacturer and other settings. Unfortunately with 56 devices I am already at node 112 on my dongle. I was hoping for a nice clean 1, 2, 3, 4 … but that didn’t happen.

Overall the dongle has been working really well now that everything is included. It is noticeably faster than my Nortek. Things that used to take 2s or 1.5s to respond seem to take about 0.5s.

I ended up putting both z-wave dongles on my NUC and starting a second docker container on a second port with the Nortek. I was able to exclude while watching the logs and then include in the other setup. Even with all that I estimate I spent about 16 hours over 3 days. I should do a NVM backup just to have that just in case.