Hello,

We have purchased a few sparkfun thing plus devices and we want to power them with a small battery.
For this application, we must set the module in sleep mode to decrease the energy consumption to +- 30uA.

First, I tried to modify the asset tracker V2 application and flash it on the sparkfun thing plus. The power consumption was around 10 mA on the Sparkfun, while the consumption of the same application was around 30uA.

Secondly, I created a clean app based on jaredwolff.com/low power operation.
This device uses about 6mA (way more than necessary).
Is there an option to reduce is at least below the 100uA.
I think something with my configuration is not correct.

I am using this overlay (circuitdojo_feather_nrf9160_ns.overlay):

&i2c1 {
    lis2dh@18 {
        compatible = "st,lis2dh";
        label = "LIS2DH";
        reg = <0x18>;
        irq-gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>, <&gpio0 30 GPIO_ACTIVE_HIGH>;
        disconnect-sdo-sa0-pull-up;
    };
  };

This is the configuration I am using (prj.conf):

# Stacks and heaps
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_HEAP_MEM_POOL_SIZE=16384

CONFIG_GPIO=y
CONFIG_I2C=y
CONFIG_SPI=y
CONFIG_DEBUG=n

# Add the accelerometer
CONFIG_SENSOR=y
CONFIG_LIS2DH=y

CONFIG_CONSOLE=n
CONFIG_UART_CONSOLE=n
CONFIG_SERIAL=n

# Zephyr Device Power Management
CONFIG_PM=y

# Network
CONFIG_NETWORKING=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_NATIVE=n
CONFIG_NET_SOCKETS_POSIX_NAMES=y

# Modem 
CONFIG_NRF_MODEM_LIB=y

# Enable Zephyr application to be booted by MCUboot
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_PM_DEVICE=y
CONFIG_PM_DEVICE_RUNTIME=y

And this is my main code (main.c)

#include <zephyr.h>

void main(void)
{
	while (1)
	{
		k_cpu_idle();
	}
}

I am not sure if I need to use the sparkfun thing plus overlay or the circuitdojo feather overlay.
But I think something with the Real time clock or accelerometer is not correctly installed / configured.
I have the modem firmware updated to V1.3.2
I am using the NRF toolchain V2.0.0.

Hey @Rene_pvh

Unfortunately, Sparkfun version is not optimized for power consumption. The last time I tested it, it was around 1mA best case.

    Hi jaredwolff

    Thank you for your response.
    We also did some research, because it is a really important feature for us.
    After disabling all peripherals (in hardware and software), we were still consuming 6/7 mA.

    Finally, we remove the Buck/Boost and delivered directly 3.3V to the NRF9160.
    This was the solution for us.
    After this modification on the sparkfun in sleep the board consumes +-10uA and the board is still fully functional.

    Do you know why this component is consuming so much power?

    The mode pin is set to put the Buck/Boost in PWM mode at all times. Something that got fixed in newer versions of the nRF9160 Feather.

    Terms and Conditions | Privacy Policy