itead / Sonoff_Zigbee_Dongle_Firmware

155 stars 18 forks source link

[REQUEST] EmberZNet NCP 7.3.x.x Zigbee Coordinator NCP firmware image for Sonoff Zigbee 3.0 USB Dongle Plus V2 (model “ZBDongle-E”) by ITead? #31

Open Hedda opened 1 week ago

Hedda commented 1 week ago

Follow up to https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/issues/28 for tracking as separate issue because also need a EmberZNet NCP 7.3.x.x firmware image for Zigbee2MQTT migration.

@Daniel-zhan-itead @liangjia2019 @guozi7788 I like to recommend that ITead releasing an official Zigbee NCP firmware image based on EmberZNet NCP 7.3.x.0 version or later 7.3.x.x bug-fix version for your EFR32MG21 based “Sonoff Zigbee 3.0 USB Dongle Plus V2” (model “ZBDongle-E”, a.k.a. "Dongle-E”) as an optional firmware update and required for Zigbee2MQTT upgrade path (because existing Zigbee2MQTT users need to first upgrade to EmberZNet NCP 7.3 before thay can migrate to their new driver that support EmberZNet NCP 7.4).

Please also build and release Silabs Zigbee EmberZNet SDK 7.3.3.0 firmware image from Silicon Labs Gecko SDK (GSDK) Version 4.3.3.0

Without that EmberZNet NCP 7.3 version then Z2M users can not backup their Zigbee network for migration restore to 7.4 version:

That is, I forgot to mention it in https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/issues/28 but you also need to release EmberZNet Zigbee NCP 7.3.x.0 version as well for smooth migration, at least for Zigbee2MQTT migration when already running EmberZNet Zigbee NCP versions older than 7.3.x.x

Note! It should be EmberZNet Zigbee NCP 7.3.x.x (and EmberZNet Zigbee NCP 7.4.x.x) firmware with software flow control only.

Suggest check out darkxst's config -> https://github.com/darkxst/silabs-firmware-builder/blob/main/manifests/zbdonglee.json

As I understand, while you need to have upgraded to at least EmberZNet 7.4.x.x firmware version or later if you want to install Zigbee2MQTT from scratch today with their new ”ember” driver/adapter in Zigbee2MQTT, from what I read the recommendation is slighly different if already running Zigbee2MQTT with their old ”ezsp” driver/adapter in Zigbee2MQTT.

If want to upgrade when using Zigbee2MQTT then it is recommended to first upgrade to EmberZNet NCP 7.3.x.x firmware version while still using the old ”ezsp” driver/adapter as it sounds like migration to the new ”ember” driver will go smoother if already have had the old ”ezsp” driver/adapter working EmberZNet NCP 7.3.x firmware version while still using the old ”ezsp” driver/adapter in Zigbee2MQTT. Only after already upgraded to EmberZNet NCP 7.3.x.x firmware version and get it working with that should existing Zigbee2MQTT users upgrade to EmberZNet NCP 7.3.x firmware version.

Suggest read and ask more specific questions in Zigbee2MQTT’s own community forum on GitHub after you done more research. The multi-step process you need to do depends on your specific setup and you need to ask in the Zigbee2MQTT community if you need step-by-step that applies to your setup. The process for actually updating firmware version will not be different.

Suggest read and try following this article regarding migrating Zigbee2MQTT from the ezsp adapter to the new ember adapter:

If you require assistance with Zigbee2MQTT then report as issue or discuss directly on Zigbee2MQTT's repository on GitHub:

Summery; ezsp adapter is now deprecated in Zigbee2MQTT’s zigbee-herdsman library, which means that the Zigbee2MQTT developers are by doing so strongly recommending users to upgrade and migrate to ember adapter, and that migration might require a multi-step process depending on what EmberZNet firmware version you are using today. Users that continues to use the ezsp adapter will for now simply get a warning in their logs that they are using a deprecated adapter, however it will not stop working.

For reference see:

PS: "Deprecated" does not mean that the ezsp adapter driver in Zigbee2MQTT will be removed yet, instead it means you are discouraged from using it in in Zigbee2MQTT configuration as it is being phased out and replaced by the newer ember adapter driver (which is not compatible with older firmware or all hardware).

liangjia2019 commented 1 week ago

Follow up to #28 for tracking as separate issue because also need a EmberZNet NCP 7.3.x.x firmware image for Zigbee2MQTT migration.

@Daniel-zhan-itead @liangjia2019 @guozi7788 I like to recommend that ITead releasing an official Zigbee NCP firmware image based on EmberZNet NCP 7.3.x.0 version or later 7.3.x.x bug-fix version for your EFR32MG21 based “Sonoff Zigbee 3.0 USB Dongle Plus V2” (model “ZBDongle-E”, a.k.a. "Dongle-E”) as an optional firmware update and required for Zigbee2MQTT upgrade path (because existing Zigbee2MQTT users need to first upgrade to EmberZNet NCP 7.3 before thay can migrate to their new driver that support EmberZNet NCP 7.4).

Please also build and release Silabs Zigbee EmberZNet SDK 7.3.3.0 firmware image from Silicon Labs Gecko SDK (GSDK) Version 4.3.3.0

* https://www.silabs.com/documents/public/release-notes/emberznet-release-notes-7.3.3.0.pdf

* https://github.com/SiliconLabs/gecko_sdk/releases/tag/v4.3.3

Without that EmberZNet NCP 7.3 version then Z2M users can not backup their Zigbee network for migration restore to 7.4 version:

* https://community.home-assistant.io/t/ezsp-to-ember/732705

That is, I forgot to mention it in #28 but you also need to release EmberZNet Zigbee NCP 7.3.x.0 version as well for smooth migration, at least for Zigbee2MQTT migration when already running EmberZNet Zigbee NCP versions older than 7.3.x.x

Note! It should be EmberZNet Zigbee NCP 7.3.x.x (and EmberZNet Zigbee NCP 7.4.x.x) firmware with software flow control only.

Suggest check out darkxst's config -> https://github.com/darkxst/silabs-firmware-builder/blob/main/manifests/zbdonglee.json

As I understand, while you need to have upgraded to at least EmberZNet 7.4.x.x firmware version or later if you want to install Zigbee2MQTT from scratch today with their new ”ember” driver/adapter in Zigbee2MQTT, from what I read the recommendation is slighly different if already running Zigbee2MQTT with their old ”ezsp” driver/adapter in Zigbee2MQTT.

If want to upgrade when using Zigbee2MQTT then it is recommended to first upgrade to EmberZNet NCP 7.3.x.x firmware version while still using the old ”ezsp” driver/adapter as it sounds like migration to the new ”ember” driver will go smoother if already have had the old ”ezsp” driver/adapter working EmberZNet NCP 7.3.x firmware version while still using the old ”ezsp” driver/adapter in Zigbee2MQTT. Only after already upgraded to EmberZNet NCP 7.3.x.x firmware version and get it working with that should existing Zigbee2MQTT users upgrade to EmberZNet NCP 7.3.x firmware version.

* https://www.zigbee2mqtt.io/guide/adapters/emberznet.html

Suggest read and ask more specific questions in Zigbee2MQTT’s own community forum on GitHub after you done more research. The multi-step process you need to do depends on your specific setup and you need to ask in the Zigbee2MQTT community if you need step-by-step that applies to your setup. The process for actually updating firmware version will not be different.

Suggest read and try following this article regarding migrating Zigbee2MQTT from the ezsp adapter to the new ember adapter:

* https://smarthomescene.com/guides/how-to-use-ember-driver-with-efr32mg21-zigbee-adapters/

If you require assistance with Zigbee2MQTT then report as issue or discuss directly on Zigbee2MQTT's repository on GitHub:

* https://github.com/Koenkk/zigbee2mqtt/issues

* https://github.com/Koenkk/zigbee2mqtt/discussions

* or Discord at https://discord.gg/NyseBeK

Summery; ezsp adapter is now deprecated in Zigbee2MQTT’s zigbee-herdsman library, which means that the Zigbee2MQTT developers are by doing so strongly recommending users to upgrade and migrate to ember adapter, and that migration might require a multi-step process depending on what EmberZNet firmware version you are using today. Users that continues to use the ezsp adapter will for now simply get a warning in their logs that they are using a deprecated adapter, however it will not stop working.

* https://www.zigbee2mqtt.io/guide/adapters/

  * https://www.zigbee2mqtt.io/guide/adapters/emberznet.html

For reference see:

* [New ember adapter implementation targeting EZSP 13 and above Koenkk/zigbee-herdsman#918](https://github.com/Koenkk/zigbee-herdsman/pull/918)

* [Improved Ember (EZSP) driver (experimental) Koenkk/zigbee2mqtt#21462](https://github.com/Koenkk/zigbee2mqtt/discussions/21462)

  * [Improved Ember (EZSP) driver (experimental) Koenkk/zigbee2mqtt#21462 (comment)](https://github.com/Koenkk/zigbee2mqtt/discussions/21462#discussioncomment-8510320)

* [feat: Log EZSP adapter deprecated Koenkk/zigbee-herdsman#1039](https://github.com/Koenkk/zigbee-herdsman/pull/1039)

PS: "Deprecated" does not mean that the ezsp adapter driver in Zigbee2MQTT will be removed yet, instead it means you are discouraged from using it in in Zigbee2MQTT configuration as it is being phased out and replaced by the newer ember adapter driver (which is not compatible with older firmware or all hardware).

* https://en.wikipedia.org/wiki/Deprecation#Software

* https://techterms.com/definition/deprecated

* [https://www.baeldung.com/cs/deprecated-vs-obsolete[Zigbee](https://www.baeldung.com/cs/deprecated-vs-obsolete%5BZigbee) EmberZNet SDK](https://www.silabs.com/wireless/zigbee#software)    7.3.3.0

Hi Hedda: I have updated the NCP firmware for 7.3.3 and 7.4.3.

cvocvo commented 1 week ago

@liangjia2019 Are there any instructions for how to upgrade the firmware from whatever version shipped on my device to v7.4.3? I'm using ZHA in Home Assistant. The link here: https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/NCP_7.4.3#firmware-upgrade-and-recovery-procedure Sends me here: https://sonoff.tech/product-document/gateway-and-sensors-doc/zigbee-dongle-plus-efr32mg21-doc/ Which doesn't seem to load the firmware document anymore. I just see the "Specification" and "User Manual" links.

liangjia2019 commented 1 week ago

I think you can refer to the steps of zigbee2mqtt for introduction. The link here:https://www.zigbee2mqtt.io/devices/ZBDongle-E.html

liangjia2019 commented 1 week ago

@liangjia2019 Are there any instructions for how to upgrade the firmware from whatever version shipped on my device to v7.4.3? I'm using ZHA in Home Assistant. The link here: https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/NCP_7.4.3#firmware-upgrade-and-recovery-procedure Sends me here: https://sonoff.tech/product-document/gateway-and-sensors-doc/zigbee-dongle-plus-efr32mg21-doc/ Which doesn't seem to load the firmware document anymore. I just see the "Specification" and "User Manual" links.

In HA,you can also add addon Silicon Labs Flasher 图片

Hedda commented 1 week ago

@cvocvo How-to flash/program a firmware image is off-topic for this specific issue and should really be dealt with in a separate issue in order not to thread-jack this specific request about an exact version, however, I am going to give links with context below to what I know, but I hope that you will then not continue that discussion elsewhere like start a new separate issue in this repository or alternative post in an existing forum discussion thread, like example these two in Home Assistant and Zigbee2MQTT community discussion forums respectively:

Are there any instructions for how to upgrade the firmware from whatever version shipped on my device to v7.4.3? I'm using ZHA in Home Assistant. The link here: https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/NCP_7.4.3#firmware-upgrade-and-recovery-procedure Sends me here: https://sonoff.tech/product-document/gateway-and-sensors-doc/zigbee-dongle-plus-efr32mg21-doc/ Which doesn't seem to load the firmware document anymore. I just see the "Specification" and "User Manual" links.

@Daniel-zhan-itead @liangjia2019 @guozi7788 best would be if you either see to that ITead/Sonoff add and maintain up-to-date official user-manual/guide documentation to ITead/Sonoff webpages for how-to to flash firmware to ZBDongle-E or alternativly that you at least add and maintain working links to trusted third-party tools and manuals/guides documentation:

Please also help update community webpages that accept documentation contribution from the community, like example these:

In HA,you can also add addon Silicon Labs Flasher

Note that I do not believe that Nabu Casa's upstream repositories of "Silicon Labs Flasher Add-on" and "sl-web-tools" tool (both of which are based on Nabu Casa 's "universal-silabs-flasher") contain code that has been tested for flashing/programming compatibility with any other adapter than Nabu Casa's own Home Assistant SkyConnect / Home Assistant Connect ZBT-T dongle, so probably not a good idea to refer owners of Sonoff ZBDongle-E to use Nabu Casa's upstream version of those as-is because the idea with those are they are open-source so other companies can either contribute to upstream or fork them if want to make sure it works with other adapters, as Nabu Casa currently only ensure that they are compatible with their own hardware as-is:

Therefor I believe it would at this time instead be better to just refer to either refer to third-party forks of those addons and flasher tools that have at least been tested by the community or to official tools by Silicon Labs (Silabs) that all allow you to pick and flash firmware from file.

See these examples with forks of above that added and tested support for other hardware, including some Sonoff adapters:

And see these examples official documentation and tools from Silicon Labs about programming (flashing) and/or recovery (most of which unfortunatly require user to have a EFR32 compatible J-LInk debug probe programmer adapter hardware):

PS: If you manually put the adapter into bootloader mode then you can flash ut with any software supporting the XMODEM file transfer protocol for sending the firmware image to the device.

cvocvo commented 1 week ago

@liangjia2019 -- Thanks, the darkxst Silabs web flasher + 7.4.3 firmware seems to have worked great. per @Hedda I'll open up a separate issue if I run into any issues with it. Have a nice day!