Need help Building a custom controller for speedrunning

Started by DarkXoa, July 24, 2016, 10:23:46 PM

Previous topic - Next topic

DarkXoa

So, here's the deal. I want to build a controller for speedrunning Super Metroid. My reason for doing this, is that I have learned to run this game using a PlayStation controller on an emulator. I am trying to make the switch to a console, as it is a significant time save, but I have problems with using an SNES controller due to ergonomics and button placement. I would also like to have a dpad with clicky buttons, like the dpad on an xbox1 controller, because it makes wall jumping very much easier. In a nutshell, I wanna take my PS2 controller shell and put a new PCB in it that has the following button mapping:
SNES-----PS2
A--------X
B--------L2
X--------Square
Y--------Circle
L--------R2
R--------R1
Start----Start
Select---L1

I have an SNES controller that I'm willing to gut for its cord and PCB connector; probably also the chip.

I have absolutely no experience with something like this, and I don't really know where to start, but I'm willing to do some research and learn. I'm looking for someone to point me in the right direction for this project.

NFG

Here's how I'd approach it.  There are always other methods, and depending how your research goes, my ideas may not work for your project.

You'll need a multimeter, some fine wire, and some soldering skills.  I'd rate this a moderate difficulty because there's not a heap of room in a PS pad.

There's only one component in the SNES pad: a chip.  What I'd do is unsolder it and put it in the PS pad, probably where the PS chip is (which I'd remove, along with any other components).

First, the theory: each button, including the d-pad, is a switch like any other in your life.  They each simply create an electrical connection between two points.  Normally, in the case of a controller, one of these two points connects to -every- switch.  It's called common because it's common to all points.  It's electrical ground.  Find this line on the PS pad.  It's possible that you're unlucky enough to have a pad without a common ground line, but I don't think this actually happens on PS pads (it's common on Xbox pads).

Next, identify the other line for each button and trace it back to the chip.  On the SNES you can follow the circuits easily enough, on the PS pad you may need the multimeter to follow them, as their route can be more complicated.

Make a chart of each button's connection to the existing chip, or any convenient place where you can attach a wire.

Put the SNES chip in the PS pad, the appropriate cable connections to it (there are five lines running to the SNES).  Connect the common line to ground.  Then connect the other SNES chip's pins to the PS buttons you want to use, mapping them accordingly.  D-pad is easy: up to up, down to down etc.  Then re-arrange your other buttons as you like.

That's it.  Done.

DarkXoa

What about attaching the controller wire to the PS PCB? The end result does have to be plugged into an SNES, after all. Also, I have a crappy Radio Shack soldering iron, but I've heard that these can get too hot for PCB applications. Would it work for this, or should I buy something with temp controls? I don't mind spending a bit of money on this project for the record.

Also thanks for the reply and advice! =D It sounds like this could definitely be a much simpler approach than what I had in mind, which would've been to build a whole new PCB.

DarkXoa

Well, I've hit a snag on this one, already. The chip in the PS controller is less than a quarter the size of the one in the SNES controller, and I don't really see room to fit all of those wires into such a small shell, so I guess it'd be back to my original idea. I know it's possible to make a homemade PCB, and I have some idea of how I would do it, but the main issue here would be, how do I get put contact points on it for the rubber dome buttons?

Andy-Antsinpants

I'd simply ask Raphaelon raphnet-tech.com if he has a simple ready-to-use adaptor (PS1 to SNES)available, or at least suitable adaptor circuit for making your own DIY cable.

NFG

Quote from: DarkXoa on July 25, 2016, 12:24:44 AM
Well, I've hit a snag on this one, already. The chip in the PS controller is less than a quarter the size of the one in the SNES controller, and I don't really see room to fit all of those wires into such a small shell, so I guess it'd be back to my original idea. I know it's possible to make a homemade PCB, and I have some idea of how I would do it, but the main issue here would be, how do I get put contact points on it for the rubber dome buttons?

Haha, we've disconnected our thought processes at some point.  Follow the traces from the switches on the PCB to the chip's location.  When removed, there'll be a series of metal pads left behind which you can solder your wires to.  Many PS pads also have larger circular 'test points' which you can easily solder to.  You don't attach things to the rubber membranes, it's impossible and insane.  =D

Your SNES chip will float loose in the PS pad, but with a little bit of electrical tape you can keep it under control easily enough.

NFG

I just opened up a PS1 Dual Shock pad and it seems like this is a totally simple operation.  Cut off the existing cord close to the PCB, cut the button & d-pad traces running to the chip (you don't even have to remove the chip).  Solder the wires to the ribbon-cable socket that runs from the button panel (with the d-pad and buttons) and run them to the chip which you can easily tuck in one of the 'handles', perhaps next to the smaller motor.  You can solder the wires from the SNES controller cord directly to the chip.  Tracing out the individual pins on that ribbon connector will likely take about as long as the whole soldering job, if you're quick.  ;)

That said...  Honestly, the PS pad is just a SNES pad with handles.  I mean that quite literally.  Get used to it.  =)