Introduction: Arcade Machine - Avengers Design

About: Interested in technology.

This project is a 2 player arcade machine with Avengers design. It's running on a Raspberry Pi 2 with RetroPie which supports a lot of game emulators.

My wife and I decided that we want to do this project together although we didn't have any experience with these kind of projects. My dad also helped us a lot with ideas, designs and also with building the cabinet.

I hope you will find these instructions useful :)

Step 1: Research

Before I even started planning my project, I did a lot of research online since I don't have any experience in doing such a project. In my research, I got a lot of ideas that helped me later on with my project. These are a few links to some projects that gave me inspiration and helped me a lot in the process (good opportunity to say thanks!):

Step 2: Materials

Step 3: Prototype

After checking a few different plans for the cabinet I decided I like the plans of “project MAME” the best. First I built a full scale prototype in order to make sure the dimensions are good for me.

As you can see in the photo, I just used some carton and duct tape to build the prototype and it took only about an hour or so.

Since I’m a tall guy, I decided to make the arcade machine just a little bit higher than in the original design.

Step 4: Building the Cabinet

I Bought the plywood boards from a local carpenter and asked him to cut it just so it will be easier to for me to take the boards back home (see image). You can ask your carpenter to cut the final shape of the cabinet pieces for you but I wanted to experience with creating the cabinet all by myself.

After practicing with cutting some simple boards first, I drew the desired shape for the first side panel on the plywood board and cut it using circular saw and a jigsaw for the curves (I used a circle shape objects to draw the curves).

In order for the second side board to be in the same shape as the first one, I placed the side panel I just created on top of the second plywood board and drew the shape of the second side panel with it. If you have the right tools for the job (I didn't) you can cut both side panels together by placing one board on top of the other and cut it in one shot.

After cutting both panels you can sand them while one panel is on top of the other to create two identical panels. In case you have a real difference between the two side panels you can use the jigsaw to fix it first.

Next I cut the top and base boards and I used 2cm x 3cm wood to hold all the pieces together and attached it with screws and glue.

I Attached the casters to the cabinet (Don’t forget to make the casters locks reachable!) and then I cut the board for the drawer (don’t forget to leave some space for the drawer slides).

Since the monitor I bought was a perfect match for the size of the cabinet, I decided that I won't use any screws to mount it to the cabinet. Instead, I placed a wooden board for the monitor to lay on and another board to support it from the back (I created an angle for the monitor so it will face the player).

Since the joysticks must be connected to the bottom of the control board (and I didn’t want the stick to be so short), I cut 2 big holes for all the controls and glued another piece of very thin plywood to it (Looking back, I think it wasn’t necessary at all).

Step 5: Painting and Art

I disassembled the cabinet so it will be easier to paint it and mount the side art.

In order to create a nice finish, I asked my carpenter to mount a pvc edge banding on the door and on the drawer.

Now it's time to give the cabinet it's great look! I painted all the visible cabinet parts with two coats of paint and after that used varnish to give it a shiny look.

After getting the Avengers wallpaper from Ebay I mounted it with the adhesive that I got with it. You can use a dry rag to move all the air bubbles out (The result looks a lot better after it dries).

Next I reassembled all the pieces together including the speakers, LED’s, plexiglass etc’.

Step 6: Software

I used a Raspberry Pi 2 (Model B) to run the system and games.

After checking online which distribution should I use for my Raspberry Pi I found a great one called RetroPie which comes with pre-installed emulators for a lot of old school consoles like Sega, Nintendo, Super Nintendo etc’. It has a great community of users and you can find a lot of help online in case you need it.

You can download the latest version of RetroPie here.

Follow their installation instructions to set it all up.

Setup tips I found useful:

  • In case you need to mount the monitor upside-down, you can rotate the display by editing the boot configuration file:

sudo nano /boot/config.txt
Add the following line:

  • To configure the display to 16:9 follow these steps:
    • Go to RetroArch settings.
    • Go to settings and then Video.
    • Set Aspect Ratio to whatever you wish (16:9, 16:10, 4:3 etc.).
    • Enter “Settings” and set “Config Save on Exit” to “ON”. then exit.

Step 7: Controls

I used the manufacturer instruction and their youtube video to connect all the buttons to the USB board and connect the board to the Raspberry pi - It can be frustrating but keep calm and follow the instructions :).

In order for the pi to identify the 2 player USB board as 2 different gamepads, follow these steps (reference):

  • Connect to the pi with these credentials:
    • user: pi
    • Password: raspberry
  • Run the following command:
    • sudo vi /boot/cmdline.txt
  • add space to the end of the line and add this text: usbhid.quirks=0x16c0:0x05e1:0x040
  • Restart the pi by running:
    • sudo reboot

Check all the buttons are working:

  • Connect to the pi with the same credentials as before
  • Run the following command to check that all the buttons in the first gamepad are working :
    • jstest /dev/input/js0
    • After you run the command click each button and move joystick to all directions to see you get response from the terminal (any response will do)
    • Click Ctrl + c to quit the command
  • Run the same test for the second gamepad with the following command:
    • jstest /dev/input/js1
  • After checking all the buttons and joysticks are working properly, you can run the “EmulationStation input configuration wizard” after boot (You need to have 2 gamepads available now).
  • To configure the controls for all the emulators and games you need to configure the inputs for RetroArch (reference):
    • Go to RetroPie in EmulationStation
    • Choose “RPSETUP”
    • Choose “Setup / Configuration (to be used post install)"
    • Choose “Configure input devices for RetroArch”
    • Follow the instructions and configure only 1 player gamepad. It will automatically configure the second one too

Step 8: Power

I mounted the power strip inside the cabinet.

Since the cabinet has a lot of LED lights and I wanted to place it in my living room, I wanted a switch that will turn off all the lights, and another switch to turn off everything.

Step 9: That's It!

After long time of planning, cutting, wiring and configuring, the Avengers arcade machine is finally ready!! Now we can play a few Sega games as we played when my brothers and I were kids.

I hope these instructions will help you in your project.

Power Supply Contest

Participated in the
Power Supply Contest