Raspberry Pi based Retro Games Console
So this is something that I’ve actually wanted to build for a long time but for one reason or another, I never got around to it. I have built some systems already using the cheapo replacement shells available online for the original GameBoy, the DMG-01. You can find out more about building one of those over on sudomod.com.
First things first, Lets get a little parts list going:
Raspberry Pi Computer (€37 / £33 / $45)
You can use some of the older Pi’s for this project, but for the best gaming performance it is reccomended to go with the Pi 3. You can find them on loads of sites. I get mine here. Radionics – Raspberry Pi Model B 3
NesPi™ NES Style Case (€17 / £15 / $21)
The NesPi case is available in lots of places online but if you’re not in a hurry, you can have it shipped from china for really cheap. I got a kit with heatsink and fan included for around €17.00. AliExpress – NesPi Case
This case is really cleverly made and includes an additional circuit board inside. This board handles the power delivery and switching to the Raspberry Pi. The Pi sites really neatly into the base, sharing some of its mounting holes with those for screwing the case shut. There’s an RJ45 connector and a USB inside that will plug straight into the Pi and this allows you to use the front mounted USB and network port on the case. The power and reset buttons simply cut the power to the Pi to force restart it. This isn’t ideal though, as it can cause the SD card to be corrupted, so we’ll be doing some modding on that later on with the help of the Mausberry soft shutdown circuit.
Mausberry Circuits – Soft Shutdown (€15 / £13 / $18)
As far as the Mausberry Circuit goes, this isn’t actually essential but it adds some really nice functionality to the NesPi case. The case comes with Power and Reset buttons that actually work, though they only act as an interrupt on the power input. While this works, it can cause issues with the SD card when the Pi is shutdown abruptly. The Mausberry Circuit shutdown switch is a really neat little solution to this. Instead of just breaking/making the contact with the power, this sends a signal through a GPIO pin on the Raspberry pi that in turn triggers a shutdown script. This script safely commands the Pi to shutdown before cutting the power.
You can order it here: 2 Pin Spring Header
(UPDATE: The newer versions of the NesPi case have a built in safe shutdown feature, so you don’t need to worry about any of this Mausberry stuff. :))
Game Controller – 8bitdo
This bit it entirely up to your own preference. You can use PlayStation 3, Xbox 360 controllers etc or you can go for something a bit mor retro looking. The guys at 8bitdo make some really good controllers in various styles including original N30 Arcade, NES and the SNES in both US and International styles (Button colours ).
I went with the teeny 8bitdo Zero, a tiny bluetooth enabled controller than can easily be pared to the Raspberry pi either by bluetooth or through the built in USB port.
Check out the link for the full range of controllers they do. 8bitdo Game Pads
RetroPie is a custom operating system for the Raspberry Pi that has been specifically built with the purpose of running retro games. The enables us to run game from a whole host of systems, including the NES, SNES, GameBoy, MegaDrive and so on…
You can download the image here: RetroPie Download
You’ll need to burn this image to the SD card and there’s lots of programs out there to help you with that. Etcher is a nice and simple example that works on Windows, Mac and Linux. You can download it here. Etcher download
Once the image is written to the SD card, you’re ready to throw it into the Raspberry Pi and boot up!
Building the Console
At this point, if you are not using a safe shutdown circuit, you can simply install the Raspberry Pi in the base, hooking up all the cables and you’re good to go!
That wasn’t the case for me though…
You see, the power and reset buttons on the case are just simple interupts in the power circuit to the Pi. This makes for a very simple circuit, but it can also lead to issues with your SD card becoming corrupted due to an unsafe shutdown. Put simply, the Pi doesn’t like when you just pull the plug without shutting it down first.
To address this, I’m using the Mausberry Circuits safe shutdown circuit mentioned above. If you happen to have one of the later versions of the NesPi case then you won’t have to worry about any of this since they have actually implimented their own safe shutdown. Mine is a Version 1 type though.