Retropie is the most popular emulator for Raspberry Pi. In fact, it comes from the Raspberry Pi version of the EmulationStation application (former front-end for RetroArch emulators). And now it has grown up to a big and popular open source project, offering extended features application for ARM-based devices. Besides RPi Zero/1 and Raspberry Pi 2/3, there are also distributions for Odroid-C1/C2 and Odroid-XU3/XU4 (both on Ubuntu), as well as additional versions for PC devices running Debian/Ubuntu operating systems.

The main feature of Retropie is that it includes almost all the previous experience of console gaming emulation. It consists of the EmulationStation’s interface with themes for emulators, Kodi media-player, RetroArch (frontend for the Libretro API which helps many of emulators work) and more than 50 systems pre-installed by default.

Build Your Own Retropie Gaming Super Machine

By following this tutorial you’ll be able to make your own Raspberry Pi retro gaming console with Retropie. A powerful all-in-one gaming machine to play almost all known console games as well as the large part of popular old and medium age x86 PC games. For that outstanding retrogaming project you will need:

Model

Raspberry Pi 2 Model B

Raspberry Pi 3 Model B

Frequency

1000 MHz

1200 MHz

Memory

1 GB RAM

1 GB RAM

Operating System

Raspbian Stretch from November 2017

Raspbian Stretch from November 2017

Software

Retropie for Raspberry Pi 2/3

ExaGear Desktop for Raspberry Pi 2

Retropie for Raspberry Pi 2/3

ExaGear Desktop for Raspberry Pi 3

Additional hardware for any RPi model:

Micro SD card (8Gb minimum)

Micro SD card for Retropie gaming machine

USB Controllers of your choice (almost any USB-controllers are compatible, even XBox360 and Wii)

USB Controllers for Retropie gaming machine

A mouse and a keyboard (for the first-time setup)

Mouse and a keyboard for Retropie gaming machine

A TV or a monitor (with HDMI and/or AV cables)

A monitor for Retropie gaming machine

Additional PC (Windows, Linux or Mac) for initial SD card installation and ROMs transferring

Additional PC for Retropie gaming machine

Well, as soon as you gather all the necessary parts together, the real work just starts at this point. Generally, you need to do the following big steps:

  1. Download and install Retropie
  2. Configure controllers
  3. Configure WiFi
  4. Transfer the ROMs (game files)
  5. Manage emulators (optional)
  6. Add ExaGear emulator for x86 PC games (2018 must-have!)

Retropie is compatible with any model of Rasberry Pi but it’s recommended to use the Raspberry Pi 3 Model B for the best performance.

How to Install Retropie

In this post, we are going to introduce only the Raspberry Pi tutorial, as one of the most popular devices to build a gaming machine on. If you’d like to learn more tutorials, visit the special page on Retropie official website.

Basically, there are two options for installation of Retropie on RPi devices: set up Retropie as an SD image (with no OS on a hardware) and installation on top of an existing operating system.

Install Retropie on RPi with an SD Card Image

To make a Retropie image on some SD, follow this simple algorithm.

1. Download the proper image of Retropie (you’ll need to choose between Raspberry Pi 0/1 and Raspberry Pi 2/3).

2. Unpack the downloaded archive using the app of your choice (note, that the file is going to have the .img format).

3. Write an image using an SD card and a special application. The further depends on what additional device you are using: Windows PC, Mac or Linux device. For PC use Win32DiskImager app, for Mac – Apple Pi Baker, and for Linux – Etcher (or use the command line). Depending on your device, follow the steps respectively (see below):

Writing a Retropie image on an SD card

4. As soon as the image is ready, simply insert the SD card into your Raspberry Pi and switch it on. The Retropie will start booting automatically. On the first boot, you’ll need to configure the controllers. For that, simply hold the proper button you want to assign.

Also, it’s worth mentioning, that on the first boot, you won’t find any emulators. To display them, you need to add the respective ROMs for that gaming system in the system folder. We’ll show you what the ROMs are and how to add them a little bit later in this article.

Install Retropie on top of Raspbian

1. Set up the “Locale” settings. For that use the command locale in the command line. You should see the following output:

Writing a Retropie image on an SD card

