Introduction: Legend of Zelda Bartop Arcade Cabinet

I've always wanted my own arcade cabinet. One of my dreams is to own an arcade at some point. After diving into the realm of Raspberry Pi-based emulation for a previous project, I decided I would take it up a notch and build a bartop arcade cabinet. I'm glad I did, because the final build exceeded my expectations by far!

Overview

The cabinet itself was constructed by me and my dad from a sheet of plywood, but if I were to do this again I would pick a better material. Don't get me wrong - it looks good - but the grain of the plywood is unappealing to me (not a huge deal with full coverage graphics) and drilling holes was more trouble than any other part of the project. That being said, for the price and weight it makes a lot of sense.

The software is run through a RetroPie Pi image using the Emulation Station frontend, run on a Raspberry Pi 2.

The audio is routed through a usb audio adapter (fixed a distortion bug with the Pi,) into an amplifier, routed to a set of Kicker DSC35's with the volume controlled by a 1k potentiometer. The amplifier is powered by one of the 12v 5a 60w power supplies.

The video is sent from the Pi to a 19" computer monitor with an HDMI > DVI cable.

The main LED buttons are powered through the USB encoder board that came with the kit, and the marquee LED strips and 12v triangle LED buttons are powered through the barrel jack with one of the 12v 5a 60w power supplies.

Step 1: Parts

Step 2: Initial Design

I found this cabinet plan online on this site. It's kind of unclear what piece is what, but figuring that out wasn't incredibly hard. I labeled the pieces in the attached image for reference. It should be noted that I nixed the keyboard tray, so the front panel where that would have been is just one piece.

I wanted to do full coverage decals, so I made the attached mockup in Photoshop. I had the sides, bezel and control board printed on gloss vinyl decal material at a local print shop. I had the same shop reverse print the marquee graphic onto the plexiglass piece used for the marquee, which worked out really well. It allows the light from the LEDs to shine through the graphic without issue and with enough diffusion to not get any light pinpoints from the LEDs.

A note on the control board graphic - if you want a piece of plexiglass over the wood, I would reverse print the graphic on it instead of getting a decal. After I installed the LED buttons, the areas of the plexiglass that weren't pressed against the wood looked as air bubbles in the light from the buttons. So I skipped the plexiglass on the control board altogether until I have the graphic reprinted on the original piece that was cut and drilled.

Why are there 11 buttons for each player? This setup will allow for a full N64 controller button layout. You can get away less buttons if you aren't running N64. PS1 and MAME will be the next largest setups of buttons, with PS1 using 10 each and MAME using up to 8 each. To be fair, the N64 emulation on the Pi is a little sketchy, so unless you want to play around with backend settings over and over and over...you might want to skip that thought completely.

Step 3: Prototyping

I used a half-sized breadboard to get all of my random power connections in one place. The original idea was to have both the amplifier and the LEDs powered off the same supply, but the 12v 5a 60w power supply I had seemed to cause static in the audio with everything powered, so I ended up letting the amplifier and the LEDs have their own independent power supplies (hence the two different breadboard setups in the pics.) The static went away, but I think I'm probably missing a basic principal of electricity that would have allowed for one PSU to work here.

That being said, my buddy suggested an ATX power supply that pushed varying voltages. A proper sized one would allow for everything (the monitor, the PI, the amp and the LEDs) to be powered off of one unit. I already had power supplies laying around and a power strip so I didn't mind going the power management route I took for this build. Future builds of something like this for me will definitely use the ATX supply method.

I created a pseudo control board out of a cardboard box to test the functionality of the buttons and work with the programming of the button config for the Pi.

Step 4: Cutting the Pieces

Outlines were drawn on the plywood sheet and each piece was cut out by hand with a jigsaw. The plans from the previous step show the size of all the rectangular pieces.

The sides are a little tricky to measure out properly, so I redrew them in Illustrator and printed full size outlines to use as a stencil. I also did this for the monitor bezel as I needed the window to be a specific size and location for the monitor and the decal to line up properly, as well as the button holes for the control board (PDF files attached.)

