Winamp Remote



Ok, first off, you should know that this project was to create a little "remote control" for winamp so i can control my music from in bed (across the room). of course, there are remote packages you can buy premade (like IRman) but what's the fun of that? homemade is where it's at! i did a little looking around and decided that COMctrl would be the best software to use for this purpose. It allows for up to 15 buttons on a keypad, but since you gotta build your own keypad, this would get way complicated, so i went with just 4 buttons. it's really all i need, since each button can have 2 functions depending on whether you click it or double-click it. so i have 8 functions available to me, and i chose play, pause, next track, previous track, 5 sec. forward, 5 sec. back, volume up, and volume down.

You'll notice my remote is corded.. this is because i'm lazy and don't want to deal with the complication of adding infrared to a remote. also, it is cheaper to have it corded, since with ir, you'd need 2 devices: the remote, and a receiver, plus there'd have to be batteries in the remote, and it'd all turn into a complicated mess. and the fact that i'm not gonna be moving this thing around (it just hangs on the wall right next to my bed, since that's where i'll be using it) pretty much defeats the purpose of having the mobility of cordless.

well enough of my blabbin. here we go:


i spent a lot of time looking for good buttons, all of the ones i could find were too deep. i mean that, even though the button surface may be nice and small, you have to embed the thing like more than half an inch into whatever is gonna house the button, and that's no good, i don't want a fat remote. so what has nice thin buttons? after some digging around, i came across an old (non-working) cellphone my sister gave me. cellphones have nice buttons :D


i had a hell of a time getting that thing open... since i didn't have the right kind of tiny star-shaped screwdriver i took a hammer to it instead, thinking i'd just bust the case right off, but dang, that phone held together pretty well. in any case, here it is, with the nice buttons extracted


the picture on the left is the backside of the button sheet, and the picture on the right shows the 4 buttons i cut out of the sheet. they're arranged nicely in an up-down, left-right kind of way


at left is a piece of the phone cover that went around the buttons i'm using, and on the right you can see the hole i cut in my little project enclosure for this piece to fit in. this task was pretty easy with my dremmel


well it fits pretty good. and it's way better than what i can imagine it would look like if i tried to cut the 3 button holes with my limited selection of dremmel bits. i melted them together as best i could with a lighter, and squirted some glue in there to fill the gap


next up is the pcb that goes inside the black enclosure. on the left are the metal parts the buttons will connect when depressed, and on the right is the backside that shows the wires coming out.


on the left is a little more of the wiring, and on the right is my cord of choice: cat5 network cable (this is good because there are enough wires (8) for what i need (5), and it's hella long (50'))


omg the wiring suddenly got messy. i know i know, it's terrible, it's ugly, it's crude. but it WORKS. so whatever. anyhow, at this point, i realized i need a hole in my cover for the cat5 cord to come out, so i brought out the dremmel again and carved a quick one on the side


aha, it's looking good. i used an led and a battery to test each button before i attached the cord to the serial port connector-thingy

ok i'm missing some pics here of the serial port end of the cord, i'll have to open that up again and take some pictures again :( well not tonight, maybe later this week..


some zip-ties to hold it together at the edges ;-)


well there it is! note the "cool texture" i made by mistake with the lighter :p

the buttons are as follows:
button:leftdownupright
click:prev. trackpause/unpausevol. upnext track
dbl. click:back 5 secplay from startvol. downforward 5 sec