Arcade Control Panel

This is what happens when there’s nothing on TV.

I’ve been listening to a really great podcast lately called No Quarter. It’s all about remembering and reliving classic arcade games, of the sort us folks-of-a-certain-age grew up with. If you’ve never played Dig Dug or Space Invaders in a smoke-filled, dimly-lit room with purple carpet, blacklights, and a creepy dude shifting pot in the corner, then you don’t know what I’m talking about. Also, get off my lawn.

The boys at No Quarter have rekindled my love of those games, but to play them properly you need the right equipment. Rather like a samurai making her own sword, this is something of a rite of passage for people who want to play these old games The Right Way™. Namely, building a control panel. I wanted something clean, fairly compact, but beefy enough to play most games from 1970 up through about 1993. Here’s what I came up with.

Shiny!

Here’s a close up of two of the signature features: servo-powered joystick mode selection, and coin slots:

The feel of dropping in a coin to start a game is an important visceral moment, so I wanted to capture that somehow. I came up with these “coin buttons”. They’re real US quarters which sit in slots, resting on buttons underneath.

Here’s a demonstration of the coin buttons:

I went with a simple all-white design, because it will match the decor in the room it will be going into. No crazy airbrushing of Teenage Mutant Ninja Turtles driving the car from Pole Position here. I did a ton of research over at the Build Your Own Arcade Forum. I’d also like to thank the You Don’t Know Flack podcast for being very informative, and of course Slag Coin, arguably the best single resource there is on this topic.

The first step in designing one of these is figuring out which games you want to play. This makes ALL the difference in terms of what types of controls you buy, how big the panel is, what type of electronics you need, and so on. As mentioned, I’m interested in most of the range of arcade games from the 1970s into the early 1990s. However, I’m willing to forego trackballs, spinners, flight sticks, and other exotic input devices. Yes, I know I’m giving up Centipede and Tempest with this design, but I’m okay with that for now. I want to play multiplayer games, but two people is fine- I don’t need four. With that criteria, the only special gear I needed was switchable 4-way/8-way joysticks. No, you really can’t play 4-way games with an 8-way stick. The extra inputs will confuse older games, and watch how fast you die in Ms. Pac Man with an 8-way stick. Trust me on this.

There’s two main choices for sticks- Happ and Sanwa. The former are American, and probably what you played on if you came up in American or Canadian arcades. However, the only switchable 4-way/8-way Happ stick requires dismantling the mechanism to make the change. Furthermore, the conversion only changes the stick electrically. Physically, it still moves to 8 positions in 4-way mode. That’s not good enough for my taste. I wanted something switchable from the top of the panel, something that would feel authentic in both modes, and something easy enough for guests to use.

The magic bullet came in the form of the Ultimarc Servo Stik. They take Sanwa sticks, and convert them to be switchable with a servo motor. The switch is done with a restrictor plate, so the physical motion of the stick actually changes. It feels different as well as being electrically different in each mode. It’s really awesome, and I could not be happier with these.

For buttons, I went with Happ, as they have the right North American arcade look and feel. The last thing needed is an encoder, which is a circuit board that converts the arcade control inputs into USB keyboard inputs for use by games. Ultimarc to the rescue again, with the really excellent iPac 2. Ultimarc also carries real Happ buttons (not knock-offs, like you’ll find on eBay and elsewhere). So, it was easy to place one big order from Ultimarc, and get everything I needed. Even though they’re in the UK, they ship DHL, and the stuff was at my door in the US in two days.

New toys!

With parts in hand, it was time to lay out the panel itself. The outer dimensions are based on the Mortal Kombat 2 panel (available here). The button spacing is taken from X-Men Vs Street Fighter 2 (in the service manual, available here). Other dimensions, such as joystick spacing and wrist area, were taken from the X-Arcade stick. I’m not going to link to that, because those guys were unpleasant to me when I tried to inquire about buying something.

