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

Programming: Unable to flash chip after flashing a bad hex #8

Open
meehien opened this issue Mar 9, 2024 · 2 comments
Open

Programming: Unable to flash chip after flashing a bad hex #8

meehien opened this issue Mar 9, 2024 · 2 comments

Comments

@meehien
Copy link

meehien commented Mar 9, 2024

I was trying to test the ZBOSS NCP Host and flashed the image ncp.nrf52840dk_nrf52840.hex from the package provided.

Now my device stopped working an I am unable to interact with it via pyocd. There seems to be a timeout issue of some kind:

% pyocd list
#   Probe/Board             Unique ID                                          Target  
-----------------------------------------------------------------------------------------
  0   ARM DAPLink CMSIS-DAP   10283602005f75a200000000000000000000000097969902   n/a    

% pyocd erase -t nrf52840 --chip
0000443 W Board ID 1028 is not recognized [mbed_board]
0005557 C Error: 1 [__main__]

% pyocd flash -t nrf52840 nrf52840_m2_devkit_circuitpython_5.3.0.hex
0000449 W Board ID 1028 is not recognized [mbed_board]
0005565 C Error: 1 [__main__]

Do you have any recovery procedure that I can follow to restore my device?

@caizelin
Copy link
Member

@meehien Does this bad hex set P0.17 low when it boots?
According to the nRF52840 M.2 Module Schematic, the P0.17 is connected to the RESET pin for self-reset functionality. This pin can not be set to LOW without any additional action, or the device will run into a self-reset loop.

@meehien
Copy link
Author

meehien commented Mar 14, 2024

I had a quick look at the schematic you provided and that of the nRF52840 M.2 Developer Kit. Is it P0.17 you are refering to or P0.18? In your link, I belive P0.18 is the reset. I was not able to find where P0.17 is on the DevKi8t board, but I can confirm that the P0.18 Reset is pulled LOW on boot. Any suggestions on how to approach this?

EDIT: I was able to manually pull the P0.18 pin HIGH and erase the device. Now it seems to be working. Thanks for pointing me in the right direction.

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

No branches or pull requests

2 participants