kardia-as / zigpy-zboss

GNU General Public License v3.0
36 stars 4 forks source link

ZBOSS Zigbee network backup and network restore + radio migration via zigpy radio API? #11

Open Hedda opened 1 year ago

Hedda commented 1 year ago

zigpy's (new) radio API support unified commands for Zigbee network backup and network restore; will zigpy-zboss support this?

Home Assistant’s ZHA integration uses this backup and restore feature by default and even support easy to use radio migration to allow migrating back and forth from one radio type to another radio type:

zigpy (and thus also Home Assistant’s ZHA integration) uses the self-developed open standard and open file format specified in the "Open ZigBee Coordinator Backup Format" project:

https://github.com/zigpy/open-coordinator-backup

Zigbee network backup to file and restore is also an important feature because it allows network migration to and from different radios.

Reference:

https://github.com/zigpy/zigpy-cli/pull/2 https://github.com/zigpy/zigpy/pull/1006 https://github.com/zigpy/zigpy-cli/pull/13 https://github.com/zigpy/zigpy-znp/pull/97 https://github.com/zigpy/bellows/pull/445 https://github.com/zigpy/zigpy-deconz/pull/172 https://github.com/zigpy/zigpy-zigate/pull/117

PS: Some zigpy radio libraries, like zigpy-znp and bellows, also have extended CLI tools to perform full NVRAM backup and restore too, as well as other functions, such as for example NVRAM reset (which can also be useful before doing a restore from backup):

PPS: In addition suggest check out the unofficial “zha-toolkit” which adds additional services to ZHA (including for backup):

https://github.com/mdeweerd/zha-toolkit

https://community.home-assistant.io/t/zha-toolkit-a-big-set-of-zigbee-commands-on-top-of-zha-zigpy/373346

Hedda commented 2 months ago

@DamKast will this be fixed by PR https://github.com/kardia-as/zigpy-zboss/pull/49 or?

PS: Need new release so can get test via pypi

DamKast commented 2 months ago

Yes, it will fix it I think. I didn't test thoroughly but I tested network migration from a nRF52840DK to a nRF52840_dongle and it worked properly.

@genesiscrew and I are working on unit tests, I thought of releasing a new version after this.

Hedda commented 2 months ago

Should also test possibility to migrate between different radio libraries, so go from zigpy-zboss to bellows or zigpy-znp and vice versa, for back-and-forth migration between various radio-types, or is there anything that prevents cross-platform compatibility?