Hello and Welcome! If you have a technical question please check out our Forums. If you have an order or shipping question please refer to our Customer Support page. Please see all COVID-19 updates here and thank you for your continued support.
The SparkFun MP3 Player Shield is an awesome MP3 decoder with the capabilities of storing music files onto a run-of-the-mill microSD card, thus giving you the ability toadd music or sound effects to any project. With this board you can pull MP3 files from an microSD card and play them using only one shield, effectively turning any Arduino into a fully functional stand-alone MP3 player! The MP3 Shield utilizes the VS1053B MP3 audio decoder IC to decode audio files. The VS1053 is also capable of decoding Ogg Vorbis/MP3/AAC/WMA/MIDI audio and encoding IMA ADPCM and user-loadable Ogg Vorbis.
The VS1053 receives its input bitstream through a serial input bus (SPI). After the stream has been decoded by the IC, the audio is sent out to both a 3.5mm stereo headphone jack, as well as a 2-pin 0.1" pitch header.
This shield comes populated with all components as shown in the images and schematic; but it does not come with headers installed. We recommend the Arduino R3 Stackable Header Kit.
More information and troubleshooting tips for the MP3 Shield library can be found on one of the collaborator's website here.
Some great troubleshooting tips and information about the library and its functions can be found on the Library Support Page
A good, cheap ground loop isolator for protecting the older MP3 Shield from ground loops when connecting to an external amplifier can be found at this link This should solve your humming and buzzing problems.
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 12 ratings:
2 of 2 found this helpful:
Having purchased and built with 9 of these shields (7 from SparkFun, 2 from Mouser), I can confirm that they're very easy to use and inexpensive for what they do. I had similar initialization problems as Member 873628 with my first shield (worked with USB, failed 50% of the time under external power) but I suspect that it was just a problem with that particular shield because none of the other 8 required any special delays in order for them to initialize properly. That first shield has since stopped working altogether, so maybe it was defective, I dunno. I'd also like to add that the audio is fairly noisy--sounds like digital noise bleeding into the analog output--so you will want to keep the fidelity of your playback system fairly low. I got one shield that sounded like it had excessive data req noise in the output, which was the first time I became aware that there was any unusual noise at all. It sounded like a 16mm film projector from the '70s. Switching to my good amp & speakers, I finally heard that all of the circuits had some degree of digital noise, although it was not noticeable on computer speakers for the most part. Some of the noise can be addressed by adding extra Vcc bypass caps. Bottom line: if it's gotta work, budget one or two extras to be safe.
Update: I just updated both the SD library and the shield library and that appears to have addressed the initialization issues I have been occasionally seeing. Check to make sure you have the latest.
1 of 1 found this helpful:
This is a very nice shield for Arduino, it worked smoothly and I was able to connect play audio files with some push buttons.
Pros: Can play a specific audio track by calling its name, cheap price.
Cons: Separate pin headers, have to solder them, have to install 4 libraries, limited to only 9 audio tracks to be played. Audio tracks have to be of DOS 8.3 format, requires an SD card, and audio files must be stored on the root folder.
I created a full step by step tutorial on how to use and compared it to 1Sheeld's music player shield.
Here is the link: http://1sheeld.com/1sheeld-vs-sparkfun-mp3-player-shield/
4 of 4 found this helpful:
Spent 10 minutes setting up the shield on a redboard. Ran through the "FilePlayer" sketch. Worked like a charm. Ran through the "MP3 Trigger" sketch. Worked like a charm. Made a few mods to the MP3 trigger sketch to fit my needs. Worked like a charm. Only when I unplugged from the USB of my computer and tried to using the 9V/650mA wall wart did I start having problems. After a couple of days of pulling my hair out trying to figure out why everything worked seamlessly when plugged into the computer USB, but would only work maybe 1 out of 10 times when plugged straight into the wall, it dawned on me. After staring at the sketch, I thought that maybe the Mp3 file player and the MicroSD card reader did not have enough time to initialize, and therefore, caused an error. After playing around with a few delays throughout the setup procedure, I finally got it. By putting a 4 second delay at the beginning of setup, another 4 second delay after the sd card reader initialization, and a final 4 second delay after the mp3 initialization before the loop begins, it worked perfectly! After playing with the delay timing for a while, I found that a 2 second delay would work 1 out of 5 times. A 3 second delay worked about 3 or 4 out of 5 times. While a 4 second delay did the trick. Now, it does exactly what I needed it to do. I was unable to find much reference anywhere to anyone having an issue such as this? I was also unable to find many references of people powering this shield with a wall wort as opposed to USB from a computer? Hope this helps someone!
1 of 2 found this helpful:
I got 2 piecess of this card. It works fine, but I was surprised at the lack of Ardiino staddard fixing holes. They were in the previous version that I received about a year ago.
Very happy with the shield - it does exactly what I needed. Would be nice to have a few more available pins for the Uno, but works well with the Mega for projects with greater pin requirements.
This device performs well, although I haven't finished my project, and seems to have all the facilities I require to make a remote controlled (433MHz) MP3 Player. Postage and handling was very steep however.
Using with arduino Uno to make an mp3 player with sketch from CoolArduino. No problem with the Sparkfun Mp3 shield but had to change the arduino sketch for the display.
0 of 1 found this helpful:
All examples worked exactly the way they should, and I was able to attach it to an amp circuit very easily.
I had some initial trouble that turned out to be operator induced. Once I corrected my error, it worked fine.