Arcade Cabinet (bartop, 2-player)

Arcade Cabinet (bartop, 2-player)

Ahhh Christmas break! What a wonderful time of the year – too bad it goes by so quickly… ๐Ÿ™‚

Anyways, to keep my brains occupied during time off from work (and, let’s be honest, have some fun geeking out!), I finally decided to build an arcade cabinet. I know, seems like everyone is building one, but that’s only because they’re so cool!

 

Here’s the final result:

 

ย 

 

For anyone visiting from Reddit, I also prepared an Imgur album, in case you may prefer that.

Pleaseย note that the description of the process is different in each case, so for most information I’d recommend reading both this post and the album on Imgur:
https://imgur.com/gallery/JgjLf

 

I started working on the project, as always, with a research, to look for inspiration, think various aspects through, and decide how I want to design my own cabinet.

But before I dive into details, let’s see what is needed to make one.

 

Bill of materials

  • 1/4″ MDF sheets
    • I had them cut to 24″ x 18″ as this is the max size I can use in laser cutter, and my design needs 6 sheets total.
    • I was considering plywood, but I was discouraged by how difficult it became to find a straight sheets where I shop…
  • Raspberry Pie 3, case, power supply, SD card
  • 17″ LCD monitor, along withย necessary cables
    • The monitor I used had only DVI and VGA outputs, while Raspberry Pie has HDMI input, so I had to throw in DVI to HDMI adapter.
    • Note that my design was driven by the dimensions of the bed for the laser cutter I have access to, and as such 17″ is the max size I could use. It doesn’t feel small though, given the distance from the screen.
  • Small speakers
    • I used USB-powered speakers, to avoid the need for one more power socket,
  • Arcade joysticks and buttons
    • Those can be easily purchased in kits, along with USB controller boards, cables with quick connect, etc.
    • Here’s the set for 2 players I used,
  • Extension cord (with 3 sockets),
  • “Kettle plug” socket with switch and fuse, along with quick connect plugs (insulated, safety first, especially when we move up from low voltage DC to AC), I picked mine from a local electronic store, but it’s also available on Amazon,
  • Magnetic cabinet door catches
    • I used those (they come with screws, but I ended up using bolts instead)
  • Hinges,
  • Primer, paint, etc. for the finished look you’re after,
  • Various screws/bolts/nuts/washers (note: I used both metric [forย VESA monitor mount] as well as imperial for all other needs and I feel like generally it’s good to have assortment of both handy ๐Ÿ™‚ ),
  • Optional: USB controllers for your favorite gaming system, if you’d like the ability to support more players, or just like their ergonomics ๐Ÿ™‚

I used laser cutter to cut all the body panels, but more conventional tools could also be used instead ๐Ÿ™‚ย (jigsaw, band saw for button cutouts, etc.).

 

Design

You can find various designs easily online, or even buy pre-cut body panels to assemble your own cabinet (there are plenty to choose from on eBay), and then add hardware inside, but I like to make my own designs – it’s half the fun ๐Ÿ™‚

It also gives you full control of all the aspects of the design, enables to re-iterate quickly to make improvements (i.e. for issues identified on the first fitting/test assembly), you don’t have to settle on compromises made by someone else (which could’ve been more applicable in their case) and in the end it just feels good to know that you made it all…

As always, I jumped into Fusion 360 and started sketching.

For this type of design, where we have side elements keeping all the pieces together (“sandwiched” in between), instead of designing each element separately (with its own “sketch”), I find it significantly more efficient to work off of a single sketch which defines dimensions of all elements and is a go-to place to make changes in sizes, relative positioning, etc. Then you can simply extrude the profiles from the master sketch into their own components.

 

Another decision I made early on was to include the tabs/slots in my design. Not everyone may like this approach (i.e. the side panels have visible tabs and are not a solid piece of wood, which affects aesthetics), but I like the ease of this approach for fitting the parts as well as convenience of final assembly and general sturdiness.

Also, I don’t have access to a bigger working space where I could arrange the elements and clamp them for hours… And with tabs/slots pieces just snap in together ๐Ÿ™‚

Note that I skipped on the classic T-molding present in the original arcade cabinets. Unfortunately, I don’t have router table to accommodate those, and alternative solutions (gluing few panels with different sizes to have slot in the middle required for T-molding) didn’t seem worth it.

 

Here is the design I made:

ย 

 

And a short video showing how the separate elements are organized:

 

I continued to work on the design throughout, whenever I discovered something that could be improved. The biggestย update was related to the monitor mount. At first I thought of using some kind of brackets to keep monitor in place (a problem I’d solve when I get there, thus not much thought in the initial design), but when doing first test assembly, I decided to also design aย mount for the monitor, which would integrate with the construction and provide more support.