I laid all this out on butcher paper, using smaller pieces to experiment with locating the major features.

Having an actual-size template on paper is very useful. For example, when it comes time to drill, you can line up the template on the piece, and stick a pin through the right places on the diagram to mark the holes for drilling in the material below.

For material, I opted for 3/4″ melamine. This is plywood with a plastic coating on two sides. It’s mainly used for making the insides of kitchen cabinets. It’s nice looking, feels smooth, and can be cleaned easily. Also, the previous owner of my house left a bunch of it behind. That’s the main reason I used it, if we’re being honest. You can’t argue with free. Honestly, the melamine was somewhat of a pain in the ass to work with, so I’d probably just use high quality plywood next time.

After cutting out the top piece, the first challenge was mounting the joysticks. Because the Servo Stiks are based on Sanwas, they are intended to be mounted in a Japanese-style metal control panel, rather than an American-style wood one. That means they need a fairly thin surface above them. Slag Coin has a huge section on all the ways around this. Joystick mounting (particularly under-mounting, to hide the screws) is an art and science beyond the scope of this article. I’ll show you what I did, and I can say it worked great. You could lash your horse to these sticks, and he’d still be there in the morning (though he may have beaten your Moon Patrol score by then).

I carefully measured and marked the areas that would be occupied by the joysticks underneath, then routed the area down to 1/4″ thickness. Next, and I marked, drilled for, and installed “insert nuts”, which are brass fittings that give you secure machine-screw threads in wood. They are also much stronger than wood screws put straight into wood. This is important for joysticks, which will take a ton of abuse.

Here’s the routed area needed for one joystick. The extra bump-out on the left is needed for the servo motor that handles the restrictor plate movement. Also note the four little clearances I made for bolt heads. Those will be explained in the next photo.

The sticks are mounted using a technique called toe clamping. Don’t google that, trust me. Here’s what it looks like.

A fully installed Servo Stik. The big machine screws mount on the insert nuts, and there’s a stack of washers leading down to the stick’s mounting plate. This allows vertical adjustment of the stick’s position. The toe-clamping plates are cut and drilled pieces of flat-stock galvanized steel.

Next it was time to drill for the buttons.

I experimented on scrap first, to work out a good technique for drilling these without making a mess of the melamine. What worked best was a small pilot hole, followed by a paddle bit from the top, at medium speed. I got nice clean holes, as you can see. This shot also shows how much thinner the material is around the joystick hole, thanks to the routing.

Next I planned the electrical layout. Tidy wiring is all about planning, so I did my best to make sure this would all work ahead of time.

Here I’ve installed all the controls, the iPac encoder, and the ServoStik control board. Looks good, so time to start wiring!

While laying out the wiring, I try to think in terms of harnesses. Group things into related subsystems, and run those subsystems together as a harness. It’s fine to run a wire the long way around if it means keeping a harness together. Blue tape is a great tool for holding things temporarily while allowing you to change your mind. Resist the urge to zip-tie everything until you’re sure you’re done. Otherwise you just spend a lot of time cutting zip ties because you need one more wire in the bundle.

It’s very helpful to have a lot of different colors of wire for a job like this, and in this case we need stranded 22 AWG. 22 AWG is way overkill current-wise, but arcade controls use 0.187″ blade crimp connectors, and 22 AWG is the smallest you can use in those. It turns out that getting a bunch of colors of stranded 22 AWG wire isn’t that easy. I ended up finding some multi-conductor shielded cable at my local surplus shop (All Electronics, who also sells it online). Give All Electronics your business. They are awesome dudes, and real hackers running a proper surplus shop of the sort that you don’t often see anymore. This multi-conductor cable can, with some effort, be dismantled into 10 colors of 22 AWG stranded wire. Perfect!

Here we are basically all wired up. A quick test with the computer confirmed everything is working.

