ESP32 Audio Input Showdown: INMP441 vs SPH0645 MEMS I2S Microphones!

preview_player
Показать описание
We're back looking at some more options for getting audio data into the ESP32!

It's worth recapping that video as there's some interesting stuff around sampling rates, DMA transfer and ADC calibration.

In this video, we're going to be looking at a couple of boards with MEMS (Micro-Electro-Mechanical System) microphones.

The two boards we're looking at are the SPH0645 and the INMP441.

What's really interesting with these boards is that they integrate the audio amplifier, ADC and the I2S interface. So the output from the boards can be fed directly into the ESP32 without using the ADC.

Once again we're taking advantage of I2S and DMA transfers to get the data into the ESP32.

In the next video, we'll look at getting audio out of the ESP32, another small step to finishing my next project.

Thanks for watching, and don't forget to subscribe!

---

Рекомендации по теме
Комментарии
Автор

Wow these videos are going to save me a lot of time. Thanks for doing these tests. I'm glad you also tested them without your filter.

GadgetAddict
Автор

Thanks a lot! I thought the INMP1441 I had bought was broken because it didn't work at all, but your explanation and your code made it work beautifully!

jonaslima
Автор

this is a perfect conversion from information to knowledge.

leozendo
Автор

Thanks, for a clear simple comparison between these and the analogue input.

NickReynolds
Автор

This as well as the analog video (at ESP32 Audio Input Using I2S and Internal ADC - YouTube) are gospel. They sure demonstrates some of the issues we've encountered with our sound reactive fork of WLED.

AndrewTuline
Автор

And to add insult to injury, with the SPH0645 there is a positive "DC offset" in the digital that is limiting the dynamic range of the linear pcm by 20%-30% in the positive side

davidt
Автор

Thanks for sharing the audio clips. very useful to get the idea before purchase.

maximus
Автор

You might want to add such 'peace of mind' power supply to your ebay page..
Even if as a bare PCB - people who might want one either already have parts to populate it or can get them easily.

ijustwanttogosailing
Автор

Great job on explaining this, I am a total noob but it kind of gives me a broad idea of how I should try doing RCA inputs or 3.5 jack input as im using it for the WLED in a car

julioguzman
Автор

Hi
First of All thanks for the demo. I am trying to implement the same and I wanted to ask how are you taking care of the data that's coming as 2's compliment.

anuragpaul
Автор

At time 2'40", you have the GPIO35 wired as SCK (BCLK) which is clock output to the serial clock of the I2S microphone. However, on most (if not all) ESP32, GPIO35 is an input only pin. You code looks correct when using GPIO32, but the Dout should be on a pin other than GPIO32.

gang
Автор

Hi there, this is Hassan, at 2:51, you shared the schematic diagram of the circuit, could you let me know which platform you used to make it on. I have a similar project, and I had to make a schematic of it. Unfortunately, I couldn't find any online tool where the mic module could be available.

My project uses an SD card, and an esp32 as well, I hope to hear from you soon.

hassaansaleem
Автор

Great video. Thank you! Do you have the specs / schema for the PCB you created and had made for you? I'd be interested in taking a look and having one made so I can try to follow along directly. I'm new to this and interested in learning. Thank you very much!

wasauce
Автор

Nice video! I'd be very interested in your choice of components for the power supply filtering. What values did you use?

dirrelito
Автор

Hi atomic14, really really enjoying your videos and the work you've put into them. I'm trying to follow along with the projects and have downloaded the source code to play around with. I currently am using the INMP441 microphone connected to the ESP32 as per the wiring diagram on the github page. I have been able to get the esp32 to connect over wifi to stream the i2s data back. However, I am running into an issue with the quality of the audio received. I have been importing the audio into audacity with the settings - 16 bit signed PCM, 16000hz sampling rate and mono channel. While I am able to hear most of the high level features of the audio, the audio file is generally very distorted and has lots of hissing and popping noises in the background which is very different to what I've seen in your videos. Do you have any suggestions or advice on what I could potentially be getting wrong? Thanks

seanyong
Автор

Nice video. One of the big advantage of i2s micro mems is the known value of the expected RMS level for 94dB @ 1000 Hz . So you do not really need to calibrate the microphone. I would like to know the diameter of the INMP1441, it would be good if it fit inside 1/2" tube.

nicolascumu
Автор

Could you please make a video on how to record voice commands and with esp8266 send the audio to raspberry pi over local wifi...please

swagathprakash
Автор

Thank you so much, this was so useful.

imjustger
Автор

Thanks for the convincing demonstration that whenever possible I2S microphone is a better choice. However, it's not clear to me why the INMP441 is "hands down" better than the SPH0645. From the audio, they sound quite similar. Can you elaborate?

gang
Автор

Thanks for the video very helpful, by chance i have question which of these sensors (mems or analog ones) is capable to use in such projects like beehive sound detection? any advice ..

darealspectrum