What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Connect the INMP441’s power, ground, clock, word-select, and data pins to an ESP32, then configure I2S receive mode and select the same audio channel as the microphone’s L/R pin. The wiring below uses GPIOs from an ESP32-S3 example; check your own board’s pinout and choose available, suitable GPIOs before copying those numbers.
What the INMP441 does
The INMP441 is a digital omnidirectional MEMS microphone with an I2S output. It sends digital audio samples to the ESP32, so connect its data output to the ESP32’s I2S data input; it is not an analog microphone that should be wired to an analog input. Espressif describes I2S as “an electrical serial bus interface standard used for connecting digital audio devices together.” Espressif’s Arduino-ESP32 I2S documentation describes the API and bus pins.
As an Amazon Associate I earn from qualifying purchases.
The module manual specifies 1.8–3.3 V operation and demonstrates receiving 16 kHz audio in 32-bit slots with the left channel selected. Those are example operating settings, not a requirement to use that exact sample rate for every project. The ShillehTek module manual lists 24-bit I2S PCM output and an 8–48 kHz sample-rate range.
Parts and pin mapping
You need an INMP441 module, an ESP32 board supported by Arduino IDE, and jumper wires. A breadboard is optional. The following mapping is the ESP32-S3 tutorial example, not a universal ESP32 pin assignment. Confirm that the selected pins are available and appropriate on your particular board.
#1 Best Overall
- INMP441 is a high-performance, low-power, digital output, omnidirectional MEMS microphone with a bottom port
- The INMP441 module includes MEMS sensors, signal composition adjustment, analog-to-digital converters, anti-aliasing filters, power management, and an industry-standard 24-bit I2S interface
- The I2S interface allows INMP441 to be directly connected to digital processors, such as DSPs and microcontrollers, without the need for audio codecs used in the system
- The INMP441 has a high signal-to-noise ratio of 61dBA, making it an excellent choice for near-field applications
- INMP441 has a flat broadband frequency response, resulting in high sound clarity
| INMP441 pin | ESP32-S3 example connection | Purpose |
|---|---|---|
| VDD | 3V3 | Microphone power. The manual specifies 1.8–3.3 V operation. |
| GND | GND | Common ground. |
| SCK | GPIO 42 | I2S bit clock (BCLK). |
| WS | GPIO 40 | I2S word-select or left/right clock (WS/LRCLK). |
| SD | GPIO 41 | Microphone serial data output to the ESP32 I2S data input (DIN). |
| L/R | GND | Selects left-channel output in this example. |
Do not confuse signal direction: the microphone’s SD pin is its output, while the ESP32 receives that signal as I2S DIN. Espressif’s setPins API names BCLK, WS, DOUT, and DIN; for a microphone receive setup, use DIN for the microphone’s SD line.
Wire the microphone and choose its channel
- With the ESP32 disconnected from power, connect INMP441 VDD to the board’s 3V3 pin and GND to GND.
- Connect SCK to a suitable ESP32 GPIO for I2S BCLK, WS to a suitable GPIO for WS/LRCLK, and SD to a suitable GPIO configured as I2S data input (DIN). The example above uses GPIOs 42, 40, and 41 respectively.
- Set L/R to GND for left-channel output or to 3V3 for right-channel output, within the module’s specified supply range.
- Configure the I2S receive channel to match the L/R strap. The module manual’s example selects left-only mono, which matches L/R low. A mismatch can result in no useful samples even when the clock and data wiring are correct.
Configure I2S in Arduino IDE
First select the actual ESP32 board in Arduino IDE and install or identify the Arduino-ESP32 core version in use. I2S APIs differ between core versions: the referenced tutorial uses the legacy driver/i2s.h interface, while current Espressif documentation describes the I2SClass interface. Use code and method names that match the installed core rather than combining examples from different API generations.
Rank #2
- Product Overview: The INMP441 is a high-performance omnidirectional MEMS microphone with digital output and a bottom-port design. Combining low power consumption with superior acoustic performance, it delivers exceptional audio capture quality for professional applications
- Compact Design: Housed in an ultra-thin 4.72 × 3.76 × 1 mm surface-mount package, this microphone retains consistent sensitivity after reflow soldering. Its halide-free construction ensures reliable performance and seamless PCB integration
- Acoustic Excellence: Featuring an impressive 61 dBA signal-to-noise ratio and a flat wideband frequency response, the INMP441 reproduces natural, high-definition audio with outstanding clarity, making it an ideal choice for near-field sound applications
- Digital Interface: Equipped with a built-in 24-bit I²S interface, the microphone connects directly to digital processors—such as DSPs and microcontrollers—without the need for external audio codecs, greatly simplifying system design
- Application Versatility: Suitable for a wide range of uses including teleconferencing systems, gaming peripherals, mobile electronics, laptops, and security systems, the INMP441 provides consistent performance across diverse operating conditions
Whichever supported interface you use, configure the peripheral for receiving audio, assign BCLK, WS, and DIN to the pins you wired, set a supported sample rate and slot width, and select the channel that agrees with L/R. The module manual demonstrates 16 kHz, 32-bit slots, and left-channel receive. The Arduino-ESP32 I2S API reference documents the current class and pin configuration methods.
Read samples and inspect the waveform
Once I2S receive is configured, read blocks of samples into a buffer and inspect the incoming values. The tutorial demonstrates plotting a waveform and calculating RMS signal intensity over short windows. A waveform is useful for confirming that the microphone is producing changing samples; RMS gives a simple measure of signal magnitude over the selected window.
Rank #3
- INMP441 is a high performance, low power consumption, digital output, omnidirectional MEMS microphone with bottom port
- The complete INMP441 solution consists of a MEMS sensor, signal composition conditioning, analog-to-digital converter, anti-aliasing filter, power management and industry standard 24-bit I²S interface.
- The I²S interface allows INMP441 to connect directly to digital processors, such as DSPs and microcontrollers, without the need for the audio codec used in the system
- INMP441 has a high signal-to-noise ratio and is an excellent choice for near-field applications. INMP441 has a flat broadband frequency response, resulting in high definition of natural sound.
These values are digital sample measurements, not calibrated sound-pressure levels. In particular, the module specifications reported by the manual—such as sensitivity and frequency response—do not make an Arduino RMS value a sound-level meter reading. Do not label a raw RMS threshold as decibels SPL without an appropriate calibration method.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Use a clap to trigger an output
A clap-trigger example can compare short-window signal intensity with a chosen threshold and switch an output when the reading crosses it. An LED and suitable resistor are optional parts for demonstrating the output. The threshold depends on microphone placement, gain/sensitivity, room noise, sample handling, and the chosen window, so tune it for the particular build rather than treating one value as universal.
Rank #4
- [Premium INMP441 Digital Microphone] Experience high-performance low-power digital output with this omnidirectional MEMS microphone ideal for precise audio capture.
- [Seamless I2S Interface Connectivity] Designed for easy integration this module features an I2S interface ensuring reliable and high-fidelity audio data transmission to your projects.
- [Versatile Compatibility & Application] Perfectly suited for ESP32 and Arduino development boards enhancing projects like voice assistants audio recording and sound detection systems.
- [Compact & Efficient Design] Its ultra-small form factor 14 x 14 x 1 mm allows for discreet placement and efficient use of space in any electronic setup.
- [Complete Kit with Dupont Cables] Each 3-piece set includes 20CM/7.8" 10Pins Dupont cables providing a convenient plug-and-play solution for quick setup and prototyping.
For a more dependable trigger, consider requiring the signal to exceed the threshold for a defined number of samples or adding a brief lockout after detection. These measures can reduce repeated triggers from one clap’s reverberation, but they do not turn the circuit into a calibrated sound meter.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Quick Recap
Best Value
- The INMP441 is a high-performance, low power, digital-output, omnidirectional MEMS microphone with a bottom port.
- The INMP441 is available in a thin 4.72 x 3.76 x 1 mm surface mount package. It is reflow- solder compatible with no sensitivity degradation. The INMP441 is halide free.
- The INMP441 has a high signal-to-noise ratio and is an excellent choice for near field applications. The INMP441 has a flat wideband frequency response that results in high definition of natural sound.
- SCK: Serial data clock for I2S interface; WS: Serial data word selection for I2S interface; L/R: Left/Right channel selection.
- Applications: Teleconferencing Systems; Remote Controls ; Gaming Consoles; Mobile Devices ;Laptops Tablets ;Security Systems
Troubleshoot missing or unusable audio
- No changing samples: Recheck VDD, common ground, BCLK, WS, and the SD-to-DIN direction. Verify the GPIOs against your board’s pinout.
- Clocking works but the receive buffer is silent: Check that the configured left/right channel matches L/R. Low selects left; high selects right according to the module manual.
- Build errors involving I2S names or methods: Confirm whether your installed Arduino-ESP32 core supports the legacy
driver/i2s.hexample or the currentI2SClassAPI, and use the corresponding documentation and example. - Unexpected amplitude or clipping: Check that the code’s sample format and slot width match the receive configuration. The manual’s demonstrated receive setup uses 32-bit slots, while the microphone output is specified as 24-bit I2S PCM.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

