Introduction: NES Controller Belt Buckle W/ Sound FX!
Here's a video of the belt buckle in glorious action:
Step 1: Materials
Super Mario Bros. FX Keychain (available online, $5-10, I got mine at Hot Topic for $10)
On/off switch (I got 2 SPDT switches from Radio Shack for $2.50)
Belt buckle, belt buckle blank (available from craft stores), or wire hanger
Soldering Iron (& flux, solder, etc.)
Hot Glue gun
Dremel or some other tool for cutting the controller board
Wire strippers & scissors
Small phillips scredriver
Drill w/ 1/16" bit
Step 2: Theory
Before we get started, let's discuss how this thing is going to work. On the keychain, when a button is pressed it completes a specific circuit that lets a microchip produce a specific sound effect. The button bridges the gap between a hot wire and an out wire to make that circuit. The NES controller works on the same concept, but with a different microchip that interprets the signal as telling Mario to jump (boing!) or spit a fireball.
Since both circuits work on the same principle (using conductive buttons to complete circuits), we can use one board to operate the other. All we have to do is solder connections between the hot wire and the out wires for each button. (see pic) Then when a button is pressed on the controller, the keychain is bypassed and the controller button completes the circuit and sends a signal to the microchip on the keychain board, creating a sound effect. All of the buttons work the same way, so any sound can be wired to any button.
The second picture shows the sounds each of the keychain button makes and how I wired them to the controller buttons, FYI.
Step 3: Dismantlification
First off, let's take these devices apart. Each one has a couple of screws holding it together which are easy enough to remove, just be careful not to strip the NES controller screws.
For the NES controller, cut off the cord connections at the board, but save the cord (we'll use the colored wires later).
The keychain is a bit trickier. Take out the external screws holding the housing together and the two smaller screws securing the circuit board in place. Cut the red and black wires leading to the batteries and then (carefully) pry out the speaker, which is held in place with a small amount of glue. This should free up the circuit board completely. Also salvage the batteries and the battery connections from the keychain. The connections can be removed by prying off the inside cover and using a screwdriver to pry them free.
Step 4: Attaching the Buckle Blank
Now for the belt buckle part. There are a few other instructables that have already addressed this process (see below). No matter how you do it, it's probably a good idea to do this step first.
Personally, I wanted to make a belt buckle that would fit on any belt. I went down to the local thrift store where they have hundreds of belts for $1.50. I found one with a buckle, and stripped it off of the belt. I had to clean it up a little (grind it to death) to make it flush with the back of the buckle. Then I just used some glue to attach it to the back of the controller and waited for the glue to dry (24 hrs....)
If you use my method, just be sure to not block any of the screw holes, as you may eventually have to take the buckle apart to replace the batteries.
Step 5: Trimming the Controller Board
In order to fit the keychain's speaker and battery, we're going to have to make some room inside the controller housing. We don't need the entire controller board intact, since we are only going to use the button contacts, not the microchip. Therefore, we can remove everything above the line drawn on the board in the picture below. You can do this best with a dremel tool, but be careful when it comes to removing the microchip. When you're done, you should have something similar to the 2nd or 3rd pic.
Step 6: Preparing for Soldering
Since the keychain has 6 sounds, we'll use 6 of the buttons (I used up, down, left, right, A, and B, but you can use select and start if you like). Therefore, we'll need to solder 7 wires - 1 "hot" wire and 6 "out" wires for each button. I drilled holes (1/16") at each on of my solder connections so I could feed in the wire from the backside of the board and not interfere with the buttons on the front side. The picture below shows the location of each of my drill holes/solder locations.
Finally, once all of your holes have been drilled, use a screwdriver to scratch the coating off the circuit, revealing nice shiny copper. Take the time to make a nice clean surface to make a good solder connection..
Step 7: Soldering the Button Connections
Now it's time to get to work! Before you start, you might want to consider which buttons you would like to make which sounds. For example, I wanted to make the Up button make the 1Up sound. Make notes as to which connections make which sounds, if you like.
I won't go into the details of soldering here, but I will tell you a couple of things I learned during this project.
1.) You will need to cut wires from the cord that are about 3-4" long.
2.) Be careful when placing wires on the backside of the controller board, as there are supports from the other side of the controller housing that make contact with the back of the board to keep it in place. See the pics for details.
Step 8: Installing the Speaker
With the controller board properly trimmed, installing the speaker is easy.
First, I trimmed the back cover of the controller a little bit. I removed a plastic piece that was in the way and drilled some 1/16" holes where the speaker was going to be to allow the sound to escape (even though the thing's pretty loud to begin with!).
Now superglue the speaker in place. It should fit snugly in the upper right hand corner, as shown below. We'll fit the rest of the components in next.
Step 9: Making the On/off Circuit
I figured it might be embarasing for this thing to go off during a meeting or class, so I decided to add an on/off switch. The switch is in line on the negative side (not the positive side) of the battery.
Using the red and black wires which come off of the keychain board, solder the black wire to one of the switch connections. Next, solder another black wire to the other connection on the switch. This wire will lead to the negative terminal of the battery. I duct-taped the batteries together to complete and test the circuit at this point.
Step 10: Installing the Battery Holder
Since duct tape won't hold the batteries forever, we need to make a battery holder in the controller housing. There aren't many triple-button-cell battery holders available online, so I opted to fabricate one from some thin/hard plastic I had laying around and the battery connectors from the keychain.
I cut three plastic pieces to house the batteries, then glued the battery connectors to 2 of them. Once the connectors were in place, I soldered the red and black wires to them. Using the duct-taped batteries as a template, I finally glued the three pieces in place. I also used a small piece of foam to prevent any other movement of the batteries.
The important thing here is to make a sturdy structure to restrict the movement of the batteries and maintain a solid consistent connection. I apologize for the 2 MP pictures from my phone, but I hope you get the general idea.
Step 11: RE-assembly
Now comes the tricky part - fitting it all inside that tiny box. Take your time, channel your origami skills, and pack the boards in there. I found the keychain board fits best right behind the D-pad at a slight angle (see pics) After that, just snake the wires around and fit the controller board on top. On the other side of the housing, I actually hot glued the button connectors into place. This isn't necessary, but it did make assembly a whole lot easier, and I imagine it will make changing batteries easier as well. Also be sure to put the batteries in!
Step 12: Enjoy!
Congratulations! You're a nostalgic circuitry genius! Now go forth and impress your friends with your saavy!