Raspberry Pi Used to Build a Teeny-Tiny Arcade Machine

Hardware hacker extraordinaire Sprite has put together something pretty special. I’ve seen plenty of people running MAME (Multiple Arcade Machine Emulator) or various other video game emulators from their Raspberry Pis and even using them as handy, portable gaming consoles. But, being a child of the arcades I took one look at this tiny MAME cabinet and instantly got excited.

Serious Maker Skills

I’ve had intentions myself of building a custom handheld game console with one of my Pis and thanks to some hard work on Sprite’s part I will have a lot less to worry about. What he’s done to drive the 2.4″ TFT LCD for his cabinet is pretty impressive. He re-used an older Linux Kernel module that he’d written to drive this panel by way of an 8-bit framebuffer. This allowed him to send video out over the Pi’s GPIO pins (General Purpose Input/Output) rather than rely on bulky connections from the HDMI or RCA ports.

The joystick and buttons were a simple matter as well. He loaded up an already existing firmware on a micro-controller, soldered his controls to it, and was able to use this as USB HID (Human Input Device) in Linux. This was a really elegant solution, especially when space was at such a premium.

The case was simple enough. He made a “finger box” in Inkscape that would fit all of his hardware and then cut it out on a laser cuter. As with the rest of his work you can of course download the .svg files of the case and cut one yourself.

It seems that portability was always something on Sprite’s mind with this build as well. I mean what good is a tiny arcade cabinet if you can’t take it with you? But of course you’re going to need power. Luckily he had some old cell phone batteries lying around. His charging circuit does quite a few things here that I won’t pretend to know enough about to give an in-depth explanation. Suffice it to say that it is capable of charging from the Raspberry Pi if it detects that the USB is plugged in and seamlessly begins drawing from its batteries when the cable is removed.

I would have remained thoroughly impressed with this project even without the ability to play it anywhere and not rely on a power source. I might have chosen a simpler option like a pre-built rechargeable emergency cell-phone battery, but then I’m also not as skilled as Sprite here.

The final big piece of the puzzle here is also probably the best touch. The marquee that sits above the screen is an important part of an arcade cabinet. I can’t really explain why but something about the glow of that logo in a crowded arcade can attract patrons like moths to the proverbial flame. Most MAME builds I see have some garish, home printed image slapped behind plexi-glass. Not only did Sprite not make the marquee lackluster, he packed in features for it as well.

He used a 128×32 OLED panel to display the logo of whatever game is currently being played. To handle this he wrote a simple little program that runs every time a new game is loaded, searches a directory for an image with a related name, and then displays it on the screen. What you end up with is a high quality marquee that adds just a bit more flavor to this already awesome cabinet.

This entire build is an impressive display of knowledge, skill, resourcefulness, and a love of games. I mean c’mon, it has rechargeable batteries so you can take it on the go. It even has a marquee at the top to display the logo of the game that you’re playing! If you want an interesting read or even want to make one for yourself, Sprite has a very detailed build-log on his site, schematics of the custom circuits, and downloads for all of the software he wrote to make it all work. Be sure to take a look here.

Check out the video below to see the arcade cabinet in action!

Like this build? Have thoughts or something similar you’d like to share. Let me know what you’re thinking in the comments below!


    • Profile photo of Leland Flynn says

      Bigger is almost always better when it comes to screens in my opinion. I believe that this was just what he happened to have lying around his work bench.