The sides and monitor bezel were printed on 24"x36" sheets of the cheapest paper they had, and the control board was printed on an 18"x24" sheet. **Definitely measure your own monitor and design of your bezel graphic in relation to your own project and adjust the stencil window as your design may well be different**

I added lines down the sides of the sheets every inch to be able to measure the print to make sure the printer didn't adjust the size of the image. If you print stencils at Kinkos or Office Depot or wherever, make sure you tell them to not let their printer or program scale the image. It is a stencil, so you need it at exact size.

Cut pieces were sanded until smooth. Make sure you sand the heck out of any pieces you are going to apply decals to. You want them to be smooth so there is a nice surface for the decals to adhere to.

Plexiglass was cut to use for the marquee and the control board. Another piece would have been nice for the monitor bezel, but poor planning on my part made that a super hassle. Drilling holes for the speakers through the plexiglass and the monitor bezel at the same time would have been nice.

Step 5: Assembly

First we attached the marquee boards to the monitor bezel with wood glue and then secured with screws from behind the bezel. After we had a good idea about the remaining space available on the bezel, we put another stencil down for speaker holes. Most would put the speakers up in the marquee facing down, but I really liked the sound projection better with the speakers pointed at me. I put nail holes into each hole on the stencil and then when back with a drill and made the final holes.

Next we needed to get the middle pieces to attach to the sides. We created a bunch of braces with some scrap 1"x1" strips of pine from a previous project. These braces were affixed to the monitor bezel/marquee section, the control board and the front piece with wood glue and secured with wood screws.

Going off only the picture in the initial plans, we decided where everything should sit through trial and error, laying the bezel/marquee section along with the front section and control board against one side section until they fit right. At that point we traced around the braces on the side section, then removed the pieces and drilled pilot holes where the braces would sit.

We then put the pieces back on the side section with wood glue and used wood screws to secure them to the side. After the pieces were connected to one side, we laid the other side on top and adjusted until it lined up with the other side. The same technique of tracing the braces was used, pilot holes were drilled, wood glue and wood screws were used to connect the side.

The back section was attached with hinges on the bottom of the cabinet and secured closed with a latch on the top to provide access to the internals for maintenance.

Step 6: Painting

Everything was spray-painted black and 2 coats of polyurethane were applied. I sanded with steel wool between coats to give it a nice finish.

Step 7: Decal Application

I was waiting for this step the entire build. The cabinet looked cool by itself, but the decals really take it to the next level.

Applying decals is tedious work. If it's not for you then you are probably doing it carelessly. Take your time because you want all the sweet art you made to line up properly. I find it easiest to start from one side and work towards the other side slowly, making sure no bubbles are forming as you press the decal flat. **Make sure you print your decals with enough bleed to give you a little wiggle room in case it isn't lining up perfectly**

I cut the monitor window and speaker holes out with an Xacto knife. The speaker holes are cleaner than the pic above - just had to take some extra time and trim super carefully.

Step 8: Marquee Creation

Aluminum foil tape was used to get a nice uniform light disbursement inside the marquee area. I used 2 strips of 5050 SMD warm white LEDs to light the marquee. I tried cool white, but with the earth tones in the decal art the warm white looked way better.

I installed the 1k pot in the base of the marquee for easily accessible volume control. I used a 3-prong servo connecter for a quick disconnect on the other end of the wiring.

Step 9: Speaker Installation

The speakers were added to the back of the monitor bezel with bolts and wire run to the base of the cabinet.

Step 10: Attaching the Monitor

If the monitor you bought has mounting holes on the back of it, they can be used with a strip of wood across the back of the monitor.

Mine didn't have them, so I disassembled the monitor and pulled the LCD and attached casing. Because the edge of the actual LCD was metal, I covered the edge with black electrical tape prior to mounting for aesthetics.

