The NES Classic Edition is almost perfect—short controller cords not withstanding—and if you can buy one, it’s one of our favorite gifts, especially if you don’t want to leave the house. But it only plays NES games, and 30 games at that. Plenty of people—us included—would love a tiny system to play our favorite Super Nintendo games. Or Genesis games.
Thanks to the magic of Raspberry Pi, emulators, and a little bit of nerdery, you can build your own mini SNES, complete with controllers, for under $100. The experience isn’t exactly the same as buying a product directly from Nintendo, but since the mini NES is basically just a tiny Linux computer anyway, it’s close enough.
What You Need
- A Raspberry Pi 3 — An older Rapsberry Pi 2 will work just fine, but the Raspberry Pi 3 has more ports, built-in wi-fi and is just as easily available.
- A Raspberry Pi case — you can even get cases that look like the SNES off of Etsy. If you have a 3D printer, you can even print your own from this great file.
- A microSD card (get one with at least 8GB of storage so you can hold plenty of games)
- A power adaptor for the Pi
- An HDMI cable to connect to your TV or monitor
- A USB game pad — if you want to get really fancy, this one from 8bitdo is awesome. If you have a PlayStation or Xbox controller laying around, it’ll work too.
- A regular USB thumb drive
- A computer monitor or TV for playback
- A computer to transfer your ROMs/use to install your Pi’s software
You can buy this stuff separately, but Amazon sells a kit from Raspberry Pi hobby shop CanaKit for $75 that includes everything you need except for the game pad.
Step 1: Put it All Together
Put your Raspberry Pi inside its case. The kit I purchased comes with heat sinks, which you might want to use, since the Pi can get pretty hot when playing certain games.
Step 2: Install RetroPie onto your microSD card
The stuff that powers our mini SNES is a piece of software called RetroPie. RetroPie contains a bunch of emulators to play old games from an array of systems, including the NES, SNES, Nintendo 64, Sega Genesis, TurboGrafx-16, GameBoy, and many more.
To get all this running, you’ll need to install RetroPie on your microSD card.
- You’ll need to download the image for your RetroPie. This page offers up the latest links. If you’re using an older Raspberry Pi, you select the Raspberry Pi 0/1. If you’re using a Raspberry Pi 3 like we are, select the download for Raspberry Pi 2/3.
- Once you’ve downloaded the file, you’ll need to extract the image. If you’re on Windows, a program like 7-Zip might be needed. If you’re a Mac user, the built-in Archive Utility will do the job just fine.
- Now you need to install that image (which is about 2GB) onto your microSD card. If you’re using Windows, use the Win32DiskImager to install the image on your micro SD card. Mac users can use an app called Apple Pi Baker.
- Remove your microSD card from your computer, put it into your Rapsberry Pi.
Step 3: Configure Your Controller
After you’ve loaded RetroPie to your SD card and put it in the Pi, plug in the power adaptor and boot it up.
Connect it to your TV set or monitor and plug in your USB controller.
It will take a few minutes to boot up, and then you’ll be met with a configuration screen for your controller.
You can use your controller to navigate through the interface, which will offer access to the various emulators installed on the device.
Now it’s time to get some games installed on the device.
Step 4: Install Game ROMs
Alright, now that your controller is installed, it’s time to get games onto your new system. To do that, you’ll need to get ROM files for the systems you want to emulate.
This is the part where I point out that installing game ROMs is a legal grey area. Even though many of the games you want to play haven’t been in production for 20+ years, they are still protected by copyright.
You should download games you own physical copies of, or that are now in the public domain. That said, finding ROMs for your favorite gaming systems is incredibly easy.
We’re just going to assume you have permission and the rights to all of your favorite SNES games. Once you’ve got ROMs on your computer, it’s time to transfer them to your Pi.
There are a few different ways you can do this. The first two require setting up wi-fi on your Pi and using either SFTP for Samba file sharing. That’s complicated for a lot of users, fortunately a super easy solution exists.
All you need is a USB flash drive. If you’re a Mac user, make sure the card is formatted to FAT-32. If you don’t know what this means, it’s safe to assume the card is already formatted that way.
- Insert the thumb drive into your computer and create a folder on the drive called retropie.
- Plug the thumb drive into your Raspberry Pi. Wait for the Pi to stop blinking (it’ll be a few seconds)
- Remove the thumb drive from your Pi and put it back into your computer
- Inside that retropie folder you’ll find a new folder called roms and within it are folders for each system. Drag your ROM files into the system it’s associated with.
- Remove the USB thumb drive and plug it back into your Raspberry Pi. Wait for it to start blinking.
- Refresh the RetroPie software by quitting from the start menu.
Once you’ve successfully copied game ROMs to your Pi, you can remove that USB stick. All the games are now stored on your RetroPie. If you want to play more games, just repeat that step and add ROMs to the emulator of your choice.
Step 5: Have Fun
Now that you’ve got your games on your system, you can scroll through the various systems and choose what games you want to play.
For the Super Nintendo, Andrew and I made a great list of 30 games you should absolutely check out!
Why Do This?
Look, in a perfect world, Nintendo would sell a mini SNES already and it would have everyone’s favorite assortment of games. But it’s not, so we can build our own.
And sure, you could buy one of the many Kickstarter/Indiegogo retro consoles that are available, but real talk, most are just a variation of what you can do yourself for ~$75. Plus, it’s fun to build things.
Video by Mandy Mandelstein