If something from above is unset or displays the wrong value, you need to correct that parameter with the following command:

$ sudo update-locale LANG="en_US.UTF-8"  #replace the LANG with any parameter from the list above and set the value within ""

2. Install the packages for the RetroPie setup script:

$ sudo apt-get install git lsb-release

3. Download the RetroPie setup script:

$ cd
$ git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git

4. Launch the script:

$ cd RetroPie-Setup
$ git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git
$ chmod +x retropie_setup.sh
$ sudo ./retropie_setup.sh

As soon as you are done with that, Retropie will start an automatic first boot. As the result, you should see the Welcome screen. Now you can set up the controllers and assign the buttons for controlling and playing. It’s very easy to do just by following the prompts you will see.

Raspberry Pi emulator Retropie welcome screen

As the final result, you won’t see any emulators available. For them to appear, you need to install console game files to Retropie (called “ROMs” – read below). For instance, if you install ROMs for NES, the NES emulator will appear on the list.

Configure Retropie Controllers

Well, now you’re done with the installation an are making your first boot. On this step, you need to configure the controllers by switching to the menu after you’ve seen the welcome screen posted above. All the controllers are automatically detected, so make sure you have plugged them in before the booting. To proceed from the detection to the assigning the buttons, just push any button on your gamepad.

To set the controls just follow the prompts you see in the window of the interface screen and hold the button you’d like to assign. As soon as all the buttons are assigned, the window will be closed.

There are three possible ways to configure the controllers:

  1. Autoconfigurations
  2. Hardcoded Configurations
  3. Core Input Remapping

By configuring the controllers for Emulation Station you automatically set the same configuration for libretro (RetroArch) emulators as well. This is an example of the Automatic configuration.

Hardcoded Configurations is the way of setting the configuration for a specific emulator, system or even an individual game. For that, you need to make manual edits into the “retroarch.cfg” files, which you can find in the emulators’ directories. For example, the global settings are done in /opt/retropie/configs/all/retroarch.cfg. Each emulator has got its own file directory.

Core Input Remapping is made via RetroArch RGUI and sets different controls for specific cores. It means that the buttons will be remapped in accordance with what core you are operating on at the moment. This specific action can be done with the following:

  1. Start the game wich controllers you’d like to remap
  2. Open up the RGUI. You can do it with hotkeys combination “Select+X” (see the details below)
  3. Go to Quick Menu -> Controls
  4. Do the configuration you want
  5. Then choose either “Save Core Remap File” for assigning the remapping for the whole emulator, or “Save Game Remap File” for the particular game only.

Finally, despite any way of configuration that you prefer for your Retropie, there are the hot keys for all controllers set by default:

Retropie control configurations hot keys

Configure WiFi

It’s really convenient to use WiFi connection for updating and transferring ROMs to your Retropie. Raspberry Pi 3 has got the WiFi module and that’s why it’s highly recommended for your Retropie project.

The easiest way to set up WiFi on Retropie is through the EmulationStation menu. To do that, you just need to select the “WiFi” option:

Retropie WiFi configuration setup

You’ll be transferred to the setup menu, looking like that:

Retropie WiFi configuration setup - choosing the wifi connection name

Then, you’ll need to follow a few very simple steps:

After the WiFi connection is saved you should see the respective WiFi connection information in the menu. This way is the simplest possible. There are actually 4 more advanced ways to set up the WiFi connection for Retropie. You can find all of them on their official web-site.

Retropie ROMs

Basically, ROM is an abbreviation for Read Only Memory. Retropie ROMs are the digital copies of old game cartridges (CDs) for game console emulators. You need a particular game ROM to have this game up and running with a particular emulator on the Retropie.

So, where can we get all that ROMs? Due to the Copyright Property Rights Law ROMs cannot be provided with Retropie and should be found and added by users. There is a small chance that you can find ROMs on sale on special e-commerce websites. Otherwise, downloading them, which is a much more available option on the Internet, is illegal. Although a bunch of sites offers peer-to-peer downloads.

And as soon as you get the ROMs, you need to upload them to Retropie. There are three ways to do that: using USB, SFTP or Samba.

