Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit PDM Mic with JST: Examples, Pinouts, and Specs

Image of Adafruit PDM Mic with JST
Cirkit Designer LogoDesign with Adafruit PDM Mic with JST in Cirkit Designer

Introduction

The Adafruit PDM Mic with JST is a compact and versatile sound sensor module that captures high-quality audio signals using Pulse-Density Modulation (PDM). This microphone is ideal for a variety of applications, including sound detection, voice recognition, and audio recording in embedded systems. Its small form factor and simple interface make it a popular choice for hobbyists and professionals working on projects with microcontrollers like the Arduino UNO.

Explore Projects Built with Adafruit PDM Mic with JST

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino UNO Based PDM Microphone Interface
Image of Adafruit(PDM)-Uno: A project utilizing Adafruit PDM Mic with JST in a practical application
This circuit connects an Adafruit PDM microphone to an Arduino UNO for audio input processing. The microphone's VDD and GND pins are powered by the Arduino's 3.3V and GND pins, respectively. The microphone's CLK and DATA pins are connected to the Arduino's D3 and A0 pins, allowing the Arduino to receive and process the digital audio signal from the microphone.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi Zero-Based Audio Visualizer with OLED Display and INMP441 Microphone
Image of HEART_SOUND: A project utilizing Adafruit PDM Mic with JST in a practical application
This circuit features a Raspberry Pi Zero connected to an INMP441 MEMS microphone and a 1.3" OLED display. The Raspberry Pi Zero communicates with the OLED display via I2C (using GPIO2 for SDA and GPIO3 for SCL), and it interfaces with the INMP441 microphone using I2S (with GPIO4 for SCK, GPIO9 for L/R selection, ID_SD for SD, and GPIO12 for WS). The circuit is designed for audio input through the microphone and visual output on the OLED display, likely for applications such as sound visualization or audio monitoring.
Cirkit Designer LogoOpen Project in Cirkit Designer
Voice-Activated ESP32 & Wemos Controllers with TFT Display and Battery Management
Image of prototype schematic: A project utilizing Adafruit PDM Mic with JST in a practical application
This circuit features multiple microcontroller units (MCUs) including a Wemos S2 Mini, Wemos D1 Mini, and an ESP32 Devkit V1, each interfaced with an Adafruit MAX4466 Electret Microphone Amplifier for audio input and an LCD TFT screen for display output. The circuit is powered by Polymer Lithium Ion Batteries connected through TP4056 charging modules, with power management facilitated by push and rocker switches. The primary function of this circuit appears to be audio capture and processing with visual feedback.
Cirkit Designer LogoOpen Project in Cirkit Designer
Dual-Microcontroller Audio Processing System with Visual Indicators and Battery Management
Image of proto thesis 2: A project utilizing Adafruit PDM Mic with JST in a practical application
This is a portable audio-visual device featuring two Wemos microcontrollers for processing, Adafruit MAX4466 microphone amplifiers for audio input, and an LCD TFT screen for display. It includes power management with TP4056 modules and LiPo batteries, and user-controlled toggle and rocker switches.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit PDM Mic with JST

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Adafruit(PDM)-Uno: A project utilizing Adafruit PDM Mic with JST in a practical application
Arduino UNO Based PDM Microphone Interface
This circuit connects an Adafruit PDM microphone to an Arduino UNO for audio input processing. The microphone's VDD and GND pins are powered by the Arduino's 3.3V and GND pins, respectively. The microphone's CLK and DATA pins are connected to the Arduino's D3 and A0 pins, allowing the Arduino to receive and process the digital audio signal from the microphone.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of HEART_SOUND: A project utilizing Adafruit PDM Mic with JST in a practical application
Raspberry Pi Zero-Based Audio Visualizer with OLED Display and INMP441 Microphone
This circuit features a Raspberry Pi Zero connected to an INMP441 MEMS microphone and a 1.3" OLED display. The Raspberry Pi Zero communicates with the OLED display via I2C (using GPIO2 for SDA and GPIO3 for SCL), and it interfaces with the INMP441 microphone using I2S (with GPIO4 for SCK, GPIO9 for L/R selection, ID_SD for SD, and GPIO12 for WS). The circuit is designed for audio input through the microphone and visual output on the OLED display, likely for applications such as sound visualization or audio monitoring.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of prototype schematic: A project utilizing Adafruit PDM Mic with JST in a practical application
Voice-Activated ESP32 & Wemos Controllers with TFT Display and Battery Management
This circuit features multiple microcontroller units (MCUs) including a Wemos S2 Mini, Wemos D1 Mini, and an ESP32 Devkit V1, each interfaced with an Adafruit MAX4466 Electret Microphone Amplifier for audio input and an LCD TFT screen for display output. The circuit is powered by Polymer Lithium Ion Batteries connected through TP4056 charging modules, with power management facilitated by push and rocker switches. The primary function of this circuit appears to be audio capture and processing with visual feedback.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of proto thesis 2: A project utilizing Adafruit PDM Mic with JST in a practical application
Dual-Microcontroller Audio Processing System with Visual Indicators and Battery Management
This is a portable audio-visual device featuring two Wemos microcontrollers for processing, Adafruit MAX4466 microphone amplifiers for audio input, and an LCD TFT screen for display. It includes power management with TP4056 modules and LiPo batteries, and user-controlled toggle and rocker switches.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Key Technical Details

  • Microphone Type: Digital PDM MEMS
  • Operating Voltage: 3.3V to 5V
  • Current Consumption: Typically 650 µA
  • Sensitivity: -26 dBFS (decibels relative to full scale)
  • Signal to Noise Ratio (SNR): 65 dB
  • Sample Rate: Adjustable up to 1 to 3.25 MHz
  • Interface: JST SH 4-pin connector with 1mm pitch

