The Universal PCB (UPCB for short) project was started to allow a single game controller, especially fighting sticks, on as many different consoles as possible. Information about the project can be found on the following thread in the Shoryuken.com forums: Shoryuken.com
This Instructable will guide you through the steps necessary to install an assembled UPCB into an arcade stick. Pictures and details will be from the installation in my Hori Real Arcade Pro 2 (HRAP2) stick. At least in the beginning, this Instructable will be fairly focused on the HRAP2 installation, but will over time grow to cover topics for installing in any arcade stick.
Step 1: Remove Bottom Plate
Flip the HRAP2 over, and you'll find eight Phillips head screws hold the bottom metal plate in place. All of the screws are visible, so there is no need to remove the rubber feet.
Unscrew all eight screws, and set aside someplace safe. Lift and remove the plate. If you have difficulty lifting the plate, a small flat head screwdriver can be used between the cable and metal plate to lever it up enough to grab with your fingers.
Step 2: Remove Playstation Cable
The Playstation cable is threaded through a few columns to provide strain relief. Lift the cable up from the columns, and pull straight up. The connector to the PCB is made to be disconnected and should pull out fairly easily.
Set the cable aside. We won't be needing it for installing the UPCB, but it provides a perfect cable for converting into a Playstation UPCB cable.
Step 3: Unscrew PCB Mounting
The original Hori PCB is attached to the turbo switches on top, which is mounted via 2 Phillips head screws from underneath. Unscrew these and set them aside.
Step 4: Remove Carriage Bolts
The top control panel is connected to the HRAP body via 6 carriage bolts. The nuts and locking washers are accessible from underneath.
If you have access to a 1/2" bit driver, these can make removing the nuts easier. If not, use a pair of long nose pliers and rotate the nuts counter clockwise until they are loose enough to remove with your fingers. Remove the nut, washer and bolts, and store them someplace safe. Repeat for the rest of the carriage bolts.
The top control panel is heavy, and other than these carriage bolts, is attached only with some wire we want to preserve. It is very important that the top control panel be supported when removing the last carriage bolts. If it's allowed to fall, it could cause damage to the wires or the parts.
Once all carriage bolts are removed, support the top control panel in place with one hand and flip the entire thing over.
Step 5: Disconnect Wires
You can now lift up the top control panel entirely. You'll see everything connected with a bundle of wires, all heading towards the PCB under the turbo switches.
If you lift up on the turbo switches, the white plastic piece will come away from the base easily. Flip it over and you'll see all of the wires connecting to the PCB. Trim every single one of these wires as close to the PCB as you can. We will be using these wires, so we want them as long as possible.
Set aside the PCB\turbo switch part. We'll be getting back to it shortly.
Step 6: Wire Up Stick Connector
The Sanwa stick installed in the HRAP2 uses a 5 pin connector that is already in place. We're going to use it as well.
Starting at the stick connector, separate the 5 wires going to the stick from the rest of the bundle. Set the rest of the wires through the hole in the control panel to keep them out of the way.
Check the length of the wires from the stick. We want them pretty close to the same length. Trim however much is necessary for them to be within 1/2" of each other. Strip about 1/4" of insulation off of the end of each of these 5 wires.
For this step, you will need a 6 pin Molex KK connector, and the crimp pins to go with it. Looking at the crimp pins, there are two places we'll be crimping: a smaller section in the middle of the pin, and the longer tabs on the end. We'll start with the middle. Place the wire into the groove of the pin, with the insulation ending between the two crimp points. Use a pair of needle nose pliers (or a proper Molex crimping tool if you're rich) to bend and squeeze each of the two flaps over the wire in turn. You don't want to have them just bend in half and go flat; you want them to wrap around the wire and each other. If you take a peek at the connector itself, we'll have to push these pins into a very little hole, so get the wire gripped securely, wrapped as tight as you can. When both are folded in place squish them down hard with the pliers. Repeat the same process with the larger flaps over the insulation of the wire. Getting the larger flaps to cooperate with such small wire can be a pain. If needed, you can clip ONE, and only one, of the flaps to make it shorter.Fold that flat around the wire first, and wrap the longer flap all of the way around over it. Press hard with the pliers to secure it. Repeat for all five wires.
Now all five wires are ready to be inserted. Before inserting the pins, take a moment to verify you know where they should be going.
The six pin stick connector is labeled for each pin: V G D U R L, for VCC, Ground, Down, Up, Right, and Left. Go ahead and insert the plastic connector on the header to make sure you have the orientation the right way; the connector is keyed to only go on one way.
Next, let's identify what each of the wires coming from the joystick are. Check the wiring diagram below and compare it to how the harness is oriented in your stick. It probably matches the second picture, with the pins of the harness pointing at the buttons. The order of the colored wires should match those in the picture; compare to make sure. If they aren't, then write down the color of the wire, and the function it plays according to the order in the harness. You need to know which pin goes to which direction and ground.
In my case, the order of the wires and the orientation of the Sanwa PCB match the second image, which tells us:
Black - Ground
Green - Left
Yellow - Right
Orange - Down
Red - Up
If you want to take a moment to test it out, use a multimeter. The connection between each direction and ground should show low resistance when the matching direction is pressed.
Now that we know the function of each wire, we can start inserting them into the Molex connector. The pin marked 'V' on the UPCB won't be used, since the stick doesn't require power. Start inserting each pin into the appropriate spot on the molex connector. When it is inserted all of the way, you should hear a little 'click' as it locks in place.
Once all five wires are installed, bundle up the stick wires with a few zip ties to keep them together and looking nice.
Wiring diagram created by TheRealNeoGeo of Akihabara Shop, used with permission.
Step 7: Wiring the Buttons
Next, we'll be attaching the wires of the main play buttons to a 16 pin IDC connector that will plug straight into the UPCB.
I won't lie; this part is a little frustrating, and can be very difficult to get right the first time. The nice part is that even if you flub it up the first time, the second time is guaranteed to be easy. Read on to see what I mean.
The main button connection on the UPCB supports the main six play buttons, Select, and Start. Eight buttons total. The HRAP has ten buttons. Figure out the main six button you usually use for play, and remove the wires for the last two play buttons entirely. As you can see in the completed picture on the first page, the right-most two buttons are removed. If you wish to use these extra buttons, you can, but we will be wiring them up in a later step; set those wires aside for now. For this step, we want the main 6 play buttons, Select, and Start ONLY.
Grab an IDC connector, and disassemble it into all three pieces. The part that plugs into the IDC header has a number of grooved teeth in it. Each one of those teeth will have one and only one wire going into the groove of that tooth. When we assembled the next piece on top, it will push the wires down deep into the groove, pushing or cutting the insulation so the metal of the tooth touches the wire. That's why they're called IDC: Insulation Displacement Connector.
Lightly place the toothy piece into the button connector on the UPCB. We want to make certain we are putting the pairs of wires in the right spot, so we need to make sure the connector will be oriented as we like.
If you look at the first picture, you'll see the connector resting in the button header. To the right is another blank UPCB so we can see the silk screened labels. The topmost button is labeled 'SEL' for Select. Both wires for the Select button are colored black on my stick, and here you can see where I've placed them in the top two teeth. One down, 7 to go. It doesn't matter which of the two wires are in which of the two teeth, so long as there is one each in both of the first two teeth.
Now go down the line, a pair of wires at a time, filling each tooth in turn. The next button is labeled 'STA' for Start. Start wires are white, so they go in the next two teeth. Repeat, 'JAB' for Jab, 'STR' for Strong, 'FIE' for Fierce, 'ROU' for Roundhouse, 'FOR' for Forward, and 'SHO' for Short.
Getting these wires to stay in place, especially without bending the teeth, is extremely difficult. The trick to getting this done properly is to have the wires secured in the right order FLAT. If they are flat together, then squishing the connector on properly is a snap. Perhaps some really strong double sided tape would do the trick, but I haven't tried it. The way I did it was to get the wires in order inside the first IDC connector, without caring about the teeth or anything else, and locking the clamping piece in place. This bent the teeth all to hell and shorted a couple of wires and stripped the end insulation off of one. But, since they were in order and nice and straight, I could attach a second IDC connector right next to it. Since the wires were right next to each, flat, and in order, I just squished the clamping piece down on the IDC piece just like if it were a ribbon cable. The wires and teeth lines up perfect, and gave a perfect set of connections in no time.
Once all 16 wires are in place, use the clamping piece. Put the tabs in place on the main piece, and squeeze in has hard as you can. If you have some sort of tool that can apply pressure smoothly and evenly over a long surface, such as a vice, go ahead and do so. I have not had any luck using pliers for this, but a cheap vice does the trick smoothly. The clamping piece should lock in place, and there should be no teeth visible.
If you want to see an IDC connector perfectly done, just grab an old IDE cable and look at the ends.
Step 8: Extra Buttons
If you want to have the two extra buttons available for play, you'll need to connect them to the UPCB board. Each of the two buttons has two wires; one needs to go to ground, and the other to either RA0 (the top of the two) or RA1 (the bottom of the two). You can choose to solder them directly to the spots on the board, but this is rather sloppy.
The way I chose to go is to use standard .1" headers and connectors. In the first picture below, you can see the headers installed on the UPCB. Each button has two wires going to a two pin connector that slide right onto the headers.
Place the header on the connector, put the quick disconnects onto the buttons, and secure the extra button wires to the collection of wires going to the IDC connector with zip ties. The buttons on mine won't be used, so I stashed the four wires in one of the size cubby holes of the HRAP case in case I decided to install the buttons in the future.
The one marked RB5 is the optional programming button. We'll be covering that next.
Step 9: Programming Switch
The plastic piece that houses the turbo switches and the original PCB nicely fills up the hole in the metal control panel. Without some hefty creative talents, this is almost impossible to replace. We could easily leave it there with non-functional buttons, but I wanted to use at least some of it. The left most 'slow' switch would be perfect to use as the UPCB 'programming' button.
All we need to do is make it so that raising the switch connects the two wires we solder to it. So let's take a peek and see how we can do that.
Turn the plastic piece so the switches face the floor. You'll see two small tabs on one side holding the PCB down, and one large tab on the other side. Push the small tabs gently so you can lift and remove the PCB. Be careful doing this; the switches are not held in by anything, and you do not want to lose any, so keep the plastic piece level. Set the plastic piece with all switches aside for now.
Look at the side of the PCB that faced the sliding switches. It is easy to see which set of pads was for the 'slow' switch, SW1. It's the only one that has no traces going to the square pad in the upper right. That's because it only goes up one click. The middle right pad is the one we're concerned with. The left side pad is entirely connected to ground. Each of those pairs of solder points on the sides is for one of the original buttons, and one of each pair is connected to ground. So, all we need to do is connect the middle right pad to one of the traces normally meant for a button. Confused yet?
Turn the PCB over and take a peek at the real guts of the board. That single chip controls everything when its plugged into a Playstation. It's a shame, but we just don't need it any more. In order to make sure we don't mess up anything, it's best if we remove this chip.
Take some soldering flux, and apply it across all of the pins. Lay down some copper braid over top of the pins, and apply a hot soldering iron. The heat with melt the solder, the flux will help it flow, and the copper braid will suck it up. You may have to go a couple of times over each set of pins, but we're not too concerned with the chip surviving, or most of the PCB surviving for that matter. See the section of pins marked 1-12? Those are the ones we want. All the rest can get torn to hell and it won't matter.
Desolder and remove the capacitor as well.
Now that the IC and capacitor are out of the way. we need to do some trace hunting. Follow the trace from the middle right pad all of the way to the via it uses in the middle. Remember which of those holes was the via we want, flip the board over, and continue to follow it. On mine, it was connected to pin 8. Remember the number yours ends up at.
Now, we need to find a trace of one of the soldering points so we have a strong place to connect the wires. Right next to the pin we found earlier, 8, is 9. Follow the trace to the via and through the other side to see where it ends up. One mine, it ends up at one of the solder points just like we want, at 'CN3'. Perfect.
When the 'slow' switch is pushed up, it connects pin 9 to ground. If we make a connection between pin 8 and pin 9, then the two wires soldered in the 'CN3' spot will be connected when the switch is up, and not connected when the switch is down. That's exactly what we want.
You can try to be careful and use a small piece of wire, but I was lacking in patience and just connected pin 8 and 9 with a blob of solder. Use sparingly though; some of those pins are connected to ground, and if you short pin 8 to ground with solder here, it won't work. I'll act like the button is always pressed.
Before we package it all up, let's make sure the solder blob did its job. Take a multimeter, and check both of the solder points on CN3. They should NOT be connected. Take one end of the probe, and touch it to the big left side pad of SW1. Use the other probe on both of the CN3 solder points. It's should show connection with the right most pad, and no connection with the left most pad. Good. If it shows connection to both, then you're solder blob connected it to a ground pin. Desolder the blob and try again.
Now put one probe on the middle right pad of SW1, and test the connections with the other probe to both pads of CN3. It should show connection with the left, and not the right. If so, you did it. If it doesn't show connection with either, then your solder blob did not connect pin 8 and pin 9. Try again.
Now that the crafted short circuit is in place, take two lengths of wire, about 8" in length, and solder them to the two CN3 solder pads.
Reassemble the PCB back into the plastic piece with the slide switches. Once the PCB is in secure, turn it over and grab your multimeter for a final test. The two wires should show no connection when the 'slow' slide is down, and show connection when it's up. If so, your program switch is ready.
These two wires need to be connected to the UPCB in the RB5 location. You can solder them in directly, or use a header and connector like I did.
Step 10: Installing Output Connector
The output D-Sub 15 connector will be the most visible portion of this installation, and also the piece that will be under the most strain with the UPCB cables being plugged and unplugged frequently. For these reasons, it is extremely important that this installation be both visibly clean and structurally strong. It takes care and craftsmanship, so take your time and get it right the first time.
In the pictures below, I am using a IDC style D-Sub connector. This is not the only way. Using a regular solder cup style D-Sub connector would be much easier and less error prone. You can cut a hole for the connector, mount it on the outside covering up any imperfections, and attach the connector securely with the normal mounting hardware and a #4 size nut.
Due to the thickness of the screw portion of the connector, and the thickness of the HRAP walls, we have to mount the IDC D-Sub connector on the outside of the case, with the IDC rear end poking through to the inside. Because the IDC end is exactly as tall as the connector itself, this leaves us no room for error when cutting the needed hole. Take measurements of the height and width of the rear of the connector. Mark the area to be cut with a pencil, whip out the Dremel, and prepare to start cutting.
The majority of the plastic should be removed by the Dremel, but the edges should be finalized with a strong, sharp knife. Take your time and constantly compare with the connector to make sure you are cutting where needed and nowhere else. The connector should fit very tight and very snug.
Run the ribbon cable through the hole (you may have to twist the end so you can put the smaller IDC connector, the one that plugs into the UPCB, through the hole) and seat the connector as best you can. We want the plue plastic on the 'wings' resting against the white plastic walls.
Using a very fine drill bit in your Dremel, you want to drill a hole through the HRAP wall where the screws will go; through the two holes in the metal. You can screw the two hex bolts into the connector easily, but it will take some patient and effort to have it screw itself through the holes you just drilled.
The snugness of the fit, and the two hex screws you just screwed into the plastic, are securing the connector in place, but it won't be enough by itself. Since the thickness of the D-Sub connector and the thickness of the HRAP wall are too much to allow you to use a nut on the inside of the hex bolts, we need something else to secure it. I decided on epoxy.
Epoxy is nasty smelling stuff that comes in two containers. To use it, you want to mix equal quantities of each liquid together, and then apply like glue. Unlike glue, the epoxy cures to a plastic like substance that is extremely strong and VERY permanent. Again, a step you need to get right the first time, or at least correct before the epoxy sets. After that, it's too late.
Epoxy around the rear end of the connector sticking inside the stick. We don't need much, just enough to fill the imperfections of the cuts and the gap between the connector and stick wall. You do not need to gob it on like some people do with hot glue. This stuff is 100x stronger and far more permanent. Also apply it LIGHTLY around the connector outside the stick, and only where the blue connector plastic meets the white HRAP wall. Set the stick so it is resting on the front lip, with the outside portion of the connector pointing straight up (I used a small clamp to secure it upright). Do a final check for stray epoxy to clean up, and then let it set, at least overnight.
Step 11: Cutout Path for Output Cable
The UPCB will be mounted in the interior of the stick, so we need to cut a path for the ribbon cable to go through.
In the picture below, you'll see the one I made. Using the Dremel, I cut a hole about 1 1/2" high by 1/2" wide. Test to make sure you can get the IDC connector through the hole. If the hole size is good, remove the ribbon cable from the hole and take a moment to clean up the work with a sharp strong knife. While we don't really care how it looks, smoothing the cut and removing any burrs will help extend the life of the ribbon cable.
Step 12: Add Mounting Nuts
We want a way to securely attach the UPCB inside the case. There are four mounting holes, one on each corner, we'll be using for just this purpose.
The mounting holes will allow a #4 bolts through without resistance, while a #6 bolt will screw in directly.
The metal bottom plate of the HRAP means we can't use a bolt through the bottom of the HRAP. So instead, I'm going to epoxy mounting nuts to the bottom on the inside of the case.
Using a 1/2" #4 bolts and nuts, put the bolts through the UPCB holes and loosely screwed the nuts on the bottom about 1 turn only. Place the UPCB in as far left inside the case as you can, with the output header near the back, and the stick header near the bottom. Check the picture to see where I mean.
Mix a small amount of epoxy, and apply to the edges of the nuts. We want to epoxy the nuts to the bottom plastic, but NOT epoxy the bolts in the process. Let the epoxy set for a while, checking periodically on an outside edge of the epoxy pool. We want it to set until it is getting very thick, but still liquid. Once there, gently unscrew the bolts from the nuts underneath. If the nuts move, leave it alone and come back when it has set further. Done properly, the bolts will come out leaving the nuts in place for the epoxy to cure. You can continue with other work on the case, as long as you are careful. You do NOT want anything nudging the nuts until it has had a chance to set overnight.
After that, feel free to mount the UPCB with the bolts for good.
Step 13: Assemble
Mount the UPCB into the mounting nuts with the #4 size bolts. Connect the output ribbon connector, the stick connector, and the button connector to the UPCB. If you're using a programming button or extra play buttons, attach them as well. Clean up any slack from the wires with zip ties for a nice clean finish.
Place the top control panel in place, and secure with the original carriage bolts. Turn the stick upside down, and secure the slide switches in place with the two original screws. Place the bottom metal plate, and secure with the original 8 screws.
Congratulations, you're done.