0

ItsyBitsy nRF52840 Express Endless bootloop
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

ItsyBitsy nRF52840 Express Endless bootloop

by The_Knowless on Sun May 02, 2021 6:09 am

Hi everyone,

Short description of problem:
After running my programm over a week I recognized that my ItsyBitsy nRF52840 Express didn't react anymore and I disconnected the Lipo (1S=4.2V highest peak) from the board.
Later I connected to the PC and could flash the code into the board, but now I am not possible to go out of bootmode if PC is connected via the USB connector (pulsing/fading blue LED). If I drive the board external I see the blue LED fast blinking but my code is not executed. I tried double clicking the reset button and again, but never comes to the point that my code is running.

On PC I recognized that the data "CURRENT.UF2" isn't 299kB big. It is just 1kB and if I open it with Notepad++ I see that only one unreadable line is in the data(expected from an other board is something with more lines).
I tried to copy the the data from the working Itsybitsy to the other, but if I try to copy it looks like that a new reset is started and I can not replace the data.
At least I tried to burn the bootloader via Arduino DFU settings, which gave no visible error, but changed nothing. could it be possible that I need a Jlink or should it working at all?

Possible reason:
I find a variable which was always incremented but never set to 0 and maybe there was a overflow of an integer. But I could find some other reason from SW or HW side. Last time I put some more images into his memory (display connected and BLE for short bleuart message used), but this was never selected in my code and runs for a week like I said.

My enviroment:
Arduino 1.8.13
ItsyBitsy nRF52840 Express (revision not found on board)
Board Manager with: Adafruit nRF52 Version 0.21.0
Bootloader 0.2.11 Softdevice 140 6.1.1
The RGB LED couldn't be used because I soldered it out.

The mainquestion:
What can I do to get it alive again? Do I need a Jlink to burn the bootloader again? Or is the board bricked?

Thank you for your help or your experience with some kind of this behavior.

Best regards,
The_Knowless

The_Knowless
 
Posts: 3
Joined: Sun May 02, 2021 5:21 am

Re: ItsyBitsy nRF52840 Express Endless bootloop

by mikeysklar on Mon May 03, 2021 4:24 pm

The_Knowless,

It looks like you might be on an older bootloader and the colors you are describing sure sound as though you are getting into bootloader mode.

Can you try following the instructions here for updating the bootloader on your ItsyBitsy nRF52840 Express. Do not use the Arduino IDE.

https://learn.adafruit.com/introducing- ... bootloader
https://github.com/adafruit/Adafruit_nR ... /tag/0.5.0

We are currently on 0.5.0 as the latest. You will need to double-tap the reset button to access the current bootlodaer and upload using the drag and drop UF2 file or if necessary the command line adafruit-nrfutil as described above. Let me know if you encounter any difficulties.

mikeysklar
 
Posts: 4508
Joined: Mon Aug 01, 2016 8:10 pm

Re: ItsyBitsy nRF52840 Express Endless bootloop

by The_Knowless on Tue May 04, 2021 4:26 pm

Hi mikeysklar,

After some fight with python, which I never used before I got the tool adafruit-nrfutil installed and could succesful flash some bootloader.

Maybe it helped some people to see this not so good video about using this python tool:
https://www.youtube.com/watch?v=2VgcTDLPr38
It gave me some hints...

Back to the test-setup:
But only with the 0.5.0 it looked like that I could come out the boot-loop but my program didn't started. Later I tried other and old versions... but always with the same result, that I will not come out of bootloop.

The interesting part was, that the ufl data was always 1kB big, while the 0.5.0 version had 1.376kB. I could check that the other info data was always written succesful.

Drag and Drop wasn't possible with this board, but I could make some test with an other board and it was possible there.
I'm not sure what could help now.
Would it change something, if I get a Jlink or would it have the same function, because the bootmode is a "Support-Step" which will do the same process?

For me it looks like, that there are some parts not writeable anymore, because of the missing function of Drag and Drop.
And I didn't understand the reason...
Was it the overflow of a parameter?
Was it the bigger datasize, because of some images?

Could it be the same problem like written in "SAMD51 (M4) board users: update your bootloaders to >=v3.9.0" from danhalbert?

Best regards,
Knowless

The_Knowless
 
Posts: 3
Joined: Sun May 02, 2021 5:21 am

Re: ItsyBitsy nRF52840 Express Endless bootloop

by mikeysklar on Tue May 04, 2021 8:41 pm

Using a jlink setup can help if a board is looking really bricked. Definitely a good tool to keep in your toolbox if you do not have one already.

It sounds as though you have successfully flashed CircuitPython and were able to flash a new bootloader 0.5.0 that stops the boot loop.

What part do you need assistance with now if any?

mikeysklar
 
Posts: 4508
Joined: Mon Aug 01, 2016 8:10 pm

Re: ItsyBitsy nRF52840 Express Endless bootloop

by The_Knowless on Sat May 08, 2021 5:57 am

Hi mikeysklar,

It looks like that I will buy one Jlink in the end. But for the first time I tried everything else.
It looks like that I was successful in flashing the bootloader. I could see the it in the Info text.
But the nrf52840 didn't run anymore, but I could set it into bootloader again. I tried every version of bootloader and I saw, that nothing happen anymore or I was in the bootloopmode again.
So my solution for the first time was to replace the board with a new one and removing of all additional memory and overcheck my code of potential overflow.
But if it happen again, I will definitve need a Jlink... I have no experience with it. Do you (or other) could say, what the difference of the different versions exatcly is?
To flash a board with the bootloader from zero (new nrf52 with a custom board) is it possible to use only a SEGGER J-Link EDU Mini - JTAG/SWD Debugger?
I am far away from this step(of custom board), but sometimes there is a dream... ( ;-) )

I understand if I don't get an answer to this question, because it is not the question of this topic, but I would like to thank you mikeysklar for your help.
I think there is no assistance needed in the bricked board. Only if possible to the J-Link question...

Best regards,
The_Knowless

The_Knowless
 
Posts: 3
Joined: Sun May 02, 2021 5:21 am

Re: ItsyBitsy nRF52840 Express Endless bootloop

by mikeysklar on Sat May 08, 2021 7:36 pm

The $20 j-link mini EDU we sell will do just as much as the others units. At least we have not documented any significant difference other than the non-profit / educational agreement below. Yes, this would be great for bare metal chip programming.

You may use the J-Link EDU for non profit educational purposes only! Non-profit educational purposes means that you may not use the J-Link EDU and its J-Link software.

direct or indirect in or for a profit organization or business purposes or other undertaking intended for profit
direct or indirect in any other commercial environment (e.g. office)
to develop, debug, program or manufacturer a commercial product (or parts thereof)
to use it to either earn money or reasonably anticipate the receipt of monetary gain from it.

mikeysklar
 
Posts: 4508
Joined: Mon Aug 01, 2016 8:10 pm

Please be positive and constructive with your questions and comments.