Saturday, January 17, 2015

Custom Arcade Controller "Super Mobile Suit Fighter IV: Jaburo"

Project: “Super Mobile Suit Fighter IV: Jaburo” Fight Stick (Xbox 360/PC Custom Arcade Controller)
Abstract: Create an Arcade Controller for Xbox/PC with a Mobile Suit/SSF4 Theme
Status: Complete (2013)

I decided at some point to create something for Jay (after the first Protoman helmet, before the Zeon NES) for Christmas 2012. That did not happen. It ended up being a nightmare-project from hell that took me weeks to work the bugs out of. I am not an electronics expert, nor am I a carpenter, but I ended up making a complete, working, reliable arcade controller using real Suzo-Happ parts, real arcade parts, real Cherry switches, and for less than $150.

If you peek at my blog, you'll notice I didn't post here for six months. That happens. But before that, there was a period of an entire year where there are no posts. This project was conceived and completed in that time period, which is a big reason why it never made it up here. Because of that, some of the info on here is incomplete and might not be 100% right (my memory is shit). This is not a guide exactly, because I can't cover all my bases and show you how to do this. I can however point you in the right direction and show you what I made with rudimentary tools and a few favors. I will warn you, the only way to write this article is long and boring.

From here, I'm going to summarize what I did, then show pictures. At the end of the post is a write-up about how hard it was and what materials I used. You can skip that part if you just wanted to see the project and how it turned out.

A Not-So-Christmas Present

The history of this project has a lot to do with why I never put it on here. I am guilty of procrastination, getting into things too heavily, and having a bit of an ego when it comes to building things. I tend to wait till the last minute then spend 18 straight hours on a project. Many times, I don't finish it when it's supposed to be done for some dumb, simple reason. This project is exactly that sort.

On the night of our yearly Friendmas holiday party, I staggered into my friends basement, late, covered in facial hair, holding a broken arcade controller. I sat it down in front of the friend who I had made it for, next to the TV stand, and plopped down hard on the floor nearby. I had not slept more than 3 hours in the past two days, and the project was a total failure. I had literally been working on figuring out a wiring bug 15 minutes ago, gave up, and came to the party.

My friend was understanding, and enjoyed the silly artwork I made for it. But I felt very unsatisfied. I wanted the damn thing to work. I stayed up and didn't eat in order to make it work, and it was for nothing. I felt sorta shitty, and ended up falling asleep sitting up on the couch later, missing out a bit on one of the last times all my friends were all in the same place. It was a bit gloomy. But fuck that noise.

Why do I suck?

Basically, I underestimated how difficult this project really is. In concept, you are just wiring up new buttons to a PCB, and sticking it all together in a box. I took a X360 controller, put it in a RadioShack project box, screwed it into wood with stand-offs, and wired up the contacts to the Suzo-Happ buttons I bought over the internet. In theory, it would take me about a week to do. In practice, it actually took over a month to get all the wood cut and sanded correctly, getting the joystick jigged and beveled into place was a bitch, and cutting glass and fitting it snugly onto the face of the project was a nightmare.

How was it made?

Firstly, I did not own a table saw, so I had to ask an uncle of mine to cut my wood for me, which he graciously did. After, I had to re-cut the wood slightly because all of my measurements were wrong in my plan, and began test fitting all the parts. I used a Dremel saw to cut the hardboard sheet out in the proper size, and fitted that as well. 


One of the most difficult parts was mapping the button cut-outs onto the top-most MDF. Because the buttons go through the Lexan, hardboard, MDF, and the artwork, lining everything up perfectly is absolutely paramount. I fucked that up. So, I cheated slightly. I went to the hardware store, bought another hole-saw that was larger than I needed, and cut the holes in the MDF slightly larger than they needed to be, but still making sure the holes in the Lexan and the hardboard were as close as possible.


This gave me enough wiggle room to make it all fit together, and it was still a small enough hole that the buttons could lock into place underneath. After 3-4 days of doing this, I printed out the artwork, cut holes in it, and discovered I would need to mask the sides of the Lexan to hide the fact that my artwork print needed to be longer than a 8.5x11 sheet a paper, the largest I could print on hand. That's fine, I had already planned on taping off the inside of the Lexan and painting a boarder, so I just adjusted the plan so that the black boarder was larger, and it hid all my mistakes.