Transfer ROMs via USB (must be formatted to NTFS or FAT32):

Transferring ROMs via SFTP:

Transfer ROMs with Samba:

That’s it! Time to play. Just get back to the interface, find the emulator you want and then choose the game.

How to Update Retropie

If you have the Retropie image up and running on your device, you’ll certainly want to use the most up-to-date version of the software all the time. For that, there’s a very straightforward way to update your Retropie application directly from the main interface menu:

1. Open Retropie welcome screen and choose “Configuration” from the main menu.

Retropie update step 1

2. Then keep on with the “Retropie Setup” option.

Retropie update step 2

3. Select the “Update Retropie-Setup Script” and press “Ok” button. Then you need to wait for a little until the system downloads and installs the updates automatically.

Retropie update step 3

4. Finally, perform a reboot by choosing:

Retropie Update - rebooting

Note, that it is recommended to backup the whole Retropie image to an SD card to prevent the loss of configurations and games you’ve collected before the update. Actually, the cases when something goes wrong is very rare but still take place. So, it’s smart to do the backup beforehand, just for the occasion. Learn the simplest way to back up the Raspberry Pi SD card in this article.

How to Install Retropie Emulators

Retropie systems mean a bunch of emulators which are included in the Retropie package. A part of them is available by default and another part goes as an option. It was proved to be reasonable limiting the pre-installed number of emulators in the pursuit of maximizing the application performance as well as user experience. The default list of emulators is formed up in accordance with many years of experience and tons of feedback from users, who defined what they tend to use and what works the best. See the essential list of Retropie emulators below:

3do

Amiga

Amstrad CPC

Apple II

Atari 2600

Atari 5200 and 8 bit series

Atari 7800

Atari Jaguar

Atari Lynx

Atari ST/STE/TT/Falcon

CoCo

Colecovision

Commodore 64

Daphne

Dragon 32

Dreamcast

FinalBurn Alpha

GameCube

Game & Watch

Game Gear

Game Boy

Game Boy Color

Game Boy Advance

Intellivision

Macintosh

MAME

Master System

Megadrive/Genesis

MESS

MSX

Nintendo 64

Nintendo DS

Nintendo Entertainment System

Neo Geo

Neo Geo Pocket

Neo Geo Pocket Color

Oric-1/Atmos

PC

PC Engine/TurboGrafx-16

PC-FX

PSP

PlayStation 1

PlayStation 2

ResidualVM

SAM Coupé

Saturn

ScummVM

Sega 32X

Sega CD

Sega SG-1000

Super Nintendo Entertainment System

TI-99/4A

TRS-80

Vectrex

Videopac/Odyssey2

Virtual Boy

Wii

WonderSwan

WonderSwan Color

Zmachine

ZX Spectrum

Anyway, you are always free to install any additional emulators in an easy and quick way using the interface menu.

For that, go to the main menu and find the Retropie Configuration and go to “Retropie Setup”.

Add emulators to Retropie - go to Retropie Setup

Then choose the “Manage Packages” option.

Add emulators to Retropie -

You’ll see the list of possible packages. Among them, there are the “Core” and the “Main” packages which come pre-installed with a Retropie image (in fact the Core ones are needed for Retropie to run, so, DO NOT REMOVE THEM!).

The “Optional” and the “Experimental” packages are those, which aren’t included in the basic Retropie image and you can install them additionally. The “Experimental” section includes all the new emulators that haven’t been tested yet and may contain bugs. So, we’d recommend focusing on the “Optional” emulators.

To proceed with the emulators installation go to the Optional packages list.

Add emulators to Retropie - go to Optional packages

There you’ll find a large list of possible systems. Select the needed system:

Add emulators to Retropie - select the system

When you select the system you’ll get into the list of emulators, that can emulate this particular console. Choose whatever you like:

Add emulators to Retropie - choose the emulator

In the context menu, choose the option “Install from binary” if available (some emulators have only “Install from source” option):

Add emulators to Retropie - install an emulator from binary

If the installation is performed well, the “Install from binary” should change into “Update from binary”. So, just finish the setup by rebooting the Retropie. After you perform an installation for any of the packages, it gets the mark “Installed”.