The next task was the body of the case. I used more of the melamine for this, but the nice finished surface would not survive this time. I am not a woodworker by any stretch, and I chose a challenging shape with a challenging material. Things were looking pretty rough, but luckily a good friend of mine put me on to a great tip for fixing shoddy woodwork- Bondo! Yes, the automotive body repair stuff. It’s an amazing hider-of-sins on all sorts of materials, including wood. Way better than wood filler, and cheaper than dirt.

The sides are built, and I’m in the process of Bondo-ing the edges and corners to make up for my orangutan-level use of power tools. Sure, it’s a crap-ton of sanding to do, but that’s just penance for not being better at this. Good motivation for next time!

A few coats of gloss white spray paint, and you’d almost think I know what I’m doing.

The next challenge was powering the Servo Stiks. They are intended to be run off a PC USB port, which can supply up to 500mA to a properly enumerated client device. However, I’m not going to be using them that way. The Servo Stiks have an optional Hardware Mode, whereby you replace the USB cable with a power source, and connect two buttons (or a toggle switch) to change modes. So, where to get that power?

First I needed to know how much power they need. I put the meter on them and ran them through some paces.

The peak I saw was around 220mA

My first thought was to take the power directly from the same USB port as the encoder is using. However, this will be a passive, non-enumerated “device”. The maximum spec a USB port is supposed to supply for that is 100mA. We need more than that.

The next idea was batteries. The switching won’t occur very often, so as long as there’s no idle draw of current, batteries would last a very long time.

Well, it turns out the servo control board draws about 50mA even when idle, as shown on my bench supply. So much for batteries- they’d be dead in no time.

I was really trying to avoid needing a wall wart for this- I wanted the whole control panel to have a single USB cable coming out of it. After further research, it seems that most USB ports will actually let you draw more than 100mA- it just isn’t guaranteed in the spec. Well, what the hell- time to give that a shot. I knew for a fact that the USB port on my laptop would simply shut down the port if I draw too much current, as I’ve had this happen accidentally on other projects. It even throws up a dialog to let you know it has done so.

Just in case though, I threw a hub in between my laptop and the Servo Stik board. It might reduce the chances of frying my laptop’s USB port if this doesn’t work.

Well, huzzah! It actually worked great. Apparently the USB ports on my laptop will happily supply at least 220mA with no USB enumeration. So, I decided to strip the guts out of this cheap hub and build it into the design to supply juice to the Servo Stiks. It will give me power for the servos, and extra ports in case I ever want to add a spinner, trackball, or other widgets.

Here’s where I spliced a USB cable to draw power from the hub, while sending the other two wires over to the toggle switch. A little heat-shrink protects the connections and the loose ends.

Next, I needed a switch to control the Servo Stiks. I planned to incorporate this with the coin buttons at the top of the panel, using a toggle switch. Toggle switches are nicer than buttons for an application like this, because the switch itself indicates the state of the underlying system. No LEDs or other fancy output required. Toggle switches need to be mounted in a thin metal panel though, and won’t work in a 3/4″ slab of plywood. I planned to inlay a small piece of aluminum to hold these controls.

My first design for the coin button/joystick toggle panel. In the end, I came up with a much simpler design that looks cooler as well. You gotta kiss a lot of frogs to find the prince, sometimes.

First I needed to cut the slots for the coins.

Cutting an 1/8″ slot 3/4″ deep is actually pretty tricky. I wasn’t sure the best way to do it, so I practiced on some scrap. I tried various combinations of chiseling, drill hogging, key-hole sawing, and filing before arriving at something clean and repeatable. You can also see some experiments I did with drilling holes, to see how the melamine would react.

With the slots cut, I needed to mount some buttons underneath for the coins to hit. In my junk pile, I found some industrial switches similar to the Happs, but the mounting holes were too small for the hardware I had on hand. No problem, I’ll just enlarge them a bit.

Kaplooey! No sir, these switches did not like being drilled on. Not one bit.

Well, at least I got to see inside them! Interesting mechanism. I found another set of switches made of softer, less brittle plastic. These were quite amenable to being drilled out.

