Cannot clone to reproduce low deep sleep current

Hi All,

You’ve all been phenomenally helpful in the past, so I was wondering if you had any advice on this particular issue.

I’m technically using the RAK4631 board definition file and libraries on an nRF52840, but I’m not actually using a RAK4631, instead I’m using an MBDT50Q by Raytac. I am using your libraries because it offers superior deep sleep current compared to others out there (BLE 33, for instance).

I’ve been able to get as low as 30uA on some custom boards I’ve developed, and lately have been able to get ~130uA which is still acceptable.

However the issue came when I went to clone that device using nRF Connect Programmer, by imaging my 130uA and then erasing all, and trying to re-image from the imaged file, I get MASSIVE power consumption all the time (~20mA) even though my script actually works properly besides.

Clearly, there is something not being transferred over. I’ve tried this on other boards as well that I know should be able to get down to 130uA, without result. I’m very certain it isn’t a hardware issue at this point, but something spooky going on with the firmware / softdevice / bootloader. I’ve also posed a question here: arduino - Cannot clone nRF52840 to reproduce low deep sleep current - Stack Overflow

I understand if this is outside of the usual scope, however any and all help would be appreciated.

I figured it out! For posterity, the command to COMPLETELY image a chip is:

nrfjprog.exe --readcode --readuicr --readram [filename.hex]

It seems I had some settings in RAM that were the deciding factor in the energy consumption of my sketch for some reason, that wasn’t getting captured with a typical “image” command.

Going this way allows me to keep the low power consumption on my good board, and clone it to the rest.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.