Using the 1"x1" pine scraps from before, we created a frame for the monitor to sit in. I wasn't thinking about it at the time, but I would rout a channel for the lip of the monitor to sit in to get it more flush with the front of the machine next time.

Step 11: PCB Shelf

I found the tackiest duck shelf at a thrift store for $1. I cut the top off and made a little shelf for the Pi and the breadboard. I used standoffs from the hardware store to elevate the boards. I secured the shelf into the cabinet with screws from underneath.

Step 12: Control Board and Front

Using the stencil, holes were drilled with a drill press for the buttons and joysticks. Channels in the underside were routed for the joysticks to set in, as well as sections of the braces to allow for the ridiculous amount of buttons in such a small space. The holes for the front triforce were drilled at this time also.

I applied the control board decal after the holes were drilled and hand cut the holes in the vinyl with an Xacto knife. All buttons were then attached and the wiring connected to the USB Encoder. The triangle buttons were installed on the front section while the control board was out, then everything put back together.

**UPDATE** I had someone inquire about keeping the LED buttons on all the time. I've included a pic that shows the rewiring for the set I purchased. Note: this might not be the same for your buttons...

Step 13: Hooking It All Up

Now that everything was installed and wired, it was time to hook everything up.

On the breadboard, the leads for the LEDs in the marquee and the triangle buttons all run to the same power bank, connected to a 2.1mm barrel jack. I used 2-prong connectors for a quick disconnect on the breadboard side.

The triangle buttons are all wired into the same button (not pictured except for in the schematic) so that pressing any of them has the same effect - in this case exiting a game back to Emulation Station. This was also done with a set of quick disconnects.

The amplifier has both speakers, a 12v 5a power supply, the potentiometer and the 1/8" audio cable running into it.

The Pi has both USB encoders running into it, as well as the USB stick running the software and the USB audio adapter. The video is hooked up from the HDMI-out on the Pi to the DVI-in on the monitor.

In order to have a switch on the outside of the cabinet that would shut everything off, I removed the switch from the power strip and mounted it in the back cover. A C14 plug with a switch would have been a better solution here.

Step 14: Software Side

I wrote an Instructable earlier this year called Piulator that outlines the process around installing and modifying the software on the Pi. It can be located here.

A few things to note that are different than my portable build:

  • I am running the RetroPie image off of a USB stick instead of an SD card. You can find a great tutorial on that here.
  • The Pi 2 image is different than the B+ version. Make sure you download the right one for your system.

Like my previous build, I created a theme for Emulation Station with Photoshop and Dreamweaver. You can find the guide I wrote for theme building in the Piulator Instructable.

If you have specific questions on the software side of this, check out the Pet Rock Blog forums. If you have a question, there is likely an answer on there.

Step 15: Conclusion

This was really fun to put together and even more fun to play!

Changes I would make moving forward:

  • A more sturdy building material, although I really like the weight of the cabinet with the plywood
  • Reverse printing on control board plexiglass
  • Plexiglass monitor cover
  • ATX power supply
  • C14 jack with on/off switch instead of modified power strip

Comments

author
RyanK179 made it! (author)2017-06-13

Thanks for the guide and artwork! I just finished my build, and this thing looks awesome.

zeldaArcade4.jpgzeldaArcade5.jpgzeldaArcade6.jpgzeldaArcade7.jpgzeldaArcade8.jpg
author
phrazelle made it! (author)phrazelle2017-06-13

That looks fantastic! Nice work!

author
phrazelle made it! (author)2016-12-21

It's almost Christmas and I'm feeling Christmas-like, so here are the art files for the cabinet along with the theme for RetroPie!

These all have 0.25" bleeds on them, so keep that in mind.

The monitor bezel should probably be exported again with the hole for the monitor adjusted for your build, so I included the EPS and PSD files for that one.

Monitor Bezel - https://www.dropbox.com/s/li901zrzcrdb865/zeldaCa...

