ZHA integration now has an official central firmware Zigbee OTA firmware update image repository

It was not announced in the Home Assistant 2026.1 release notes but FYI, the ZHA integration have now since Home Assistant 2026.1.0 an early version of its own official central firmware Zigbee OTA firmware image repository for Zigbee gateway implementations that uses the zigpy libraries (similar to the Zigbee-OTA repo that Zigbee2MQTT project maintains) which allow Zigbee device manufacturers to provide tested Over-The-Air updates to Zigbee devices via an official channel for Home Assistant and other projects that uses zigpy.

Launch announcement and more info here in zigpy-ota discussion section:

By default, only stable firmware images is available to ZHA users and those are provider via the zigpy-ota stable channel which is active by default with Home Assistant Core 2026.1.0 and later with no configurations required by the end-user. ZHA integration documentation has not yet been updated:

Note that the OTA providers that was previous supported by zha is currently still used by zigpy as well, though from now and in the future ZHA devs would prefer if manufactuers using this new zigpy-ota repo, and sooner or later zigpy/zha will probably deprecate all of the other OTA providers so that all Zigbee OTA images will need to be provided via the new zigpy-ota repo.

Should maybe also be mentioned that OTAU image submittions is initially only targeted to Zigbee device manufacturers that are willing to formally provide OTA firmware image officially.

It will by the way be possible in the future to opt into pre-release firmware (dev or beta) by edit configuration but that is not recommended to end-users:

Not sure if they will sooner or later allow allow non-manfucatuers (e.g. trusted users) to submit vetted Zigbee OTA files from non-official repos like the one Z2M uses → GitHub - Koenkk/zigbee-OTA: A collection of Zigbee OTA files

FYI, here is a more extensive introduction that TheJulianJES posted to device manufacturers:

Just some info: We have an early version of our central firmware repo set up now: zigpy-ota. The underlying OTA provider in zigpy for the repo is included in Home Assistant Core 2026.1.0.

We’re trying to move towards a central approach, as it’s easier for most manufacturers, allows us to get feedback on the installed OTAs, do a quick sanity check for new updates, and have a “beta” zigpy-ota release channel to which we can (temporarily) limit new updates to.

The repo doesn’t require any PRs nor JSON metadata to add images. You can submit an issue (per image) with your existing OTA image URL and a PR will be auto-created and merged by us.

Providing release notes is also simple and we’ve found that to be really helpful for users who are unsure about installing updates, so it’s very much encouraged to just add a bit of the text about the particular update in that section of the issue form.

If you want to limit the update to certain device models (e.g. like here), or to users who configured the zigpy-ota beta channel, or if you want to require a minimum installed existing version on the device, you can also add a bit of optional metadata. See the placeholder and examples in the issue form and README for that. We’re also here to answer any questions.

If any update later needs to be removed, you can submit a PR to edit the YAML text file per image and just add disabled: true. Alternatively, you can also just submit a PR that removes the image and YAML metadata file, e.g. for updates with bad regressions.

2 Likes

FYI, looks like they are currenly working with Zigbee device manufacturers Aeotec and Innr

Noted that niether Aeotec or Innr are WWHA parters, nor does those manufacturers have any WWHA certified devices, so nice to see they are activly working with others manufacturers too.