I’m building an arcade cabinet! Joel is old enough that he has started enjoying Mario and Zelda, and I want to make sure he has a chance to have the same experiences I had with the games that pretty much defined my childhood. And since there are no more arcades to go to (Dave & Busters doesn’t count, its just not the same…), I’m building an arcade cabinet for him! Alright, well, I’m cheating and building a bar top model, but it will be loaded with all the games I loved as a kid from NES, SNES, Gameboy (standard, color, and advanced), Atari 2600/5200, Apple II, Commodore 64 and more.
I’m using a Raspberry Pi 2 B loaded with an emulator-centric distribution called RetroPie. I’m including one arcade-style setup with enough buttons to play SNES games and two USB ports for normal controllers (starting with two SNES-style Tomee USB controllers but it will accept an N64/PS3 controller for games that require an analog stick.) The USB ports will also be for an emergency keyboard/mouse.
I want this to also be an opportunity to improve my woodworking skills, so I am designing the cabinet myself.
It was pretty easy to load the ROMs on. Below are screenshots of the software.
I assembled everything together in a prototype board. Below is the prototype and the rear view of the wiring. Everything worked!
I purchased a small amplifier to mount on the inside, and am using two 3.5″ speakers in the overhang for sound. The lid will open up so you can reach in and adjust volume.
Next up was building. I built a rough template for the sides, cut them out, and shaped them together on the bench with an orbital sander.
I put braces on the first side to help align the pieces as I measured and cut them. The sides are recessed in 1/2″. I formed a quick jig by gluing a 1/2″ square poplar dowel section to a 3/4″ square poplar dowel section. I lined that with the edges and used it to draw the lines for the inside. I then used another 3/4″ poplar down to draw the exterior panel lines. From there, I was able to measure the angles and the lengths of the sides. Unfortunately, I did not mark down the lengths so I would have to figure them out again.
With all the side pieces rough cut to width, I built a jig to make sure that the width would properly hold the monitor. 18 3/8″ wide was the sweet spot.
With each piece cut to uniform width, I’ve started assembly. The second picture below has two pieces glued in place and the second side, the top, bottom, and back just dry fit in.
At this point, I installed the monitor brace. I fit the monitor in place, cut a bar of wood 18-3/8″ long and 2″ wide. I used an angle bracket attached to the two interior sides. The monitor slides between the front panel and the bar, and the stand-release button on the monitor (a bit of a serendipitous feature that I didn’t plan on) locks the monitor in place.
The front panel, I used a router with a square bit to cut an opening the side of the monitor screen. I then raised the router bit to 3/8″ and cut a ledge around that opening. I SHOULD have used a rabbiting bit, but I am new to woodworking and didn’t know about rabbiting bits. Would have made it a lot easier. I then cut plexiglass to fit the opening and used 1/4″ square dowels glued into place to hold the plexiglass in the opening.
Attaching the second side…
For the speakers, I marked lines on the inside of the hood dividing it into thirds, and another length-wise dividing into halves. I placed the speakers centered on where the lines intersected, drew an outline of the speakers, and then drilled a series of holes in an offset-grid pattern (rows of one hole per inch, every row offset by 1/2″) to allow the sound to pass through. I mounted the speakers, and a friend soldered speaker wires to the terminals to wire into the amp. The amp is attached with industrial velcro to the back panel.
The R-Pi is mounted to one of the sides via keyhole mounts in the case.
The USB ports are female-to-female adapters with a lip. I used a forstner bit to cut a hole the side of the lip, and a smaller forester bit to cut the main hole. I fit the USB ports through the hole and used the included locking nut to hold them in place. To attach the ports to the R-Pi, I needed USB male-to-male straight through cables. These had to specifically be straight-through and not PC-to-PC crossover USB cables.
I mapped out the controls on graph paper, and used a wood punch to mark the locations through the graph paper. I then cut the holes with a forstner bit the appropriate size for the buttons and the stick.
And the controls are in! Everything done except the painting.