Migrating from Deconz to ZHA


I am researching/preparing to migrate from Deconz/Phoscon to ZHA (as ZHA is integrated in Home-assistant and seems more future proof)

I am running Home Assistant OS (core-2022.7.7) with ConBee-2 stick on: generic-x86-64

Is there a preferred migration path to ZHA from Deconz/Phoscon without re-installing Home Assistant?
Can I, for instance, disable the intergration and the Addon, reboot, remove addon and integration and add ZHA ?

I know i probably have to repair the devices i have running that is no problem.

I am curious if you have already migrated and if so how it went.
I myself have Homeassitant as a virtual machine on a windows 10 NUC with deconz via windows and may want to switch to a generic-x86-64 version of HA but then have to convert deconz to ZHA

Nope, didn’t migrate yet. I am still waiting for someone who has experience… or a migration method from within ZHA installation…which would be awesome.

I second that

That would be the process if you want to use your existing stick.

There’s no magic to it. There is no need to re-install HA, but you’re essentially starting zigbee over with ZHA, re-building everything from the ground up.

Do not expect all automations to remain functional just because you try to keep the same entity/device names. Things will break. Some things are just handled differently. What might be exposed as an entity in Deconz may need to be handled as a ZHA event, etc.


Do yourself a favor and buy a second stick. A single instance of HA will support running both ZHA and Deconz concurrently.

Having both active allows you to learn, experiment and migrate devices at your leisure.

Otherwise, everything breaks when you disable Deconz, and it’s a mad rush to get devices paired up in ZHA and all your automations updated.

The second stick can be, but does not need to be another Conbee stick. Theoretically, as the chip in the Yellow and the future HA branded usb dongle, an SI Labs EFR32MG21 based stick should get the most native love and support from the ZHA/HA devs.


I was searching for the answer to the same question. What I did was to stop deconz, start up the ZHA integration and start working. It took ZHA an hour to get through my 100+ devices. At first, it didn’t find any battery devices, but waking them manually did the trick.

The neat thing is that all lights and devices found by ZHA magically appear under the same device tab as deconz entities, which makes it easy to rename them to your old entity. Doing so, no need to mod any automations given you are copying the same entity id from the old device.

To not break anything, I renamed my deconz-entities with a _old suffix, if I need to switch back.

So, 1) stop deconz (I ran deconz inside my HA install so I only stopped the add-on, not the integration) 2. Fire up ZHA and let it discover all devices automatically 3) rename all devices. Now you’re running ZHA.

Good luck!

Edit: Oh, and make a backup for your deconz-config in Phoscon. Menu > Gateway > Backup Options. Just in case!


Thanks for these instructions, I may try this as I constantly lose connection to battery devices and have to re-add them in Deconz/Phoscon. Does standalone ZHA improve the reliability for this?

Using Conbee 2 stick and have about 15 total devices.

Can’t say, I didn’t have any issues with deconz. I switched to get a thermostat working that isn’t supported by deconz yet.

I don’t have any drop outs at all and didn’t with deconz either.

Sorry I can’t be of any more help, best of luck!

thanks. I am considering moving from Deconz to ZHA and as a first step just tried this. Worked like a charm. ZHA saw most of my devices. I turned it back to the old situation with Deconz and it worked as before.

I will probably do the migration when I move to another house soon, as I will need to reconfigure HA anyway then.

Sweet, nice to see that it is working.

I abandoned conbee 2 and moved to Z2M instead with a new stick. My experience is that Z2M has a lot more device compatibility than any of the others (deconz / ZHA).

What stick did you move to? And why?
I have the conbee 2, I thought all sticks were more or less the same.

I thought about Z2M, but I don’t really want to make the step to MQTT. So far I have managed to avoid it. I know the loose coupling that MQTT offers is great, but I just don’t see a need for it so far.

Compatibility. My Doorlock didn’t work with ZHA and the Thermostat was laggy to say the least.

MQTT isn’t a big step imo. And works great!

Responding to my own question. I did change to ZHA from Deconz/Phoscon and have had very few (if any) lost connections (i.e. “unavailable”) since then.

Hey everyone,

I also have the exact same scenario. Currently running 4 zigbee networks in parallel: ZHA on HA yellow, Deconz, Ikea, Hue (ouch!). I want to migrate all deconz devices to ZHA and then maybe Ikea but dunno yet.

Anyhow what I want is a seamless transition that does not mess up my automations. Key here is to keep the same entity IDs as before in Deconz.

This is what I tried:
I keep deconz running and my devices is connected to deconz at the moment (i.e. Aqara Door Sensor). I press the button to pair and go into ZHA search. It finds the device all right. It seems it is connected to both networks in parallel somehow as it shows both integrations in the device page. It seems to keep all my entities so far.

Then I go into the Phoscon App and remove the device there. Then all of a sudden the entities are there twice. Once the new ones from ZHA and the old ones from Deconz, now disabled (makes sense). What I did was copy the entity IDs from the disabled phoscon entities, then delete it, go into the corresponding entity from ZHA and paste the old entity ID. I repeat that for all entities of the device.

I checked the related automations and they seem to be all fine and no mess-ups there.

So I assume this is a pretty good way to migrate. But please let me know if you tried the same way and if it was successful or if you ran into any issues.

Thanks :slight_smile:

1 Like

I’ve followed your steps in moving my devices from deCONZ to ZHA (albiet ran the deCONZ: remove orphan entries service to delete the old entities). My device is now under ZHA control, but deCONZ is still listed as an integration for it even though it’s been removed from Phoscon. How can I disassociate the device from deCONZ?

Disregard. After I moved all devices to ZHA and uninstalled the deCONZ integration, the devices no longer showed bound to that.