Community feedback on migrating adapter with different chips #26716
Replies: 17 comments 18 replies
-
|
I was eventually successful migrating from deconz (ConBee2) to EZSP (SLZB-07), Z2M version 2.1.3:
|
Beta Was this translation helpful? Give feedback.
-
|
I have successfully migrated from Z-Stack to EmberZNet (7.4.4) without re-pairing by following the guide above. Z2M version 2.1.3. One addition. I had to remove |
Beta Was this translation helpful? Give feedback.
-
|
Hi |
Beta Was this translation helpful? Give feedback.
-
|
Hi, It was not straight forward and I tried a mix of FW versions and manual merge of backup to coordinator_backup.json. In the end, I think a power cycle is what was needed! The next error was a z2m configuration one. Those values are in the zigpy backup, so no problem finding them. Once the correct network was up, most devices came across without issue. A few Moes lights needed re-pairing, the majority didn't, and one device is refusing to (re)pair (Moes socket). Despite the hour or so faffing, this was still much easier than re-pairing 50 odd devices - thank you! Versions: |
Beta Was this translation helpful? Give feedback.
-
|
🎉 Reporting another successful migration in a network with over 100 devices:
A few notes:
All in all, this should probably land in the official docs. Even if it's a bit of a "here be dragons" method it certainly works on any stack that is able to import/export addresses & keys. |
Beta Was this translation helpful? Give feedback.
-
|
Happy to report that I successfully migrated from a RaspBee II, wich was undocumented until now!
All tasks have been done on the Raspberry Pi4 running Home Assistant OS, no external devices are required. Proud to report this so you can add it to the main post! Some considerations: I have followed the same steps in the main message, just adapted for this process. Here's an overview:
- serial:
adapter: ember
|
Beta Was this translation helpful? Give feedback.
-
|
Wow thanks for the guide! The migration worked great for me!
My Process and some notes:
|
Beta Was this translation helpful? Give feedback.
-
|
Smooth migration here from Sonoff Dongle-E to SLZB-MR1. (ember to zstack)
My notes:
|
Beta Was this translation helpful? Give feedback.
-
|
Just to report that I successfully migrated from Bitronvideo AV2010/10 using ezsp to a Sonoff Zigbee 3.0 USB Dongle Plus E (7.4.4 firmware) using ember A few notes:
Restarting zigbee2mqtt once more solved those issues. I'll keep looking for oddities in the upcoming hours, but right now, it looks successful for my network with 30 devices |
Beta Was this translation helpful? Give feedback.
-
|
I have migrated using this procedure from conbee2 to slzb-06 core 2.9.4 / zb coordinator firmware 20240710. The z2m add-on started ok and control most of the zigbee devices.
|
Beta Was this translation helpful? Give feedback.
-
|
Source: Sonoff Dongle-P (Z-Stack 20230507) - USB I have followed the guide to migrate my coordinator from a ZBDongle-P to SLZB-06M, but without success. I perform the backup from the ZBDongle-P (Z-Stack) and receive an error when I try to restore it to the SLZB-06M (Ember). What could be the reason and solution for |
Beta Was this translation helpful? Give feedback.
-
|
Had success with migrating from Slae.sh CC2562R Stick (zstack) to Raspbee II (deconz). The Raspbee II is connected to an ESP32 running esphome, which acts as a TCP to serial bridge. Latest zstack firmware on the CC2562R, firmware 0x26780700 on the Raspbee II. Zigbee2MQTT version 2.6.1 and zigpy-cli version 1.1. Updated zigbee2mqtt config to point to the new adapter and set baudrate, and that was it. |
Beta Was this translation helpful? Give feedback.
-
|
For refererence, wrote instructions in many replies here in the past on migrating with zigpy-cli (contains more technical details + back-story): Maybe you like to add those as sources for reference. |
Beta Was this translation helpful? Give feedback.
-
|
Success migrating from a source Conbee 2 (0x26780700) to a target SONOFF Dongle-P CC2652.
I will note that in optional step 10, I had to run the following commands in order to successfully backup the target coordinator (it was fresh out of the box and never previously used). Maybe it's a bit overkill to backup a brand new stick, but I wanted to do it anyway, just in case I wanted to restore back. zigpy radio znp /dev/ttyUSB0 reset
zigpy radio znp /dev/ttyUSB0 form
zigpy radio znp /dev/ttyUSB0 backup sonoff-backup.jsonAnd in step 14b, the documentation link led to 404. The location of the guide pages may have changed. I found this alternative instead: Refer to Z2M configuration for details. Thanks for sharing this write-up, you saved me a lot of time not having to re-pair my devices! |
Beta Was this translation helpful? Give feedback.
-
|
Anyone has migration experience from Conbee to EmberZNet, specifically Conbee III and ZBT-2? Would appreciate any feedback. |
Beta Was this translation helpful? Give feedback.
-
|
Hey everyone, |
Beta Was this translation helpful? Give feedback.
-
|
cross-posted on zigpy/zigpy-cli#58 I'm trying to migrate from deConz Conbee II (0x26780700) with Zigbee2MQTT (v2.6.3 on Hassio) to SLZB-06M (v3.1.3) Any idea ? Same issue with restore and info ((zigpy-cli) ) ➜ ~ zigpy radio --baudrate 115200 ezsp /dev/ttyUSB0 info
((zigpy-cli) ) ➜ ~ zigpy radio --baudrate 115200 ezsp /dev/ttyUSB0 restore deconz-backup.json((zigpy-cli) ) ➜ ~ pip list | grep zigpy
zigpy 0.87.0
zigpy-cli 1.1.0
zigpy-deconz 0.25.5
zigpy-xbee 0.21.1
zigpy-zboss 1.2.0
zigpy-zigate 0.13.4
zigpy-znp 0.14.2((zigpy-cli) ) ➜ ~ zigpy radio --baudrate 115200 ezsp /dev/ttyUSB0 reset
Traceback (most recent call last):
File "/root/someName/lib/python3.12/site-packages/bellows/uart.py", line 105, in reset
return await self._reset_future
^^^^^^^^^^^^^^^^^^^^^^^^
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/root/someName/bin/zigpy", line 8, in <module>
sys.exit(cli())
^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 1485, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 1406, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 1873, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 1873, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 1269, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/core.py", line 824, in invoke
return callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/click/decorators.py", line 46, in new_func
return f(get_current_context().obj, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/zigpy_cli/cli.py", line 20, in inner
return loop.run_until_complete(cmd(*args, **kwargs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/base_events.py", line 691, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/root/someName/lib/python3.12/site-packages/zigpy_cli/radio.py", line 161, in reset
await app.connect()
File "/root/someName/lib/python3.12/site-packages/bellows/zigbee/application.py", line 188, in connect
await self._ezsp.connect(use_thread=self.config[CONF_USE_THREAD])
File "/root/someName/lib/python3.12/site-packages/bellows/ezsp/__init__.py", line 159, in connect
await self.startup_reset()
File "/root/someName/lib/python3.12/site-packages/bellows/ezsp/__init__.py", line 141, in startup_reset
await self._startup_reset()
File "/root/someName/lib/python3.12/site-packages/bellows/ezsp/__init__.py", line 131, in _startup_reset
await self.reset()
File "/root/someName/lib/python3.12/site-packages/bellows/ezsp/__init__.py", line 164, in reset
await self._gw.reset()
File "/root/someName/lib/python3.12/site-packages/bellows/uart.py", line 104, in reset
async with asyncio_timeout(RESET_TIMEOUT):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/timeouts.py", line 115, in __aexit__
raise TimeoutError from exc_val
TimeoutError |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I have written a guide about an unofficial and unsupported method to migrate from one coordinator to another one with a different chip (like Conbee 2 to Sonoff P). This uses a third-party tool (zigpy, used in ZHA Home Assistant).
This discussion is to get feedback and to record successful migration attempts (most importantly, the combinations of chips used).
As a reminder, this method is highly experimental and is NOT supported by Z2M.
Migrate to another adapter with zigpy
Warning
Migration from one adapter to another in Z2M requires backup and restore support which is so far only implemented for the
zstack(Texas Instrument) andemberadapters. Backup and restore is not officially supported for any other adapters (conbee,ezsp,zbossandzigate). Please don't open issues about this method.Migrating with zigpy is highly experimental and has only been tested on a few occasions. Migrating from, say, a "Conbee" adapter to "Zstack" is possible. This requires careful reconfiguration of Z2M to avoid breaking everything. This method is based on zigpy, a tool / library used by the native ZHA integration of Home Assistant, which supports migrating between all major adapter brands.
Be aware that this process essentially clones Zigbee network data. You will end up with two adapters with the same network address, and you will not be able to use the old adapter alongside the new one until you reset it and assign it a new network address.
This should work for any of the following combinations, but you might want to wait for more feedback:
This will not work with:
Current reported successful migration
0x26780700)8.0.2 [GA])Many thanks to all returning with feedbacks!
How to migrate
0x26780700(latest for Conbee II).zigpy-cliinstallation: see Community feedback on migrating adapter with different chips #26716 (comment)zigpy radio deconz /dev/ttyUSB0 backup deconz-backup.json.--baudrate 115200zigpycommands with the-vflag (e.g.,zigpy -v radio ...) for verbose output, which helps in troubleshooting.Unexpected transmit confirmorUnknown device AddrModeAddresscan generally be ignored if you still obtain the backup JSON file at the end.devicessection in the backup JSON file might be concerning but doesn't necessarily indicate a problem for the migration.zigpy radio znp /dev/ttyUSB1 restore deconz-backup.json.configuration.yamlfile:serial. The important fields areportandadapter. Refer to Z2M configuration for details.port, as this is very likely to change with your new adapter.serialfor your previous coordinator, comment them out. You might not need them anymore, and it's better to start with a default configuration for your new coordinator.coordinator_backup.jsontocoordinator_backup.json.backupto avoid Z2M complaining about backup file not correct for the new adapterTroubleshooting:
Sources:
Beta Was this translation helpful? Give feedback.
All reactions