With the release of Nintendo’s new NES Classic Edition, there has been a lot of chatter about retro gaming and the best way to play old games. Sure, you could spend $60 on the NES Classic that will play 30 classic NES games (pre-determined by Nintendo), or you could build your own “retro console” that can run any NES game, as well as any SNES, N64, Gameboy, Genesis, Sega CD, and even Arcade games. And, you can get all of that in device that fits in the palm of your hands, and, all said and done, will cost you less than $100.
And that’s what we’re here to show you how to do today.
Setting up RetroPie on a Raspberry Pi computer can seem a bit daunting if you don’t have any linux experience, or if you have no clue what a Raspberry Pi is, but we want to help. This guide will give you step-by-step instructions on exactly what you need to do in order to get your new RetroPie system up and running. Installing and setting up RetroPie will give you the ability to use multiple emulators to play ROMS of different retro video game systems.
In terms of the legalities of downloading these video game ROMS, it’s a bit of a gray area. We can’t link you to sites that offer up the ROMS for download, but it’s not hard to find some “nes roms” if you know how to use google… *hint*
What You Need to Build an Emulation Station with a Raspberry Pi
- Raspberry Pi 3
- Rasbperry Pi 3 Case
- Raspberry Pi Charger (You can use any Micro USB + most iPhone/iPod wall chargers if you don’t want to purchase one)
- Micro SD Card 8gb or more (<-comes with SD Card Adapter)
- SD Card Adapter (if your computer has SD Card slot) or a Card Reader that can allow you to view the card contents on a computer.
- Ethernet Cable
- HDMI Cable
- USB Gamepad (Can be Xbox 360, Xbox One, Playstation, can also use your keyboard)
- USB Keyboard (for setup only)
In order to get everything up and running, you need everything in the Essentials list mentioned above. These things will allow you to load RetroPie onto your Raspberry Pi and get you ready to start playing all your favorite retro games. You will need to connect your Raspberry Pi to the internet in order to transfer ROMS to the system.
Building Your Retro Gaming Rig with Raspberry Pi
Step 0 Build Your Raspberry Pi
The easiest part of this whole process… physically put your Raspberry Pi into it’s case and make sure it’s secure. You technically don’t need a case for the computer, but it’s bound to get broken without one. The case I linked above has heatsinks, the case I have does not and it’s been fine without them, so installing those is up to you.
Step 1 Download and Unzip the RetroPie Image File
Download the RetroPie image file (550+ mb).
Once the file is downloaded, unzip the .gz file so that you are left with a .img file. This is the image file we will be working with (retropie-4.0.2-rpi2_rpi3.img – version will be different depending on what release).
This is the file that you will need to load onto your Micro SD card in order to allow the Raspberry Pi to boot up into the RetroPie emulation station, which will allow you to play all of the ROMS you find.
There are two versions of the file you can download on the site, make sure you download the version that matches the Raspberry Pi that you purchased. If you used the link above, you’ll want to choose the file for the Raspberry Pi 2/3.
* There are also instructions and files provided on the RetroPie website if you want to install RetroPie on top of an existing Raspberry Pi operating system (like Raspbian), however, this tutorial is for a clean install without anything else being on the micro SD card.
Step 2 Format Your MicroSD Card
In order for your MicroSD card to work properly in the Raspberry Pi, it needs to be formatted a certain way.
MAC – Open up Disk Utility, which can be found in Applications > Utilities > Disk Utility on your computer.
- Click on the MicroSD card on the left panel and find the “ERASE” area.
- Change FORMAT to MS-DOS (FAT)
- Name the drive whatever you want (doesn’t matter)
- Click ERASE to begin formatting the card. THIS WILL ERASE EVERYTHING ON THE CARD.
- Be sure you’re clicked on the actual card, and not the partitions within the card.
PC/Windows – Open up Windows Explorer
- Right-click on the MicroSD card on the left menu
- Select Format from the dropdown menu.
- Select the FAT32 option and click the Start button.
Once the card is formatted properly, we are ready for the next step.
Step 3 Install RetroPie on to the MicroSD Card
Since the Raspberry Pi uses a different file structure than Mac OSX or Windows, we need a 3rd party software in order to properly copy the RetroPie image to the MicroSD card in a way that the Raspberry Pi will recognize.
- Mac – Download ApplePi-Baker for Raspberry Pi (scroll down to find the most recent version in green)
- PC/Windows – Download Win32DiskImager Utility
For MacOS X
- Open up Apple-Pi Baker (it will ask for your computer password in order to access the MicroSD card)
- Click on your MicroSD Card on the Left.
- Click Restore Backup on the right.
- Navigate to the RetroPi Image file that you downloaded in Step 1 and click Open.
- Apple-Pi Baker will now install the RetroPie image file on to your MicroSD card in the proper format.
- Open Win32DiskImager Utility (you may need to run this as administrator. Right-click on the file, and select Run as administrator.)
- Select the RetroPie image file that you downloaded in Step 1
- Select the drive letter of the MicroSD card on the screen. Be careful to select the correct drive; if you get the wrong one you will delete all of the data on that drive. If you are using an SD card slot in your computer and can’t see the drive in the Win32DiskImager window, try using an external SD adapter.
- Click Write
- Win32DiskImager will now being to install the RetroPie image file on to your MicroSD card in the proper format.
Once you have completed the installation of the image file onto your MicroSD card, you can safely eject the card from your computer and place it into your Raspberry Pi.
*On my Mac, the card disappears from the Desktop after the image file has been installed. I just removed the card from the card reader without ejecting and had no issues.
Step 4 Place the MicroSD Card in the Raspberry Pi and Prepare to Boot
We will now boot up RetroPie and get things setup so that you can start adding your ROMS and playing games.
- Slide the MicroSD card into the Raspberry Pi.
- Connect a USB Keyboard
- Connect your USB Gamepad
- Connect an HDMI cable from the Raspberry Pi to your TV (or monitor) and turn on your TV.
- Once everything is connected, connect the Raspberry Pi to a power supply using the MicroUSB charger (or a microUSB cable and an iPhone USB power brick).
Now that everything is connected, you should see the Raspberry Pi going through it’s boot sequence on your computer and eventually RetroPie will launch into the Emulation Station on your screen.
If you have your gamepad connected, you can run through the quick setup that appears on the screen, if not, use your keyboard and run through the setup. The most important buttons to setup for this part are going to be up, down, left, right, A, B, Select and Start. If you’re using your keyboard, we will reconfigure the gamepad after we complete the setup process.
Step 5 Connect to The Internet
If you have a Raspberry Pi 3 (which I recommend), wifi is built in. If you do not have this model, you will need either a USB Wifi Dongle, or an ethernet cable to be able to connect directly to your router.
- Make sure your Raspberry Pi is either connected to your router via ethernet or your wifi dongle is plugged in (neither are required for the Raspberry Pi 3)
- In the main RetroPie screens, go left or right until you see just the RetroPie logo on the screen (you may see one that says “13 games available” underneath the logo, scroll until that goes away)
- Press “A” to select the RetroPie menu
- Press down until you reach Wifi and Press “A”
- On the next blue screen select option 1 – Connect to Wifi Network – and Press Start
- Select your Wifi network – Press “Start”
- Enter your Wifi password – Press “Start”
You will then be connected to your network and be brought back to the screen with the 2 options. You should now see your wifi network listed under Wireless ESSID. You can now cancel out of this menu, which will bring you back to the RetroPie menu screen.
- At the RetroPie menu Screen
- Scroll to Show IP and Press “A”
- Write down your IP address, you will need this later.
- Exit out of this menu and back to the RetroPie Menu
Step 5 Expand Your MicroSD Card
In order to take advantage of the full size of your MicroSD card, we need to change a setting in order to expand the allotted size. This is an important step to insure that you’re getting the full potential out of the card you purchased. If you don’t do this step, you will probably run out of space when adding ROMS to your setup.
You should still be in the RetroPie menu system, if not, repeat initial steps in Step 5.
- Scroll down to RASPI-CONFIG and Press “A”
- In the blue menu screen select – Expand Filesystem – and Press “Start”
The file system will expand and let you know that you now have more space on your card.
- Select “Finish” at the bottom of the blue screen with all the options and Press “Start”
- The Raspberry Pi will ask you to Reboot – do so.
You now have the full capabilities of your MicroSD card at your disposal.
Step 6 Fully Update the Raspberry Pi
Now that the Raspberry Pi is connected to the internet we need to make sure that all of the various packages and software running on the computer are up to date.
After the reboot in Step 5 you should be back into the RetroPie menu system that we saw before.
- Make sure your USB Keyboard is connected
- Press F4 to access the Raspberry Pi shell (if F4 doesn’t do anything for you, Press “Start” and go to the option Quit Emulation Station)
- You should now see the Shell, which looks like a bunch of text with a flashing prompt for you to start typing.
- Type the following: sudo apt-get update – and press enter
- You will see a bunch of text on the screen, let it run until you are back at the flashing prompt
- Type the following: sudo apt-get upgrade – and press enter
- Again, you will see a text across the scree, and possibly a prompt asking you to type Y or N to continue, if so, type Y and press enter to continue the process.
- Once the process is complete and you are back at the flashing prompt
- Type the following: sudo reboot – and press enter (this will reboot the Raspberry Pi)
Your Raspberry Pi is now fully up to date and ready to go! Now to get some games loaded on there and the controller setup so you can play!
Step 7 Setting Up The Gamepad
If you didn’t already setup the gamepad when RetroPie first launched, we will do so now.
- Connect your USB Gamepad to the Raspberry Pi
- Press “Start” to access the Emulation Station menu system and Select Configure Input
- This should relaunch the Gamepad setup that you skipped or used your Keyboard for in the beginning.
- Follow the onscreen prompts to setup your gamepad
Some of the game console controllers have more complicated button layouts that may not fit with the controller you use or purchase. I recommend playing games that you know will only require the buttons you have available.
Step 8 Installing Video Game Roms
As we mentioned above, video game console ROMS, even for older systems, are not technically legal to download or own. Because of that, we can’t link to where to find them for yourself, but if you’re handy with google you shouldn’t have any problems finding “nes roms” or any other console roms that you’re looking for…
Once you have your ROMS downloaded and unzipped (make sure you’re working with the actual ROM files and not the .zip files), you are ready to upload them to your Raspberry Pi.
- Make sure your Raspberry Pi is powered up and connected to the internet
- Obtain your Raspberry Pi IP Address
We obtained the IP address in an earlier step, and you wrote it down, but since we’ve rebooted the computer, the IP address could have changed. So rather than get frustrated as to why you can’t connect, it’s best just to verify the IP address again. The easiest way is to repeat the steps at the bottom of Step 5 above.
- Download and Open Your Favorite FTP Software on your computer (we recommend FileZilla, which works on both Mac and PC)
- Enter the corresponding information into the fields in order to connect to your Raspberry Pi
Host/Server Address = IP Address of Raspberry Pi
Username = pi
Password = raspberry
Port = 22
- With the information entered correctly into your FTP program, press connect. (if it does not connect you may have to change the settings to SFTP instead of FTP)
- You may be greeted by a prompt asking you if you Trust This Host, check the box that says “Always” and click OK
- You should now see a listing of the files on your Raspberry Pi come up.
- Drill into the directory structure until you’re in folder /home/pi/RetroPie/roms (when you first connect you will see either a RetroPie folder or a roms folder already, if you see RetroPie, click into that folder to find the roms folder)
- Inside the roms folder you will see folders for each of the different emulators included in RetroPie
- Drag and drop your ROMS into the proper console sub-folder within the rom directory (original Nintendo Roms would go in NES folder, Nintendo 64 Roms would go in the N64 folder, etc.)
- Once you have all of your roms loaded up onto your Raspberry Pi through the FTP we need to reboot the Raspberry Pi
- Press “Start” in the RetroPie menu and Select Reboot
Once the system reboots you should see new menu items within the main menu, each corresponding to the different emulators of the ROMS you uploaded. You can scroll left or right to see more and Press “A” to select an emulator and subsequently choose a game from within that emulator.
*NOTE* If you are getting a “connection refused” error when trying to FTP into your Raspberry Pi, you may need to turn SSH on in the settings.
- Go to the “Configuration Menu” underneath RetroPie logo in the main Emulation Station menu.
- Go to “Raspi-Config” in the configuration menu
- Go to “Interfacing Options”
- Go to “SSH” and Enable it
- Exit out of the menus and back to the RetroPie menus – SSH should be enabled now and you should be able to FTP into your Raspberry Pi without any issues.
How to Exit a Game in RetroPie
Here’s a little important tip – in order to exit a game you are currently playing within RetroPie, press “Select” and “Start” at the same time and you will be brought back to the main menu to select another game to play.
You’re now completely setup to enjoy all your favorite retro games on your TV!
You can also now bring your Raspberry Pi, power supply, and controller over to your friends house and set it up on their TV and play. You only need an internet connection if you want to add more ROMS to the system. Games will play just fine anywhere you are without internet. This is perfect for long car rides as well.