This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How to achieve the lowest power consumption on the Actinius Icarus (nrf9160) board?

Hi,

I'm trying to lower the power consumption om an Actinius Icarus board which uses an nrf9160 chip. I've been able to achieve a sleep current of 1.33mA and I'm not able to lower this any further. Could you please let me know what else I could do to lower the power consumption?

My setup - 

  • Board - Actinius Icarus
  • NRF Connect SDK - v1.2.0
  • Modem FW - 1.1.1
  • Sim - External NBIoT Sim card from 1nce which uses Deutsche Telekom band 8
  • Antenna - Ethertronics penta 1002292
  • Input - 4x1.5V batteries supplied to the Vin pin
  • Current measurement - Multimeter inserted between batteries and Vin
  • External peripherals - Using a 10k NTC with a 10k pullup voltage divider circuit connected to A1 for temperature measurement

Things done to reduce power consumption - 

  1. Disabled logs in the project and SPM- 
    CONFIG_CONSOLE=n
    CONFIG_STDOUT_CONSOLE=n
    CONFIG_LOG=n
    CONFIG_SERIAL=n
    CONFIG_UART_CONSOLE=n

  2. Enabled power management - 
    CONFIG_SYS_POWER_MANAGEMENT=y
    CONFIG_DEVICE_POWER_MANAGEMENT=y

  3. Enabled PSM with these parameters (Also with different p-tau like 10 min, 1 hour, etc) 
    CONFIG_LTE_PSM_REQ_RPTAU="11000001"
    CONFIG_LTE_PSM_REQ_RAT="00000001"

  4. Removed bootloader - 
    CONFIG_BOOTLOADER_MCUBOOT=n

The current drawn through the NTC voltage divider is around .16mA. I have connected to the AWS server via MQTT and send sensor data to the server at a fixed interval. I send the data and go to sleep for a defined time and repeat the process. I observe a constant sleep current of 1.3mA. When the device wakes up and sends data, I see spikes of 50mA and it comes back to 1.3mA after 2 seconds according to CONFIG_LTE_PSM_REQ_RAT.
For testing, I also edited the same project and made the device run an infinite while loop with a sleep function and still see that the sleep current is 1.3mA. From what I understand it looks like the modem does go to PSM (if I disable it I see a sleep current which keeps fluctuating between 1.3mA to 50mA). The sleep current with the modem switched off (with an AT+CFUN=0) command also shows me a sleep current of 1.3mA. This leads me to believe that there are some other peripherals which are switched on and consuming power. I'm not able to figure what else I should be doing at this point to lower the current consumption. Could you please advise me on  how to proceed? Thanks a lot!
Nikil
  • Hi,

     

    Could you try to disable everything related to UART, specifically the at_host?

    CONFIG_UART_INTERRUPT_DRIVEN=n
    CONFIG_AT_HOST_LIBRARY=n

     

    This one will setup a uart directly, but I'm a bit surprised that you get your current configuration to compile, as at_host would have a dependency on SERIAL being enabled.

     

    PS: It might take around 1 minute before you have successfully entered sleep after entering PSM, as there is a RRC idle period (individually set by the network), in which could explain the fluctuation you have previously seen. If you still get ~1 mA even after the modem is disabled, then its still something in the application that causes this.

     

    Kind regards,

    Håkon

  • Hi,

    Sorry I keep enabling and disabling logs for testing and I forgot to disable those two configs. It doesn't compile without disabling them, true. I have CONFIG_UART_INTERRUPT_DRIVEN=n and  CONFIG_AT_HOST_LIBRARY=n disabled and I still see ~1 mA.

    "It might take around 1 minute before you have successfully entered sleep after entering PSM". Yes, I have seen this in action by enabling and disabling PSM. When PSM is enabled, I see spikes in current for about a minute before it settles around ~1 mA while it does not settle when PSM is disabled.

  • Hi,

     

    Could you try zephyr/samples/basic/blinky, with CONFIG_SERIAL=n & project configured with the secure region, and see if this goes below 1 mA?

    Can it be that one of your LEDs is lit up? On the nRF9160-DK, LEDs are buffered, but I'm not sure how they're connected on this board (couldn't find a schematic)

     

    Kind regards,

    Håkon

Related