ITead’s “Sonoff Zigbee 3.0 USB Dongle Plus V2” (model "ZBDongle-E") based on Silicon Labs EFR32MG21 +20dBm radio SoC/MCU

I am trying to follow this tutorial.
But i don’t understand what settings do i need use here. Anybody can help?2022-08-26 10_27_16-Quick Connect

What exactly are you trying to do? If you are wanting to flash firmware the easiest way is to get access to the TI smartRF flash tool.

I want flash router firmware. I tried that but unfortunately TI smartRF 2 cant open router firmware .gbl file. And there is no target device for EFR32MG21.

What firmware has a gbl extension? gbls are gerber CAD files.

You need to be using CC2652p as the target device. You should probably re-read the flashing guide.

I follow this official guide.

It suggests download this and flash.Sonoff_Zigbee_Dongle_Firmware/Dongle-E/Router at master · itead/Sonoff_Zigbee_Dongle_Firmware · GitHub

If anyone knows some guide how to flash router firmware then please suggests.

Sorry my bad (misread the thread title and didn’t realise this is about the dongle-e version)

The guide for this device appears to indicate a baud rate of 115200. The port should be whatever shows up when you go to select it and the rest just leave as default. I assume you’re using the secureCRT software as suggested?

I use secureCrt and tried different setting but it wont flash firmware. Always ending Transferring , errors 1… Press Ctrl+C to cancel.

Are here anyone who flashed new Dongle-E with router firmware?

A couple of points otherwise someone else will need to chime in.

  1. you are using Xmodem(N) protocol?
  2. You need to disassemble the stick in order to access the boot button which is needed to access the bootloader. The button is actually on the circuit board itself

Yes i use Xmodem(N) protocol.
I disassembled stick and then holding boot button, inserting and keep holding 10 seconds and then releasing. I assume entering boatload mode is same like old Dongle-P.

Red light is turning on. How I can be sure that stick is in bootloader mode?

If you’ve done it properly you should get the bootloader message in the serial terminal in secureCRT (see point 2 of the instructions)

then select option 1 to upload the gbl file and then 2

Yes, but i follow step 1 then It start immediately uploading and then i got error for transfering.

Sorry can’t help further. You might want to contact Sonoff to see if they can help.

Also the first post has links to other flashing methods you can try, eg using

Yeah i saw that. But i dont know where to start, I don’t understand python at all.

I tried this method too but without success… Like you

I got mine working. I follow this ](

Initially I didn’t notice that I was missing command window, where you need press keys. And then i got similar Gecko Bootloader v1.12.00 like tutorial was showing.

ITead’s naming schema is a bit confusing but please understand that you can not flash a Silicon Labs based adapter like the “ZBDongle-E” (“Sonoff Zigbee 3.0 USB Dongle Plus V2”) with flashing software made for Texas Instruments based adpters like the “ZBDongle-P” (“Sonoff Zigbee 3.0 USB Dongle Plus” that is not the “V2” varient).

Note that you either need to stop Home Assistant to flash it or better yet unplug the USB dongle and plug it into another computer instead where you install the drivers and the flashing tool to flash it from there. You will of course also need to install WCH CH9102 device drivers to access the USB adapter.

If you have the “ZBDongle-E” (“Sonoff Zigbee 3.0 USB Dongle Plus V2”) then highly recommend that you use the Elelabs Firmware Update Utility → (or walthowd’s updater image which uses it → ).

Yes those are Python-based tools but you do not need to know how to read/script Python code to use them as all you need to do is install Python for Windows or Python for Mac/MacOS and copy the commands from their documentation into the command prompt / command line tool.

1 Like

FYI, pull request has now been merged into the Home Assistant core dev branch (and matching ZHA docs PR has also been merged into the next branch), so the ZHA integration in the upcoming Home Assistant 2022.9 release should hopefully be able to automatically detect this new “ZBDongle-E” USB adapter.

By the way, the ZHA integration in the upcoming Home Assistant 2022.9 release should also have new features for Zigbee network backup and restore function that will enable cross-migration between different Silicon Labs (ezsp), Texas Instruments (znp), and ConBee/RaspBee (deconz) based Zigbee Coordinator adapters.

Check out this related cummunity forum discussion regarding backups, restoring, and migrating Zigbee network from a to the same or different Zigbee Coordinator adapters:


Can you please explain to me how you got it to work ? I still get transferring error, I would highly appreciate details steps as I am really noob on the subject.


I am planning on migrating from a ConBee II / Deconz setup over to Sonoff Zigbee 3 / Z2M. I have network of various Aqara, IKEA, Philips and Sunricher devices. Since the ZBDongle-E Z2M is not yet fully supported should I buy the “-P” version or wait a bit? I guess the support on “-E” might be some time off?

They are so inexpensive so a tip is to buy one of each (or better yet a few of each) because it is recommended to use ZBDongle-E and ZBDongle-P adapters as very good Zigbee Router devices by flashing these adapters with Zigbee router firmware to join in order to act as dedicated signal repeaters in your make your Zigbee network mesh to achieve best possible range and coverage. That way you will also have spares adapters at home and in use without being wasted, so you can always take on and repurposed by flashing back to Zigbee Coordinator firmware and then restore Zigbee network from backup in case your Zigbee Coordinator becomes corrupt or faulty.

Anyway, see Zigbee2MQTT discussion →


The is nothing wrong with the ZBDongle-E hardware as this and other Silicon Labs based EZSP (EmberZNet Serial Protocol) adapters are very stable in Home Assistant’s ZHA integration as well as in other open-source applications such as OpenHAB and Domoticz, but Zigbee2MQTT’s “ezsp” adapter software code is not quite mature enough yet to be recommended to everyone, so it depends if you have an “early adopter personality” and are willing to help the community by acting as a tester who not only report all bugs/issues you find in a constructive manner to the Zigbee2MQTT project but also try to work with your fellow community members with narrow down those bugs in order to help the developers.

The lack of maturity of Zigbee2MQTT “ezsp” adapter is really a catch-22 problem because the “ezsp” adapter support has already been available in Zigbee2MQTT (zigbee-herdsman) for a long time however it still does not have many users who are active in the community, which is probably because it is not listed as “recommended”, so that it holding back the developnment of the “ezsp” adapter for Zigbee2MQTT (zigbee-herdsman) since not enough users in the community is actively helping the developers finding the remaining issues by working with them by reporting bugs and assisting in troubleshooting. This has meant that the “ezsp” adapter has remained experimental and kept alpha-stage maturity since the implementation was merged:

Much more deeper troubleshooting here →

Regardless, remember that Zigbee2MQTT (and zigbee-herdsman) is a free and open source project with only a few volunteering developers who work on that code as a hobby for fun in their spare time without getting paid for working on Zigbee2MQTT (and zigbee-herdsman). As such there is no deadlines or prioritization other than those that the developers put on themselves, which in FOSS/FLOSS project is usually only what falls under their own personal interests, so will be very individual.