nRF54 with nPM2100 and nPM1300 Power Consumption Issues

HI,

Test Setup

  • MCU: nRF54L15  PDK

  • SDK: nCS 3.0.0

  • Example: Blinky (modified)

Modified Code

main.c:

#include <stdio.h>
#include <zephyr/kernel.h>
#include <zephyr/drivers/gpio.h>

/* 1000 msec = 1 sec */
#define SLEEP_TIME_MS   10000

/* The devicetree node identifier for the "led0" alias. */
// #define LED0_NODE DT_ALIAS(led0)

/*
 * A build error on this line means your board is unsupported.
 * See the sample documentation for information on how to fix this.
 */
// static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(LED0_NODE, gpios);

int main(void)
{
	// int ret;
	// bool led_state = true;

	// if (!gpio_is_ready_dt(&led)) {
	// 	return 0;
	// }

	// ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE);
	// if (ret < 0) {
	// 	return 0;
	// }

	while (1) {
		// ret = gpio_pin_toggle_dt(&led);
		// if (ret < 0) {
		// 	return 0;
		// }

		// led_state = !led_state;
		// printf("LED state: %s\n", led_state ? "ON" : "OFF");
		k_msleep(SLEEP_TIME_MS);
	}
	return 0;
}

prj.conf:

CONFIG_GPIO=y

CONFIG_CONSOLE=n
CONFIG_UART_CONSOLE=n

CONFIG_SERIAL=n

CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y

overlay: Empty

Test Configuration

The firmware is flashed to nRF54L15 PDK. The outputs of the nPM1300 in the PDK and the nPM2100EK are respectively connected to a power analyzer for testing. For the nPM2100EK, the I2C is not connected to the nRF54 PDK, and the output is directly connected. 

Both,  then the power analyzer  supplies power to the PDK's P6 interface for nRF54.

Observed Behavior

With nPM1300 Power Supply:

  • Only current peaks at each SLEEP_TIME_MS interval

  • System remains in sleep mode the rest of the time

With nPM2100 Power Supply:

  • Current peaks at each SLEEP_TIME_MS interval (same as nPM1300)

  • Additional small current spikes every 500ms

Common Observation (Both Power Supplies):

  • Very small current spikes approximately every 8ms

Questions

  1. Why is there this difference between nPM1300 and nPM2100?

    • What causes the additional 500ms current spikes only with nPM2100?

  2. What could be generating the 500ms current spikes observed with nPM2100?

    • What internal mechanism or task might be running at this interval?

  3. What causes the approximately 8ms small current spikes observed with both power supplies?

    • Is this related to nRF54 internal charging or some periodic operation?

Thanks!

Parents Reply Children
  • I don't think you need more than that. have you tried to have some nF caps as well in addition to the bulk ones? this is my own idea that due to lower internal resistance for lower caps those might help better with small spikes.
    Also according to the last answer from other ticket you have created, it seems there will be spikes anyway and those will not be fully suppressed. But rather managing them to not impact hugely the whole system is the way to go. 

  • Although I understand it cannot be completely eliminated, I want to minimize this current value as much as possible. I have tried increasing the capacitance, including adding capacitors in the nF range, but it seems to have no effect.

  • Hi,
    I understand your intention, but if the previously shared graph regarding the relation of caps and peak currents didn't help much, I suppose that is how it behaves in boost mode. Also as PMIC team mentioned in the other ticket, these spikes can happen even if there is no load. I would suggest to investigate how much your application can tolerate the spikes both in terms of average current and also possible RF systems that might be affected. If the requirement are met with these spikes then you can move on.

Related