Adafruit Product Code:
This breakout board is the ultimate companion for the VLSI VS1053B DSP codec chip. The VS1053 can decode a wide variety of audio formats such as MP3, AAC, Ogg Vorbis, WMA, MIDI, FLAC, WAV (PCM and ADPCM). It can also be used to record audio in both PCM (WAV) and compressed Ogg Vorbis. You can do all sorts of stuff with the audio as well such as adjusting bass, treble, and volume digitally. There is also 8 GPIO pins that can be used for stuff like lighting up small LEDs or reading buttons.
All this functionality is implemented in a light-weight SPI interface so nearly any microcontroller can play audio from an SD card. There's also a special MIDI mode that you can boot the chip into that will read 'classic' 31250Kbaud MIDI data on a UART pin and act like a synth/drum machine - there are dozens of built-in drum and sample effects! But the chip is a pain to solder, and needs a lot of extras. That's why we spun up the best breakout, perfect for use with an Arduino but also good for other microcontrollers that just don't have the computational power to decode MP3s.
The breakout is slim enough to fit on a breadboard with 1 row of holes left over for wiring. There's 3.3v and 1.8v regulators onboard with ferrite beads and analog filtering for quality analog output. There's a microphone input port that you can wire up a line-in or mic to and record compressed audio. All 8 GPIO are broken out and they all have built in 100K pulldowns, simply connect your button from the GPIO pin to 3.3V for an active-high connection. You'll likely want to play music from a microSD card so we added a holder on-board. And since we know so many of our customers use 5V microcontrollers like the Arduino, we made the interface pins all 5V compliant with level shifters so you can use the chip at 3V or 5V power/logic!
Each order comes with a fully assembled and tested breakout board, some 0.1" male header you can solder to the breakout so it plugs into a breadboard and a bonus stereo headphone jack that will be handy when you want to plug headphones in!
New! As of Sept 24 2013, all orders will come with v2 which is nearly identical but now has 220uF stereo blocking capacitors on the output. This means you can plug the output into headphones or a stereo without risk of damage. Essentially we integrated the extra capacitors onto the PCB itself, saving you wiring and effort! If you have an older v1.0 which does not have the two big round silver capacitors on board, you can drive a pair of 30ohm headphones directly from the LOUT/ROUT pins if the 'ground' connection is tied to GBUF however this is not a line-out connection. If you want to connect to a stereo system or powered speakers with a v1.0 board, fit the two included 100uF electrolytic caps in series on the LOUT/ROUT pins between the breakout and the input of the stereo, then connect the common ground to AGND
If you just need loudspeakers, our 3.7W stereo amp board plus two 3W 4ohm speakers will give you lots of boom and you don't need any extra blocking caps because the amplifier has differential inputs.
Check out our detailed tutorial & excellent Arduino library that demonstrates everything cool about this library: playing music off an SD card, using the GPIO pins as input/outputs, playing music using an interrupt (so it's in the background), using the VS1053 as a MIDI synthesizer (no SD required), and recording Ogg vorbis audio from a microphone/line-in to SD.
VS1053 Codec + MicroSD Breakout - MP3/WAV/MIDI/OGG Play + Record (13:01)