Рет қаралды 135,962
For my next project, I need to get audio data into the ESP32.
The GitHub repo with the sample code for this video is here: github.com/ato...
If you like ESP32 audio videos - I've got a complete set on this playlist: • ESP32 Audio
The ESP32 integrates two 12-bit ADCs - ADC1 has 8 channels and ADC2 has 10 channels.
If you have an I2S microphone (like the INMP441 you may want to watch this follow up video after this one - • ESP32 Audio Input Show... )
ADC2 is used by the Wi-Fi driver. So we can only use ADC2 when not using WiFi. In addition, some of the pins attached to ADC2 are strapping pins so cannot be used freely.
For simple low-frequency sampling, we can use the Arduino analogRead or we can use the Esspressif ADC functions directly (00:38).
If you need very accurate readings from the ADC then you can calibrate your ADC (00:46).
For chips manufactured recently, this may have been done in the factory. For instructions on how to manually calibrate your ADC please check the Espressif documentation here: docs.espressif...
There's also a useful set of utilities here: github.com/tom...
For audio we should ideally sample at 40KHz - for this, we should use the I2S (Inter-IC Sound) peripheral and DMA (03:40).
I've got two microphones break-out boards - the MAX4466 and the MAX9814 (05:00).
The power supply from the 3v3 line of the ESP32 is pretty noisy making the audio unusable, but we can fix this by filtering the VIN line and using a separate Low Dropout Regulator to generate the power supply for the microphone boards (6:20).
We can also filter out some of the noise by oversampling and then taking an average value as the sample value. I'm using a median filter here in these samples (09:00).
The audio is still not great but should be usable for my next project.
If you found this video useful then please do subscribe - there will be more videos coming!
UPDATE - I've made my own I2S Microphone board for the ESP32 - you can buy it here: www.tindie.com...
Components:
MAX4466 - amzn.to/3cdxyGX
MAX9814 - amzn.to/3uSVOVl
ESP32 Dev board: amzn.to/3gb6fyc
---
Want to help support the channel? I'm accepting coffee on ko-fi.com/atom...