I am using the ADC continuous mode driver with ESP-IDF v5.1 on an ESP32-C3-DevKitC-02. I am reading from an adafruit MEMS analog microphone SPW2430 (https://www.adafruit.com/product/2716). During 10 seconds of data recording, I see significant drift in the "zero point" of the microphone. Here is 10 seconds of data sampled at 4 KHz, with no other processing performed:
You can see that after each spike (I am hitting a drum for testing), the bias shifts down a bit.
Do you have any idea whether this is more likely to be bias drift in the mic, or in the ADC? If the latter, is there anything I can do to elimintate this drift?
ESP32-C3-DevKitC-02 ADC bias drifts a lot over time
Re: ESP32-C3-DevKitC-02 ADC bias drifts a lot over time
Usually, the accuracy of a ADC depends on the voltage reference, for c3 the VCC 3.3V. You may measure your c3's VCC for 10 seconds for sure.
I have not used the adc of C3. But for ESP32, I can not see the drift of adc for half an hour.
For your microphone, is it a capacitive type. If it is, it may drift.
But another quesion is that the microphone did not care about the DC drift, only ac 20-20KHz signal is needed.
The step drift after each spike may not affact your microphone application.
hope this helps!
I have not used the adc of C3. But for ESP32, I can not see the drift of adc for half an hour.
For your microphone, is it a capacitive type. If it is, it may drift.
But another quesion is that the microphone did not care about the DC drift, only ac 20-20KHz signal is needed.
The step drift after each spike may not affact your microphone application.
hope this helps!
Re: ESP32-C3-DevKitC-02 ADC bias drifts a lot over time
Very helpful -- thank you! I am now eliminating the bias drift in software and it seems to be working great.
Who is online
Users browsing this forum: No registered users and 347 guests