Another Zwave JS Migration Broke..., Serious Question

I’m not sure why it didn’t work, but it didn’t.

Basically none of the devices are “ready”. This includes in wall switches, plugs, contact sensors, motion sensors. I am currently restoring from backup, so I’ll be up and running soon. Just waiting for the z-wave add-on to finish starting.

Based on what you see here, am I better off just deleting the z-wave integration and starting from scratch? I mean, I am not looking forward to pairing 80 devices and then naming them like they were before, but it seems like I have to do that anyways.

Just looking for suggestions.

Below are more screenshots.

Devices need to be “interviewed” for Zwave js to know what they are

Battery powered devices go to “sleep” and will not be interviewed until they wake up

You probably need to wake up the sleeping devices as a start. There may be other things happening as well but I’m certain that is one cause

How about the Inovelli wall switches? Do I need to do something special to get them to be interviewed?

I personally recommend using the zwavejs2mqtt add-on instead of the official zwavejs add-on.

it actually has a fully functioning control panel so you can see a bit better what might be going on.

and don’t use the migration wizard. I haven’t heard many success stories (but then again you never hear about things if they work, so there’s that). I would (and did) just do it manually.

1 Like

I’m going to give this a try. Working on it right now!

Thanks @finity

A bit more info that you didn’t ask for… :wink:

the way I did it was that I got as much info on my existing old zwave network as I could - nodes, entity_ids for all the different functions, friendly names, etc. I also set all of the battery powered devices that I could to a short wake-up interval. I set mine to 3600 seconds (1 hour).

And I also added a customization to the old zwave entities to say that the integration zwave:

homeassistant:
  customize:
    binary_sensor.foyer_door_sensor:
      device_class: door
      integration: zwave

then later I added the same to the new entities except it was “zwave_js” instead of “zwave”. I used that info later to make sure I didn’t forget any entities. It actually came in handy too.

I installed zwavejs2mqtt but didn’t start the container (I use docker and not the add-ons but the same concept applies). Don’t install the zwavejs integration at this point. Just get the zwavejs2mqtt addon or container installed. Again don’t start the add-on/container yet.

Go to your deprecated zwave integration and from the control panel there stop the network.

DON’T REMOVE THE OLD ZWAVE INTEGRATION!! JUST STOP THE NETWORK!!

Don’t restart HA!!

then go to the zwavejs2mqtt add-on/container and start it.

add all of the configuration info in the web app itself (IP: mine was port 8091 but I think the default is 8090).

once you save the config it should start discovering mains devices right away.

after those devices are found and the interviews complete then you should wake up any battery powered devices. Or if you have the time you can just wait for them to wake up on their own in an hour.

if you wake them manually wait for each device to be discovered and the interview to complete before moving to the next one.

Try to wait get everything interviewed by zwavejs2mqtt.

after everything that can be is showing up in the control panel for zwavejs2mqtt (I had a node or two that wouldn’t) then you can turn off the zwavejs2mqtt add-on/container and the restart your old zwave integration if you want and everything will go right back the way it was before you started the whole process.

At this point you can stop the old zwave integration and turn on the add-on/container as much as you want without anything getting messed up. Just make sure that they aren’t both running at the same time (turn one off before starting the other) and never restart HA while the old zwave integration network is stopped. I’m not sure if anything bad will happen but I never wanted to take a chance and so I never did.

Again if you get stuck and run out of time trying to figure it out the just stop zwavejs2mqqt and restart your old zwave network. Easy!

I went back and forth many times while getting everything switched over and never had any issues.

I also recommend that you now go into the zwavejs2mqtt control panel and start renaming your devices there before you add the zwavejs integration to HA. That way when you do then the devices will come thru to HA with a somewhat meaningful name.

Now at some point you will install the zwavejs integration.

you need to make sure the old zwave network is stopped and that the zwavejs2mqtt add-on/container is running before you install the zwavejs integration.

At that point you should see all of the zwave devices populate in the zwavejs integration in HA (they will be there in addition to the devices from the old zwave integration since you still have it installed…right?).

Then you can start the process of renaming your new entities to match the old entities. However you can’t make the entity_ids match exactly at this point since the old ones still exist. The way I handled that was to rename the new entities to the same as the old entities but just added a “_js” to the end. Now I know which are new and which are old.

Then when I finally had everything the way I wanted it with zwavejs2mqtt (which took a few weeks of going back and forth between the two when I had the time since I could do it at my leisure now) I stopped the old zwave network and renamed all of those old entity_ids and added a “_ozw” to the end and then removed the “_js” from the end of the zwavejs entities.

Now all of the old existing system works seamlessly with the new entities since they are now exactly the same as before.

Once you are satisfied that zwavejs is working fine then you can remove the old zwave integration.

Oh, and at some point you may have to re-pair the devices that didn’t get brought over automatically. As i said I only had one motion sensor that I ended up needing to re-pair after I switched to zwavejs completely.

I hope this helped and didn’t confuse things any more.

I didn’t follow your instructions to preserve the old z-wave integration because I had already started. That said, I have zwavejs2mqtt installed and it found everything except for a 2 devices that I don’t use anymore and I couldn’t get it to recognize my 2x Aeon minimotes (I couldn’t get them to wake I think). That said, I’m taking another backup right now before the zwavejs install.

1 Like

Ok, I think I’m stuck.

HA found this…

image

When I hit configure it prompts me with this…

Do I enter the values again? The ones from the zwavejs2mqtt?

Ok, I think I fixed it. I just told it to install another instance and it worked find, the other one also is gone now.

that config acted as tho HA thinks that you were still using the “official” zwavejs add-on instead of the zwavejs2mqtt add-on.

but it seems you have it sorted out now.

you should only have one zwavejs integration instance and it should be looking at the zwavejs2mqtt add-on address not the zwavejs add-on (which should no longer exist).

Correct?

Only one now. I think it was because I assumed when the instructions said to install the zwavejs integration it meant add-on. I installed the add-on and quickly realized that wasn’t what I should do. After reboot, it still had the integration for that add-on. So I just told it to configure a new one. After this the other one was gone. I’m just renaming stuff now.

I think I am good, thank you. I put this off so long as I have started a new business (in addition to my others) and I’ve been working like crazy. I have so many devices 90 zwave, 100 zigbee, 120 wifi, … it just goes on.

I had so much anxiety about this. I appreciate you making this easy.

1 Like

Glad I could help.