Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Sonoff ZBDongle-E stick #45

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

darkxst
Copy link

@darkxst darkxst commented Aug 29, 2022

The Sonoff ZBDongle-E uses a CH9102F UART chip which has a new pid 55D4, but otherwise is very similar to the original Sonoff EFR32 stick. See Issue: #44

This patch adds support for the new pid.

I have tested using the Itead provided firmware

@somq
Copy link

somq commented Dec 5, 2022

+1

@daskruegge
Copy link

@darkxst Even with these changes I can't flash the Dongle-E. It hangs at line 330. The scan works and the stick is recognized. Do you have an idea?

@darkxst
Copy link
Author

darkxst commented Dec 19, 2022

@daskruegge Can you paste logs from this failure?

@daskruegge
Copy link

@daskruegge Can you paste logs from this failure?

@darkxst I don't have logs, cause there is no error. The script is waiting on the readline at line 330. I validated with print where it is waiting.

@darkxst
Copy link
Author

darkxst commented Jan 2, 2023

I don't have logs, cause there is no error. The script is waiting on the readline at line 330. I validated with print where it is waiting.

If its hanging there, then the dongle probably hasnt entered bootloader mode successfully. Try connecting with a serial terminal such as minicom or putty and see if you get the "Gecko Bootloader" menu prompt.

You can also manually force bootloader mode by using the boot button (requires disassembly).

Edit: Also once a dongle has been flashed with the Router firmware as available on iTead repo, then it refuses to automatically enter bootloader and you would need to use the boot button also.

@daskruegge
Copy link

Thanks, but it still doesn't work. This is what I tried so far:

Connecting to USB without holding boot button

  • Doing a scan (green LED)

$ ./ncp.py scan
Connecting to.. /dev/ttyACM0 115200 True False
Exception: <class 'IndexError'> /dev/ttyAMA0
{"ports": [{"port": "/dev/ttyACM0", "vid": "1A86", "pid": "55D4", "deviceType": "zigbee", "stackVersion": "6.10.3-297"}, {"port": "/dev/ttyAMA0", "deviceType": "unknown"}]}

  • Trying to flash:

$ ./ncp.py flash -p /dev/ttyACM0 -f ./Z3RouterUSBDonlge_EZNet6.10.3_V1.0.0.gbl
Restarting NCP into Bootloader mode...
SONOFF stick

Connecting to USB with holding boot button -> red LED

  • Doing a scan:

$ ./ncp.py scan
Connecting to.. /dev/ttyACM0 115200 True False
No ZigBee Ack. /dev/ttyACM0
Exception: <class 'IndexError'> /dev/ttyAMA0
{"ports": [{"port": "/dev/ttyACM0", "vid": "1A86", "pid": "55D4", "deviceType": "unknown"}, {"port": "/dev/ttyAMA0", "deviceType": "unknown"}]}

  • Trying to flash:

$ ./ncp.py flash -p /dev/ttyACM0 -f ./Z3RouterUSBDonlge_EZNet6.10.3_V1.0.0.gbl
Restarting NCP into Bootloader mode...
SONOFF stick
NCP no ZigBee Ack. Please try again.

@daskruegge
Copy link

@darkxst Ok, nevermind. It seems like the only problem was that I was trying to do that in a VM 🙈 Trying with the host machine worked. Thanks for your help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants