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

power consumption increases 1.1mA after first ADC sample

Hello,

I am experiencing a power issue after the first ADC sample is triggered. Sampling 2 ADC channels using PPI and TIMER as the triggering mechanism. Here is a capture using PPK2.

It is alright to have a spike in power but in this case, once the power increases it never decreases.

Is there a way to fix this?

TIA

Parents
  • Hi, 

    The increase in current comes from the EasyDMA being enabled and drawing current once the SAADC START task is triggered.

    In order to reduce the current, you can only have a buffer size equal to the number of active channels enabled, and not use the double-buffering feature.

    There is a low-power mode in the SAADC driver that you can try to enable, but we have previously seen some issues with this together with enabling multiple channels. If you are using LP mode, it is important that you use the function nrf_drv_saadc_sample_task_get() when setting up the PPI channels, is this will trigger the START task over PPI and not the SAMPLE task. The SAMPLE task will be triggered in the IRQ handler when the STARTED event is generated.

    The post provides another approach where the SAADC driver is uninit and re-initialized between each sampling, which should work with multiple channels.

    Best regards,
    Jørgen

  • Jorgen,

    The sample rate of the ADC is very slow so I modified the code to init/sample/unit using an app_timer.

    I don't understand why EasyDMA does not seem to be a problem with other peripherals. The SPI manager uses EasyDMA and there isn't a power issue with that...?

    Thanks

Reply Children
No Data
Related