MP3 Player

MP3 Player

In case the embedded video isn't working, here is a link


This project modifies the existing code for the vs1002 mp3 player (found at to add functionality of song selection via a rotary encoder and a pause option via a dipswitch. Song titles are displayed on the LCD while playing.


For the LCD Screen:

 GND  -- 0v
 VCC  -- 3.3v
 VO   --[ 1k resistor ]-- 0v
 RS   -- p10 
 RW   -- 0v
 E    -- p18
 D0   --
 D1   --
 D2   --
 D3   --
 D4   -- p24
 D5   -- p23
 D6   -- p22
 D7   -- p21

For the S/D Card:

SparkFun MicroSD Breakout Board
MicroSD Breakout    mbed
   CS  o-------------o 8    (DigitalOut cs)
   DI  o-------------o 11    (SPI mosi)
   VCC o-------------o VOUT
   SCK o-------------o 13    (SPI sclk)
   GND o-------------o GND  
   DO  o-------------o 12    (SPI miso)
   CD  o

For the MP3 Board

VIN-----------o (40) VOUT                        
       NC             MICN         RIGHT
      (15) o----------RST           GBUF-----------o  GND of Speaker
      (16) o----------DREQ          LEFT-----------o  VCC of Speaker
       NC             GPIO 2      GPIO 1              NC                       
       NC             GPIO 3      GPIO 0              NC                        
      (17) o----------BSYNC           SO-----------o (6) miso \
       NC             TX              SI-----------o (5) mosi  }SPI Bus
       NC             RX            SCLK-----------o (7) sck /
   GND (1) o----------GND             CS-----------o i.e.(14)

A DIP switch was also used in p28 to toggle the pause and seek functionality.

Files to download

The files


VS1053 MP3 Decoder Datasheet

All wikipages