Mega NES Controller

For this year's Mario Marathon it was suggested that we should buy an amazing NES controller coffee table from Etsy. The problem was that the table had an asking price of $3,500, a bit above our fiscal capabilities.

Not to let our fans down we thought we could make a reasonable approximation for a fraction of the cost. The result as seen below is a 10x scale functional NES controller for about $100 bucks.

You can bet we'll be playing some levels with this come Mario Marathon 5 on June 22nd.

Below is a summary of how we went about building this beast.

1. Control Board

We wanted a controller that would work with the Wii, since we play all of our games via the virtual console. We considered using a Wii Classic Controller, but went with a knockoff GameCube controller we found for about $8 bucks on Amazon.

This controller is particularly nice to work with. All of the buttons share a common ground, and there are fairly large solder points to connect to each of the buttons. Once the wires are soldered onto the board we coated them in some hot-glue to protect them, but that's entirely optional.

All of the buttons are labeled on this particular board, so finding where to solder is fairly straight forward. If you're using a different controller board you're on your own. Once the wires were soldered on we had a bit of fun playing mario by touching various red and black wires together. We nearly beat world 1-1 with this approach.

Once you've got the board working, set it aside and head to your garage.

2. Layout and Cut

We bought our MDF at Lowes home improvement center. They offer free board cutting with purchase which we took advantage of since we don't own a table saw.

First we had them cut off two 4 1/2" strips from the long edge of the MDF. These pieces were later cut to form the sides of our controller. The remaining piece was cut to form the top of the controller which measures 20" x 46-1/2". You'll have quite a bit if left over wood, which you can cut into additional tops as well as use to form the controllers buttons and d-pad.

Next we measured and drew the the full layout on top of the surface. Once everything looked good we used a drill to put a starting hold inside of each button and our jigsaw to very carefully cut them out. If you happen to have a 4" hole saw you'll have a much easier time cutting out your buttons. Below are some rough dimensions for layout and painting, click for a larger image.

Finally, we used our router to round the edges inside the button holes.

3. Making Buttons

We used our controller as a template and traced the buttons onto a spare piece of MDF, then used our straight edge and compass to smooth out the shapes. Be careful not to create buttons that are too large for your button holes. We cut out the buttons with our jigsaw and again used the router to round the edges.

Once the buttons were cut out, we did a test fit and used the jigsaw to make a few necessary adjustments.

Next, we used the 1/4 poplar boards to create backs (bottoms) on the buttons and d-pad which extended about 1/2" in all directions around the button. These were glued to the back of the buttons to create a lip which prevents the buttons from pushing through the hole in the face of the controller.

And then used our router set to 1/4" depth to create a recessed area which the back plate would fit into. The end result is that the button sticks out above the face of the board by 1/4" but won't pull through.

4. Paint

First you will need to mix some of your black and white paint to create two shades of gray. We used 1 part black to 5 parts white for the darker gray, and 1 part black to 10 parts for the lighter shade. You should be able to eyeball the mixing process, just save plenty of black for later.

Painting is done in several layers. First, paint the light gray areas, you don't have to be too exact. You should also put down a swipe of red where the various text appears (Nintendo, Start, and Select, A and B). Once those dry use your painters tape to mask of the areas that should remain those colors. The area around the d-pad, around the start and select buttons, around the A/B buttons, and around the edges. We used a spare nickle and our Exacto knife to round the corners of the taped areas.

For the text, we put down masking tape, and then using a printout of text on label paper stuck to the back of the painters tape to create a template. Then we carefully cut out the letters with our Exacto knife. You can find the necessary fonts free online. If we were doing it again, I'd consider finding some adhesive red vinyl and cutting the letters out of that and sticking them on.

With the light gray and red areas taped, we painted over the tape with the same light gray and red colors. This seals in the color and prevents the next layer from bleeding under the tape. It also adds more waiting to the process, a perfect time to play some Mario!

With the red and light gray dry, we put a large strip of the dark gray down the center and let it dry. Then repeated our taping process to cover the areas which should remain dark gray. Again, we rounded the appropriate corners with our knife and nickle. We then sealed the dark gray with another coat.

Once everything was painted, taped, re-painted, in several layers the remaining area was ready to be painted black. So we covered all that was exposed with black and waited.

While we were waiting we used the 4 1/2" strips of MDF to frame up the box that went around the edge of the controller. We didn't have exact plans, just measure, cut, and screw together. We also took this time to paint our A, B, Start, Select, and D-Pad buttons.

After a few hours the paint was dry and we pulled off the tape to find a pretty awesome looking Nintendo controller.

To wrap up the painting we coated everything in several coats of polyacrylic clear coat.

5. Wiring

Inside the controller we used rubber bands stretched around screws to hold our various buttons into place. We tried various approaches with springs, but the rubber bands seem to provide the best feel when playing. You can adjust tension by adding / removing rubber bands as necessary.

Then, we used our plywood and masonite to create brackets to hold our push button switches. It's important that the spacing is such that the buttons are not pressed by default. We then connected the appropriate wires and soldered the connections.

This approach was repeated for each functional button. A square shaped bracket was built to hold the d-pad switches over each direction.

We carefully mounted the controller using a screw and spare wood and secured the controller cord to the edge of the casing.

6. Final Product

With that we plugged her in and started playing.

We'll be playing a few levels with this beast during this year's Mario Marathon for Child's Play Charity which begins June 22nd at 11:00 AM EDT. Since 2008, Mario Marathon has raised over $235,000 for Children's Hospitals.

What next?