About the Software

The software for this project is based on the work done in the AVR Butterfly MP3 project. It is licensed under the GNU GPL v2

I'm not big on C++ for embedded purposes so my initial port of the MP3 routines are a little rough. Please submit any bugs you find in the forums at SourceForge

The current version of the software is available on the downloads page as arduinoMP3_library.zip. To use this software download and extract into the libraries directory in your Arduino home directory.

Complete Kits are available from The Brokentoaster Shop


Their are currently four basic examples that are available at this time. They take the code from the ButterflyMP3 project and show how it can be applied to Arduino hardware.


A simple example to read and debouce the joystick position. When a change in joystick position is detected the direction is written on the serial port. The baud rate of the test output is 115200.

Example output from the Joystick sketch.
Arduino MP3 Shield Joystick Test
Joystick : UP
Joystick : RIGHT
Joystick : LEFT
Joystick : LEFT
Joystick : LEFT
Joystick : DOWN
Joystick : DOWN
Joystick : DOWN
Joystick : PUSH

MP3 Test

A test of basic functionality of the VS1011 decoder. This example will communicate to the decoder chip, read and write to the registers and initiate a sine-wave beep test. The baud rate of the test output is 115200.

Example output from the MP3 Test sketch.
Arduino MP3 Shield VS1011 Test
Init IO ... OK
Init_chip ... OK
Sine_test ... OK
Read Reg 0: 820
Read Reg 1: 20
Read Reg 2: 0
Read Reg 3: 9800
Read Reg 4: 0
Read Reg 5: BB80
Read Reg 6: 0
Read Reg 7: 0
Read Reg 8: 0
Read Reg 9: 0
Read Reg 10: 0
Read Reg 11: 0
Read Reg 12: 0
Read Reg 13: 0
Read Reg 14: 0
Read Reg 15: 0

MMC Test

A test of the MMC/SD reading routines. This test will attempt to communicate with the SD or MMC card in the socket. If successful it will read raw sectors from the disk and also print details about the filesystem. This is limited to FAT16 disks only. The baud rate of the test output is 115200. You can see an example of the output in this blog post.

MP3 MMC Test

A combination of the other tests to read an MP3 file from the MMC/SD card and play via the decoder chip. The baud rate of this test is 115200. The example output is the same as the MMC Test skecth above but plays the first song found on the card.