Build a retro arcade cabinet with Raspberry Pi + RetroPie

Asked 1 week ago Modified 3 days ago Viewed 11 times
Build a retro arcade cabinet with Raspberry Pi + RetroPie

This took about a month of weekends. The result is a full-size bartop arcade running RetroPie, with proper arcade buttons, joystick, marquee lighting, and authentic sound.

Cabinet

  • 18mm MDF cut on a friend's CNC — I'll share the DXF in the comments.
  • Dimensions: 460mm wide × 380mm deep × 560mm tall (bartop scale).
  • Glued with PVA + screws, edges rounded with a router, then painted matte black.

Display

  • 19" 4:3 LCD with HDMI input — perfect aspect ratio for older systems.
  • Bezel made from acrylic with vinyl stickers behind it.

Controls

  • Sanwa JLF joystick (genuine, not the clone — feel is night and day).
  • 8 × Sanwa OBSF-30 buttons per player, 2 × admin buttons (coin + start).
  • Xin-Mo USB encoder — appears to RetroPie as a standard USB gamepad, no driver needed.

Brains

  • Raspberry Pi 4 (4GB) running RetroPie 4.8.
  • 128GB SD card with NES, SNES, Mega Drive, Neo Geo, PS1, MAME 0.139 ROM sets.
  • Stereo amplifier board driving two 4Ω speakers mounted behind the marquee.

Marquee

  • Printed on backlit film at a local print shop.
  • Lit by a 12V LED strip driven off the Pi's 5V rail via a buck converter, with a soft-start so it doesn't pull a spike at boot.

Software setup

1. Flash RetroPie image to SD card with Raspberry Pi Imager.
2. First boot, configure controller — RetroPie's GUI walks you through it.
3. Copy ROMs to the appropriate folders under /home/pi/RetroPie/roms/.
4. Install scrapers to fetch artwork — Skraper on a PC is way faster than the on-device one.
5. Theme: I'm using Pixel theme but ComicBook and Carbon are also great.

Gotchas: button latency in EmulationStation is fine, but in MAME you'll want to enable 'reduce latency' in the runahead settings. Also: ground everything to a single point or you'll get popping from the speakers when buttons are pressed.