Picture of 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.

Remove these adsRemove these ads by Signing Up

Step 1: Teardown

Picture of 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

Picture of 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

Picture of 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

Picture of 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.

ruebarb1 year ago
Thanks for posting this, I would like to add mp3 like you did but without a controller, I only want to toggle the play/pause button. I can't tell from the data sheet what the high and low voltages are, http://elmicro.com/files/parallax/propellerdatasheet-v12.pdf. Do you know or could you measure? Also using a single switch that when on to off to on would produce the same effect as the controller? Thanks for any help
Thanks for this, it works really well.

I want to be able to make the mp3 player totally wireless (through xbee). However, if I use the power of the MP3 player battery (rather than attaching it to an Arduino power) it doesn't work.

My electronics knowledge is still pretty basic...I'm guessing it could be either that a common ground connection is needed or that there's slight voltage difference between the MP3 player and Arduino.

Any ideas on how to fix this..?
Cecilias3 years ago
Se ve muy agradable y sencillo. ¿Se puede utilizar para descargar musica gratis?
Si, para musica de tipo MP3.
mykrotek3 years ago
Thanks for the great idea! I just used it for an upcoming project I am working on, and did a slight tweak on your idea to make the MP3 player more portable between projects. You can check it out at my blog at teknynja.com.