Introduction: ISD1820 Arduino Voice Record/Playback Tutorial

About: FactoryForward is an Electronics Distributor and E-commerce Store, with a goal to bring new technology and latest microcontroller development boards and sensors to all ages..

The Voice Record Module is based on the ISD1820 chip, a multiple‐message record/playback device.

It can offer true single‐chip voice recording, non-volatile storage, and playback capability for 8 to 20 seconds. The sample rate is between 8.0 KHz to 3.2 KHz for the duration of 8 to 20 Seconds for the Recorder. This module use is very easy to use, which you could direct control by the push button on board or by Microcontroller such as Arduino, STM32, ChipKit etc.

You can use this module for projects like Talking Tom, VoiceMailbox and More.

Complete tutorial with the code on our blog.

Step 1: Specifications

  • Push-button interface, playback can be edge or level activated
  • Automatic power-down mode
  • On-chip 8Ω speaker driver
  • Signal 3V Power Supply
  • Can be controlled both manually or by MCU
  • Sample rate and duration changeable by replacing a single resistor
  • Record up to 20 seconds of audio
  • Dimensions: 37 x 54 mm

Step 2: Modify Record Duration Using a Resistor

If you want change record duration, an external resistor is necessary to select the record duration and sampling frequency, which can range from 8 – 20 seconds (4‐12kHz sampling frequency). The Voice Record Module of our provides default connect 100k resistor by a short cap. So the default record duration is 10s.

Check the image attached in this step if you are not able to see it clearly.

ROSC Duration Sample Rate Bandwidth

80 KΩ 8 Sec 8.0 KHz 3.4 KHz

100 KΩ 10 Sec 6.4 KHz 2.6 KHz

120 KΩ 12 Sec 5.3 KHz 2.3 KHz

160 KΩ 16 Sec 4.0 KHz 1.7 KHz

200 KΩ 20 Sec 3.2 KHz 1.3 KHz

If you want to extend it to Speakers (High power), you can use LM386, D2283, D2322, TA7368, MC34119 etc amplifier IC.

Step 3: Pinout

  1. VCC– 3.3V power supply
  2. GND– Power ground
  3. REC – The REC input is an active‐HIGH record signal. The module starts recording whenever REC is HIGH. This pin must remain HIGH for the duration of the recording.
  4. REC takes precedence over either playback (PLAYL or PLAYE) signal.
  5. PLAYE – Playback, Edge‐activated: When a HIGH‐going transition is detected on continues until an End‐of-Message (EOM) marker is encountered or the end of the memory space is reached.
  6. PLAYL – Playback, Level‐activated, when this input pin level transits for LOW to HIGH, a playback cycle is initiated.
  7. Speaker Outputs – The SP+ and SP‐ pins provide a direct drive for loudspeakers with impedances as low as 8Ω.
  8. MIC – Microphone Input, the microphone input transfers its signals to the on‐chip preamplifier.
  9. FT – Feed Through: This mode enable the Microphone to drive the speaker directly.
  10. P‐E – Play the records endlessly.

You can control the Voice Recorder Module ISD1820 directly with onboard Buttons.

Connect VCC from ISD1820 to any 3V power supply. In our case, we have connected to 3.3V on ArduinoConnect GND to GND on Arduino.

Step 4: Start Using the Module!!

  • Push REC button then the RECLED will light and keep push until record end.
  • Release the REC button

Select Playback mode:

  • PLAYE, just need push one time, and will playback all of the records and until the pre-record sound end.
  • PLAYL, you need always push this button until you want to stop playback record or end.
  • P-E mode, when short P‐E jumper the record will playback repeatedly until jumper off or power down.
  • FT mode, when short FT jumper, that means all of you speak to MIC will direct playback to Speaker.

Step 5: Example Project: Leave a Message to Your Loved Ones!!

In this tutorial, we will use IR Sensor, ISD1820 Voice Recorder and Arduino to record and leave a message.

  • When you wave across IR sensor it starts recording for 10 Seconds.
  • When PLAYE button on the Voice Recorder is pressed it playbacks the recorded voice.

Step 6: Circuit Diagram

The Circuit diagram for this project is attached here. You can also check out our blog for detailed connections with Code.

For More tutorials on Arduino, Raspberry Pi, MicroBit and IoT Visit our Blog - FactoryForward