RAK4631 not running the firmware

Hello,

Somehow some of our RAK4631 USB is no longer detectable from any host computer (I assume the USB is damaged) but we managed to program new firmware using JLink directly to the SWD pins.
Sometime later, the RAK4631 can no longer boot the firmware that I flashed. The JFlash app shows no signs of error, so I assume the flash is OK.

Currently, the board is constantly doing some kind of breathing animation on the green LED even after I flashed a firmware that will turn on the blue LED (it stays off the entire time).

I’m wondering if anyone has experienced a similar thing at some point and if you have, what did you do to make it work again?

Thanks.

Hello @alwin, welcome to the forum.

A breathing green LED shows that the device is in bootloader mode. In this mode it should be detected as a USB serial device and be ready to be flashed with a firmware over USB.

The USB interface is inside the nRF52 chip, not an external chip, so it sounds strange to me that it could be damaged and the rest of the nRF52 still works.

Do you have any other modules connected on the Base Board together with the RAK4631?
If yes, did you try to unplug them and see if it changes anything?

Is this happening with one RAK4631 only?
Do you have other Base Boards that you could use to check the RAK4631?

Hi @beegee, thanks for the reply.

It looks like I have an accelerometer on slot C, a GPS, and a custom-made PCB board attached to another slot, I don’t exactly remember which slot.

I have tried removing all the modules, leaving only the RAK4631 attached to the base board on another board that I have, but nothing changed.

So far we have around three or four RAK4631 with damaged USB due to human error, but we have only two that are always in bootloader mode.

Not pointing fingers :wink:, but what is your custom-made PCB board doing? What IO’s is it using? How much current does it use and from where is it powered?

Hi Bernd,

The custom-made PCB only adds sensors that are not available in WisBlock line products. I don’t remember exactly which IOs are used, but I2C and GPIOs are definitely used. This board is powered by a LiPo battery.

Anyway, the problem is caused by the damaged nRF52840. We have more than 10 devices and all seems working well.

Hi Alwin,

Thanks for the feedback. Glad it works now (mostly). How did the nRF52 get damaged?

We exposed POGO pins that connect D+ D- GND and VCC of USB to the RAK4631 since we were unable to expose a MicroUSB port directly on our device’s enclosure and somehow I managed to short the GND and VCC for a very short time.

The rest of the electronic parts were unaffected. We replaced the RAK4631 and everything worked as expected.