Zigbee2MQTTZigbee2MQTT
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Secure your Zigbee network
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Secure your Zigbee network
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)
  • Getting started
  • Supported Hardware
    • Adapters
    • Devices
  • Installation
    • Linux
    • Docker
    • Home Assistant addon
    • openHABian
    • Windows
    • FreeBSD jail
    • Kubernetes
    • Watchdog
    • Zigbee2MQTT fails to start/crashes runtime
  • Configuration
    • Adapter settings
    • MQTT
    • Zigbee network
    • Frontend
    • Devices and Groups
    • Logging
    • Device blocklist / passlist
    • OTA device firmware update
    • Device Availability
    • Home Assistant integration
    • More configuration options
    • Configuration update
  • Usage
    • Allowing devices to join
    • Integrations
    • Touchlink
    • Scenes
    • Binding
    • Groups
    • OTA updates
    • MQTT Topics and Messages
    • Exposes
  • FAQ

EmberZNet adapters (Silicon Labs)

Currently supported firmware version: 7.4.x, 8.0.x, 8.1.x

Firmware release notes: https://www.silabs.com/developers/zigbee-emberznet?tab=documentation

Multiprotocol firmware is not supported. The recommended alternative to establish multiple networks is to use one adapter per protocol.

Configuration

serial:
    adapter: ember

Other supported settings are: adapter_concurrent and transmit_power (docs).

TIP

The use of adapter: ezsp is now deprecated. See https://github.com/Koenkk/zigbee2mqtt/discussions/21462

Firmware flashing

  • Firmware repositories:
    • Multi-devices by @darkxst: https://github.com/darkxst/silabs-firmware-builder/releases
    • @NabuCasa / Home Assistant devices: https://github.com/NabuCasa/silabs-firmware-builder/releases
    • @TubesZB devices: https://github.com/tube0013/tube_gateways/
    • Experimental multi-devices by @Nerivec: https://github.com/Nerivec/silabs-firmware-builder/releases
      • Router firmware also available
  • Web-based
    • Multi-devices by @darkxst: Silabs Firmware Flasher
    • For SkyConnect by @NabuCasa: SkyConnect Flasher
    • SMLight: Flasher
  • Command-line based:
    • Multi-devices by @NabuCasa using Python: Universal Silicon Labs Flasher (also available via Home Assistant add-on)
    • Multi-devices by @Nerivec using NodeJS: Ember ZLI
  • Other:
    • Standalone J-Link Flash Tool (also included in Simplicity Studio): Simplicity Commander
  • Some Ethernet adapters support flashing Zigbee firmware over their own web-interface. In this case you do not need any external software and hardware. Just go to the webinterface and press "Update Zigbee firmware". Please refer to the manual of your particular Zigbee adapter for this functionality.

Recommended

Each category is ordered by chip, newer series first.

USB

SMLIGHT SLZB-07mg24

Chip: efr32mg24a020f1024im40

With external antenna and hardware flow control support.

