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

Sleep current with NRF_LOG_ENABLED or without NRF_LOG_ENABLED

Hi,

I am measuring the current during sleep, after the sequence, __WFE();__SEV();__WFE();.

With NRF_LOG_ENABLED set to 1, the current is about 486 uA. With NRF_LOG_ENABLED set to 0, the current is about 14 uA. What is consuming the current during sleep when log is enabled? The UART in the data sheet says 55 uA, what else is drawing the current?

Is it possible to temporarily suspend the "logging" capability during sleep in order to reduce the idle current, since there is no activity anyway.

Thanks.

Parents
  • Joe,

    Without knowing exactly how you have sdk_config.h setup my guess is the additional sleep current is due to the UART quiescent current. In our tests it adds ~400uA static quiescent current. If you have a Segger debugger you can switch to RTT logging which is a lot faster than using the UART and it frees up your UART for other tasks.

    Darren

  • Joe,

    The current is 3mA now because the debugger is connected and the debug engine is running. I forgot about that when I suggested using RTT. There really isn't a low current way to log data without modifying the logging library to disable the UART after all data is flushed or toggle unused GPIOs.

    Sorry for the confusion.

    The check is to the left of my initial answer, please check it only if you felt I answered your question:)

    Cheers, Darren

Reply
  • Joe,

    The current is 3mA now because the debugger is connected and the debug engine is running. I forgot about that when I suggested using RTT. There really isn't a low current way to log data without modifying the logging library to disable the UART after all data is flushed or toggle unused GPIOs.

    Sorry for the confusion.

    The check is to the left of my initial answer, please check it only if you felt I answered your question:)

    Cheers, Darren

Children
No Data
Related