CS122A Voice Recognition Music Player

This is the Voice Recognition Music Player. It can play up to 33 songs depending on how many song titles and artist you store.

Step 1: PARTS:


  • Arduino Uno
  • Arduino Mega
  • LCD 16x2 Display
  • 2x ATMega1284
  • Smakn Speak Recognition Module
  • HC-08 Bluetooth Module(iOS compatible)(Amazon.com)
  • MicroSD card Adapter Reader (Amazon.com)
  • 200x Gain LM386 Audio Amplifier Module(Amazon.com)
  • 4Ω Speaker.
  • 8 Single LED's
  • 8 Resistors (330Ω)
  • Potentiometer(103)

Step 2: First ATmega1284

SPI Communication between two ATmega's 1284

  • Connect Pin 5 to Pin 5
  • Connect Pin 6 to Pin 6
  • Connect Pin 7 to Pin 7
  • Connect Pin 8 to Pin 8

USART Communications between Bluetooth module and First ATmega

  • Connect GND Pin to GND on breadboard
  • Connect VCC to 5V on breadboard
  • Connect Tx to Pin 17 on ATmega
  • Connect Rx to Pin 16 on ATmega


  • Use LightBlue app for IOS and send hex values though Characteristics when connected to the HC-08.
  • Use "Write new value" and write the hex value of your choice.

USART Communication between First ATmega and Arduino MEGA

  • Connect Pin 18 to Pin 14 on ATmega
  • Connect Pin 19 to Pin 15 on ATmega

Step 3: Second ATmega1284

Connect 8 LED's to ATmega

  • Connect LED(Long side) to Pins 33-40.
  • Connect 330Ω Resistor to each LED and the other end to GND on the breadboard.

Connect LCD to ATmega.

  • Connect LCD Pin 1 to GND on breadboard
  • Connect LCD Pin 2 to 5V on breadboard
  • Connect LCD Pin 3 to Potentiometer (10KΩ) through to GND.
  • Connect LCD Pin 4 to ATmega Pin 20
  • Connect LCD Pin 5 to GND.
  • Connect LCD Pin 6 to ATmega Pin 21
  • Connect LCD Pin 7 - 14 to ATmega Pin 22-29
  • Connect LCD Pin 15-16 to VCC - GND

Step 4: Arduino Uno

Connect MicroSD card Adapter to Arduino Uno.

  • Connect GND to GND on Arduino
  • Connect VCC to 5V on Arduino
  • Connect MISO to Pin 12
  • Connect MOSI to Pin 11
  • Connect SCK to Pin 13

Connect CS to Pin 4Connect 200x Gain LM386 Audio Amplifier Module to Arduino Uno

  • Connect two GND to GND on a breadboard
  • Connect IN to Pin 9 on Arduino
  • Connect VCC to 5V on a breadboard

Connect Speaker to Audio Amplifier Module.

  • Connect + to VCC on Audio Amplifier
  • Connect - to GND on Audio Amplifier

Connect Arduino Uno to First ATmega1284

  • Connect Pin 2 to Pin 15 on ATmega
  • Connect Pin 3 to Pin 14 on ATmega

Add TMPpcm-master.zip to Arduino Library

  • Sketch >> Include Library >> Add zip Library

Step 5: Change Mp3 to Wav Files


Step 6: Arduino Mega

Connect Smakn Speak Recognition Module(SRM) to Arduino MEGA

  • Connect SRM GND to GND on breadboard.
  • Connect SRM VCC to 5V on breadboard.
  • Connect SRM TX to Pin 10
  • Connect SRM RX to Pin 11

Upload VoiceRecognitionV3-master.zip to Arduino Library

  • Click on then Sketch >> Include Library >> Add zip Library


  • Train up to 80 words using sigtrain. eg(sigtrain 0 BrunoMars)
  • It will train Bruno Mars to position 0 and can be used using load 0.
  • While in load when it hears Bruno Mars it will output it in the Serial Monitor.
  • You load 7 commands at a time and see how many are in and what values are in load using vr.
  • You can clear the load by using clear.

Step 7: Final Schematic and End Product



    • Backyard Contest

      Backyard Contest
    • Frozen Treats Challenge

      Frozen Treats Challenge
    • 1 Hour Challenge

      1 Hour Challenge