ISD1820 3-5V Voice Module Recording And Playback Module with Microphone and 0.5W Speaker
ISD1820 3-5V Voice Module Recording And Playback Module with Microphone and 0.5W Speaker
The ISD1820 Voice Module is a compact, low-power recording and playback module designed for various IoT applications, including voice assistants, smart home devices, and interactive toys. This module integrates a microphone, speaker, and audio processing circuitry, making it a comprehensive solution for voice-based interactions.
| The ISD1820 Voice Module is capable of |
| The ISD1820 Voice Module is suitable for a wide range of IoT applications, including |
| Parameter | Value |
| --- | --- |
| Operating Voltage | 3-5V |
| Current Consumption | 50mA (recording), 100mA (playback) |
| Audio Format | PCM, WAV, ADPCM |
| Sample Rate | 8kHz, 16kHz, 32kHz |
| Bit Depth | 8-bit, 16-bit |
| Speaker Power | 0.5W |
| Microphone Sensitivity | -42dB 3dB |
| Flash Memory | 128KB (maximum) |
| Dimensions | 25mm x 20mm x 10mm |
The ISD1820 Voice Module is a compact, low-power, and feature-rich solution for IoT applications requiring voice recording and playback capabilities. Its ease of use, high-quality audio, and small form factor make it an ideal choice for a wide range of projects and designs.
ISD1820 3-5V Voice Module Recording And Playback Module with Microphone and 0.5W SpeakerThe ISD1820 is a compact, low-power voice module that integrates a microphone, speaker, and recording/playback functionality. It operates on a 3-5V power supply and is suitable for various IoT applications, such as voice-controlled systems, audio assistants, and autonomous devices.Pinout and ConnectionsVCC: 3-5V power supply
GND: Ground
MIC: Microphone input
SPK: Speaker output
REC: Record button input
PLAY: Play button input
busy: Busy indicator output (high when recording or playing)OperationThe ISD1820 can operate in two modes: recording and playback.### Recording ModeTo enter recording mode, pull the REC pin low. The module will start recording audio through the built-in microphone and store it in internal memory. The recording time is approximately 10 seconds. When the recording is complete, the busy pin will go low.### Playback ModeTo enter playback mode, pull the PLAY pin low. The module will play back the recorded audio through the built-in speaker. The busy pin will go high during playback and return to low when playback is complete.Code Examples### Example 1: Basic Recording and Playback (Arduino)This example demonstrates basic recording and playback functionality using an Arduino board.```c
const int REC_PIN = 2; // Record button pin
const int PLAY_PIN = 3; // Play button pinvoid setup() {
pinMode(REC_PIN, OUTPUT);
pinMode(PLAY_PIN, OUTPUT);
}void loop() {
// Record audio
digitalWrite(REC_PIN, LOW);
delay(100); // Wait for recording to start
delay(10000); // Record for 10 seconds
digitalWrite(REC_PIN, HIGH);// Play back recorded audio
digitalWrite(PLAY_PIN, LOW);
delay(100); // Wait for playback to start
while (digitalRead(PLAY_PIN) == HIGH) {
// Wait for playback to complete
}
digitalWrite(PLAY_PIN, HIGH);
delay(1000); // Wait for 1 second before repeating
}
```### Example 2: Voice-Controlled LED (Raspberry Pi with Python)This example demonstrates a voice-controlled LED system using a Raspberry Pi and Python.```python
import RPi.GPIO as GPIO
import time# Set up GPIO pins
GPIO.setmode(GPIO.BCM)
REC_PIN = 17 # Record button pin
PLAY_PIN = 23 # Play button pin
LED_PIN = 24 # LED pinGPIO.setup(REC_PIN, GPIO.OUT)
GPIO.setup(PLAY_PIN, GPIO.OUT)
GPIO.setup(LED_PIN, GPIO.OUT)try:
while True:
# Record audio
GPIO.output(REC_PIN, GPIO.LOW)
time.sleep(0.1)
time.sleep(10) # Record for 10 seconds
GPIO.output(REC_PIN, GPIO.HIGH)# Play back recorded audio
GPIO.output(PLAY_PIN, GPIO.LOW)
time.sleep(0.1)
while GPIO.input(PLAY_PIN) == GPIO.HIGH:
# Wait for playback to complete
pass
GPIO.output(PLAY_PIN, GPIO.HIGH)# Check if audio contains specific command
# (e.g., "turn on light")
if audio_contains_command("turn on light"):
GPIO.output(LED_PIN, GPIO.HIGH)
elif audio_contains_command("turn off light"):
GPIO.output(LED_PIN, GPIO.LOW)except KeyboardInterrupt:
GPIO.cleanup()
```Note: The `audio_contains_command()` function is a placeholder for a speech recognition library or implementation specific to your project.Additional ResourcesISD1820 datasheet
Application notes and schematics
IoT project examples and tutorialsBy following these examples and understanding the operation of the ISD1820 voice module, you can integrate this component into various IoT projects and applications.