Module with nRF54L05 + nPM2100 has 87uA idle current

I just developed a BLE peripheral using an nRF54L05 MCU powered by an nPM2100 PMIC.
When I flashed it with a simple blink LED firmware using a JLink via SWD, everything worked OK.
Even a more complex firmware that implemented a BLE peripheral worked as expected.

The problem occurs when I measure the idle current with a PPK2 between the MCU and the PMIC.
I got 238uA on my board, while on an nRF54L15 DK board, that value is just 4uA.
In reality, if I disconnect the SWD cable, that value drops to 87uA, but it's still much higher than 4uA.
Those values remain even if I power the MCU directly at 3V from the PPK2, rather than using the PMIC.
Note that even with the following minimal build, the idle current values remain the same.

main.c:

#include <zephyr/kernel.h>
int main(void)
{
    while (1) {
        k_sleep(K_FOREVER);
    }
    return 0;
}


prj.conf:

CONFIG_SERIAL=n
CONFIG_GPIO=y
CONFIG_PM=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y


I suspect that the culprit is my custom board definition, which does not allow the expected low power.
If needed, I can share the custom board files (.dts, .defconfig, etc.) and the schematics of my board.

Do you have any suggestions on how I can resolve this issue and reduce the idle current on my board to the same level I measure on the DK board?

Because, despite the firmware doing what I want, at these idle current values, my product will be useless, since the expected autonomy with an AA battery will drop from years to months!

Many thanks for your help.

Parents Reply Children
Related