That was something I didn’t plan on doing at first, but now I feel that it made the design feel more complete, and assembly much easier. The cabinet feels very sturdy and I don’t have to worry about monitor shifting around, or becoming loose.

 

Making the cabinet

All the profiles of body panels were exported from Fusion 360 into .dxf file format and then cut on laser cutterย from Universal Laser Systems.

Before committing to a large laser cutting job, I recommend doing few test cuts. This is especially helpful if you use tabs/slots as it can help you understand the impact of laser kerf and adjust your design dimensions if needed. Just make a small test piece with one tab and one slot and work off of that (to speed up the process and minimize the amount of wasted material). This is even more important when working with a new material.

For reference, here are the parts I made for testing the dimensions and fitment of the tabs/slots and buttons (took me a quick 3 cuts to get the dimensions perfectly):

Cutting all the body panels took under 2 hours (this doesn’t include test cuts or iterations on the design, but is simply a total time if I were to go ahead now and cut the panels again in their final form).

Panels fresh from laser cutter:

ย 

First assembly, to test the fitment of the parts, identify potential issues, etc. It’s better to make sure before we dedicate few hours into finishing the parts ๐Ÿ˜‰

 

Installing the monitor

At this point I tried fitting monitor, and this is when I decided to do it the right way – design a strong, stable mount, instead of depending on some brackets and other flimsy solutions.

Monitors already come with VESA mounts, so it only seemed natural to take advantage of this fact. And thisย makes it possible to use different brands/models of monitors as well (potentially with some small adjustments, like different cutouts in the body panels to enableย unobstructed access to the monitor’s control buttons).

Note that VESA mount uses metric screws, and the spacing between holes is not in inches (even though it’s very close to 4″, don’t be mislead, it’s actually 10cm – ask me how I learned that… ๐Ÿ˜‰ ).

There’s one interesting property of VESA mount, which I took advantage of – they’re installed parallel to the screen. It means that I could easily define the angle of the mount to make sure that the monitor will be properly aligned with the front frame of the cabinet (since those are same angles).

Laser cutter at work:


You may see that there are multiple instances ofย the same elements – those are used as spacers to allow me to position the monitor more to the front/back as needed.

I screwed the pieces onto the VESA, and assembled the “head” of the mount. The “wings” at the end of the mount simply slide into 2 legs that are then attached to the base of the cabinet.

Notice that I’m using washers everywhere – MDF is quite a soft material, so I highly recommend using washers to make sure the connections are stronger.

Making sure that the monitor fits nicely in the cabinet:

Notice a horizontal “beam” between the legs of the monitor stand. This serves 2 purposes:ย connects and stabilizes the legs for extra sturdiness, as well as serves as a simple shelf, to allow better organization of the internals.

 

Finishing the body panels

Since the panels were cut out of MDF, there’s one important thing to note: MDF absorbs finishes very quickly. As such, we’d either need to use layer after layer of paint, or first seal it. I decided to seal it with Shellac (following the principle of “Shellac sticks to everything and everything sticks to Shellac”). Two or 3 layers of shellac should seal MDF enough to continue with painting – it works great as a sealer and primer in one. It also dries very quickly.

Then I proceeded with painting the cabinet. I wanted for it to look… classy, nothing too crazy ๐Ÿ™‚ So I went with black spray paint. Again, to be applied in fairly light coats, I ended up with 3 or 4 coats depending on the panel (I was making some adjustment in the design at this stage, thus some panels needed to be re-cut and started fresh).

To seal it off, I used a spray lacquer. I had few cans around so that seemed like a perfect application. I’m sure polyurethane would work just as well, if not better.ย I recommend light sanding between coats to remove all bubbles and uneven surfaces, in order to achieve the desirable mirror-like finish. It can be a scary thing to do (immediately after sanding things look significantly worse, so the first time around you’ll be pretty sure it’s destroyed), but don’t lose hope – it’s expected and it gets better with every next layer ๐Ÿ™‚

Body panels ready for finishing (first few layers of shellac to seal/prime MDF, then paint, and finally lacquer):

And somewhere in the middle of the process, between layers of lacquer. Notice the small bubbles still visible – those can be removed by sanding between the coats.

ย 

Note that all the panels except the 2 biggest side panels were painted only on 1 side, while the side panels were painted on both (there’s a “lip” sticking out for a 1/2″ from the edge of the side panels to the edge of every other panel attached to the sides, and we need to make sure that this lip also looks finished).

After all was said and done, I used 3 cans of Shellac, 2 cans of spray paint, and 3 cans of lacquer. More than I anticipated, so I’d recommend buying a bit more than you think you may need, to save yourself a shopping trip later on.

 

