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

High Current Consumption After I2S

I am using the nRF52832 very successfully for an audio application. However, I am observing an undesirable high current state after audio playback is complete.

Here is the turn of events. i == current

  1. The user connects to the device with BLE. i < 0.5mA
  2. The user requests audio playback. This will turn on SPIM0 and I2S, as well as use the FPU.
  3. Playback is complete. We wish to return to state (1). I2S is disabled via nrf_drv_i2s_stop(), and nrf_drv_i2s_uninit(). Interrupts stop, but we are now drawing ~ 1.7 mA.

I was experiencing the spurious interrupts from Errata item 87, and seeing over 4 mA! but I implemented that fix and that problem was eliminated.

Note that calling sd_power_system_off() lowers the consumption immediately to less than 200 uA, further strengthening the evidence that the nRF52 is drawing the extra power.

Any suggestions?

Softdevice 3.0 SDK 12.1.0

Parents
  • Have you just tried running the beacon example on your hardware, and change the advertising period to some big number like 10 seconds.

    The beacon is known to take the minimum amount of current when not transmitting, so any other current must being taken by your other components e.g. the amplifier

    If the amplifier takes current with the beacon example, its probably worth adding pull-ups or pull downs etc to prevent this happening, and use that as a baseline

Reply
  • Have you just tried running the beacon example on your hardware, and change the advertising period to some big number like 10 seconds.

    The beacon is known to take the minimum amount of current when not transmitting, so any other current must being taken by your other components e.g. the amplifier

    If the amplifier takes current with the beacon example, its probably worth adding pull-ups or pull downs etc to prevent this happening, and use that as a baseline

Children
No Data
Related