serial:
    rtscts: true
  • Product page (not available yet, so link doesn't work)
Aeotec Zi-Stick (ZGA008)

Chip: efr32mg21a020f1024im32

With onboard antenna and hardware flow control support.

serial:
    rtscts: true
  • Product page
  • Buy
Sonoff ZBDongle-E (V2 model)

Chip: efr32mg21a020f768im32

With external antenna. Only supports software flow control (make sure not to set rtscts: true).

This section is about the "ZBDongle-E", for "ZBDongle-P" see zStack.

  • Product Page
  • Coordinator firmware
  • Flashing
    • Note: The PDF links to an old firmware. See all NCP_X.Y.Z versions and pick 7.4.4 or newer.
  • Buy
SMLIGHT SLZB-07

Chip: efr32mg21a020f768im32

With external antenna and hardware flow control support.

serial:
    rtscts: true
  • Product page
  • Buy: Official Store - Worldwide, Aliexpress - Worldwide.
    Local fast delivery: Australia, Austria, Belgium, Germany, Netherlands, France, Poland, US Amazon
Nabu Casa Home Assistant SkyConnect

Chip: efr32mg21a020f512im32

With onboard antenna and hardware flow control support.

serial:
    rtscts: true
  • Product page
  • Coordinator firmware
  • Flashing
  • Buy
Z-WAVE>ME Z-Station (EFR32MG21P)

With external antenna.

Requires Z-Station firmware 2024.04.22 or later.

serial:
    rtscts: false
  • Product page
  • Firmware
  • Buy: Official Store - Worldwide

Network (TCP)

TubeZB EFR32 MGM24 POE

Chip: mgm240pa32vnn

With external antenna.

Note: can also be powered via USB (with a special case) and used with a simple Ethernet cable (do not use USB and POE at the same time!).

  • Product page
  • Buy

Hybrid (USB + Network)

SMLIGHT SLZB-06mg24

Chip: efr32mg24a020f1024im40

With external antenna.

  • Product page
SMLIGHT SLZB-06M

Chip: efr32mg21a020f768im32

With external antenna.

For optimal performance, ensure your firmware is at least version 20240510 (requires Core firmware version 2.2.0 or higher). Not suitable for WiFi or other high latency connections.

  • Product page
  • Buy: Official Store - Worldwide, Aliexpress - Worldwide, Tindie - Worldwide.
    Local fast delivery: AU, AT, BE, CH, EE, FR, DE, LT, LV, PL, TH, US official, US Amazon.
SMLIGHT SLZB-MR1 MultiRadio Zigbee+Matter-over-Thread Ethernet USB POE WiFi LAN adapter

SLZB-MR1 is a compact multi-radio smart home adapter featuring CC2652P7, EFR32MG21 and ESP32 chips, enabling simultaneous support for Zigbee 3.0 and Matter-over-Thread run on different SoCs. It connects via Ethernet, Wi-Fi, or USB, and supports PoE for flexible, remote deployment. Its multi-SoC architecture ensures high performance and full compatibility with platforms like Home Assistant and Zigbee2MQTT. Powered by SLZB-OS with OTA firmware updates, VPN, HA Integration, 20+ languages, IPv6, Ethernet-to-Wi-Fi bridge, and so on.

Product pictureInterface screenshotYoutube videoreview
  • Product page
  • Buy: Authorized Store - Worldwide, Aliexpress - Worldwide.
    Local fast delivery: AU, AT, CZ, FR+EU, BE, DE, NL, PL, SE, CH, FI, UK, US,
SMLIGHT SLZB-MR2 MultiRadio Zigbee+Matter-over-Thread Ethernet USB POE WiFi LAN adapter

Chips: efr32mg21a020f768im32, and C2674P10

SLZB-MR2 is a compact multi-radio smart home adapter featuring CC2652P, EFR32MG21, and ESP32 chips, enabling simultaneous support for Zigbee 3.0 and Matter-over-Thread run on different SoCs. It connects via Ethernet, Wi-Fi, or USB, and supports PoE for flexible, remote deployment. Its multi-SoC architecture ensures high performance and full compatibility with platforms like Home Assistant and Zigbee2MQTT. Powered by SLZB-OS with OTA firmware updates, VPN, HA Integration, 20+ languages, IPv6, Ethernet-to-Wi-Fi bridge, and so on.

Product pictureInterface screenshotYoutube videoreview
  • Product page
  • Buy: Authorized Store - Worldwide, Aliexpress - Worldwide, Aliexpress-2 - Worldwide. Local fast delivery: AU,
SMLIGHT SLZB-MR3 MultiRadio Zigbee+Matter-over-Thread Ethernet USB POE WiFi LAN adapter

SLZB-MR3 is a compact multi-radio smart home adapter featuring CC2674P10, EFR32MG24 and ESP32 chips, enabling simultaneous support for Zigbee 3.0 and Matter-over-Thread run on different SoCs. It connects via Ethernet, Wi-Fi, or USB, and supports PoE for flexible, remote deployment. Its multi-SoC architecture ensures high performance and full compatibility with platforms like Home Assistant and Zigbee2MQTT. Powered by SLZB-OS with OTA firmware updates, VPN, HA Integration, 20+ languages, IPv6, Ethernet-to-Wi-Fi bridge, and so on.

Product pictureInterface screenshotYoutube videoreview
  • Product page
  • Buy: Authorized Store - Worldwide, Aliexpress - Worldwide, Aliexpress-2 - Worldwide.
    Local fast delivery: AU,

Hub

Nabu Casa Home Assistant Yellow

Chip: mgm210pa32jia

With onboard antenna and hardware flow control support.

serial:
    rtscts: true
  • Product page
  • Coordinator firmware
  • Flashing
  • Buy

Custom

Seeed Studio XIAO MG24

Chip: efr32mg24b220f1536im48

  • Product page
  • Product page - Sense variant
  • Getting started

Not recommended

Easyiot ZB-GW04 (v1.1, v1.2)

Low-resources hardware.

All Series 0/1 based-devices

Older hardware, no longer supported by Silabs in newer firmware versions (>= 8.0.0).

See Silicon Labs announcement.

Logging specific to this stack

info level

The start and stop sequences describe the steps taken to get Zigbee2MQTT running with ember in more details. This should help to locate potential start and stop problems.

Stack/Network status changes (up/down, channel change, open/close from Permit Join, etc).

Network/Route error: The error indicates that there was a problem sending/receiving messages from the target node (see below for more details). A few of these over time is expected (or on Zigbee2MQTT start), too many, too often, is indicative of a problem in your network.

warning level

Node descriptor reports device is only compliant to revision: Device identified as having an older Zigbee revision. These can be the source of problems, especially if pre-21.

[EzspConfigId] Failed to SET: Usually when the coordinator has lower memory than others. In-firmware value will be used instead.

An ID conflict was detected: Two devices cannot have the same ID on the same network. The involved devices are kicked off the network then should rejoin (may need to re-pair them if not).

NOT READY - Signaling NCP: ember driver is temporarily overloaded. The coordinator is made aware and processing is deferred for a short period.

error level

NCP EZSP protocol version of XX does not match Host version 13: ember currently requires a firmware with EZSP v13 (EmberZNet firmware 7.4.x). You will need to upgrade your adapter's firmware. Check the first two posts here.

[BACKUP] Current backup file is from an unsupported EZSP version: ember currently only supports EZSP v12 and above backups (can be identified by opening the coordinator_backup.json file). The file has been renamed automatically. A new one will be created by ember upon successful start.

Failed delivery of a message. The target device could not be reached. There can be several causes for this, the rest of the logs should help identify which.

Failed request. Message should be self-explanatory, and give a status indicating the reason of the failure.

NCP Fatal Error. The coordinator failed (the reason should be given in the message). Zigbee2MQTT will attempt to reset it and resume communication. If unsuccessful, Zigbee2MQTT will be stopped completely and the system's watchdog (if any) will attempt to restart it.

Tools

Ember ZLI

https://github.com/Nerivec/ember-zli/

NodeJS command line tool that allows firmware flashing, interacting with the adapter's stack, sniffing, etc. using zigbee-herdsman. Check out the Wiki for more details.

Bellows CLI

https://github.com/zigpy/bellows

Python command line tool that allows interacting with the adapter's stack.

Zigbee2MQTT Ember Helper

https://nerivec.github.io/z2m-ember-helper/

Analyze log files in your browser and get an automated review of your network.

[EXPERT] Customizing stack configuration

ATTENTION

This feature modifies the behavior of your adapter, and the network. Using improper values for your network can completely break it. Only modify any of these values if you are absolutely sure your network will benefit from it. Most networks will be just fine with the defaults.

ATTENTION

Do not open a new issue in Zigbee2MQTT before confirming the problem is present with the default configuration.

You can modify the EmberZNet default stack configuration by creating a file stack_config.json in the same folder as your coordinator_backup.json. This configuration can only be done manually.

Format, available and default values are as below:

{
    "CONCENTRATOR_RAM_TYPE": "high",
    "CONCENTRATOR_MIN_TIME": 5,
    "CONCENTRATOR_MAX_TIME": 60,
    "CONCENTRATOR_ROUTE_ERROR_THRESHOLD": 3,
    "CONCENTRATOR_DELIVERY_FAILURE_THRESHOLD": 1,
    "CONCENTRATOR_MAX_HOPS": 0,
    "MAX_END_DEVICE_CHILDREN": 32,
    "TRANSIENT_DEVICE_TIMEOUT": 10000,
    "END_DEVICE_POLL_TIMEOUT": 8,
    "TRANSIENT_KEY_TIMEOUT_S": 300,
    "CCA_MODE": null
}

Any value that is omitted from the JSON file, invalid or out of range, will use the default instead.

Documentation on these values and their behavior can be found in SiLabs UG100 - 2.3.1 PDF and concentrator article.

The driver further restricts values to the below:

  • CONCENTRATOR_RAM_TYPE: "high" or "low"
  • CONCENTRATOR_MIN_TIME: min 1, max 60
  • CONCENTRATOR_MAX_TIME: min 30, max 300
  • CONCENTRATOR_ROUTE_ERROR_THRESHOLD: min 1, max 100
  • CONCENTRATOR_DELIVERY_FAILURE_THRESHOLD: min 1, max 100
  • CONCENTRATOR_MAX_HOPS: min 0, max 30
  • MAX_END_DEVICE_CHILDREN: min 6, max 64
  • TRANSIENT_DEVICE_TIMEOUT: min 0, max 65535
  • END_DEVICE_POLL_TIMEOUT: min 0, max 14
  • TRANSIENT_KEY_TIMEOUT_S: min 0, max 65535
  • CCA_MODE: defaults to undefined (i.e. left to firmware default), possible values:
    • "RSSI": RSSI-based CCA. CCA reports a busy medium upon detecting any energy above -75 (default).
    • "SIGNAL": Signal Identifier-based CCA. CCA reports a busy medium only upon the detection of a signal compliant with this standard with the same modulation and spreading characteristics of the PHY that is currently in use.
    • "SIGNAL_OR_RSSI": RSSI or signal identifier-based CCA. CCA reports a busy medium on either detecting any energy above -75 (default) or detection of a signal compliant with this standard with the same modulation and spreading characteristics of the PHY that is currently in use.
    • "SIGNAL_AND_RSSI": RSSI and signal identifier-based CCA. CCA reports a busy medium only on detecting any energy above -75 (default) of a signal compliant with this standard with the same modulation and spreading characteristics of the PHY that is currently in use.
    • "ALWAYS_TRANSMIT": ALOHA. Always transmit CCA=1. CCA always reports an idle medium.

Note that some values are not only restricted by these ranges, but also by the memory available in your adapter. If any value (or combination) is too great for your adapter to handle, it will default to the firmware value(s) instead.

Help to make the docu better and edit this page on Github ✌
Last Updated:: 6/13/25, 6:01 PM