Note that these had a metal actuating lever on them that I didn’t want. The diamond wheel on the Dremel made short work of that. These are basic industrial switches of the type you’d find inside appliances or machinery. Handy things to keep around- they’re easy to mount, and really robust (as long as you don’t get too crazy with the drill press).

Here’s how the switches are mounted under the slots- a simple combination of L-brackets. This gives them some adjustment- they have to sit just right under the slots in order for the coins to activate them and spring back properly. You can also see the underside of the toggle switch here.

With the coin slots working, it was time to mount the toggle switch.

I cut a small aluminum panel, and traced its exact shape on to the wood. Then I carefully chiseled that out, painted the metal white, and pressed it in. It’s a tight friction fit, and needs no other mounting hardware.

The end result, with the switch panel painted and labelled.

Here’s the finished interior of the control panel.

All the harnesses are zip-tied and fixed to the surface with those little nailed wire clamps that the cable guy uses to attach your cable to joists and baseboards. He left some behind last time he was here.

Almost done, now! We need a bottom. Once again, previous-home-owner to the rescue. He left behind a sheet of some kind of thin fiberboard. It seems perfect for the job- all I had to do was trace the control panel’s outline on to it, cut it out, and countersink some screws.

This stuff has a nice smooth surface and makes a perfect bottom. Thanks, Jerry!

One more detail- the USB cable needs an exit point, and a strain relief. I decided to kill both of those birds with one notch.

Notching the back right next to a screw hole means the bottom will hold the cable tightly. This cable is actually a USB extender that is attached to the USB hub I mentioned. The connector you see is the female end of the extension, which will live inside the box and provide strain relief. All it needed was a little shaving with a razor blade so it would sit flush under the cover.

Simple as that!

Here’s some video of the Servo Stiks in action. First from the top, the way a user would see (and hear it). Next, a view from below with the bottom cover removed.

So there you have it. I’ve already played a ton of games with it, and could not be happier. The whole thing was made with found materials, so it basically cost me nothing beyond the arcade hardware itself.

Eventually, there will be a cabinet to go along with this, for the full stand-up arcade experience. For now though, I can just plug it into my laptop and get my classic game on. Round 1: FIGHT!

I’m clearly older than you because, strange as it may seem I never really got much into video games. I DID like Pacman and Ms Pacman, and maybe a few others, but it was the PINBALL machines that got the bulk of my quarters. My favorite machine was an electronic one called “Alien Poker”. I loved it when the sound synthizer cried out “Royal Flush!” Boy, I used to beat the tar out of that thing! I was a wizard on it!

A few years ago my wife and I bought a Gotleib “Jack in the box” machine locally that we found on ebay. I had to search the internet for new plastic targets and a gross of #47 bulbs, but I got it working again!

Indeed, there seem to be two types of people in this world- pinball people and arcade game people. I never got into the former, myself, though I did try. The mechanical aspects of pinball are very appealing, but I never got the hang of the skill set required to feel like I was in control of anything that was happening. It always felt like there was too much luck in pinball (though I recognize that’s just my lack of skill, not a fault in the game, necessarily).

It depends on the layout of the table, but pinball requires good eye-hand coordination and good reflexes. It takes a bit of time to learn the table, IE: just how much English you can give it before it tilts (that is adjustable by the operator!), the wear and polish of the surface change the ball paths in subtle ways, and like billards the ball bounces off the bumpers at various angles.

Pin games have been duplicated in electronic form on computer monitors (you could add accelerometers and gyroscopes to get player input! … hmm me thinks this might make an interesting project!)

There is something very satisfing about repairing an old pinball machine. The schematics for them are drawn like nothing else you’ve ever seen and take a bit of gray matter to figure out! On older games the color coding of the wiring harness is probably faded (and we are talking two or three different colored strips on each wire!). Then you are dealing with EML (electro mechanical logic!). In some cases, you have to rebuild relays by replacing broken contact blades, or lost springs. In a way, a pin game resembles some of the early computers that Grace Hopper might have worked on!

