Retrocade - Desktop Arcade Machine + RetroPie

by christan, published

Retrocade - Desktop Arcade Machine + RetroPie by christan Apr 4, 2017


I grew up in the 80s during the golden age of arcade machines, so I have always wished I had an arcade machine with real arcade joystick + buttons. Now that I have a 3D printer, I thought I should put it to good use and make myself a desktop arcade machine. I used TinkerCAD to do all the 3D modelling. Also, I wanted my arcade machine to have a lot of detail, so I also created things like vintage design coin slot and also created artwork which I sent to a commercial printer to have them printed on vinyl sticker.

This is not the first 3D printed arcade machine, there are already many around. However, there were certain things which I prefer it to be designed differently. Take for example the palm rest area. I did some testing and found that without sufficient space to rest your palm, you will get tired very quickly. Most of the existing designs I found had this issue, so I made sure my design had a big palm rest.

I should note that I actually designed and printed these parts before receiving the actual parts like the LCD screen, controller, speaker, amplifier etc. 3D printing takes quite a lot of time and I didn't want to wait till everything I ordered has arrived in the mail before I started printing. So, some of the parts were designed with some flexibility in terms of how it would be laid out. Also, this was a learning process for me as I am still relatively new to 3D printing, so some parts have gone through many changes as I experimented with the design. I believe all the files I uploaded should be correct, but in case there are any mistakes, do let me know.

Please understand that I am sharing these files AS IS. You do need to have a decent knowledge of 3D printing, Raspberry Pi, soldering, etc. in order to put it all together.

More detail over here: https://hackaday.io/project/20093-desktop-arcade-machine-3d-printed-retropie

Print Settings


Zonestar P802QA (based on Prusa i3)






I used PLA for stiffness. All my 3D models were designed to be printed without the need for any support structures. You will need a 3D printer with a minimum print volume of 220mm x 220mm x 120mm in order to print these files.

Parts were printed at 0.2mm to 0.3mm layer height with 0.4mm nozzle. Most were printed with 100% infill, except for the large body pieces which were printed at 30% infill.


Finishing Touches

Most of the main pieces are held together using nuts and bolts, or screws. You will need M3 bolts of various lengths (probably 10mm - 16mm) and some screws. I am afraid I lost the specs of the screw I used, but it's about 10mm long and 2.5mm diameter. These were use for the marquee pieces.

I sprayed primer putty and sanded it down to a smooth finish before spraying matte black paint for the final finish. You want to make sure you sand the top edges of "Body - Front Left" and "Body - Front Right" so that they are nice and smooth, cause otherwise, when you rest your hands on them, the sharp edges will get irritating quite quickly.

In order to make it look like a commercial quality product, I did a lot of research into the designs of the artwork for old arcade machines. I took inspiration from them to create my own artwork for my arcade machine and had it commercially printed on vinyl stickers.

For the marquee, cut the clear PVC sheet to 210mm x 45mm. You can apply the sticker on top before inserting it.

Connecting Everything Together

  • The controller's USB connector will plug into the Raspberry Pi's USB socket.
  • The power connecter for the display will plug into the Raspberry Pi's USB socket.
  • The HDMI out on the Raspberry Pi needs to be connected to the HDMI input on the display controller board.
  • The speaker needs to be soldered to the amplifier circuit, and the amplfier circuit's power input needs to the connected to the Raspberry Pi's GPIO pin 4 & 6 for the 5V power supply. You also need to solder an earphone jack connector to the amplifier circuit and plug that into the Raspberry Pi's audio socket.
  • Solder together the LEDs and wire it to a USB connector. Plug it into the Raspberry Pi's USB socket.

So, everything is powered directly from the Raspberry Pi. The only cable going into the arcade machine is the Raspberry Pi's power supply cable.

Software Setup

You will need to get RetroPie setup and configured. For that, please check out RetroPie's website (https://retropie.org.uk) and Google for anything you need. All the resources you need are out there!

More references:

How I Designed This

My journey in creating this arcade machine

Parts List

The links to the various parts I used in this project are provided below for your convenience. Note that over time, the part may no longer be available from the link I provided. However, most of these parts are quite generic and usually sold by many different vendors, so just do a search online.

You can use a smaller card, but a bigger card allows you to put in a lot more games.


Here are reference photos to give you a better idea of how all the pieces fit together.


QUESTION: Done everything and turned it on, but nothing appears on the display, what's wrong?

The first time you try to power up the full setup, make sure to power the display from a SEPARATE USB power supply FIRST, before turning on your Raspberry Pi. The display needs to be active first, otherwise your RPi would not use HDMI output for display. Also, do connect a keyboard to your RPi.

After powering up your Raspberry Pi, let it boot up all the way until Emulation Station/Attract Mode comes up (depending on your setup), then exit to terminal.

Open the Raspberry Pi configuration file for editing with this command:

sudo nano /boot/config.txt

Use arrows to get to the end of the file and add these 3 lines:

#Always force HDMI output and enable HDMI sound


Save the changes by pressing CTRL + O and ENTER

Exit the editor by pressing CTRL + X

Now you can turn everything off, reconnect your display's power supply to RPi's USB socket. Now when you turn it on, your RPi will default to HDMI output even though the screen is powering up later than your RPi.

QUESTION: Isn't it easier to just use a laser cutter to cut MDF for all the large pieces?

Indeed, that would have been simpler and faster, and I actually considered that option first, but unfortunately, I don't have access to a laser cutter. Sending it to a commercial facility to do that would have cost me a lot more than 3D printing it myself, so here we are!

Anyway, doing this entire project with 3D printing was actually a good thing for me, because it allowed me to practice my 3D modelling skills and I learnt many things about creating designs specifically for 3D printing.

Overall, I came out of this project having vastly improved my 3D printing skills and gained a lot more experience which I am sure will be helpful in my future projects! =)

QUESTION: Will you share your artwork for the vinyl stickers?

I believe every one of us have our own preference on how we would like to personalise our arcade machine, so I think it's a better idea that you guys design your own artwork so that while we all have the same machine, they all look different.

I would love to see what you guys come up with! =D

More Photos

Here are some additional photos that you may find useful as reference.

The game controller parts

The display parts

The speakers and LED

The amplifier circuit mounted

About to cut the vinyl sticker

Giant size self-adhesive non-slip pads. I got these from Daiso

More from Video Games

view more

File Name



All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

Fantastic build. thank you
Has anyone uploaded a larger screen?

I've just about finished building this and i have to say well done on the painting and sanding. I am sanding it and painting also and discovered that it's bloomin difficult!

Did you use u-molding for the edges?
Very nice design

its awesome.. wish my cetus could print it.. some parts too big :(

Please share the artwork as this this would help people to design there own with the right dimension and so forth for each part. Awesome stuff here! Also some more pics and info on how you wired everything would be great! No matter what great project!

I have uploaded it, see the files section :) ... I printed this at 60cm x 60cm. There are a bunch of extra stuff in there cause I was trying to use up all the space.

Would you be able to upload a file with your design outlines/dimensions? Not the actual designs but just the outlines of the shapes so that when we design our own stickers we can get the proper sizes to cut. Thanks!

I have uploaded it, see the files section :) ... I printed this at 60cm x 60cm. There are a bunch of extra stuff in there cause I was trying to use up all the space.

Awesome sauce!!

Awesome, thank you! :)

Wow, I thought the pieces were laser cut from wood when I first saw the pictures. Nice job!

That is amazing!