First, we need to unscrew the five Phillip screws from the back of the controller. Set aside the screws together in a group. Carefully remove the back cover. Take out the main cable from the controller and gently remove the PCB from the enclosure. You can set aside the front and back covers, go ahead and leave the buttons and rubber elastomers inside of the front cover.
How do the buttons work?
Each button is made of 3 parts - theres the plastic part that you press, beneath that is the elastomer which is a rubber molded piece with a conductive bit that goes underneath the plastic part, and finally on the PCB there are two interdigitated and exposed traces. When the user presses the plastic button, it pushes down on the elastomer which then pushes the conductive rubber onto both traces, shorting them.
There is also a black blob in the middle. This blob is a chip that
takes all the button inputs and then converts it into the way that the
SNES wants to hear. Thats all fine, but we dont want to use the blob
because we are going to listen to the chips directly.
The question is now how can we listen to all the buttons? Luckily, the Bluefruit EZ-Key is designed for just this task - there are 12 'inputs' that can be connected to buttons. When the buttons are shorted to ground, a keypress is sent. No microcontroller or programming is required.
If you're adapting a different gamepad, check out the PCB and buttons, chances are its nearly identical
Next up: we need to solder new wires to these traces and wire them up to the EZ-Key bluefruit.