Monitor Bezel PSD - https://www.dropbox.com/s/dt1ld5trggpmmt7/zeldaCa...

Control Board - https://www.dropbox.com/s/90esexijp1dpio0/zeldaCa...

Left Side - https://www.dropbox.com/s/l4swz3zyv0zuczl/zeldaCa...

Right Side - https://www.dropbox.com/s/8jmc3msk9i141dz/zeldaCa...

Marquee - https://www.dropbox.com/s/l4swz3zyv0zuczl/zeldaCa...

RetroPie Theme 4:3 - https://www.dropbox.com/s/7zsnie9bewutnm7/zelda_re...

RetroPie Theme 16:9 - https://www.dropbox.com/s/cc6e9h479hw5mw7/zelda_re...

author
RyanK179 made it! (author)RyanK1792017-05-06

Do you happen to have a Control Board file that does not have the button markers on it? I am going to build this machine, but I'm planning on only having six buttons per player. Also, I'm using a 24 inch monitor. Do you anticipate that the artwork will look bad if stretched to fit that scale? Thanks!

author
phrazelle made it! (author)phrazelle2017-05-11

Per your dimensions in your direct message, here are the marquee, control board, and screen bezel graphics at 24" wide. (with a 0.25" bleed on all sides)

I took the middle out of the screen bezel so you can cut your own out based on your monitor's actual size.

Let me know if this doesn't work for you!

Screen Bezel:

https://www.dropbox.com/s/elx6ufqttztwc09/zeldaCabinet_screenBezel_24x18-75.jpg?dl=0

Marquee:

https://www.dropbox.com/s/ki9jxdijebqsr2h/zeldaCabinet_marquee_24x5_PRINT.jpg?dl=0

Control Board:

https://www.dropbox.com/s/jptxf7021sc684m/zeldaCabinet_controlBoard_24x10-5.jpg?dl=0

author
RyanK179 made it! (author)RyanK1792017-05-12

Thank you! These are great! The control board and marquee are perfect. My screen is wide (16:9 aspect ratio), and I only expect to have 1 - 1.25 inches to work with for artwork around all four sides, so I will probably have to find something else for the bezel. I'll let you know exact measurements when I find out. Thanks again!

author
phrazelle made it! (author)phrazelle2017-01-25

Whoops! Here is the link to the marquee:

https://www.dropbox.com/s/grmtc99wj5bu22k/zeldaCabinet_marquee_20x5_PRINT.eps?dl=0

author
SteveT152 made it! (author)SteveT1522017-01-24

The link you provided for the Marquee is actually the same link as the Left Side piece, can you please fix the link?

author
TylerJ58 made it! (author)2017-02-06

I am having a hard time creating decals and where to have them printed? In need of some help? Thanks

author
phrazelle made it! (author)phrazelle2017-04-10

I have my decals and plexiglass backings printed at a shop in Kansas City called Signs By Tomorrow. Any sign shop that does vinyl decals should be able to tackle it. I've also seen suggestions for vehicle wrap shops, so that might be another good avenue to check out.

author
CotorreoWiiu made it! (author)2017-02-01

do you sale the arcade's? if you do please!!! let me know

author
BrentP4 made it! (author)2015-06-30

Would you be willing to share the full sized image files you used for the decals? I didn't see them above. Flattened is fine.

It looks very impressive!

author
phrazelle made it! (author)phrazelle2015-06-30

Thanks for the kudos! I can't pass the art along, but I can give you template files if you would like.

author
Aerocles made it! (author)Aerocles2015-07-01

I would like the templates!

author
phrazelle made it! (author)phrazelle2015-07-01

Here are PSDs of my working template files as well as an AI file with the pieces broken out into separate artboards.

**Make sure you adjust the monitor window on the screen bezel to match your specific build, as well as the position of the joysticks/buttons.

**The sizes on the joystick/buttons in the template are to scale for the set I purchased referenced in this instructable.

**Bleed is added into the "sides" PS template, but not referenced with a layer.

Photoshop files:

