RetroPie is open-source software that transforms your Raspberry Pi into a full retro gaming console, running emulators for dozens of classic systems — from NES and SNES to PlayStation and arcade cabinets. By the end of this guide, you’ll have a fully booted RetroPie system with a configured controller and your first game running. The whole process takes about 60 minutes, and you don’t need any prior Linux experience to pull it off.
What You’ll Need Before You Start
Gather everything below before downloading anything. Missing one item mid-setup is the most common reason first-timers abandon the project halfway through.
- Raspberry Pi 3, Pi 4, or Pi 400 (confirm your exact model — it determines which image you download)
- MicroSD card — 16GB minimum, 32GB recommended for comfortable ROM storage
- SD card reader — most laptops have one built in; USB adapters cost under $5
- HDMI cable — Pi 4 and Pi 400 use micro-HDMI, so you may need an adapter
- Official power supply — Pi 4 requires USB-C at 5V/3A; underpowered supplies cause random crashes
- USB or Bluetooth gamepad — any USB controller works out of the box
- USB keyboard — useful for first-boot setup even if you plan to use a gamepad later
One thing that trips up Pi 400 owners: your Pi 400 is a keyboard-integrated Pi 4, so it uses the Pi 4/400 image, not a separate download. Keep that in mind as you move to the next step.
Download the Right RetroPie Image for Your Pi Model
RetroPie publishes separate image files for different hardware generations, and selecting the wrong one means your system either won’t boot or will perform poorly. Here’s exactly which image matches which hardware:
| Your Hardware | Image to Download | RAM |
|---|---|---|
| Raspberry Pi 3 / 3B+ | Pi 2/3 image | 1GB |
| Raspberry Pi 4 | Pi 4/400 image | 2GB, 4GB, or 8GB |
| Raspberry Pi 400 | Pi 4/400 image | 4GB |
| Raspberry Pi 5 | Not officially supported yet | 4GB or 8GB |
Head to the official RetroPie website (retropie.org.uk) and download the correct .img.gz file. The Pi 5 situation is worth addressing honestly: as of the latest official RetroPie releases, Pi 5 support is still experimental. If you’re on a Pi 5, the RetroPie GitHub repository tracks progress, but the image method described here targets Pi 3, 4, and 400 users.
For beginners, stick with the standalone image method described below. The alternative, installing RetroPie on top of an existing Raspberry Pi OS installation, takes 30 to 90 minutes of compilation time and is better suited for intermediate makers who want both a desktop and RetroPie on one card.
Flash the RetroPie Image to Your SD Card
Raspberry Pi Imager is the official tool for writing OS images to SD cards. It’s free, handles verification automatically, and works on Windows, macOS, and Linux. Download it from raspberrypi.com/software and install it before continuing.
- Open Raspberry Pi Imager and click Choose OS.
- Scroll down and select Use custom from the bottom of the list.
- Locate the
.img.gzfile you downloaded — Imager reads compressed images directly, no extraction needed. - Click Choose Storage and select your microSD card. Double-check the drive letter or name; writing to the wrong drive erases it.
- Click Write, confirm the warning about erasing the card, and wait. Writing typically takes 5 to 10 minutes depending on your card speed.
Balena Etcher is a solid alternative if Raspberry Pi Imager isn’t available on your system, but Imager is the recommended path since it verifies the write automatically after finishing.
Common mistake: ejecting the SD card before Imager completes its verification pass. Wait for the green success screen before removing the card.
First Boot: What to Expect and How to Get Through It
This is where it gets interesting. Insert the flashed SD card into your Pi, connect the HDMI cable first, then apply power. The order matters — connect HDMI before power, or some displays won’t detect the signal.
On first boot, RetroPie automatically expands the filesystem to fill your entire SD card. This takes 1 to 2 minutes and the screen may go blank briefly. Don’t interrupt it. After expansion, the system reboots and EmulationStation, the graphical front-end RetroPie uses to browse and launch games, loads automatically.
Pi 4 users: if you see no video output, confirm you’re using the HDMI0 port — the one closest to the USB-C power input. The Pi 4 has two micro-HDMI ports and defaults to HDMI0 on boot.
EmulationStation will prompt you to configure a controller if it detects one. If no controller is connected, you’ll see a message asking you to hold a button on any connected input device. A USB keyboard works fine here. By the 15-minute mark, you should be looking at the EmulationStation home screen.
Configure Your Controller in EmulationStation
Getting your controller mapped correctly before adding any ROMs saves you a lot of frustration later. Do this step now.
USB Controllers
Plug your USB gamepad in before booting. RetroPie detects it automatically and triggers the mapping wizard on first launch. Hold any button on the controller to start. Map every button the prompt asks for — if your controller doesn’t have a button like L3 or R3, hold any button for two seconds to skip that input.
Bluetooth Controllers
- From the EmulationStation main menu, press the button you mapped to Start, then select RetroPie.
- Open Bluetooth and choose Register and Connect to Bluetooth Device.
- Put your controller into pairing mode (this varies by controller — usually hold the pairing button until the light flashes).
- Select your controller from the device list and confirm the connection.
Test your controller by navigating the EmulationStation menu before moving on. If buttons feel wrong, go back into the controller configuration from the RetroPie menu and remap.
Transfer ROM Files to RetroPie
ROMs are digital copies of game cartridges. RetroPie itself is completely legal open-source software — you’re responsible for sourcing game files legally, which means using ROMs only for games you own. With that said, here’s how to get them onto your Pi.
Method 1: USB Transfer
- Format a USB drive as FAT32 and create a folder named
retropieon it. - Plug the USB drive into your running Pi and wait about 30 seconds. RetroPie automatically creates the full folder structure inside
retropie/roms/. - Remove the USB drive, copy your ROM files into the correct subfolder on your computer (e.g.,
retropie/roms/snes/for Super Nintendo games), then plug it back into the Pi. - Wait for the transfer to complete, then restart EmulationStation from the main menu.
Method 2: Network Transfer via Samba
Connect your Pi to Wi-Fi first: go to RetroPie menu, select Wi-Fi, and enter your network credentials. Once connected, open File Explorer on Windows and type \\retropie in the address bar. On a Mac, use Finder’s Connect to Server option and enter smb://retropie. You’ll see shared folders including roms — drag your game files into the correct system subfolder directly.
ROMs placed in the wrong subfolder won’t appear in EmulationStation. If you add files and restart but see no new systems, check that the files are in the right folder and that the file extension matches what the emulator expects.
Installing RetroPie on Top of Raspberry Pi OS
This optional method makes sense if you want a full Raspberry Pi OS desktop alongside RetroPie on the same card. Start with a fresh Raspberry Pi OS installation, open a terminal, and run:
sudo apt-get update && sudo apt-get upgrade -y
Then clone the RetroPie-Setup script from the official RetroPie GitHub repository and run the setup script. The script compiles emulators from source, which takes 30 to 90 minutes depending on your Pi model and RAM. This method isn’t recommended for beginners or for Pi models with less than 2GB of RAM — the standalone image method is faster and more reliable for first-time setups.
Common Issues and Fixes
No video output on first boot. The HDMI cable wasn’t connected before power was applied. Shut down, connect HDMI first, then power on. Pi 4 users: confirm you’re using the HDMI0 port (closest to USB-C).
EmulationStation shows no game systems after adding ROMs. ROMs are in the wrong subfolder. Verify the folder name matches the system exactly (e.g., nes not NES) and restart EmulationStation.
Controller not responding inside a game after mapping in EmulationStation. Some emulators use RetroArch for controller configuration separately from EmulationStation. Access it via the RetroPie menu, open RetroArch, and configure the controller under Input settings.
System crashes randomly during gameplay. Your power supply is almost certainly underpowered. The Pi 4 needs a 5V/3A USB-C supply. A phone charger won’t cut it.
Your RetroPie Console Is Ready — What Comes Next
You’ve got a working retro gaming console running on your Raspberry Pi. That’s a genuinely satisfying thing to have built from scratch in under an hour. So what’s worth tackling next?
The most rewarding immediate upgrade is scraping game metadata. RetroPie’s built-in scraper pulls box art, descriptions, and ratings for your ROM library automatically, turning a plain file list into a polished game browser. After that, explore EmulationStation themes to give your console a custom look. If you want to go deeper, check out our guide on the best controllers for RetroPie to find a gamepad that matches your preferred systems — arcade sticks for fighting games, wireless SNES-style pads for platformers, or a full arcade cabinet build if you’re feeling ambitious.
Download our free RetroPie Quick-Start Checklist PDF for a one-page printable covering every step, required hardware, and the most common fixes — so you can set up your next build without switching back to your laptop.

Simon Gregory, a seasoned Raspberry Pi enthusiast and IoT innovator, brings a wealth of knowledge to Pi Beginners. With a background in computer science and a passion for teaching, Simon simplifies complex concepts, making Raspberry Pi accessible to all. His articles not only guide but inspire readers to explore the limitless possibilities of Raspberry Pi in the IoT realm.
