This post may contain affiliate links. If you buy something through one of our affiliate links, we may earn an affiliate commission at no additional cost to you.

The Raspberry Pi has a variety of use cases, we’ve covered a few before, it could be used to stream your Steam games, turn your speaker into an AirPlay speaker and much more. This time we’re going to take a look into retro emulation and turn the Pi into a retro gaming machine with RetroPie.

Click here to display content from YouTube.

Learn more in YouTube’s privacy policy.

RetroPie allows you to turn your Raspberry Pi (or any Debian/Ubuntu based machine) into a retro gaming console. RetroPie can be installed onto an existing Raspbian installation, but for this tutorial, I am going to be showing you how to get started with the pre-made images.

Things you’ll need

For this tutorial you’re going to need to have a few programs downloaded and installed onto your computer to make it happen, I’m going to mention everything you’ll need as we go along but if you want to prepare yourself ahead of time you’ll need the following:

  • 7-zip – For extracting the .img file from the .gz compressed archive file.
  • Etcher – For writing the .img file to your SD card.

Downloading and Installing

The first step will be to download the pre-made image from the RetroPie website. Make sure you choose the appropriate version depending on what Pi you have if you’re unsure what version you have the Raspberry Pi 0/1 shows 1 Raspberry icon when it boots up and the Raspberry Pi 2/3 shows 4 Raspberry icons. I’d suggest downloading the file to your desktop for simplicity.

Once you’ve downloaded the image you’ll need to extract the .img image file from the downloaded .gz file, to do this you’ll need a program such as 7-zip to do so. Navigate to where you downloaded the .gz file and right-click on it and hover over the 7-zip option and then choose the Extract Here.

Great! Now we have the image extracted all we need to do now is write the image file to the Raspberry Pi’s SD card and we can boot up into RetroPie! For writing image files to the Pi I used to recommend win32diskimager, and there’s nothing wrong with using that still, but for this tutorial, we’re going to be using Etcher – so download that and install it.

Once you’ve installed Etcher, open it up and click on the Select Image button and browse to the .img file we just extracted. Now you’ll want to make sure that the SD card you’re going to be using with the Pi is also connected and plugged into your computer and click Change underneath the storage icon in the middle to pick that you’ve got the correct SDcard selected as this is going to wipe all the data on the chosen storage device. Once you’ve double checked everything click Flash and the image will be written to the SD card, just wait for it to finish.

Setting up RetroPie

Now that the SD card is written, put it into your Raspberry Pi. I’d recommend a wired controller and also a USB Wi-Fi adapter if you’re going to be putting the Pi somewhere that doesn’t have Ethernet if you have a Raspberry Pi 3 it already has Wi-Fi built in.


When you start up RetroPie for the first time you’ll be taken to controller configuration which will allow you to set up all the buttons for your controller. RetroPie has provided some handy diagrams to help you out if you get stuck.

One thing that you’ll want to know are the hotkeys for performing various functions, as with retro games and consoles autosave wasn’t exactly a thing as ROMs are Read Only Memory and to exit the game you would turn off the console so you’ll want to remember those two the most.


If you’re not using Ethernet with your Pi I’d suggest setting up Wi-Fi so you can transfer ROMs without the need for a USB stick (I’ll talk about transferring in a little moment).

Configuring with a Keyboard

To configure Wi-Fi go to the RetroPie configuration and go to the WiFi option on the menu, at this point if you have had a controller plugged in you’ll also want to plug in a keyboard. Choose the Connect to WiFi network option on the menu and select your network from the list using the arrow keys on the keyboard and then type in your Wi-Fi password when asked.

Configuring without a Keyboard

If you don’t have a keyboard, we can create a text file on the SD card with the WiFi network information.

Turn off your Raspberry Pi and take out the SD card and put it back into your computer. If anything pops up about formatting the card, ignore those. Open up Notepad and put this into the text file:


Replacing NETWORK_NAME with the name of your network and the NETWORK_PASSWORD with your network password. Save this as a text file to the boot partition of the SD card and call it wifikeyfile.txt.

Now go to the RetroPie configuration and go to the WiFi option on the menu, at this point if you have had a controller plugged in you’ll also want to plug in a keyboard. Choose the Import wifi credentials from /boot/wifikeyfile.txt option on the menu and that’s it!

Transferring ROMs

We’re almost at the point where we are ready to start gaming now, almost. First of all, you’ll want to make sure that the ROMs you are planning to copy will be compatible – so check the supported systems list. I won’t be showing you how to create or find ROMs, that’s up to you – Google is your friend.

There are a few ways to transfer ROMs to the Pi; USB, SFTP and SMB but for this tutorial, I shall show you the USB and SMB methods.

USB Transfer

USB transfer is relatively simple, create a folder on your USB stick called retropie and plug it into your Raspberry Pi. If your USB stick has a light on it wait for the light to stop flashing – if it doesn’t have a light give it a minute or so or 5 if you want to be safe (or use another transfer method). Once that’s done, unplug the USB from your Pi and then plug it back into your computer and then copy the ROMs to their respective folders in retropie/roms, so your SNES ROM, for example, would go into retropie/roms/snes and so on.

Once the copying is done, unplug the USB stick from your computer and plug it back into the Raspberry Pi – it’s now going to copy the ROMs to the Pi’s SD card. Once the light has finished flashing on the USB stick you can unplug it, as before if you don’t have a light on your USB stick just give it plenty of time to copy everything over.

Now you can restart the EmulationStation interface by pressing F4 on the keyboard or pressing Start on your controller and go to the Quit option and choose Restart EmulationStation.


SMB transfer, or Samba, is much easier than the USB transfer method. Your computer and the Raspberry Pi will both need to be connected to the (same) network via Ethernet or Wi-Fi.

Open up Windows Explorer and type \\RETROPIE. If you’re on a Mac, open Finder and select Go from the menu bar and choose Connect to Server and enter smb://retropie and click connect.

From here you can go into the roms folder and copy the ROMs to their respective folders, for example, NES ROMs would go into \\RETROPIE\roms\nes.

Now you can restart the EmulationStation interface by pressing F4 on the keyboard or pressing Start on your controller and go to the Quit option and choose Restart EmulationStation.

That’s it!

That’s it! You now have a retro gaming console which you can play all of your favourite classics on. Some games may not run at full speed depending on how old your Pi is and if you have overclocked it or not, so 3D games may struggle a little compared to 2D titles.

You May Also Like