Remember! Even if you have installed the emulator, but haven’t added any relevant ROM files for it, this console will not appear in the main Retropie menu. To see this system, you need to have at least one ROM loaded in the respective system ROMs folder.

ExaGear Emulator for Retropie to Play x86 PC games

Among lots of emulators available for playing retro console games on Raspberry Pi, ExaGear Desktop is an emulator to stand out. It’s an additional software which can be run on top of Raspbian and side by side with Retropie as well. The key feature of ExaGear is that it can put your Retropie gaming experience to the next level on Raspberry Pi.

  1. The ExaGear emulator allows playing x86 Windows PC games on Raspberry Pi. Of course, the level of games should be relevant to hardware performance limitations. For example, such games as Fallout, Arcanum, Heroes III etc. are OK. But the latest Destiny 2 will never start! 🙂
  2. ExaGear supports hardware graphics acceleration and widens the variety and level of PC games to be launched on RPi. The latest attempts show good results in playing Counter-Strike and Diablo II on Raspberry Pi 3 (read more here)
  3. Since the latest update in 2017, ExaGear Desktop emulator can be integrated into Retropie, which is very convenient. It enables installing PC games and runs them directly from the Retropie’s interface.
  4. ExaGear for gaming is compatible not only with Raspberry Pi (all models) but with Odroid as well. You just need to make sure you have downloaded the proper version.

In addition, it’s worth noting that ExaGear runs headless and is very convenient and easy to use. So, the only thing you need is to download it, set up and start. For that, simply follow the instructions below.

ExaGear Desktop installation instruction

First of all, we need to install Exagear Desktop Emulator on Retropie. To do that, you need to follow these steps.

1. Open Retropie and call for the terminal inside the Retropie interface by pressing “Ctrl+Alt+F4”.

2. Download and install ExaGear Rettopie Emulator with this command (you need to be in “home” directory):

$ cd /home/pi
$ wget downloads.eltechs.com/install-exagear-retropie-v2.sh

3. Assign the proper rights to the installer app and launch it:

$ chmod +x install-exagear-retropie-v2.sh
$ ./install-exagear-retropie-v2.sh

4. The next step is to fill out a tiny pop-up form. Input your name, last name and e-mail address to activate the emulator.

ExaGear Retropie pop-up form

5. As the final step, you’ll need to configure Wine. The configuration window will open up automatically and you’ll have to simply tick “Emulate a virtual desktop” checkbox.

ExaGear Retropie emulator Wine configuration

As soon as you are done with all the steps and the installation is finished, perform a reboot.

$ sudo reboot

Add PC Game files for ExaGear Retropie emulator

Now, when the emulator is up and running, it’s time to play games. ROMs for ExaGear emulator differ from ROM files for Retropie console emulators. To play x86 PC games, you’ll need to get images, distributions or installers. It’s possible to run a different kind of distros and installers, but in some cases, you’ll need to do unobvious tricks to make it work. That’s why we recommend using DRM-free versions of games from the special website www.gog.com, as this is the most straightforward way to launch a game.

Beware of using other sources which offer the game files for free, as they are breaking the Copyrights Law Regulations. For more up-to-date games (Like Counter-Strike, for example) you can also use Steam (you’ll need to use the Linux version of the client via Wine).

ExaGear emulator for Retropie doesn’t have or create a special folder for PC games to store. So, you need to do everything manually and can load all the game files right into the Retropie folder. This process is really straightforward and is illustrated in the video guide below:

If you need more detailed instructions with pictures and videos, see our full detailed guide on how to install ExaGear emulator on Retropie.

Examples of x86 PC games to Play on Retropie with ExaGear

For you to understand the ExaGear’s capabilities, I’ve gathered the games we have already installed and run on Raspberry Pi with ExaGear, so they are proved. The assembly below illustrates the process of installation, which is very simple. For of all of them, before you start installing the game itself, you should make sure that ExGear is up and running on your device. To learn how to do that see the above part where the ExaGear Desktop emulator is described.

So, to check that ExaGear emulator is working properly and to start it at the same time, you should fulfill the following terminal command:

$ exagear
$ arch

If youd like to see the cghart with these games, read our latest original article about Retropie.