Building a Mini SNES Emulator with Raspberry Pi and Retropie

As I'm getting back into gaming I'm finding the urge to play substantially more retro games than I am newer ones. I started gaming on a Sega Genesis and Nintendo 64 back in the day.  Sonic and Diddy Kong Racing are literally my earliest memories.

When I realized I wanted to go back and experience the decades of classic gaming I missed out on, I realized I either had to suddenly amass a large collection of systems and games I didn't own, or emulate.  OpenEmu was killer for getting started on my Macbook, but I wanted a stand-alone system that I could hook up quickly to my TV.  Enter one of the greatest inventions in the past decade, the Raspberry Pi.

If you're unfamiliar, Raspberry Pis are one of the most incredible and industry changing products in computing to ever come out.  A Raspberry Pi 3 is essentially a $35 computer complete with USB, HDMI, and built-in Wifi.  You can use a Raspberry Pi to build seemingly anything.

Retropie is the OS that your Raspberry Pi will run on and use to emulate games.  Retropie is really just a collection of necessary software, drivers, and emulator cores that work in tandem to give you the emulation experience.  Don't be confused if you find yourself working with RetroArch or EmulationStation, among others. Retropie is not a definitive organization or software for emulation — it's a group effort among many.

How to Assemble

Assembling the Retropie was simple.  Check out the required parts list below.  Very self explanatory to put together — no soldering or anything like that to get it working.  While it can benefit to have some coding/Python knowledge in the grand scheme of Retropie emulating, getting a base system set up is incredibly easy.

What you'll need:

  • Raspberry Pi 3 (has on board wifi)
  • Case (I used the TinyTendo SNES w/ fan)
  • 2.5v Power supply
  • MicroSD card (if you plan on playing PSX games and above, get a large one)
  • Controller
  • HDMI cable
  • USB Keyboard (for setting up; Bluetooth/Wifi)

Most Pi cases will be self-explanatory or come with instructions how to properly fit the Pi into the case.  I recommend the SNES TinyTendo case.  Looks akin to the SNES Mini Nintendo put out, and it comes with a fan and LED light, along with rubber grippers along the bottom to keep it from moving.

Installing Retropie

Installing Retropie is equally as easy.  Your MicroSD card will be the emulator's storage and will stay plugged into your emulator at essentially all times.

First things first though, you'll need to format your MicroSD card to FAT if it's 32gb or below, and ExFAT if 64gb or above.  I won't go into detail here as Googling brings up a myriad of options on how to format your card.  If you're on a Mac, it can be done with the Disk Utility app.  Just be careful you format the correct drive and don't brick your main hard drive.

Once your card is formatted, it's time to download the Retropie image. Now that we have the file downloaded, we are going to mount it onto the SD card so it's ready to boot up. There are a few programs out there to do this, but the easiest and noob friendly is ApplePi Baker.  If you're on Windows, then you're on your own.

If you're not familiar with tech this part could feel a little intimidating but it's super easy — it's fairly similar to burning a CD. Select your freshly formatted SD Card on the left, then you will click on RESTORE BACKUP and select the Retropie image you downloaded (it will be a .IMG extension).

Building the Console

This is where things gets exciting — it's time to assemble our console. Grab your case, Pi, and any screwdrivers you may need for assembly.   Screw it in, add any potential add-ons like fans or heat sinks you may want (the majority of casual use cases you won't need any heat-redirecting stuff; the Pi runs at easy temps most of the time). Only if you find yourself potentially wanting to overclock or try to push the limits of some more demanding emulators would you want to have one.  I opted for yes if I find myself wanting to do so in the future, and Pi size fans and heat sinks are only a few dollars.

After your case is nice and secure around your Pi, insert your MicroSD, power supply, and your keyboard.  Do you actually need a USB keyboard?  Yes, if you plan on connecting to Wifi or Bluetooth at all, which you for sure should be.

Working Inside Retropie

Once we've got our system built and are powered up inside Retropie, we'll first navigate to BLUETOOTH to set up our controllers and WiFi. The process should be pretty self-explanatory.  If you're asked to map controller buttons before (and you have a wired controller) you can go ahead and set that up.  If not, just plug in your keyboard and get through this view.

Most of the settings including Bluetooth and Wifi are pretty easy and self-explanatory to set up.  While technically not necessary, having a USB keyboard just makes initial set up a breeze.

8bitdo SF30 Pro

8bitdo controllers get a lot of shit, and from what I hear certain models do have some QC issues.  But the SF30 Pro has been nothing short of excellent for me.  It works great, connects quickly once I turn it on or start up my Pi — I have yet to find an issue with it related to emulation gaming.  I don't have a Playstation or Xbox otherwise I would've used one of those to play initially.

Getting Games On Our Pi

ROMs can be installed two different ways: via downloading them onto a USB and directly plugging the USB stick in, or via WiFi and SSH.  The latter can be a little more complicated (although extremely easy on a Mac), but is well worth it for brevity.

I won't reinvent the wheel, so SSH instructions can be found here, and if you're on a Mac and on the same WiFi as your Pi (you should be anyway at this point), it will appear in Finder as a network device on the left-hand sidebar.  Simply click on it and peruse your way into whatever systems you want.  Very easy.

Getting a quality ROM can sometimes be tricky.  I've had good luck with and personally. It's fairly easy to find good ROMs of popular games, but if you want some fringe or international games, your options might be more slim. Just look around for reviews and number of downloads, that's usually a good indicator.

Once you have your appropriate ROMs downloaded (make sure you check out which ones your emulator core supports) we're ready to start, or attempt to start, playing.

❗ — Be aware, not every system or ROM is going to run smooth under default conditions.  For example, tinkering is almost a necessity to get Nintendo 64 emulation running correctly.

Benefits and Drawbacks

The Retropie emulator set-up is by no means perfect, and unfortunately it will never be able to match an original cartridge/disc on their intended system. Rhythym games, such as Parappa the Rapper (shouts out Gamecenter CX and Arino for getting me on this) can be tough.  It's more than Retropie, though.  Bluetooth controllers and TVs can append onto the emulation lag and make things unplayable — depending on the game or type of game you're trying to play.

I built my Retropie to mostly play RPGs I missed out on when I was younger, so input lag doesn't bug me too much.  You can definitely tell, even on games like Yoshi's Island you can have trouble timing tough platforming sections.  Again, lag can be attributed to many factors, not just what inherently comes with emulation.

A more detailed rundown on why emulators have lag.

Conclusion + Next Steps

This is just the surface of what Retropie and Raspberry Pi emulation can do.  Customization, metadata scraping, overclocking, and shit tons more is all part of the game.  It's not perfect, but having an emulator of this caliber capable of easily being hooked up to a TV is something easy and cheap I think any "gamer" should have.  I've been wanting to play so many older games I missed out on, but have been turned off by strictly playing them on my Mac (although OpenEMU is a great platform, too). Kudos to the people at Retropie for making such an awesome product.

Author image
You've successfully subscribed to GAVIN LAND
Great! Next, complete checkout for full access to GAVIN LAND
Welcome back! You've successfully signed in.
Unable to sign you in. Please try again.
Success! Your account is fully activated, you now have access to all content.
Error! Stripe checkout failed.
Success! Your billing info is updated.
Error! Billing info update failed.