-
Notifications
You must be signed in to change notification settings - Fork 156
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[REQUEST] Ubisys OTA provider for Ubisys branded Zigbee devices #988
Comments
FYI, I got this reply from Ubisys when I asked about a Ubisys Zigbee OTA provider in zigpy for Home Assistant's ZHA integration:
|
FYI, puddly has just now added a new feature to the "zigpy-cli" tool that manufacturers can use to produce a skeleton JSON index from a given set of OTA files, and that way make sure manufacturers OTA files are correctly-structured so that they will be compatible with zigpy out-of-the-box. See the README.md for the "zigpy-cli" tool. See: https://github.com/zigpy/zigpy-cli/blob/dev/README.md#ota and https://github.com/zigpy/zigpy-cli/blob/dev/README.md#generate-ota-index-files PS: puddly mentioned when adding that feature for generating OTA index files via zigpy-cli was done in preparation for some OTA rewrites in the main zippy library that he is planning to do. |
FYI, puddly is now working on supporting "Generic OTA providers" for zigpy via this new JSON format schema: https://github.com/zigpy/zigpy/wiki/OTA-Information-for-Manufacturers "This allows for new providers to be added to zigpy without extra code. This also allows for manufacturers to distribute test feed URLs to customers without deploying them globally." This feature will be introduced via this new pull request that is still a work-in-progress -> #1165 |
FYI, “Manufacturer OTA Firmware Update Support” (also referred to as “Generic OTA providers”) should now be available for use in ZHA as that was added with zigpy 0.56.3 release and that was very recently bumped in Home Assistant core version 2023.8.1(?) This new feature in zigpy (and ZHA) should allow for new OTA providers to be added to zigpy (and ZHA) without extra code, which in turn also allows both manufacturers (and end-users) to distribute test feed URLs to customers without deploying them globally. https://github.com/zigpy/zigpy/wiki/OTA-Information-for-Manufacturers PS: Again, puddly also added a new feature to the "zigpy-cli" tool that manufacturers can use to produce/generate a skeleton index from a given set of OTA files, and that way makes sure manufacturers OTA files are correctly-structured so that they will be compatible with this new JSON format for zigpy OTA providers out-of-the-box. Check out the README.md for the "zigpy-cli" (zigpy CLI tool) -> https://github.com/zigpy/zigpy-cli/blob/dev/README.md#generate-ota-index-files |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions. |
More relevant now with #1340 |
Posting as a dedicated feature request as someone posted this question in Home Assistant community forum after asking Ubisys:
https://community.home-assistant.io/t/zha-ubisys-ota-updates-firmware-is-available-on-their-website/290430
Ubisys support sent this reply to user question about Zigbee OTA support in ZHA and other open source Zigbee implementations:
For reference, Zigbee2MQTT does already have a dedicated OTA provider for Ubisys in zigbee-herdsman-converters:
https://github.com/Koenkk/zigbee-herdsman-converters/tree/master/lib/ota
https://github.com/Koenkk/zigbee-herdsman-converters/blob/master/lib/ota/ubisys.js
Information for other end-end users and new developers wondering what is needed for this to be integrated into zigpy and ZHA:
ZHA does have support download code for third-party OTA providers however someone need to code each download source:
https://www.home-assistant.io/integrations/zha#ota-firmware-updates
https://github.com/zigpy/zigpy#zigbee-device-ota-updates
So what is needed is for a Python developer to submit download code with URLs for each Zigbee OTA provider, see the code:
https://github.com/zigpy/zigpy/tree/dev/zigpy/ota
https://github.com/zigpy/zigpy/blob/dev/zigpy/ota/provider.py
Since zigpy is free and open source software such code is usually submitted by either manufacturers themselves or an independent developer who own such specific products and therefor have personal interest to code OTA code to zigpy.
However I have not read about any existing developers expressing interest in working on adding OTA provider to zigpy for Ubisys, which probably means that they do own any Ubisys or do not have time to priotize coding this over other things:
https://github.com/zigpy/zigpy/issues?q=ota
But FYI, note that end-users can still flash those with ZHA if enable OTA and then manually copy OTA file(s) to directory, read:
https://www.home-assistant.io/integrations/zha#ota-firmware-updates
https://github.com/zigpy/zigpy/wiki/OTA-Device-Firmware-Updates
PS: In a related question wondering if Ubisys are aware of Home Assistant's "Works with Home Assistant" partner program with its matching "Works via Zigbee with Home Assistant" compatibility badges and if they would consider joining it?
https://www.home-assistant.io/blog/2022/07/12/partner-program/
There it says "Works with Home Assistant partners are expected to provide firmware updates via user-friendly services provided by Home Assistant" under Responsibilities in a section there called "Provide easy firmware updates".
https://partner.home-assistant.io/
"There are manufacturers that are creating products that integrate into Home Assistant using standards like Z-Wave, Zigbee, or Matter (soon). In these cases, the integration is maintained by the Home Assistant community and Nabu Casa. These companies can still become a member of the Works with Home Assistant program but are relieved from integration maintenance."
"With Home Assistant we are always working on educating our users about preferring local control and open standards when acquiring new products. This is also reflected in the “Works with Home Assistant” badges."
So far they have only announced one other company which makes and sells Zigbee devices that joined their partner program:
https://www.home-assistant.io/blog/2022/10/13/third-reality-partner/
This relates to zigpy as it may imply some commitment from companies to help with both OTA updates and ZHA Device Handlers.
https://www.home-assistant.io/integrations/zha#ota-firmware-updates
https://github.com/zigpy/zigpy/blob/dev/README.md#zigbee-device-ota-updates
https://www.home-assistant.io/integrations/zha#zha-exception-and-deviation-handling
https://github.com/zigpy/zha-device-handlers
https://github.com/zigpy/zha-device-handlers/blob/dev/README.md
The text was updated successfully, but these errors were encountered: