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

oscillation at the embed analog front end circuits of SAADC in nRF52832

Hello,

I found the strange phenomena on nRF52832.

By using the SAADC, I have some noise on ADC Data only at a certain temperature range.

Temperature range is depend on individual IC.

I might be the circuit oscillation at analog front end of SAADC, I think.

(internal reference voltage or op amp etc,)

I tried to switch DCDC on/off, but there's no difference on phenomena.

Anyone can resolve it?

I attach the files of real data and measurement condition.

Best regards,

Kiyoshi Iwai

3426.SAADC_noise_devzone.zip

Parents
  • Hi Kiyoshi!

    Sorry for the late reply, I have been out of office since last Thursday (small vacation).

    To answer your question:

    >  I think ADC is operated by HFCLK only, right or not?

    That is correct, however if you enable the softdevice using the internal RC oscillator as the LFCLK source, then the softdevice will automatically calibrate the RC oscillator for instance when there is change in temperature. This calibration take several 20ms periods and may for instance impact current consumption. So this is the reason I wanted you to make sure you have configured the softdevice to use the 32kHz crystal. This is also the reason I asked if you can repeat the measurements without the softdevice.

    Since the issue you have here is temperature dependent, make sure that all digital input pins have a defined level (for instance pull up or pull down). I have seen floating input pins can cause excessive current consumption at some temperatures. This may also impact measurements here.

    I know you are working closely with Avnet, and Tak-san have tested over several temperatures without experience your issue. So I believe you are on a good track to find the problem in your case by comparing your implementations.

    I would like to reference to an Errata that may affect HFCLK stability:

    http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.Rev1.errata/anomaly_832_68.html?cp=2_1_1_1_1_12 

    This issue descrive that you may experience that sd_clock_hfclk_is_running() is not reliable. A better solution is to use a fixed 1.5ms delay after calling sd_clock_hfclk_request() before doing ADC measurements. Sorry for not linking to this issue earlier.

    Please let me know if you have new findings.

    Best regards,
    Kenneth

Reply
  • Hi Kiyoshi!

    Sorry for the late reply, I have been out of office since last Thursday (small vacation).

    To answer your question:

    >  I think ADC is operated by HFCLK only, right or not?

    That is correct, however if you enable the softdevice using the internal RC oscillator as the LFCLK source, then the softdevice will automatically calibrate the RC oscillator for instance when there is change in temperature. This calibration take several 20ms periods and may for instance impact current consumption. So this is the reason I wanted you to make sure you have configured the softdevice to use the 32kHz crystal. This is also the reason I asked if you can repeat the measurements without the softdevice.

    Since the issue you have here is temperature dependent, make sure that all digital input pins have a defined level (for instance pull up or pull down). I have seen floating input pins can cause excessive current consumption at some temperatures. This may also impact measurements here.

    I know you are working closely with Avnet, and Tak-san have tested over several temperatures without experience your issue. So I believe you are on a good track to find the problem in your case by comparing your implementations.

    I would like to reference to an Errata that may affect HFCLK stability:

    http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.Rev1.errata/anomaly_832_68.html?cp=2_1_1_1_1_12 

    This issue descrive that you may experience that sd_clock_hfclk_is_running() is not reliable. A better solution is to use a fixed 1.5ms delay after calling sd_clock_hfclk_request() before doing ADC measurements. Sorry for not linking to this issue earlier.

    Please let me know if you have new findings.

    Best regards,
    Kenneth

Children
No Data
Related