I present this new Arduino project: A full MP3 player based on Arduino.
As you can see in the photo, the idea was to build a standalone player, in the style of antique radios or 'tapes', in the age of Iphones ....
The player uses a small module based on the VS1002d chip (now discontinued, but who had a drawer). The module in question I bought at  Futurlec . Currently you can get similar modules on ebay for a bit more than 10$, although the chip is the VS1003 o VS1053. You can also use a SparkFun MP3 shield, but significantly more expensive (this shield already includes an SD slot).
The three chips are quite compatible in terms of programming, and indeed almost all initialization the I have taken from the library to the SparkFun MP3 Shield ;-)

Elements of Arduino mp3 player :
  1. Arduino
  2. Mp3 module based on chip VS 1XXX
  3. SD Module (It is also available on ebay)
  4. 4x20 characters  LCD
  5. Small amplifier
  6. 2 speakers.
Both the SD as the MP3 module are connected to the Arduino using the SPI bus. The LCD is connected in 4 bits mode to save Arduino pins.
This is a table with the connections between  Arduino and the other components. In parentheses, the name of the individual connections on modules (and the pin in the SD card). 

PIN Arduino MP3 ModuleSD CardLCDButtons
4---- ENABLE  --
6CS (XCS)------
7DCS (BSYNC)   ------
8------Encoder A
9--CS (CD/DAT3-1)   ----
10------Encoder B
11MOSI (SI)MOSI (CMD-2)----
12MISO (SO)MISO (DATO-7)----
13CLK (SCLK)CLK (5)----

Both the MP3 module and SD card work with 3.3 V, making it necessary adjust the levels to make them compatible with the Arduino 5V. The simplest option is to use voltage dividers with a pair of resistors. For the signals to the micro is not necessary, the 3.3 V are interpreted as high level without problem.

The schema is as follows (clik to enlarge):
Arduino MP3 Player Schema
According to the modules that you use for MP3 and SD, you will have to set the pins of the connectors (the order shown in the diagram does not correspond to any particular module).
If you use the SparkFun MP3 shield, Read  the documentation to set the pins for both CS and for SD MP3 and modify it as necessary in the source code.

Arduino MP3 Player VS1002 VS1003 VS1053

In the next post the code ...

If you liked it, remember to share it on your favorite social network. Thanks


August 17, 2013 at 11:49 AM

Dear Sir

We are extremely interested in your project. Could you please email me at m.louise.dreyer@gmail.com.

We would like to get in contact with you.

Thank you kindly

October 22, 2013 at 10:01 PM

Dear Sir,
Good night

I are extremely interested in your project. Could you please email me
it's urgent. renatoalves1900@hotmail.com
please contact

January 28, 2014 at 5:49 PM

I have a question...
If playing an MP3 song...then I turn it OFF...when tunr it ON again.it will start playing from beginning or it will continue from last played song ?

Thank you

February 12, 2014 at 12:45 PM


It looks awesome!
What kind of encoder did you use?

Kind Regards

February 16, 2014 at 11:00 AM

@Jory Zoetendaal
An cheap 'rotary encoder switch' found at ebay ...

February 21, 2014 at 8:49 PM

@JAJTNo, the state is not saved. But you can save in the EEPROM of Arduino.

March 11, 2014 at 8:53 PM

if I use the shield mp3 still need Mp3 Mini board?

Post a Comment


Arduino (8) Christmas (1) FFT (2) Lights (4) Microphone (1) MOC3041 (1) MP3 (2) MP3 Player (2) Optocouplers (1) Power (1) Remote controller (1) RGB Led (3) SD (2) Triac (1) TSOP1738 (1) ULN2003 (1) vs1002 (2) vs1003 (2) vs1053 (2) WS2811 (1) WS2812 (1) WS2812b (1) Xmas (1)

Versión española

Versión española
Arduino es Guay!!

Search in this blog


Follow in Facebook

Powered by Blogger.