Control board: https://www.dropbox.com/s/9kb4b7o5c2i5yo1/zeldaCab...

Marquee: https://www.dropbox.com/s/x1d2eh7kqz8uo16/zeldaCab...

Screen Bezel: https://www.dropbox.com/s/5x0x2aizg2rt784/zeldaCab...

Sides: https://www.dropbox.com/s/pnl0h5d2twz68qb/zeldaCab...

Illustrator file:

All: https://www.dropbox.com/s/ueg673rcsi2h7zc/zeldaCab...

author
ChrisG393 made it! (author)ChrisG3932016-12-09

your photoshop files are gone

author
phrazelle made it! (author)phrazelle2016-12-20

Here are new templates! I left the marquee and monitor bezel out because those are just rectangles and you will need to measure the monitor hole and marquee spacing based on your build anyway.

The side template is only one side but you can flip the canvas to mock up the other side.

I put the control board in here with properly sized button and joystick elements.

I hope these help!

Cabinet Side (24x36) - https://www.dropbox.com/s/uikmejxd4iopz63/cabinetS...

Control Board (10.25x20) - https://www.dropbox.com/s/e5ocn6jhz6hhers/controlB...

author
krummrey made it! (author)krummrey2016-11-07

The links are dead. Could you kindly repost them?

author
DreawleZ made it! (author)DreawleZ2015-11-04

Hello, i'm gonna to build my own Bartop and i can't believe how amazing is yours!! I'm in love about The Legend of Zelda since i'm a kid (long time ago :/ ) and i really would like to be able to use the coverage decal that you did. Unfortunatly the link for the Photoshop files are dead :/ So could you, please re-upload them? The child inside me would be very happy there^^

Thank you and really good job for that dream Bartop :D

p.s: sorry for my mistake in English, i'm not thaht good with this language :P

author
BrentP4 made it! (author)BrentP42015-06-30

Nah, that's alright, thanks anyway!

author
Ennard made it! (author)2016-10-09

Hi great work,

any chance getting the decals?

Thanx from Germany

author
blue_orca made it! (author)2016-06-30

Is there anyway you can repost the decal templates? This build is awesome!

author
AmyD89 made it! (author)2016-05-12

It's amazing! <3

author
DerekB23 made it! (author)2016-01-29

How did you attach the marquee?

author
Nubisoft made it! (author)2015-12-13

the first thing i thought when I saw this is "I need to build this!"

author
Bazmcc made it! (author)2015-11-26

Wonderful project!

Thanks for sharing it with a great guide.

author
ty6125 made it! (author)2015-11-17

Could you send me the decal sizes or the template files? I tried the links and they didn't work, Very Impressed

author
SpenceKP made it! (author)2015-08-14

Looks fantastic, I just have one question, you may have mentioned it but I couldn't find it anywhere, what are the dimensions of the plexiglass piece for the marquee?

author
phrazelle made it! (author)phrazelle2015-08-18

I measured the marquee plexiglass after the cabinet was assembled. I didn't want it to be off if I placed the bottom 'shelf' of the marquee incorrectly.

author
SpenceKP made it! (author)SpenceKP2015-08-19

Ah, got it, thanks for the reply. :)

author
JakeR10 made it! (author)2015-06-30

Do you know the full cost to build ones of these?

author
phrazelle made it! (author)phrazelle2015-06-30

~$500 depending on materials.

author
JakeR10 made it! (author)JakeR102015-07-02

Oh wow, that's definitely within my budget. Thanks for the response! My second question would be, are you willing to make more for some extra cash? :p (Serious question though)

author
phrazelle made it! (author)phrazelle2015-07-15

I tell you what - my dog needs surgery and I started a GoFundMe campaign. I have an offer for a build on there if you wanted to go that route. Not only would you get a cabinet but you would make a serious contribution to my dog's opportunity for continued living. http://www.gofundme.com/ze2jx78

author
Newguy412 made it! (author)2015-07-06