Electronics

If you’ve been looking at making an Arcade cabinet yourself before, there will be no surprises in this section for you ๐Ÿ™‚

Firstย task was to install and wire the joysticks and buttons. Do this after the wood has been finished, but before it’s all assembled into a cabinet ๐Ÿ™‚

This is when I realized that I forgot to include screw holes for installation of joysticks, and even though I re-cut few panels previously after making changes in the design, I decided to solve this with a drill. I’ll be using washers here as well, so that gives me a wider margin of error if it so happens that the drill rips a bit of MDF on the finished side.

To minimize the risk of damage to MDF when drilling holes, use a piece of sacrificial wood underneath the MDF board. I used a piece of paper to protect the finished side of MDF from the wood underneath and drilled this way.

Time to install all the buttons and wires:

To make wiring easier and less error-prone, make sure that all buttons are oriented in the same way. This way it’s easier to keep connecting all wires in the same order.

After connecting buttons on the control panel, it was time for the front panel, with Start and Select buttons:

I added labels (P1, P2) to the faces of Start buttons. Those buttons can be disassembled easily by simply pushing in 2 tabs on the sides and pulling the face outwards.

Everything wired and ready for assembly:

 

Final assembly and miscellaneous hardware

There were few additional pieces required to complete the cabinet.

I started with the kettle plug, along with an extension cord (I used insulated quick connect clamps to connect those 2).

Then I added the heartย of the machine – Raspberry Pi 3, and connected it all (RPi, 2x USB controller boards, power and video to the monitor, speakers):

For the door in the back of the cabinet, I used short “piano hinges”, with holes already cut on laser cutter (I updated original design to account for those, to avoid having to do more drilling later on):

And to keep the door locked, as well as the front piece on the top of the cabinet (“marquee”) in place, I used the magnetic cabinet door catches:

I also hid a cheat-sheet with the global button shortcuts for RetroPie/EmulationStation in that bonus storage area ๐Ÿ™‚

 

Software

I’m using RetroPie, and everything can be found at: https://retropie.org.uk/

I decided to use the ready image, so the complete setup was a breeze. Then just add roms of your choice (keeping mind the laws – generally it’s allowed to use ROMs of games you own physical copies of), and everything is ready! If you’d like to dive deeper into the configuration, different versions of emulators/BIOS, or customize the looks (splash screens, themes, etc.) the Wiki available on the official website is a great place to start:ย https://retropie.org.uk/docs/

There’s at least one alternative to RetroPie, but I didn’t have a chance to play around with it yet:
http://www.lakka.tv/

 

Photos of the completed arcade cabinet

Finished look (along with some cool NES controllers on USB, to allow for up to 4 players!):

ย 

Look at the back:

And inside:

Ready to play!

 

 

 

Videos

Complete project:

 

First time booting after the assembly:

 

Special video with a celebrity making an unexpected appearance ๐Ÿ™‚ (our yellow-sided green cheek conure, Bella)

 

Shared links:

Since I completed this project, it’s been featured on few websites:

 

 

Looking for moreย inspiration?

If you’d like to read more on this subject, here are some interesting resources I found while doing my research:

 

If you build an arcade cabinet yourself, please share! ๐Ÿ™‚

Comments

