From 654b07edda646f0bd7ecd33c8e0c17d6daf8b1cf Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 24 Oct 2025 22:24:34 +0000 Subject: [PATCH 1/3] Initial plan From 6a624a11986c9e8b80f322d8edd8764f33bca27d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 24 Oct 2025 22:32:43 +0000 Subject: [PATCH 2/3] Add ezspVersion to the internal metadata key Set ezspVersion to the EZSP protocol version in the metadata dictionary. This value is included in the internal metadata when backups are serialized to the Open Coordinator Backup format. Co-authored-by: puddly <32534428+puddly@users.noreply.github.com> --- bellows/zigbee/application.py | 1 + tests/test_application.py | 1 + 2 files changed, 2 insertions(+) diff --git a/bellows/zigbee/application.py b/bellows/zigbee/application.py index ba5dfd91..355e4b76 100644 --- a/bellows/zigbee/application.py +++ b/bellows/zigbee/application.py @@ -356,6 +356,7 @@ async def load_network_info(self, *, load_devices=False) -> None: "flow_control": ( flow_control.name.lower() if flow_control is not None else None ), + "ezspVersion": ezsp.ezsp_version, }, }, ) diff --git a/tests/test_application.py b/tests/test_application.py index 76cdb910..22f618c8 100644 --- a/tests/test_application.py +++ b/tests/test_application.py @@ -1995,6 +1995,7 @@ def zigpy_backup() -> zigpy.backups.NetworkBackup: "can_burn_userdata_custom_eui64": True, "can_rewrite_custom_eui64": True, "chip_info": None, + "ezspVersion": 8, } }, ), From ed11a47915d393f9e56250c23cc5a8caaf2d82bf Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 24 Oct 2025 22:41:59 +0000 Subject: [PATCH 3/3] Add comment explaining Z2M requirement for ezspVersion Co-authored-by: puddly <32534428+puddly@users.noreply.github.com> --- bellows/zigbee/application.py | 1 + 1 file changed, 1 insertion(+) diff --git a/bellows/zigbee/application.py b/bellows/zigbee/application.py index 355e4b76..b9017ec5 100644 --- a/bellows/zigbee/application.py +++ b/bellows/zigbee/application.py @@ -356,6 +356,7 @@ async def load_network_info(self, *, load_devices=False) -> None: "flow_control": ( flow_control.name.lower() if flow_control is not None else None ), + # Z2M will not load EZSP backups without this internal key "ezspVersion": ezsp.ezsp_version, }, },