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

Sleep current is high after using SAADC

Hi,

There is a similar case:

High power consumption in sleep mode after using SAADC

But I am using the SAADC driver version 2.0 because the oversampling feature is only supported in new driver, low power mode is not supported.

My environments:

nRF52840, the sdk version is 17.02, s140 version 7.2.0. Because we need the oversample feature in SAADC, so we are using SAADC driver version 2.0. When there are two channels sampled, the sleep power current is very high, more than 600uA, but if only one channel is sampled ,the sleep current is low, only 4uA. UART is also disabled.

Please help on this. Thanks

Regards

Roy Huang

Parents
  • Hello Roy Huang,

    Thank you for your patience, and thank you for the very thorough description of your issue!

    This does indeed sound very strange, and I do not immediately see any flaws in your description or included code.
    I have discussed this with some colleagues, and it sounds similar to an issue we've heard of earlier, where the High Frequency CLK is never released and thus is left running. This corresponds well with the 600 µA increase in current you report.

    Could you try to call TASKS_STOP at the end of your NRFX_SAADC_EVT_DONE event handling?
    Alternatively, could you check whether the status of the HFCLK is Running when the increase in current consumption is present?

    I will test your example here on my end shortly, to see if I can see the same behavior. If I am able to reproduce this I will open an internal ticket with our developers, so that they may examine this more closely.

    Best regards,
    Karl

Reply
  • Hello Roy Huang,

    Thank you for your patience, and thank you for the very thorough description of your issue!

    This does indeed sound very strange, and I do not immediately see any flaws in your description or included code.
    I have discussed this with some colleagues, and it sounds similar to an issue we've heard of earlier, where the High Frequency CLK is never released and thus is left running. This corresponds well with the 600 µA increase in current you report.

    Could you try to call TASKS_STOP at the end of your NRFX_SAADC_EVT_DONE event handling?
    Alternatively, could you check whether the status of the HFCLK is Running when the increase in current consumption is present?

    I will test your example here on my end shortly, to see if I can see the same behavior. If I am able to reproduce this I will open an internal ticket with our developers, so that they may examine this more closely.

    Best regards,
    Karl

Children
Related