ADC Converter on an Espressif ESP32-S3-WROOM-1

Ralph93827
Posts: 1
Joined: Tue Apr 01, 2025 12:43 pm

ADC Converter on an Espressif ESP32-S3-WROOM-1

Postby Ralph93827 » Tue Apr 01, 2025 12:51 pm

We are using the ADC Converter on an Espressif ESP32-S3-WROOM-1 with the IDF-Library V5.4. Here we see an offset in the acquired values, as in the table below.
Measured / ESP-ADC voltage
1,046V / 1,000V
0,8466V / 0,800V
1,202V / 1,150V
2,060V / 2,000V

We followed the calibration guidelines in the ESP-IDF documentation: https://docs.espressif.com/projects/esp ... ation.html
For calibration, we use the example_adc_calibration_init() function from the following reference implementation, applying the Curve Fitting scheme: https://github.com/espressif/esp-idf/bl ... ead_main.c

The one shot conversion is configured as follows:
adc_oneshot_unit_init_cfg_t init_config1 = {
.unit_id = ADC_UNIT_1,
.ulp_mode = ADC_ULP_MODE_DISABLE,
};

adc_oneshot_chan_cfg_t config = {
.bitwidth = ADC_BITWIDTH_DEFAULT,
.atten = ADC_ATTEN_DB_12, // 12 dB attenuation
};
The final voltage value the then acquired using adc_oneshot_get_calibrated_result().

Could you please advise if there are any additional steps required to improve the ADC accuracy? Also, can the observed offset be explained?

Who is online

Users browsing this forum: No registered users and 1 guest