Elelabs / elelabs-zigbee-ezsp-utility

Elelabs Zigbee EZSP Utility to perform firmware update on a range of Elelabs EZSP products as well as other generic EZSP adapters.
Apache License 2.0
127 stars 26 forks source link

Error after tryind to flash ELR023 from Zigbee to Thread #41

Open r0bb10 opened 1 year ago

r0bb10 commented 1 year ago

Hi, i tried yesteday to switch my ELR023 from the current Zigbee firmware to the OTBR Thread firmware, the procedure seems to have worked but after the initial first reboot the shield is no longer detected in any way, i also tried to probe or reboot but it's simply undetected.

I used latest python 64 on windows 10 to do it but i also tested the shield on linux, using a common CP210x usb serial, nothing.. is there a special procedure to recover it?

C:\Users\rob\Desktop\elelabs-zigbee-ezsp-utility-master>python Elelabs_EzspFwUtility.py ele_update -p COM3 -v thread
2023/06/09 22:21:25 Elelabs_EzspFwUtility:   Elelabs Zigbee adapter detected:
2023/06/09 22:21:25 Elelabs_EzspFwUtility:   Adapter: ELR023
2023/06/09 22:21:25 Elelabs_EzspFwUtility:   Firmware: 6.10.3-41
2023/06/09 22:21:25 Elelabs_EzspFwUtility:   EZSP v8
2023/06/09 22:21:26 Elelabs_EzspFwUtility:   Elelabs Zigbee adapter detected:
2023/06/09 22:21:26 Elelabs_EzspFwUtility:   Adapter: ELR023
2023/06/09 22:21:26 Elelabs_EzspFwUtility:   Firmware: 6.10.3-41
2023/06/09 22:21:26 Elelabs_EzspFwUtility:   EZSP v8
2023/06/09 22:21:26 Elelabs_EzspFwUtility:   Launch in bootloader mode
2023/06/09 22:21:35 Elelabs_EzspFwUtility:   EZSP adapter in bootloader mode detected:
2023/06/09 22:21:35 Elelabs_EzspFwUtility:   Gecko Bootloader v1.A.0
2023/06/09 22:21:36 Elelabs_EzspFwUtility:   Successfully restarted into X-MODEM mode! Starting upload of the new firmware... DO NOT INTERRUPT(!)
.....
.....
.....
.....
.....
.....
.....
.
2023/06/09 22:21:56 Elelabs_EzspFwUtility:   Firmware upload complete
2023/06/09 22:21:56 Elelabs_EzspFwUtility:   Rebooting NCP...
2023/06/09 22:22:11 Elelabs_EzspFwUtility:   Couldn't communicate with the adapter in Zigbee (EZSP) mode, Thread (Spinel) mode or bootloader mode

C:\Users\rob\Desktop\elelabs-zigbee-ezsp-utility-master>python Elelabs_EzspFwUtility.py probe -p COM3
2023/06/09 22:22:54 Elelabs_EzspFwUtility:   Couldn't communicate with the adapter in Zigbee (EZSP) mode, Thread (Spinel) mode or bootloader mode
RogerSero commented 8 months ago

Hello, did you solve the problem? I tried changing from zigbee to thread, and the same problem also occurred.

r0bb10 commented 8 months ago

No, i tried a lot and at the end i gave up, no help here on via support, trashed the adapter and moved on with a different product. Sorry happened to you too.

RogerSero commented 8 months ago

Yeah. I want to set up an openthread border router with a raspberry and the elelabs adapter, but the adapter has been blocked and I can't do anything else.

Hedda commented 8 months ago

If feeling brave then you guys can try unofficial firmware builds from darkxst:

https://dialedin.com.au/blog/sonoff-zbdongle-e-rcp-firmware

https://smarthomescene.com/guides/how-to-enable-thread-and-matter-support-on-sonoff-zbdongle-e/

darkxst has firmware builds in the "manifestjs-SL" branch in his "silabs-firmware-builder" repo that should be compatible:

https://github.com/darkxst/silabs-firmware-builder/tree/manifestjs-SL

https://github.com/darkxst/silabs-firmware-builder/tree/manifestjs-SL/firmware_builds

https://github.com/darkxst/silabs-firmware-builder/tree/manifestjs-SL/firmware_builds/elelabs-elx0x3

More information in the readme in the main branch:

https://github.com/darkxst/silabs-firmware-builder/blob/main/README.md

https://darkxst.github.io/silabs-firmware-builder/

(and more discussions about Elelabs firmware in https://github.com/darkxst/silabs-firmware-builder/issues/8 and https://github.com/ksjh/silabs-firmware-builder/issues/17 )

Note! Disclaimer is of course to use at your own risk but these have at least so far been released by trusted sources within the community, however, they might still not be tested as those developers do not always have access to the same hardware.

Hedda commented 8 months ago

Oh, and to reset NVM on a bricked adapter you could (again at your own risk) test to flash an nvm3_initfile.gbl firmware:

https://github.com/xsp1989/zigbeeFirmware/tree/master/firmware/Zigbee3.0_Dongle-NoSigned/EZSP

Basically, you need to flash the nvm3_initfile.gbl 33 file after flashing the 6.10.3 NCP firmware and it should come back to life.

Another tip is to use ExtraPuTTY for flashing and follow the instructions from ITead for their ZBDongle-E (Dongle-E) adapter:

https://sonoff.tech/wp-content/uploads/2022/07/SONOFF-Zigbee-3.0-USB-dongle-plus-firmware-flashing-.pdf

PS: Someone has a YouTube video here with that procedure:

https://www.youtube.com/watch?v=CympfXuwtyQ

RogerSero commented 8 months ago

Thanks for the contribution. In my case, the adapter is an elelabs elr023 raspberry pi shield. I'm trying to load some of the firmware, but it's impossible. I think the adapter is blocked, or I can't put it in boot mode, I don't know. 1700991958583

r0bb10 commented 8 months ago

@Hedda the problem is not what firmware you decide to flash but rather that the device after the conversion procedure is blocked and cannot be recognized anymore.. the conversion puts the shield in bootloader mode and uploads the firmware but then as you can see from the log is dead probably because the flash burned/cleared something that should have not and it does not start anymore.. you cannot flash any other firmware, official or not.

only the factory could spi flash it but those pins are not exposed so it's useless to waste time.. i trashed the shield months ago and went to a different brand that actually offers support for their mistake (the flashing procedure is clearly at fault here, or the firmware file itself).

i wonder how many tried the conversion and how many succeded but well, i dont even care anymore.