Introduction: Adding MP3 to Your Project for $3.00

As a Propeller microcontroller user, it's not a big deal to play WAV files with my MCU, but MP3 playback is something too complex for the Propeller, the Ardunio or PICAXE microcontrollers.   Shopping for an add-on card is almost downright depressing, with  simple breakout boards starting at $20.00 -- $199.00.

Fortunately, Hong Kong has mastered ultra cheap MP3, and with a little hacking you can add it to your project for around $3.00.
I'll demonstrate the hack using a Propeller, but the best part is that ANY micro-controller can use the device once you've got the project finished.

Required Parts:
A generic MiniClip MP3 player (Source Ebay prices range from $0.26 -- $3.00)
Your favorite microcontroller.  (I'll be using Propeller Platform, but any will do fine.)
A hot glue gun
A steady hand, and basic soldering tools.




Step 1: Teardown

Grab a tiny philips screwdriver and pull the two screws from the top of the Miniclip player.  
The whole thing should slid out with a little prying.  

Notice the little battery, as well as red/black wires.   The Miniclip runs great a both 3.3v and 5v.

Step 1 > Carefully, desolder and set the battery aside, we'll use part of it later.

Step 2: Replace the Power Wires

Step 2 > Replace the battery connections with two stronger power wires. 
Recommended > Add some hot glue to strengthen the connections once you've soldered them in place.

I used a couple breadboard wires.

Step 3: Adding the Control Wires

You'll need a steady hand for the next step...

Step 3 > Solder wires to the center of the forward & pause/playback controls. I recycled the wire from the battery.
Be very careful to only make connections with the "center" of the connection pads!
Also, don't heat the pads too much!
 I lost the center button on mine.  (Note the image)

Recommended: Once you have the connections soldered in place, use some hot glue to strengthen the connections.

Special note:   A keen observer will notice that the connections I've listed do not correspond to the actual buttons.  I've discovered that the method I'm using works fine.   See the second image for a map of the controls as we'll use them.  


Step 4: Controlling the MP3 Player

Controlling the MiniClip player is a snap!

Hook the Power/Ground wires to either 3.3v or 5v DC.   I grabbed power from my microcontroller board.

I hooked the play line to P1, and the forward line to P2 of the Propeller.

Why it works:
When the program launches, I set both of these lines "high".
When I need to toggle the button I pull the output "low" for a moment, then return it to a "high" state when I'm finished.