Hmm.. Well, then “I go both ways” although I have to say, I’m about 75% Video game, and only 25% pinball.. And, the sweetspot for me is the timeframe between pong to Joust or so.. Never got into the fighting games, neo geo, etc.. Pacman, Galaga, Burgertime, etc..

Oh well.. Beautiful control panel.. I was wondering about those motorized sticks for the build I’m just starting. I think you’ve convinced me they’re probably worth it after seeing them in action!

Yes, I can recommend the Servostiks. They did need a little massaging to work smoothly. I removed the restrictor plates and sanded the black tabs on the joysticks that retain it. They tend to bind up a bit. Also, make sure all the springs on the screws aren’t getting caught. They tend to slip down into the slots.

One question… When switching from 4 to 8, why did the sticks move at different times? Was that on purpose to conserve current? If so, how, and if not, do you know why one lags? Not a big deal, just curious..

Yes, the sticks switch sequentially. This is a feature of the control board which is probably to keep the peak current below 500mA (the most one can reasonably hope to get out of a non-enumerated USB device).

I must admit that when I heard about your work on ‘No Quarter’ I feared the worst – Have you heard of a ‘Franken Panel’? It’s what the arcade collectors call an abomination of a control panel with a hundred buttons, spinners, flight sticks, toasters etc all squished on to an aircraft carrier sized panel. I was so glad to see a really neat, well made control panel when I went on your site! I always liked the idea of the servo sticks, as 4 way games are REALLY 4 way and 8 way are REALLY 8 way – you can’t compromise.

Your next build?…A whole cab?

I’m nearly finshed my 2nd build -this time a full size Donkey Kong (as they are so hard to find for less than £800 in the UK)

cheers!

V

*off to look at the rest of your site – I particularly liked the ‘are you even a girl under that shirt’ ‘toon 🙂

Indeed, I encountered the Frankenpanel phenomenon during my research. I even found a couple of blogs devoted to them. I certainly wanted to avoid that, and I also wanted to start small(ish) for my first attempt at this. In my experience, it’s better to set one’s sights lower to ensure the project gets finished. Otherwise large half-done projects just pile up all around.

Not a bad idea! I was going for the most naked look possible, with no frills to speak of. I tried to avoid decorative elements of any sort. However, pulling that off requires flawless workmanship, since you can’t cover imperfections with bezels and such. My coin slots are a little rough viewed up close, but in person they look better than in the video.

I’m not sure how you feel about a router – they certainly make much more accurate and clean slots, but they can be dangerous beasts! – I’m a CNC miller by trade (a massive computer controlled automatic router of sorts) so I’m fairly used to evil machines 😉

You can do all sorts with a router – I mainly use mine for routing panels and t-molding though. If anything more involved is required, I chuck it on my machine at work…

Yes, I used my router to mill out the recessed areas the joysticks mount in. I considered using it for the slots, but there were a number of issues:

1) I didn’t have a bit small enough to cut the coin slots
2) Because of the depth needed, it would have taken an awful lot of passes (my router is pretty light duty, and will only do 1/8″ depth in one pass)
3) Because of the small size, I wasn’t sure I could do it precisely without a whole lot of setting up fences and such
4) My earlier experience with routing melamine taught me it tends to tear up the finish around the cut

The nice thing about the chisel method is that it guarantees no damage to the surrounding finish. A smaller chisel would have done a perfect job, but my smallest one was a little too thick to make it half-way through the material (I chiseled in from both sides). I had to finish with some drill hogging, but that did do a teeny bit of damage to the edges of the slots.

Running Blondihacks costs a lot of time and money. If you enjoy this content, please consider giving a donation by Paypal or Patreon to defer a small part of the site's operating costs. Thanks for being an awesome community of hackers, tinkerers, and smart asses!