After I fitted each piece together with tape and a tiny bit of glue, I broke it all apart and finish sanded each piece. I then glued the base parts back together, screwed in the screws, inserted my corner studs, and waited for the base to dry. Once that was dry and solid, I drilled holes for the computer case feet, and glued them in. I also drilled holes for the top piece (the MDF/Lexan/artwork/hardboard) to be drilled down to the base. At this point, I realized drilling once screw to hold all of these pieces in was a bad idea. So, I drilled a secondary set of holes through the MDF, board, and glass, and actually sandwiched those pieces together separately. I drilled a through-hole through the Lexan, and screwed the large wood screws through, so they actually set entirely beneath the Lexan piece, and aren't attached. This way, you aren't putting structural stress on the Lexan, and if you need to take the top off, you don't run the risk of your Lexan peeling up and cracking on wood screws when you back them out. Trying to countersink the Lexan in order for the heads of the screws to sit in them would have been a gigantic headache, and over-tightening the screws even slightly would have ruined the whole project.

In order to hold the glass piece on securely on all sides, I bought a pack of small screws and nuts at RadioShack.  I drilled four small holes for the Lexan/HB/MDF and very carefully screwed them all together.

I know, at this point, it might be confusing how it all went together. Essentially, you have the base with the PCB inside, then you have the upper piece, which starts with the MDF base on the bottom, hardboard above that, artwork, then the Lexan. The joystick, without the ball attached, is sunk down into the MDF and screwed in. The hardboard, artwork, and Lexan sit on top of it. Lastly, the buttons are pushed through the holes up top, then fixed to the bottom with their built-in fasteners. The whole top is now screwed together with the small radio shack screws. Then the wires from the PCB are attached to the joystick and buttons, then you sit all that in place and drill the 4 large wood screws in place. That's how I put everything together.

Electrical Finale

What was my key mistake that made me lose my mind and ruin Christmas forever? My plan to use terminals. If you don't know what I mean, Google wire terminals. They are strips with contacts on both sides where you connect wires together, essentially so you don't have to twist wires or solder wires together if you're working on a project with lots of wire running around everywhere. I had 2 inside this project; one from the PCB to the top switches and one from the PCB to the control switches (start, select, Xbox button) and joystick. In my lack of sleep, I mixed up every single ground wire on the entire project

 I had to take the entire innards apart, label every single wire, then re-run each connection one-by-one in order to make it work correctly. I did this by having my wiring diagram in front of me on paper, and having Super Street Fighter IV open on my PC. I don't suggest playing with live wires connected to a computer, but by that point it seemed like the only way to test the damn thing without having to wire everything up, pulling wires, and trying again, over and over. Eventually, it was done.

Mock-up layout. Paid careful attention to the braces and the side buttons. You can see where the MDF top piece screws in.  Note the rubber washers, which allow fine-tuning of the angle of the main board and prevent shock and over tightening. 

Unfortunately blurry, but you can see what I meant by lots of wire and messiness.  You can also see the 8 screw-holes necessary to attach everything.


You can see here my final button placement, and how the screws worked.
The cable is actually wrapped around a screw with heat-shrink wrapped around it so it doesn't pull out the PCB.


The 1-Player button is actually the XBox button.

These two side buttons are Start and Back.

Photo credit: Jay Jones
Photo credit: Jay Jones

After all the other reasons why I didn't post this before, there is actually one major one I haven't mentioned. Shortly after finishing this project, I was working on some of my early video stuff. In a move to make more space, I reorganized files on my computer, deleted some old backups, and moved stuff to another hard drive. Do you see where this is going? I accidentally deleted everything I had on it. Everything.

I had to run a program to 'un-delete' FIFTEEN THOUSAND PICTURES (ACTUALLY FIFTEEN THOUSAND) and various other files in order to find the pictures I have for you here. Jay was kind enough to take more and send some to me after he received the most recent project, but these are really all there is. There was video lost forever as well, but that's just the way it goes I guess. I hope you enjoyed what little I have left on it.

Actual picture I took when the project was over.

Want to make your own? (You can skip this part.)