Pin Configuration and Descriptions

Pin Number Name Description
1 SEL Select pin for mode configuration (floating or tied to GND)
2 DAT PDM data output
3 CLK Clock input for PDM data
4 GND Ground connection

Usage Instructions

Integration with a Circuit

To use the Adafruit PDM Mic with JST in a circuit:

  1. Connect the SEL pin to GND if you want to use the left channel. Leave it floating for the right channel.
  2. Connect the DAT pin to the data input on your microcontroller.
  3. Connect the CLK pin to a clock output capable of generating the required frequency.
  4. Connect the GND pin to the ground of your power supply and microcontroller.

Important Considerations and Best Practices

  • Ensure that the power supply is within the operating voltage range.
  • Use a pull-up resistor on the DAT line if your microcontroller does not have one built-in.
  • Keep the microphone away from noise sources such as motors or high-frequency signals.
  • Use proper decoupling capacitors close to the power pins to minimize power supply noise.

Example Code for Arduino UNO

#include <PDM.h>

// Define the CLK and DAT pins
const int clkPin = 2; // Connect to CLK pin of the microphone
const int datPin = 3; // Connect to DAT pin of the microphone

// Buffer to store audio samples
short buffer[512];

void onPDMdata() {
  // Callback function to process PDM data
  int bytesAvailable = PDM.available();
  PDM.read(buffer, bytesAvailable);
}

void setup() {
  // Initialize serial communication
  Serial.begin(9600);

  // Configure the CLK and DAT pins
  PDM.begin(clkPin, datPin);

  // Set up the PDM microphone
  PDM.setBufferSize(512);
  PDM.onReceive(onPDMdata);
  PDM.setGain(20);
  PDM.setSampleRate(16000); // Set the sample rate to 16 kHz
}

void loop() {
  // Main loop does nothing, audio processing is done in onPDMdata
}

Troubleshooting and FAQs

Common Issues

  • No Sound Detected: Ensure that the microphone is correctly powered and that the SEL pin is configured for the desired channel.
  • Distorted Audio: Check the clock frequency and ensure it's within the specified range for the microphone.
  • Low Volume: Adjust the gain setting in the code or check the microphone's placement and orientation.

Solutions and Tips

  • Verify all connections and solder joints for any loose or cold solder points.
  • Use an oscilloscope to check the clock signal and data output for expected waveforms.
  • Ensure that the Arduino library for PDM is up to date and properly included in your project.

FAQs

Q: Can I use this microphone with a 5V microcontroller? A: Yes, the microphone can operate with 3.3V to 5V, but ensure that the logic levels for data and clock are compatible with your microcontroller.

Q: How do I change the sample rate? A: The sample rate can be adjusted in the setup function using PDM.setSampleRate().

Q: What is the maximum distance the microphone can pick up sound? A: The effective range depends on the ambient noise and the sound volume. For clear audio, it is recommended to keep the source within a few feet of the microphone.

Remember to follow all safety precautions when working with electronic components and ensure that your work area is well-ventilated and free from static discharge.