Monday, October 14, 2013

Stepmania Machine

I built my Stepmania PC to go inside the DDR machine. It was a lot of effort, but totally worth it.

I read as much as I could about the process and learned that there are some considerations to make when creating a PC to go inside the DDR cabinet. The first major on is how to connect the pads and cabinet to a PC in the first place. The thing that makes this possible is a Minimaid JAMMA adapter. This device maps inputs and controls the lights from the cabinet and pad utilizing a USB port on a PC. It's practically magic and worked on the first try plug-and-play without any setup for me. There are other devices that will do this, but the Minimaid offers control over the lights which other boards don't seem to.

Another major issue is that arcade monitor input is vastly different than standard PC monitor input. People online make the claim that if you connect a standard arcade monitor to a standard PC video card you can permanently damage the monitor. I don't want to test the truthfulness of the claim.

I was lucky in the fact that the arcade I purchased my machine from had replaced the monitor with a CGA/EGA/VGA trimode monitor. The only thing I really have to worry about is making sure to send the video signal in 640x480. Most standard drivers only support 800x600 as the lowest resolution. There are ways around it, but I decided to get an Ultimarc ArcadeVGA card. This card works with a very wide range of monitors, both arcade and PC. Even without the trimode monitor this card should do the job on standard DDR cabinets.

I read this guide on creating a Stepmania machine which I followed as a general outline. His cabinet has the boards mounted vertically while mine are horizontal, so I had to do my own thing.

Here is a list of the PC components that I used:

My motherboard did not come with any screws or standoffs, so I ordered screws and standoffs from Amazon.

The first thing I did was get a board to mount the components on. It's roughly 13.75" x 17.75" x 0.50" and looks like a cutting board. I laid the motherboard, power supply, and Minimaid onto the board to space everything out, then I marked where the standoffs would need to go. I drilled a small hole for each one with a 3/32'' bit, which ends up being very slightly smaller than the standoff's threads.

I tried screwing the standoffs directly into the holes but found it difficult. What I settled on doing was creating a screw+standoff combo which I used to prime the holes. I just screwed it in and unscrewed it from every hole to start them off.

After that, I put a single drop of super glue into one of the holes and screwed the regular standoff into the place with pliers. This is what it started to look like:

An important thing to note about the above picture is that the motherboard position I originally chose did not leave enough room in the cabinet for the VGA plug of the monitor. I actually had to remove those standoffs and re-position them all, so that is something to consider.

In the guide linked above, the guy mounted the power supply by taking it apart and drilling new holes into the case which he then used to mount the power supply with wood screws. I don't feel confident enough to do that, so I found an alternative. On the bottom of the power supply, the bottoms of 4 screws are exposed. Miraculously, these screws match the size of the standoffs exactly, so I screwed 4 standoffs into the bottom of the power supply.


I positioned it where I wanted it on the board and pressed down to make small divets on the board where it would be mounted. I drilled the holes like I did for the other standoffs, and then screwed the screw+standoff thing into the holes as well. Instead of unscrewing them, I used pliers to pull them out. This removed the threading in the wood so I could skip screwing the power supply standoffs in. I put 1 drop of super glue into each of the 4 holes, positioned the power supply over them, and pressed down firmly. I tapped the corners with a hammer and the standoffs went into place fairly easily.

Here is what it looks like with the boards mounted (with the motherboard in a better position):

The only component missing now is the hard drive. This is difficult because, unlike the boards, the hard drive does not have holes that go all the way through it. It is designed to be mounted by sandwiching a sheet of metal between the hard drive and a screw head. In the guide, it looks like the guy mounted his to some plexi-glass suspended in the air by columns of standoffs. The standoffs I used are not threaded to go into one-another, and I don't have extra plexi-glass lying around, so I came up with something else.

I bought some longer screws and drilled 2 holes all the way through the board. This let me come from the bottom with the screws which I could attach to the hard drive, suspending it in space. The drive only weighs a few ounces, so I believe it is secure enough.


In this picture you can see I used some nuts on the screws. The idea was that they would prevent the screws from coming loose, but I don't thing they are really necessary.

This is what it looks like with everything mounted:

I connected this to a regular PC monitor to set up Windows and install some drivers. I also set the motherboard BIOS so that the PC will power on automatically as soon as it gets power. This will allow me to plug the DDR machine and PC into a power strip and power them both up simply by hitting the switch on the power strip.

Now at this point, I should have been able to plug in the existing JAMMA harness and other cables and started the machine up, but I ran into a problem. The existing JAMMA harness' plug was just slightly too small to fit onto the Minimaid. I have no idea why, but the plastic was just too small and it would not fit.

I first tried to lengthen the gap inside with  knife, but the plastic is very firm and I couldn't get it deep enough to help. So because of this, and because the harness looked like junk with hot-glue on it, I decided I was going to rewire the machine with a new harness.

Old:
New:

I have no experience re-wiring anything, so this was a big deal for me. I ordered a new JAMMA harness which connects to the Minimaid perfectly. I unplugged all of the Molex  connectors and pulled out the old harness. The new harness ends every wire with a quick-connect terminal. This does me no good, since I need Molex pins to go into the Molex  plugs. Also, the coloring of many of the wires is different between the two harnesses.

I used this pin-out image as a guide and traced out the wires, writing down where each went. I bought a Molex pin extractor from Fry's Electronics along with 3 packs of 0.063'' diameter Molex pins for 24-18 gauge wire. I couldn't find packs containing male-only pins, so I had to buy them in pairs, but I only used the male parts.

I don't have any pictures of this tedious process, but I removed all of the existing pins from the Molex plugs that went to the JAMMA harness. I left ones that went other places; for example the connector for the pads branches to the JAMMA harness and to another Molex plug, so I only needed to remove ~5 from each. Next, I clipped quick-connect terminals from the new harness and stripped away some of the casing with wire strippers. I inserted the bare wire into new Molex pin and crimped the wire with needle-nose pliers. After I had done this on all of the wires that I needed, I pushed the new pins into the old Molex connectors and reconnected all the plugs. I reconnected everything to the old 573 board to test my JAMMA wiring job before connecting the PC.

Now, I have never done anything like this before, so I was pretty sure that when I powered it on I was just going to get nothing out of it, but when I turned the machine on it worked on the first try. I did a lot of double-checking when tracing the wires, and I watched a video on wire crimping before I started but I am stunned that it worked. I have a deep respect for the people that made JAMMA and Molex connectors so easy to work with.

This is what it looks like inside the machine:


You might notice I don't have the bass neon connected. That's because I haven't rewired it yet. I'm not sure if it's standard or not, but the way the bass neon was wired in my cabinet required me to snip some wires to get the JAMMA harness out. There was a wire soldered to the ground on the JAMMA harness that runs to the small Molex connector for the bass neon. The other wire on that connector ran to a small black box mounted to the back of the left speaker - also to the ground. There was a red wire on that small black box that then ran to pin 6 (+12) on the JAMMA harness. There are then 2 brown wires coming out of that black box the look like they go into a box labeled as a neon power transformer. Since all of those wires were soldered directly on top of the pins of the JAMMA harness I had to snip them to remove it and I haven't reconnected them to the new harness yet.

I powered it up, installed some drivers, and adjusted the screen slightly to get it to look like this at 640x480:



No comments:

Post a Comment