I have ocarina of time on my 3Ds and I was trying to get Majora's Mask So if this is only Ocarina of time could you tell me how to program majora's mask into this

author
warren2345 made it! (author)2015-07-03

Any chance you can provide your emulation station theme?

author
phrazelle made it! (author)2015-06-21

Ezeisel - USB over SD because there is a much lower chance of a USB drive frying than an SD card. I personally have burned out a few SD cards on other projects and I wanted this to be as stable as possible. Also, you can get much larger USB drives than SD cards, so if you plan on adding a few hundred gigs of roms you will want a larger drive.

11 buttons for each player to support a N64 controller setup.

2 USB encoders are for 2 separate players. That is just how the kit I purchased is setup. Some sets only have one encoder.

author
warren2345 made it! (author)warren23452015-07-03

If you really want durability use an external HD. Most USB drives/sd cards aren't built to survive a ton of read/write cycles.

author
ezeisel made it! (author)ezeisel2015-06-21

Thank you! What do you recommend -- I am going similar 2 person joystick and button setup, but want to add 2 usb ports to be able to have Makey Makey controls plugged in. That would use up all 4 Raspberry Pi 2 USB ports to have 4 players. Can I get away with using an SD card (was going to add heat sink and a small Pi fan) or is there a workaround?

author
phrazelle made it! (author)phrazelle2015-06-21

You can use a powered USB hub to add USB slots to the Pi. I think this is another item where you don't want to go cheap unless you are prepared to replace if it craps out.

I would recommend the USB over SD, unless you are prepared to replace SDs if/when they go bad. Decent USB drives have a considerably less chance to fail on you. That being said, if you aren't using an incredible amount of drive space for your build then a (relatively) small SD would be affordable to flip if it ever crashed. Just make sure you make an image backup when you get your system in order!

author
djkurtz92 made it! (author)2015-06-30

I love your project. When I made mine I went with a lexan covered monitor. I ended up removing the lexan and cutting out the monitor hole because the glare was terrible. Unless the room is completely blacked out. Any light source made it difficult to see. I have one question because i was going to make one from an N64. How does it play without an analog stick? I assume those are regular joysticks and not analog controls?

author
phrazelle made it! (author)phrazelle2015-07-01

Yes, they are regular joysticks. I think it plays well for what I have played. N64 emulation on the Pi is hit-and-miss without adjusting settings and trying different emulator builds, so I haven't got all the kinks worked out to play more than a few games yet.

author
Alakhai made it! (author)2015-06-23

that is really amazing work, would it be possible to get the graphics files for it as well? I am handy at building stuff but.. not so much with artwork.

author
phrazelle made it! (author)phrazelle2015-06-30

Thanks for the kudos! I can't pass the art along, but I can give you template files if you would like.

author
Alakhai made it! (author)Alakhai2015-06-30

That would be great, maybe see what some of the talents i know can do.

author
phrazelle made it! (author)phrazelle2015-07-01

See above for links!

author
jozza65 made it! (author)2015-06-23

Fantastic work, and it's nice to see an arcade cabinet which has been made using small hand tools rather than a big CNC or laser cutter. Love the refactoring of the shelf from the thrift store too, very imaginative. I'm hoping to build a floor standing cabinet soon with a Raspberry Pi Mame installation, will be following many of your techniques. Thanks!

author
phrazelle made it! (author)phrazelle2015-06-30

Thank you and agreed! I don't have access to those fancy machines, so I make due with what is available.

author
cdevildevil made it! (author)2015-06-23

Ocarina of Time? How do you control the camera with only one analog stick?

author
phrazelle made it! (author)phrazelle2015-06-23

Check out this image for how the buttons are configured for N64 play.

n64Buttons.jpg

About This Instructable

133,373views

1,121favorites

License:

More by phrazelle:Ornate Magic MirrorSteampunk Raspberry Pi LaptopLegend of Zelda Bartop Arcade Cabinet
Add instructable to: