zha-ng / EZSP-Firmware

EZSP Firmware
GNU General Public License v3.0
25 stars 19 forks source link

Problem on flash ELR023 firmware #10

Open Gigatrappeur opened 3 years ago

Gigatrappeur commented 3 years ago

Hello,

I try to update firmware of my Elelabs adapter. I get this stack :

root@jeedup:/opt/elelabs/elelabs-zigbee-ezsp-utility# python3 Elelabs_EzspFwUtility.py flash -f firmware/efr32mg13p-v8-6910-57600.gbl -p /dev/ttyUSB0
2021/07/14 15:32:27 Elelabs_EzspFwUtility:   Elelabs adapter detected:
2021/07/14 15:32:27 Elelabs_EzspFwUtility:   Adapter: ELR023
2021/07/14 15:32:27 Elelabs_EzspFwUtility:   Firmware: 6.7.0-149
2021/07/14 15:32:27 Elelabs_EzspFwUtility:   EZSP v8
2021/07/14 15:32:27 Elelabs_EzspFwUtility:   Launch in bootloader mode
2021/07/14 15:32:34 Elelabs_EzspFwUtility:   EZSP adapter in bootloader mode detected:
2021/07/14 15:32:34 Elelabs_EzspFwUtility:   Gecko Bootloader v1.A.0
2021/07/14 15:32:35 Elelabs_EzspFwUtility:   Successfully restarted into X-MODEM mode! Starting upload of the new firmware... DO NOT INTERRUPT(!)
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\r' for block 1
send error: expected ACK; got b'\n' for block 1
send error: expected ACK; got b'S' for block 1
send error: expected ACK; got b'e' for block 1
send error: expected ACK; got b'r' for block 1
send error: expected ACK; got b'i' for block 1
send error: expected ACK; got b'a' for block 1
send error: expected ACK; got b'l' for block 1
send error: expected ACK; got b' ' for block 1
send error: expected ACK; got b'u' for block 1
send error: expected ACK; got b'p' for block 1
send error: expected ACK; got b'l' for block 1
send error: expected ACK; got b'o' for block 1
send error: expected ACK; got b'a' for block 1
send error: NAK received 17 times, aborting.

2021/07/14 15:32:42 Elelabs_EzspFwUtility:   Firmware upload failed. Please try a correct firmware image or restart in normal mode.

This is normal ? Or just my adapter don't compatible ?

Regards,

Adminiuga commented 3 years ago

Nope, not normal. Looks like it starts the xmodem transfer, but then drops back to the menu prompt. Check that nothing else is using the port, stop all ha instances, etc

Adminiuga commented 3 years ago

Btw, are you sure you want the 57600 variant and not 115200? You would need to reconfigure zha integration.

Gigatrappeur commented 3 years ago

I admit that I played the sorcerer's apprentice... What's the difference between 57600 variant and 115200 ?

In my case, I use the adapter with jeedom.

Adminiuga commented 3 years ago

I don't know about jeedom. The difference is the serial port baudrate settings. ELR023's default firmware uses 115200 baudrate, HUSBZB-1 uses 57600 by default. Functionally no difference, but the host software must use the same baudrate setting as the stick.

Gigatrappeur commented 3 years ago

Ok, I see. thanks for your time

I will retest

Adminiuga commented 3 years ago

The problem you are seeing is not related to the firmware itself. Try again. If it fails exactly same way, and it stays in bootloader menu, you could try uploading the firmware using a serial terminal with xmodem transfer. (Firmware update utility does that for you) 115200 no hardware flow control.

Gigatrappeur commented 3 years ago

Hello, sorry for the delay...

I reattemp without success. (With efr32mg13p-v8-6910-115200.gbl file)

root@jeedup:/opt/elelabs/elelabs-zigbee-ezsp-utility# python3 Elelabs_EzspFwUtility.py flash -f firmware/efr32mg13p-v8-6910-115200.gbl -p /dev/ttyUSB0
2021/08/25 16:50:19 Elelabs_EzspFwUtility:   EZSP adapter in bootloader mode detected:
2021/08/25 16:50:19 Elelabs_EzspFwUtility:   Gecko Bootloader v1.A.0
2021/08/25 16:50:19 Elelabs_EzspFwUtility:   Allready in bootloader mode. No need to restart
2021/08/25 16:50:20 Elelabs_EzspFwUtility:   Successfully restarted into X-MODEM mode! Starting upload of the new firmware... DO NOT INTERRUPT(!)
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\x18' for block 1
send error: expected ACK; got b'\r' for block 1
send error: expected ACK; got b'\n' for block 1
send error: expected ACK; got b'S' for block 1
send error: expected ACK; got b'e' for block 1
send error: expected ACK; got b'r' for block 1
send error: expected ACK; got b'i' for block 1
send error: expected ACK; got b'a' for block 1
send error: expected ACK; got b'l' for block 1
send error: expected ACK; got b' ' for block 1
send error: expected ACK; got b'u' for block 1
send error: expected ACK; got b'p' for block 1
send error: expected ACK; got b'l' for block 1
send error: expected ACK; got b'o' for block 1
send error: expected ACK; got b'a' for block 1
send error: NAK received 17 times, aborting.

2021/08/25 16:50:27 Elelabs_EzspFwUtility:   Firmware upload failed. Please try a correct firmware image or restart in normal mode.
Adminiuga commented 3 years ago

If you know how, then use a serial terminal and upload it manually while it is still in bootloader mode. Connect on 115200, software flow control and pressing enter you should get the boot menu.

Gigatrappeur commented 3 years ago

Ok, I think that's beyond my expertise.
Thank you for taking the time to answer me

FlorianLudwig commented 2 years ago

FYI:

I got an ELR023 and flashed it successfully. Same bootloader:

python Elelabs_EzspFwUtility.py flash -p /dev/ttyUSB0 -f '/efr32mg13p-v8-6780-sw-115200.gbl' 
2021/12/31 14:58:48 Elelabs_EzspFwUtility:   Elelabs Zigbee adapter detected:
2021/12/31 14:58:48 Elelabs_EzspFwUtility:   Adapter: ELR023
2021/12/31 14:58:48 Elelabs_EzspFwUtility:   Firmware: 6.10.3-41
2021/12/31 14:58:48 Elelabs_EzspFwUtility:   EZSP v8
2021/12/31 14:58:48 Elelabs_EzspFwUtility:   Launch in bootloader mode
2021/12/31 14:58:57 Elelabs_EzspFwUtility:   EZSP adapter in bootloader mode detected:
2021/12/31 14:58:57 Elelabs_EzspFwUtility:   Gecko Bootloader v1.A.0
2021/12/31 14:58:58 Elelabs_EzspFwUtility:   Successfully restarted into X-MODEM mode! Starting upload of the new firmware... DO NOT INTERRUPT(!)
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....

2021/12/31 14:59:36 Elelabs_EzspFwUtility:   Firmware upload complete
2021/12/31 14:59:36 Elelabs_EzspFwUtility:   Rebooting NCP...
2021/12/31 14:59:43 Elelabs_EzspFwUtility:   Elelabs Zigbee adapter detected:
2021/12/31 14:59:43 Elelabs_EzspFwUtility:   Adapter: ELR023
2021/12/31 14:59:43 Elelabs_EzspFwUtility:   Firmware: 6.7.8-117
2021/12/31 14:59:43 Elelabs_EzspFwUtility:   EZSP v8

@Gigatrappeur

python Elelabs_EzspFwUtility.py ele_update -p /dev/ttyUSB0 -v zigbee

Does that also fail? If so, it might be a better place to open a bug report with Elelabs_EzspFwUtility.