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

Difference in power profile between blinky and uart example projects?

Hello, we have run the power profiler on two different example projects, and want to understand the difference between the two.

When we run the blinky project

nRF5_SDK_16.0.0\examples\ble_peripheral\ble_app_blinky

And we slow down the advertising interval to about 5 seconds, we see the power draw drop to about zero in between advertising transmissions.

Later we started using the usart example (because we need uartcommunication, at least when connected).

\nRF5SDK160098a08e2\examples\ble_peripheral\ble_app_uart\pca10040\s112\arm5_no_packs

And we again slow down the advertising interval to about 5 seconds, except in this case we see the power draw drop only fractionally between advertising transmissions, significant power draw in between the advertising spikes.

Is this because of the uart?  Does the uart being active prevent it from idling the same way as the blinky example?

If so, can we enable the uart only when connected, and allow it to drop to near zero when unconnected and advertising?

Just wanted to know what to expect before we trial and error a million different things -- OR if the above is not what you guys would expect and we may have a different issue of some sort.

Thanks!

  • Hi

    How big of a difference is it between these examples? I assume this is the peripheral(s) in the UART example drawing this excess current. I don't think you can initialize the UART after connecting, as the central won't be able to recognize that your peripheral supports the peripheral if it isn't initialized upon connection.

    Are the SDK examples edited at all?

    Best regards,

    Simon

  • This is the power profile for blinky.  I don't have the image handy for uart, but it was similar in frequency and amplitude except the power only came down about 60-70%, not down to zero.  

    I'm not sure what you mean by "the central won't be able to recognize that your peripheral supports...".  The actual uart hardware doesn't relate to the peripheral.  The example connects to the peripheral, and any characters that come in over BLE, are forwarded over the uart peripheral via physical lines to the local controller.  It's initialized on power up but not meaningfully used except while connected.

    Could idle UART hardware be eating up this power?  Or is something else going on?

  • Hi

    The UART service (NUS) is advertised by the peripheral I assume, and this needs to be on while advertising. Yes, I assume the extra current consumption you see is due to the UART being active.

    Best regards,

    Simon

Related