427 responses to “Arcade Cabinet (bartop, 2-player)”

  1. Tarja Morgan Avatar
    Tarja Morgan

    Hello there, could I have the laser cut files also – trying to build one of these for Pi Jam in our library ready for a Comic Con we have got planned later in the year (I made one previously out of a shoe box couple of years ago and it is now falling to bits)

    Thanks, Tarja

    1. Bogdan Avatar

      Hi Tarja. Hopefully I’m not too late with the files! I just emailed them to you. Arcade Cabinet out of a shoe box sounds very cool ๐Ÿ™‚ I hope this project will serve you well!

  2. Georg Avatar
    Georg

    Hello Mr. Bogdan,

    Can I have access to your files for this project? I Love it. Nice JOB!!!
    Thanks, Georg

    1. Bogdan Avatar

      Thank you for the kind words, Georg! Files should be in your inbox ๐Ÿ™‚ Let me know if you have any questions, and I hope the plans combined with this write-up will make for a pleasant and fun build.

      1. Shane Avatar
        Shane

        Hi,
        Can I have access to your files as well please? I can use this for a school project.

        Thanks ๐Ÿ™‚
        Shane

        1. Bogdan Avatar

          Hi Shane, oh how I wish I had a chance to make projects like this one back in school! ๐Ÿ˜‰ I’m sorry for a bit late reply, but I hope it’s not too late. I just sent you the plans, good luck with the build and let me know if you encounter any problems or surprises.

  3. Dion Avatar
    Dion

    Awesome Build looks great

    exactly what iv been looking for

    could I possibly get the files? please & thank you

    thanks, Dion

    1. Bogdan Avatar

      Happy to share the plans, as you may have seen in previous comments, Dion ๐Ÿ™‚ I just sent them to your email. Hope they work with your workflow/laser cutter!

  4. Damian Avatar
    Damian

    Hello Bogdan,
    Great job on the arcade machine project! I especially liked the trick with the VESA mount. Iโ€™ve looked through many arcade projects, and securing the monitor always seemed to be a bit of a challenge. Itโ€™s been a few years since you shared the project. Do you happen to remember which Dell monitor model you used? Or at least, could you tell me the screen ratio: was it 4:3 or 16:9? Also, would it be possible for me to get the files for this project?
    Thanks so much!

    1. Bogdan Avatar

      Hi Damian, for specific model details, please see my comment here ๐Ÿ™‚ https://bogdanbergblog.azurewebsites.net/2017/12/29/arcade-cabinet-bartop/#comment-1225773
      I just looked that up, but I admit it confused me, since I was sure that’s a 17″ monitor, yet the model name indicated 19… And it is 4:3.

      I emailed you the plans just now as well. Hope your build turns out great!

  5. Jeff Avatar
    Jeff

    Hello Bogden,

    Nice work! Could you share the files? Thanks so much.

    1. Bogdan Avatar

      Sure thing! Plans have been sent to your email. Good luck with the build, Jeff!

  6. Mike Avatar
    Mike

    Hey there. I would love the laser files for this if they are still available. I have been out of the hobby for a few years but this would be a fun project as I jump back in.

    Thanks, Mike

    1. Bogdan Avatar

      Hi Mike, I sent you the files. I remember this project as taking a bit longer than I first though haha, but it’s certainly a great one to return to building things after a while, especially with prior experience ๐Ÿ™‚ Good luck, and have fun!

  7. Peadar Avatar
    Peadar

    Would love access to the files, I have a space in a shelf I would love to install this.
    I am going to have scale down some parts as I will only have enough space for one person.

    Can’t wait to get started on this project ๐Ÿ˜›

    Great Job, Bogdan!

    1. Bogdan Avatar

      Hi Peadar. When scaling things down, please keep in mind that all the parts were made with 1/4 (6mm) MDF in mind, thus I’d recommend re-sizing intentionally as needed, and not uniformly scaling the parts (which would lead to the elements no longer fitting with the tab/slot system). I’d be very curious to see the final result, I have not considered making a smaller version for 1 player, but that sounds exciting! Good luck with the build ๐Ÿ™‚

  8. Anders Sejersen Avatar
    Anders Sejersen

    Hi Mr. Bogdan
    I am about to do an arcade build with my students and we are using the exact same Dell screen. So I would greatly appreciate it, if you could share the files for the laser cutting. Thank you for a fantastic project.

    1. Bogdan Avatar

      Hi Anders! Thank you for the kind words. This project has been quite popular with students, and I’m so happy to see the ability of so many people to build cool projects ๐Ÿ™‚ I wish I had a chance to do similar things back in my school days. I just sent you the files, please let me know if you encounter any issues, and I’d be happy to help.

  9. Jan Avatar
    Jan

    Hello Bogdan
    Great project! Could i get access to files for your project?

    1. Bogdan Avatar

      Czesc Jan! Nie wiem czy sie spodziewales spotkac tutaj Polaka ๐Ÿ˜‰ Wyslalem Ci plany na maila. Powodzenia z projektem i daj prosze znac jak wyjdzie!

  10. Joel J Avatar
    Joel J

    Would love to get a copy of the files myself, Son and I are going to attempt to build one ourselves in the next couple of weeks. Any advice you can offer would be great as well. Thanks

    1. Bogdan Avatar

      Hi Joel, great timing for a project like that, before the Holiday season ๐Ÿ™‚ I sent you the files just now. Hope the build goes well for you and your son, and please don’t hesitate to reach out if there’s something I could help with along the way. The email I sent you also includes a bit of additional information. Good luck!

  11. Philip Bock Avatar
    Philip Bock

    Greetings. Love your project!
    I’m working on one of my own and would love to use your plans as a start. Would you be willing to share the dxf files with me? I’d greatly appreciate it!

    1. Bogdan Avatar

      Hi Philip. I have to say, from the various project I’ve built through the years, this one and the motion simulator have given me most joy, both during the initial build, and then even more so from being able to enjoy them over the years… ๐Ÿ™‚ I sent you the plans just now, but I’d encourage you to experiment, and add a personal spin, if you’d like! Good luck with the build.

Leave a Reply

Your email address will not be published. Required fields are marked *