Skip to content
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

Closed
Hedda opened this issue May 28, 2022 · 7 comments
Closed

[REQUEST] Ubisys OTA provider for Ubisys branded Zigbee devices #988

Hedda opened this issue May 28, 2022 · 7 comments
Labels

Comments

@Hedda
Copy link
Contributor

Hedda commented May 28, 2022

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:

We do in fact make the newst firmware available to the general public on our website, so a proper OTA server (e.g. Raspberry… ) can be used to distribute our update files easily.

Here´s the link: http://www.ubisys.de/en/support/firmware/

As far as I´m aware of we neither have we ourselves approached, nor have we been approached by ZHA, regarding 3rd party OTA files being supported, sorry!

You could get in touch with them as well, maybe that´ll create a ticket on their side - initiating first contact with us 😉

I´ll also mention this in our next team meeting!

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."

image

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

@Hedda
Copy link
Contributor Author

Hedda commented Aug 4, 2022

FYI, I got this reply from Ubisys when I asked about a Ubisys Zigbee OTA provider in zigpy for Home Assistant's ZHA integration:

"Hi,

Currently we do not have any development resources available, but already have agreed to take care of this topic.

However, it is difficult to give a timeline, but we will try to work on it in the short term and keep you posted.

Kind regards

Ubisys Support Team"

@Hedda Hedda changed the title Ubisys OTA provider for Ubisys branded Zigbee devices [REQUEST] Ubisys OTA provider for Ubisys branded Zigbee devices Oct 20, 2022
@Hedda
Copy link
Contributor Author

Hedda commented Feb 15, 2023

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.

@Hedda
Copy link
Contributor Author

Hedda commented Feb 27, 2023

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

@Hedda
Copy link
Contributor Author

Hedda commented Aug 16, 2023

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(?)

#1165

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

Copy link

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.

@github-actions github-actions bot added the stale label Feb 12, 2024
@Hedda
Copy link
Contributor Author

Hedda commented Feb 18, 2024

More relevant now with #1340

@puddly
Copy link
Collaborator

puddly commented Feb 18, 2024

#1060 (comment)

@puddly puddly closed this as not planned Won't fix, can't repro, duplicate, stale Feb 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants