This article may contain affiliate links, which help to support this site, at no cost to you.
(This is the fourth article in the series on how to build a retro arcade cocktail table)
The controllers for this arcade table consist of a plywood top to which the controls are mounted and a housing box that hides the wiring. The top panel is mounted directly to the internal support rails, providing a super stable playing surface. The construction is pretty simple, but the design process takes a lot of thought because you have tons of options for components, and nailing the layout of those components makes a big difference in playability. The design is (mostly) dictated by three factors: the cabinet structure and controller parts, playability, and visual appeal.
The construction process for these arcade controllers and the controller housing breaks down as follows:
- Select your arcade controller components.
- Cut out the top panels.
- Finalize the layout of the components.
- Drill holes and make cuts in the top panel for components. Attach components to the panel.
- Attach the top panel to cabinet support rails and wire up components to USB board. Test controllers.
- Cut and assemble the arcade controller housing boxes. Attach the boxes to the top panels.
- Attach T-molding and stickers.
Materials
Complete material lists to build these arcade controllers are at the bottom of this post and have been split into two categories:
Materials: Arcade Controller Top Panel and Housing Box
Materials: Arcade Controls and Electronics
Tools
- 3¼” (83 mm) hole saw
- 1 1/8″ Forstner bit (or hole saw or spade bit)
- 1/16″ slot-cutting router bit
- ¼” straight router bit (for cutting out joystick cavity)
- Router
- Jig saw
- Table saw
- Miter saw
- Soldering kit
- Utility knife
- Rubber mallet
Selecting Arcade Controller Parts
While you can find cheap parts that will do the job, investing a little bit more money in quality controls will pay off when it’s time to sit down and actually play games on your table. Other than the lighted Insert Coin and Start buttons, which are harvested from a cheap Amazon kit, all of the controller parts here came from Arcade Renovations. It’s also well worth your time to do some research to figure out what components best suit you — Slagcoin is an excellent source of in-depth detail on parts for arcade controllers.
The total cost of the arcade parts in this project was about $325 (US). Notably, the trackballs account for almost half of the cost. See the bottom of this post for a parts list with links.
Gameplay Buttons
This project uses a 4-button diamond layout. It’s not typical for these kinds of projects, but it is an intuitive and attractive layout. It also works well in games that traditionally used two joysticks like Karate Champ and Robotron 2084. The gameplay buttons are Industrias Lorenzo concave pushbuttons with 75 gram Cherry microswitches which provide old-school arcade action and feel.
Joysticks
The joysticks are Sanwa JLW’s — these are less popular than the JLF model, but were chosen because they seemed to be better suited to many of the classic arcade games. The JLW is a sturdy stick, with high spring tension and a long engagement distance but a short throw distance. That gives you permission to push the joystick hard, and confidence in the game movements you want. (Here’s a great chart for comparing joystick characteristics.) Like many joysticks, there is a restrictor plate on the bottom that you can rotate so that movement is limited to four directions, or open to allow eight directions (diagonal) movement. For this project, the joysticks are set to the 4-direction position.
Trackballs
Trackballs are critical in classic arcade games like Centipede, Missile Command, and Golden Tee. It’s great to have a trackball for authenticity, but they really complicate this layout. The trackballs are from Ultimarc and are designed specifically for installation in 3/4″ boards. They are easy to install but have a huge housing underneath that forced the buttons and joystick far to the left. Even more importantly, you need to leave a lot of room on top of the controller panel for hand movement and comfort. That means about half of the real estate for the arcade controllers is taken up by the trackball.
USB Control Board
The buttons, joystick and trackball are wired to an I-PAC 2 control board from Ultimarc. This board is designed to support a full set of controls for two players (but surprise, not two trackballs! — more on that later) and then the board connects to the Raspberry PI via a single USB cable. A wiring kit from Arcade Renovations makes the wiring process easier, but you will still have to solder on extra lengths of wire for most of the controls in order to reach from the controller panels to the I-PAC 2 board. An additional USB trackball adaptor was necessary to hook up the second trackball.
Top Panels
The top panel serves as the playing surface, so a smooth surface is imperative, and the same pre-finished birch from the tabletop was used here. (The finish also makes is easy to clean off pencil marks when you are testing the layout.) The panel measures 14½ inches wide and 12½ inches long, at the top of the curve. The panel extends into the cabinet, allowing you to hide the mounting bolts within. Use a router trammel to cut the curve, and a slot-cutting bit along the three outside edges for the vinyl trim, just like the tabletop. To turn the corners with the vinyl trim, you will need to cut a wedge out of the molding spine and use some adhesive in the slot.
Laying Out the Arcade Controllers
You can use graph paper to mock up different controller layout options at actual size. Test your layout by putting your hands on the drawing to find the best positions for the available space. (Slagcoin also has diagrams of many standard and alternative button layouts.) You must account for both the topside and undersides of the controls, noting the location of the support rails. The 2×2 support rails provide a very sturdy base for mounting the controller board, but also create some layout limitations. As noted earlier, the trackball is also a big factor: you need plenty of room on top so that your hand won’t hit any other buttons, and a big chunk of space below for the trackball housing.
Once they layout is settled, transfer the center point of each control to the top panels. You can tape your graph paper to the board and push a nail through each center point into the wood to do this. Now you’re ready to drill holes. The buttons require 1 1/8 inch holes. A forstner bit will provide the cleanest hole, but you can get by with a standard spade bit or hole saw.
The hole for the joystick is slightly smaller — Slagcoin calls for 24 mm, which is just shy of an inch, but a 1-inch hole works fine. After you drill the hole, set the joystick in the center of the hole and mark the outline of the joystick housing on the underside of the panel. Use a router to carve out a shallow bed for the joystick to sit in. This increases the height of the stick. Per Slagcoin, you want to have 24 mm of shaft from the top of panel to the bottom of the joystick ball.
The trackballs in this project are installed without the bevel. For this you’ll need a 3¼” hole saw. From there, installing the controls to the top panel is a snap. Finger-tighten the plastic hex nut on each button, use short (½-inch) pan-head screws to mount the joystick, and follow the directions for the mounting hardware included with the trackball. Next clamp the panel to the mounting rails and drill a hole all the way through the rails and panel for your bolts. Tighten your bolts and you’re ready to start wiring.
Wiring the Arcade Controllers
Wiring up the arcade controllers is mostly just a process of connecting the leads from each of your arcade controls to their corresponding terminal on the I-PAC 2 board, and connecting all of the ground leads in a daisy chain to the ground terminal on the board. Once everything is hooked up, you can test each control and modify or correct your mappings as needed. For further information on wiring and configuration, here are three helpful links:
- If you’re new to this, here’s a basic wiring guide. The guide will help you understand exactly what “daisy chain” wiring means, and how to figure out which terminals are which on your button microswitches.
- Ultimarc’s I-PAC 2 information pages.
- Detailed tutorial on setting up controllers with an I-PAC 2 board.
Wiring Tips
- Get extra wiring and a soldering kit. A wiring kit like this one will make your life easier. Having different wire colors makes it a lot easier when making connections and troubleshooting. You will need to extend some wires, and solder is the best way to do this (and it’s easy to do).
- The Insert Coin and Player Start buttons in this project have LED lights. The lights need to be connected to a low-voltage power source, and an old USB cable is perfect for the job — just strip off one end and use the black (ground) and red (hot) wires to connect to the two leads for the led. Plug the cable in to the USB port on the tv and the lights will get power whenever the tv is on. You could also plug into the Pi’s USB ports, but that will suck some power from the Pi and all the controls attached to it.
- Each trackball comes with two wiring harnesses that can be plugged directly in to the IPAC 2 board. Unfortunately, the wires are not long enough to reach from the arcade controllers to the cabinet. For your player 1 ball, cut the harnesses and splice in extra lengths of wire. The IPAC 2 only has a spot to plug in one trackball, so you need to buy a separate USB adaptor for it. On the positive side, the adaptor is small enough to fit in the arcade controller housing box, so you don’t have to splice in wires on the second trackball.
- Wiring up a safe-shutdown on/off button is worth the relatively short effort it takes. Simply shutting off power to your Pi can damage the memory card (and all of the configuration you’ve done on your game emulators). The button executes a safe shutdown script before turning off the power, and this Howchoo article provides excellent instructions and ready-to-use code. All you need is two wires with female connectors for your Pi’s GPIO pins, and a NO (normally open) momentary button.
Arcade Controller Housing Boxes
The housing for the underside of the control panel is comprised of three hardboard sides that are glued and screwed to a plywood base to form a box. Small scrap blocks are glued to the bottom of the control panels to create attachment points, and the housing box is held to these blocks with 3 screws, keeping the underside of the controls easily accessible.
The plywood base of the box is smaller than the controller panel, and the sides of the base are cut on a 15º bevel. This gives the controller housing a trapezoid profile matching the cabinet. The outer edge of the base follows the same curve as the controller top and has a straight (0º) cut angle. I cut the curve with a jigsaw rather than using the router—the edge is covered by hardboard so the cut can be less perfect. The inner edge is also cut on a 15º bevel to fit snugly against the cabinet.
Cut the hardboard sides to 3″ (7.6 cm) width with a table saw, and then use a miter saw to cut 15º angles on one edge of the side pieces and both edges of the outer piece. The side pieces are 8″ (20.3 cm) on the long edge, and the outer piece is 14¼” (36.2 cm). Make sure the outer piece is long enough by cutting it longer, clamping it to the base, and marking the correct cut. To assemble, simply glue the left and right sides to the base. For the outer piece, use glue and 2 clamps to bend the hardboard along the curves, and also screw the ends of the piece to the base. Once assembly is complete, paint the housing boxes.
To attach the box to the arcade controller panel, first clamp the box to the panel and use a pencil to mark the outline of the box. Remove the box and draw a line 3/16 inches from the outline to account for the thickness of the hardboard. Glue 3 small blocks of wood along this line to provide attachment points, and then screw the box on.
Finishing Touches
Like the cabinet, the housing box was primed and then painted with a semi-gloss trim paint. Scrap t-molding was cut into circles with a utility knife to create screw covers for the screws holding the curved hardboard piece to the base.
Add Decorative Stickers
The decals for the Insert Coin and Player 1/2 Start buttons were printed on transparent inkjet sticker paper. We wanted to keep the decals to a minimum, and the inexpensive sticker paper allows you plenty of trial-and-error to get a look you like. Print out your designs on regular paper first, though keep in mind that your home inkjet does not print the color white — your colors may be darker on the sticker than on your monitor screen. The test print will also let you know if your print heads need to be cleaned before you waste a sheet of sticker paper. Set your printer options for glossy photo paper and high-quality printing. Finally, allow the sticker ink to dry for at least 24 hours before applying them.
Attach the Tabletop
At this point, you’re also ready to attach the oval tabletop. The design of the game table allows for easy removal of the tabletop without having to disassemble anything else. The four right-angle brackets are attached to the wooden blocks at each corner of the cabinet, and then the tabletop is screwed to the brackets. Just make sure to carefully position the tabletop before marking the screw locations.If you ever need to remove the tabletop, just open the magnetic top panels above the controllers and remove the screws in the bottom of the tabletop.
All that’s left on construction is to glue on trim pieces to cover the cabinet corners and add decorative stickers. For this project, pieces of ¾” wide scrap were used for the trim.
Now, the construction work is done, and you’re almost ready to play. Next: arcade configuration.
Materials: Controller Top Panel and Housing Box
Part | Purpose |
---|---|
¾” (19 mm) Pre-finished Birch Plywood | Top panel |
3/16″ Hardboard (approx. 12″ x 18″) | Sides |
½” Plywood (any grade) | Base |
¾” Vinyl T-molding | Top panel trim |
(4) #8-32 2½” Machine Screws w/ Nuts and Washers | Top panel mount |
Inkjet Sticker Paper | Stickers |
¾” scrap block | |
½” pan head screws |
Materials: Arcade Controllers and Electronics
Qty. | Type | Description |
---|---|---|
2 | Joysticks | Sanwa JLW |
2 | Trackballs | Ultimarc U-trak |
8 | Action Buttons | Industrias Lorenzo |
8 | Microswitches | Cherry 75g. |
4 | LED Buttons | Insert Coin and Start* |
1 | USB Controller | I-PAC 2 |
1 | Trackball Adapter | Ultimarc U-trak USB |
1 | Controller Wiring Kit | Arcade Renovations 2P |
2 | On/Off Button Wires | 2 ft. long w/ female GPIO connectors |
1 | On/Off Button | NO momentary |
Other Posts in This Series
- Retro Arcade Cocktail Table
- How to Make an Oval Arcade Tabletop
- How to Build a Trapezoid Shaped Arcade Cabinet
- How to Build Arcade Controllers for a Cocktail Table
- Arcade Configuration