Firstly, if you are interested in playing a PC or console game using real arcade buttons and joysticks, you need to look around. If you can find something used, something someone else made, that will be your best bet. At the time when I made this, there was no product that used real buttons and parts that was in my budget. Nowadays, a lot of people just go with X-Arcade's stuff. Some people argue it's not the greatest, others will argue that you need to go fuck yourself. I've never used it, nor do I know you, I can't make those judgments. All I know is I wanted to make it myself, I wanted the real buttons that are really used in real Street Fighter cabinets, and I wanted it to connect to a PC or Xbox 360.

The very first thing I did, before anything else, was look for wiring diagrams of a Xbox 360 controller. Due to the added complexity of hiding a play and charge pack/battery pack in the device, I settled on the standard, wired version of the 360 controller. This is how I discovered If you are at all serious about doing this, go to right now, and just look at shit. All of my templates and wiring diagrams are from this website, and the person that runs it is a lovely human being. On that site, I found a PCB layout, with notation, for the early-type X360 controller. From here, I priced out everything. Before you look at the list below, understand I live in the middle of nowhere, so I had to depend on Wal-Mart and Home Depot. Slagcoin has 'Example Ingredients' on their page which you might want to take a look at, because it's better in every way.

Below is the list of things this controller is made from (all in inches):

1 sheet 12x8x.5 MDF
1 sheet 11.25x7.25x.25 MDF
1 sheet 11.25x7.25x.93 Acrylic Glass
1 sheet of 10.5x6.5x.125 Hardboard
2 pieces of 12x3/8x3/8 (.375) Poplar
2 pieces of 7.25x3/8x3/8 Poplar
2 pieces of 8x1.5x.75 Poplar
1 piece of 10.5x1.5x.75 Poplar
1 piece of 10.5x1.5x.25 MDF
4 pieces of 1.5x1 3/16x1 Scrap Wood (glued into the corners for strength

Essentially, you have a base (biggest piece), then 4 sides, then 4 blocks in the corners that are glued in, then a inner cover made of MDF, then on top of that a piece of hardboard (which is like cardboard made from wood bits, kinda) then topped with acrylic glass.

Aside from those materials, I used:

1 sheet of paper with artwork printed on it
1 Sanwa JLW-TM-8 (4 or 8-way switchable Joystick, ball type)
10 vertical-type Suzo-Happ Arcade buttons, Street Fighter colors
1 Shallow-Mount 1-Player arcade button
Various wood screws
White, plastic, screw head caps
Various electronics screws from RadioShack (with nuts, various sizes)
Old computer case feet
PCB stand-offs
Rubber Washers (between MDF and your braces, where the MDF screws in)
Terminal Strips (I set this up with terminal strips to make it easy to change the PCB later, the buttons and outer casing can be re-used with a different PCB to make it work with any console if you upgrade later.)
Electrical Tape
Heat-Shrink Tubing
Electrical Spade Connectors
A Shitload of Wire (I already had a bunch of 20-gauge solid-core wire around, it made it very easy to test everything on a bench, but solid core wire is more breakable and harder to hide and coil, so you might want stranded, shielded wire if you're trying this, check Slagcoin.)
Spray paint
A shitload of tape

Power drill and lots of bits
Hole-saws, multiple diameters. I think you're going to need a 24mm and 30mm.
Art program to make artwork with (I just drew everything in Photoshop with Google image references)
A Jig Saw to cut out where the Joystick sits
Routing tools to countersink the joystick, I actually used a Dremel and a sanding block (it took 4 hours, easily the hardest part) but actual routing tools are better
Wood glue and a spreader, like a popsicle stick
Glass cutter
Soldering Gun
Hot Glue Gun and lots of glue
A lighter (for hard-to-reach heat-shrink tubing)
Wire Cutters/Strippers
Rubber Washers

That's everything.

I know I already said this isn't a guide, but you can use this article as a jumping-off point to look into your own project. I just wanted to let you know the trouble, and tools, it takes to make something like this. I'm happy I stuck it out and made something this complicated for the experience of doing it. If you don't want that, then this project is not for you. I cut myself, burned myself, and slept very little while working on this thing. I also broke a sheet of glass over myself, stabbed myself with a drill, and spend a lot of money on extra shit I didn't need.  It was a pretty swell time, all told.

...I just wanted to let you know how hard it was.


No comments:

Post a Comment

What you want?