Not Able to reach max ADC value (4200mV) in nrf5340

I am experiencing an issue to reach  the ADC Max value(4200mV) on the nRF5340(our custom board) . We are using a 12-bit ADC, 4.2V and received a reading of 3297 mV, but we were expecting 4200 mV.

Details:

  • SDK Version: v2.6.1
  • Custom Board : nrf5340-nrf7002

Build Configuration in vs code:  board = nrf7002dk-nrf5340-cpuapp-ns

Battery sample path :


C:\ncs\v2.6.1\zephyr\samples\boards\nrf\battery

I have modified the overlay to suit our application's requirements.

/ {
    zephyr,user {
        io-channels = <&adc 3>;  // AIN3 = P0.7
    };
};

NOTE:

1.What is the maximum possible ADC value for our current configuration?

2.We applied a 4.2V input but received a reading of 3297mV. What adjustments can we make to achieve a reading of 4200mV?

 

Parents Reply Children
  • Try putting in the filter capacitor (C37). Because of the high impedance of the resistor divider, the capacitance in the sample and hold circuit will cause the voltage to drop at the instant the sample is being taken.

    Having the capacitor right at the ADC input gives it a "tank" of charge to draw from. The capacitor value needs to be large (100X) compared to the capitance in the sample and hold circuit. The larger it is the less error.

Related