ZBDongle-E - updating firmware doesn't work anymore

I’m completely new to Home Assistant, and I started to set up a mini PC as HA host and also want to use the ZBDongle-E updated to use Zigbee2MQTT as coordinator. I followed the instructions on the official SONOFF website, and it worked for that flash.

However, obviously I tried to flash the wrong firmware and wanted to update again with the Ember firmware. Now I face the following issue:

The dongle doesn’t switch to bootloader mode anymore when I use the buttons on the dongle. I remember from the first time that the red LED switched to the green LED and back after flashing.
I use CoolTerm, it seems that it can connect to the dongle, but when I try to upload the gbl file, it runs into an error NUL.

When I use the web flash tool from elelabs (I don’t recall the link), the dongle is shown as selectable, but clicking Connect will hold for a while, and then an error message comes up that the connect failed.

So it seems that the dongle is completely messed up - is there any way (without additional hardware) to reflash the dongle? Or is it dead, and I need a new dongle?

I tried to find a solution online, but the more I browse, the more it confuses me.

Many thanks for any help, and please excuse my ignorance…

a possibility

Thanks a lot for the fast response - this is the guide I used in the first place when I updated to the wrong firmware, and that worked well.

It looks like that the dongle is now in a state which prevents the subsequent update.

Not sure if someone else faced this problem and may have a solution - honestly I’m clueless.

Thank you!

I have a SONOFF ZBDongle-E, but converted it to a router with custom firmware some time ago. I’ll have to dig a bit to remember/understand repairing a bad flash.

I feel for ya, it can be frustrating :anguished:

1 Like

Did you try the Sonoff web flasher ?

else:

Sonoff’s example uses SecureCRT. This is not free software. All you need is a serial terminal emulator that supports Xmodem file transfer protocol. I downloaded ExtraPuTTY 209 from SourceForge for free. I used Windows but there are builds for most common operating systems.

With the dongle popped out of the case and plugged into your USB extension cable start ExtraPuTTY and make these changes to the default settings:

1 - On the first screen (Session) click Serial first to set up for serial communications.


2 - Under Connection click Serial. “Serial line to connect to” shows available COM ports. You may have to test a few to find which one you’re plugged into. Pro tip - Start with the higher numbers and work down. Be sure to set the speed and flow control.

Click Open and follow the factory instructions. You’ll find Xmodem under Files Transfer at the top of the terminal screen.

Pro tip – Instead of trying to press the tiny buttons with two fingers, just roll your thumbnail across the two buttons, outside in. All-in-one-motion you’ll press and hold Reset, press and hold Boot, release Reset, and release Boot. You should get the menu shown in the factory instructions in the terminal window. If not, change to another COM port and do the button trick again.

When the upload is complete you enter 2 to boot the dongle. You’re in pairing mode now with a green flashing LED. At this point you can unplug the dongle and put it back in the case. When you plug it into a power supply it will go into pairing mode.

Yes, I tried the web flasher - I can select the dongle, but after clicking Connect a long time nothing happens, and then an error occurred that the connection failed.

However, I didn’t use ExtraPuTTY yet, let me try it this afternoon, maybe it works. CoolTerm failed too, but this is definitely worth a try - will do this later today. Thank you so much!

Unfortunately the procedure also didn’t work under ExtraPuTTY :frowning: when hitting the reset and boot buttons in the needed order, I get the menu in the console, but when I try to upload the file via xmodem, the program tries to connect forever, nothing happens, and after a long time the transfer file dialog disappears.

Looks like a new dongle is needed, unless there’s another option to write the firmware onto it…

Using a JTag, but a JTag is more expensive then a new dongle.

Maybe a weird question, but have you tried doing so without pushing any buttons? I have both a ZBDongle-E coordinator and two routers. The first time I flashed them I remember I had to open them up to press buttons. I updated them recently using the web flasher and I did not have to open them up or press anything. They just updated.

yes, I tried this option too, but the web flasher as well as CoolTerm work. Both recognize the dongle in common on the appropriate COM port (I use a Windows computer), but when I try to upload the firmware, nothing happens further except a timeout/log entry after a while.
Because of this I’m looking for a solution more bit-by-bit so to say, but I have no clue how and if this is possible at all.

Thank you so much for your reply, I appreciate it.

Ups, these pieces can become pretty expensive, so they are more applicable when this kind of flashing happens more on a regular base, or am I wrong? And honestly I’m a rookie when it comes to that :slight_smile:

Assuming that this issue doesn’t happen too often, buying a new dongle is probably the better (cheaper) way.

Thank you very much for the detailed step-by-step help you posted earlier, since I stepped through it again, it made it more clear to me how this should work.

Better to buy a new dongle. JTag are to expensive for one time use. Even clones on Ali.

2 Likes

You have tried SONOFF Dongle Flasher and an error occurred? The Dongle Flasher should work no matter what custom firmware you flashed before.

Which Operating System you were using? And SONOFF has a reddit channel to support all Dongler Flasher users.

By the way, the iHost Open Source Project has released SONOFF Dongle Flasher add-on v1.1.0 which is basically an HA add-on version of the Web tool SONOFF Dongle Flasher, but it allows you to manage ZBDongle’s firmware without unplug the ZBDongle. Maybe you can try out the Dongle Flasher add-on first.

Do you remember which wrong firmware you flashed? I’d like to see if I can reproduce the issue.