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

High 4.7 mA power consumption on nrf51, SD110

Hi,

during normal operation, my device shows a power consumption of 4.7mA. Normal operation is:

  • accelerometer (lis2dh) detects a shake and wakes up the nrf51 via GPIO toggle
  • nrf51 gets via SPI the incoming accelerometer data
  • nrf51 does some statistic calculations with fix math as the nrf51 has no FPU
  • accelerometer detects no more movements then
  • nrf51 searchs the last record in the flash
  • nrf51 stores one data record into the next free flash address
  • nrf goes to sleep

Effectively my device is not more than a data recorder.

The normal operation takes around 4 to 5 seconds and occurs up to 1000times a day. During this time period, the current draw is 4.7 mA. The overall consumption during sleep and advertising are within the expected limits (e.g. 9uA, 70uA). But with that high consumption of the normal operation cycle the battery (CR 2032) is drained much to fast.

The Lis2DH is a low power ic and runs in low power mode of 25Hz (11uA). The nrf51 is also running at low speed of 25Hz. I have chosen SPI over TWI for its lower consumption. The fix math operations are mostly averaging values, power and square root calculations. And i am using SD110, SDK 9.0.

So I am wondering what causes the high consumption and how can I reduce it? Is maybe searching and writing to the flash very power consuming? Are there any reference values available, e.g. mcu consumption on high load, consumption reading, writing the flash?

Any hints are greatly appreciated Johannes

  • Hi,

    This is a normal current draw when the CPU is active. The CPU current draw will depend on your configuration, but the values are given in the documentation.

    Are you doing any power management when you are doing this normal operation, to put the device in sleep when possible? 4-5 seconds is a long time to keep the CPU active, and if you have 1000 occurrences of this every day, your battery won't last long.

    Could you post some code examplesshowing your operation or upload your project? We might be able to give some pointers on how to decrease the current consumption.

    Best regards,

    Jørgen

Related