Skip to content

Coordinator Firmware Updates

MattWestb edited this page Oct 12, 2022 · 93 revisions

Coordinator firmware updates are available for most supported radio types.
These updates are usually intended to fix low level bugs, and / or increase the coordinator compatibility and capacity.

Instructions for EZSP Radios

Note: All EM35X and EFR32MG1 first generation SoC's are deprecated and are not getting an update to Zigbee R23 and the last "golden version" is very likely going to be the bug-fixed EZSP 6.7.8.X.
EFR32MG2 second generation SoC's are getting newer EZSP versions thus getting Zigbee R23 support.
Using a higher version of EZSP than 6.7.8.X is not recommended in combination with ZHA, as there are new bugs and some old bugs are not fixed. Furthermore, using these newer versions does not add any additional useful functionality to ZHA.

Minimum firmware requirement for running bellows

bellows requires EZSP (EmberZNet Serial Protocol) API versions 4 which was added in EmberZNet 4.7.2 as the standard application interface.

Some older EM35x (EM357/EM358) and ETRXn "Ember" based coordinators adapters/modules, like Telegesis ETRX1/ETRX2/ETRX3 Series such as example ETRX357USB, are shipped with an old "AT-Command" legacy firmware which is not compatible with bellows and first needs to be flashed with a newer EZSP compatible firmware (see here).

Also note that Sonoff ZBBridge Zigbee Bridge/Gateway are shipped with non-standard EFR32 Zigbee application firmware which needs to be flashed with a standard EZSP firmware upgrade first to start working with bellows.

The current bellows only support software flow control (as of bellows 0.23). The COM port speed is normally 115200 or 57600 baud depending on the firmware.

Use the recommended firmware for your coordinator from the table.

Nortek GoControl HUSBZB-1 and Telegesis

Instruction for EM3581 / EM357 SoC

For firmware upgrade see directions from husbzb-firmware repository.
Stock firmware on Nortek GoControl is / was EZSP 5.4.1 (API versions 4) and can be updated to EZSP 6.7.8.0 (API versions 8).
Use the recommended firmware for your coordinator from the table.

Elelabs Adapters

Instruction for ELU013 and ELR023

Elelabs adapters can be updated with the Elelabs EZSP firmware update utility. Factory images for API versions 6 and 8 are available with the utility, but flashing with zha-ng EZSP firmware is highly recommended as this fixes both some low level bugs and increases capacity of the adapter.

For ELU013/ELR023 follow the directions with the Elelabs utility for generic flashing.
Use the recommended firmware for your coordinator from the table.

EByte

Instruction for E180-Z120B

Flashing the EByte-E180-Z120B for the first time requires an SWD Flasher.
Use the recommended firmware for your coordinator from the table.

Sonoff

Instructions for ZBBridge

The Sonoff Zigbee bridge's ESP8266 and Zigbee coordinator need to be flashed to work with zigpy.
Please follow the steps in Digiblur's Flashing Guide.
Use the recommended firmware for your coordinator from the table.

With Zigbee module bootloader version v1.9.1.xx (xx=02/03/04) you need using Sonoff factory signed firmware for other (normally v1.9.2 of self cooked) use unsigned factory or community firmware.

Warning Sonoff ZBB and the USB-Zigbee stick are not calibrated in the factory and need to have HFXO CTUNE value set to 128 in order to work OK. So, only use you the recommended firmware with this devices ❗

Newer EFR32 device is using the same firmware but the unsigned version and you is finding them here https://github.com/xsp1989/zigbeeFirmware/tree/master/firmware/Zigbee3.0_Dongle-NoSigned/EZSP

IKEA

Instructions for Billy EZSP

Flashing the IKEA TRÅDFRI ICC-A-1 Module for the first time requires an SWD Flasher.
Instructions for flashing bootloader and firmware are described in the IKEA Billy EZSP repro.
Use the recommended firmware for your coordinator from the table.

Tuya

Instructions for TYGWZ01 and labeled (Silvercrest / Lidl) Smart Home Gateway

You first need to gain root access to the TZGW (requiring a 3.3V USB-TTL adapter), have Socat installed and get it working with the standard (6.5) EZSP firmware. Instructions are documented on paulbanks.org.
It's possible to update the firmware to EZSP 6.7.8.0 and also the bootloader with software commands but it's not 110% reversal if not flashing back one dumped backup of the original flash with one SWD flasher.
Use the recommended firmware for your coordinator from the table.

Bitron Video/Smabit

Instructions for AV2010/10 USB-Stick

No official firmware is found and Magenta and other user is doing OTA updates thru there system so not leaked.
The community have cooked 2 version for EM3587 firmware and one is reported working on this hardware.
No recommended firmware then its very few user that have testing it and the status is not verified.

Recommended firmware versions for EZSP coordinators

EZSP Firmware Table
Coordinator vendor Model Hardware mod Recommended firmware EZSP PRO
Telegesis ETRX357USB EM357 6.7.8.0 ✅ 🥇
Telegesis ETRX357USB EM357-LRS 6.6.5.0 ✅ (6.7.8.0 🔲) ❌ (🥇 🔲)
Telegesis ETRX357USB EM357-LRS+8M 6.6.5.0 ✅ (6.7.8.0 🔲) ❌ (🥇 🔲)
Nortek HUSBZB-1 EM3581 6.7.8.0 ✅ 🥇
Elelabs ELU013 EFR32MG13P 6.7.8.0 ✅ 🥇
Elelabs ELR023 EFR32MG13P 6.7.8.0 ✅ 🥇
EByte E180-Z120B EFR32MG1B 6.7.8.0 ✅ 🥇
Sonoff Zigbee Bridge EFR32MG21 6.7.9.0 ✅ 🥇
TubesZB tube_zb_gw_efr32_pro EFR32MG12P 6.9.1.0 / 6.7.8.0 ✅ 🥇 / 🥇
DEFARO SprutStick Pro EFR32MG12P 6.7.6.0 ✅ 🥇
IKEA Billy EZSP EFR32MG1P 6.7.8.0 ✅ (6.10.0.0 🔲) 🥇 / 🥇
Tuya TYGWZ01 Smart Gateway EFR32MG1B 6.7.8.0 ✅ (6.10.0.0 🔲) 🥇 / 🥇

