« Surfacing| Main | Final Touches »

Wiring

Category: MAME'd Millipede :: 2. Control Panel

While the wiring is not a difficult process, it is most definitely a long one. I spent about three solid evenings putting together the harnesses. I did most of it sitting on the living room floor while watching, though, since it doesn't completely absorb your concentration once you decide how you want things configured.

I initially started with the wiring before the cabinet was underway. This allowed me to sample the functionality of some of the controls and get a feel for where things were heading. To do this I cobbled together what I called the "ghetto CP". It was a scrap piece of that horrifying composite board that I found out in the garage. I drilled a few appropriately sized holes in it, screwed it to some blocks for height and mounted a few of the controls.


The "ghetto CP" used for my initial wiring tests. This is not a thing of beauty.
(click to enlarge)

The early wiring tests went nicely. I settled on using 0.187 sized quick connects since they appeared to fit tightly on the male tabs of the various controls. I used 16 gauge wire which, while a little larger than I likely should have used, was very flexible and had a nice feel to it. While I would have liked to have used color-coded wires like the classic machines, trying to locate a nice quantity of it to fit the job was nearly impossible among local stores and would likely have been cost prohibitive. I used over 200 feet of wire when all was said and done mostly since I was liberal with the lengths of the harnesses. This gives me total freedom to move the interface to nearly any part of the cabinet in the future. There is nothing more irritating to me than a wire coming up an inch short of where I need it to go.


The "ghetto CP" viewed from the wiring side. Could it get any uglier?
(click to enlarge)

In a nutshell, most controls are wired up by connecting the relevant terminal and ground to their appropriate locations on your interface device. Ground, fortunately, is a shared resource. This means that you can generally tie all the ground terminals together and bring a single ground back to your interface device. Only the unique controls need to have a wire back to the interface.

In cases where you have more than one button or control with an identical purpose you can string them together just like the grounds. In my case I have two player one joysticks and three player one primary and secondary fire buttons. Each of the joystick directions are wired in series (up and up, down and down, etc) as well as all three instances of the two fire buttons. This keeps the amount of clutter coming back to my interface down to a single wire for each unique control.


The bottom of the real control panel showing series connections, etc.
(click to enlarge)

To make things more modular, I took a page from the classic arcade book and used molex connectors to put whole collections of wires in sets. These connectors also allow for there to be a keyed break point between the interface and the control panel. None of the wires go from a control directly to the screw terminals on the interface. Each goes into a uniquely keyed molex plug so that it is clear which harness plugs into which pigtail on the interface board if you were to disconnect it all for a period of time.


The tie-wrapped, molex-connected wiring harnesses.
(click to enlarge)

Each bundle of wires on a molex connector is tie-wrapped at frequent intervals to keep down the mess and reduce tangles. As for colors, I settled on red for all controls and yellow for all the ground wires. For the most part you can expect that when you see a yellow wire it is part of a series of joined grounds with a few exceptions toward the end when I ran out of red wire. The keyed molex connectors help make up for the breaking of the rules on my color coding. There is one ground wire per molex connector so that a portion of the controls could be disconnected without ruining the circuit integrity of the portions of the control panel still connected.


The full bottom of the control panel showing all controls wired.
(click to enlarge)

The molex connectors handle the connections between the control panel and the interface hardware. In this case I use two Ultimarc products: the I-PAC for buttons and joysticks and the Opti-PAC for the trackball and spinner (more on these later). Both interfaces have a series of screw terminals labeled with their functions.

Using a multimeter, I checked continuity betweel each wire from the control panel and the various controls. I used this information to assemble the molex connectors and create pigtails for the interface side. The wires between the two boards are the +5 volts and ground from the I-PAC that drive the Opti-PAC.


The two I-PAC (left) and Opti-PAC boards shown with their pigtail harnesses.
(click to enlarge)

This wiring arrangement, while not professional by any means, works quite well for my needs. I was quite pleased that it basically worked the first time I plugged it all into the system . I've made minor adjustments to it since that time and have been very happy with how easily changes can be made. Due to the lack of color coded wires I need to take some time to make comprehensive labels so the pigtails could be removed without having to repeat the continuity tests. I'd like to focus on playing now, though, rather than wiring. ;)

With the wiring done for the time being, my focus shifted to the final touches on the control panel.