Hi,
I am performing some evaluation on the low power capabilities of the nRF5340 using the DK and the PPK v1.
I have written a really basic BLE Peripheral Application based loosely around the peripheral_lbs sample code as I want to test with a button handler eventually.
The problem I have is that after considerable configuration, I can only get the current floor down to ~200uA with an average current of ~215uA with a 1.2 second advertising interval. I've seen a lot of people on here talk about seeing much, much lower currents so wondered is there a configuration that I am missing perhaps?
I have been reading the documents and a few threads on here to understand how to configure the device and I have done the following.
- My main application, running on the NS partition, has been configured as follows:
CONFIG_NCS_SAMPLES_DEFAULTS=y CONFIG_BT=y CONFIG_BT_PERIPHERAL=y CONFIG_BT_DEVICE_NAME="MH_TEST" # Enable the LBS service CONFIG_BT_LBS=y CONFIG_BT_LBS_POLL_BUTTON=y CONFIG_DK_LIBRARY=y # Drivers and peripherals CONFIG_I2C=n CONFIG_WATCHDOG=n CONFIG_GPIO=n CONFIG_PINMUX=n CONFIG_SPI=n CONFIG_SERIAL=n # Power management CONFIG_DEVICE_POWER_MANAGEMENT=y CONFIG_PM=y # Interrupts CONFIG_DYNAMIC_INTERRUPTS=n CONFIG_IRQ_OFFLOAD=n # Memory protection CONFIG_THREAD_STACK_INFO=n CONFIG_THREAD_CUSTOM_DATA=n CONFIG_FPU=n # Boot CONFIG_BOOT_BANNER=n CONFIG_BOOT_DELAY=0 # Console CONFIG_CONSOLE=n CONFIG_UART_CONSOLE=n CONFIG_STDOUT_CONSOLE=n CONFIG_PRINTK=n CONFIG_EARLY_CONSOLE=n # Build CONFIG_SIZE_OPTIMIZATIONS=y
- I have added an spm.conf
CONFIG_IS_SPM=y CONFIG_FW_INFO=y CONFIG_GPIO=y CONFIG_SERIAL=n
and added that to the CMakeLists.txtset(spm_CONF_FILE ${CMAKE_CURRENT_SOURCE_DIR}/spm.conf) - I have also configured the hci_rpmsg via the menuconfig to turn off logging
- I also tried turning on Power Management via the SPM and HCI_RPMSG's menuconfig's as well but it did not seem to have any effect.
As for my source code, I have attached it. I simply setup the BLE and handlers and then call:
for (;;) {
k_cpu_idle();
}
If we look at the PPK, I see this:

where my baseline current seems to be around 200uA - from what I had read around, I would have expected to be able to get it lower than this, so I imagine I must be configuring something incorrectly.
If you had any advice, it would be appreciated!
nRF Connect SDK: v1.6.1