✅ = Latest stable firmware release that is recommended for being used with ZHA / Zigpy.
🔲 = Firmware is ready but status is pending. Please test the new firmware and report back to the devs for getting the status updated to "verified working" with the hardware.
❌ = Not supported.
🥇 = EZSP PRO = Extended numbers of neighbors and children beyond "Silabs standard" for coordinator running EZSP protocol version 8 and the firmware being configured with extended neighbors and children table.

Higher versions of EZSP than 6.7.X.X (like 6.8.2.0) are not recommended at the moment:exclamation:
EZSP 6.10.X.X is one good stable candidate for most MG1 and MG2 gen chips and worth testing.
EZSP 7.X NCP version is still beta and still having problems and is not working on all chips (No MG1 and IKEA Markus / Silabs MG21 Light module).
RCP for Zigbee and OTRB is in beta (= EZSP 7.X with zigbeed) and upcoming Alpha is Zigbee NCP + OTBR RCP and is only tested on Sky Connect and 110% not supported by MG1 chips.

Changing the the baudrate after the ZHA integration is installed

Instruction

If your hardware is working OK with 115k2 baud, it is preferred over 57k6, as it's nearly 100% faster, but if you have problems with the communication to the radio adapter, try using one 57k6 firmware if it's released.
ZHA only supports software flow control (SW). Hardware flow control (HW) is not working with ZHA with the exception being Tuya ZBGW that is using HW between the Zigbee module and the MCU. Socat is using SW on the ZHA side and must have HW enabled firmware to work OK.
ZHA can only automatically discover EZSP adapters with a baudrate of 57k6 at the moment.

If updating to a firmware with a different baudrate, ZHA will not be working. You can delete the ZHA integration and re-add it to fix the issue (but you must redo all your nice custom things).
A better way is to edit the adapter parameters in the ZHA config that is stored in <your_config_directory>\.storage\core.config_entries.

            {
                "entry_id": "998bc857058111eb90e2ad6d9c6e46a8",
                "version": 2,
                "domain": "zha",
                "title": "IKEA Billy EZSP",
                "data": {
                    "device": {
                        "path": "/dev/ttyAMA0",
                        "baudrate": 115200
                    },
                    "radio_type": "ezsp"
                },

If you are adding your coordinator with default settings, you don't have all keys in the config. Adding them with your new settings and ZHA will use them after the next restart (the example is one part of the config and is done with manual config and is not changed).

Instructions for ZNP Radios

BACKUP your device before updating See ZNP NVRAM backup

CC2530 and CC2531

Instructions for CC2530 and CC2531

See the zigbee2mqtt guide for flashing or alternative flashing methods.
Recommended firmware is Z-Stack 1.2 due to the limited CPU, flash and memory capacity of the Soc, but Z-Stack 3.0.X is working if you only have few devices.
Use the recommended firmware for your coordinator from the table.

CC2538

Instructions for CC2538

See the zigbee2mqtt guide for flashing.
Use the recommended firmware for your coordinator from the table.

CC2652P, CC2652R, CC2652RB, CC1352P and CC1352R

Instructions for CC2652P, CC2652R, CC2652RB, CC1352P and CC1352R

See the zigbee2mqtt guide for flashing for your particular radio type and manufacturer.
Use the recommended firmware for your coordinator from the table.

Recommended firmware versions for ZNP coordinators

CC Firmware Table
Coordinator vendor Model Hardware mod Recommended firmware
No name CC2530 CC2530 ZHA 1.2 / ZB3
No name CC2530 CC2530 + CC2591 ZHA 1.2 / ZB3
No name CC2530 CC2530 + CC2592 ZHA 1.2 / ZB3
No name CC2531 CC2531 + CC2591 ZHA 1.2 / ZB3
No name CC2531 CC2531 + CC2592 ZHA 1.2 / ZB3
No name CC2538 CC2538 ZB3
No name CC2538 CC2538 + CC2591 ZB3
No name CC2538 CC2538 + CC2592 ZB3
TI LAUNCHXL CC1352P_2 ZB3
Ebyte E72 Module CC2652P ZB3
TubesZB tube_zb_gw_cc2652p2 CC2652P2 ZB3
slaesh’s CC2652RB stick CC2652RB ZB3
TI LAUNCHXL CC26X2R1 ZB3
Electrolama zig-a-zig-ah! CC26X2R1 ZB3

Instructions for zigpy-zigate Radios

ZiGate USB-TTL, ZiGate USB-DIN, PiZiGate and ZiGate Pack WiFi

Use the zigate-flasher instructions for updating your ZiGate adapter to latest available firmware.

Your ZiGate adapter must have ZiGate 3.1d firmware or later to work with zigpy / ZHA ❗

Instructions for dresden elektronik deCONZ based radios

RaspBee I and II, ConBee I and II

Use the instruction on deCONZ wiki for updating your adapter in your preferred OS platforms.