Knowledge for the World

How to transfer ROMs to RetroPie using a USB drive

This short guide will show you how to quickly and easily add ROMs to RetroPie using the USB flash drive method. There are other methods for transferring ROMs to RetroPie, but the USB drive approach is the fastest and easiest. If you're using a Pi Zero (e.g. building a PiCart), this is a also a good approach since the Pi Zero doesn't have built-in WiFi and this approach does not require an internet connection.

What is a ROM?
ROM stands for "Read-Only Memory", a type of memory meant to be read but not written to. Originally, video games were stored on ROM chips soldered to a printed circuit board (and later on read-only mediums like CD-Rs). A game ROM that RetroPie uses is essentially a copy of the original ROM.

Transferring ROMs to RetroPie
Using the USB drive approach, you will copy ROMs to your USB drive, connect it to your Pi, and RetroPie will automatically copy them over and make them available in Emulation Station (and the RetroPie UI).

Note: You should NOT download any copyrighted ROMs. In some countries, it's legal to use a ROM for which you own a physical copy (as this is considered a backup). Be smart and don't do illegal things. :)

In these interests [?]
  • retrogaming
    12 Subscribers Subscribe
  • gaming
    24 Subscribers Subscribe
  • pi
    82 Subscribers Subscribe

Format your USB flash drive to work with Raspberry Pi

First, you'll need to format the USB/thumb drive as FAT32. Connect it to your computer.

If you're on Windows, open up Explorer, locate the USB drive, right-click it, and select Format from the context menu. Select the FAT32 option and click the Start button.

If you're on a Mac, open Disk Utility by navigating to Applications > Utilities > Disk Utility. Select your USB drive in the left pane. For Yosemite and older, navigate to the Erase tab, select MS-DOS (FAT) as the Format, give it a name, and click the Erase button. For El Capitan and newer, simply click the Erase button, select MS-DOS (FAT) as the format, give it a name, and click the Erase button.

Format your USB flash drive to work with Raspberry Pi

Create the RetroPie folder

Create a folder on the newly-formatted USB drive called retropie (in lowercase).

Create the RetroPie folder

Create the ROM folder structure

How this process works is we're going to ask RetroPie to populate a set of folders on the USB drive for us. Then, we'll paste our ROMs into these folders.

Boot up your Pi, safely eject your USB drive and connect it to your Pi. Now, the Pi will create our set of folders. When the process is complete, the LED on your USB drive will stop blinking. If your USB drive doesn't have an LED on it, just wait a few minutes to make sure the process has completed.

Remove the USB drive from your Pi and plug it back into your computer.

Create the ROM folder structure

Unzip and add your ROMs

You'll need to unzip all of your ROMs (except for MAME) before transferring them. With the exception of MAME, RetroPie cannot read ROMs ending in .zip. So unzip the ROMs for your other systems before transferring.

Copy and paste the unzipped ROMs into the corresponding folder for each emulator/system.


Transfer your ROMs to your Raspberry Pi

Safely eject the USB drive from your computer and connect it to your Pi. RetroPie will now begin automatically transferring your ROMs.

This may take some time. The LED on your USB drive will stop blinking when the process is complete. Again, if your USB drive doesn't have an LED on it, you'll need to do some math (fun!) to know when it's safe to pull your USB drive. Here we go:

USB 2.0 has a maximum theoretical transfer rate of 480 megabits per second. There are 8 bits in a byte, so that's about 60 megabytes per second. Note: your USB drive (and the Pi itself) may not be capable of these speeds, so your results may vary.

For example, if you have 1 gigabyte of ROMs, simply convert that to megabytes (1000MB) and divide it by the USB 2.0 maximum transfer rate (60 megabytes per second) -- 1000MB / 60MB -- so your 1GB transfer should take about 17 seconds.

Add a bit of padding time just in case; it's possible that RetroPie is processing ROMs one by one rather than just batch copying them.

Transfer your ROMs to your Raspberry Pi

Restart Emulation Station

Once the transfer is complete, unplug your USB drive from the Pi.

Before Emulation Station/RetroPie can read your ROMs, you'll need to restart it. You can do this by pressing Start and using the Shut Down option to reboot your Pi.

Once you've rebooted, you will see system icons appear for every system that has ROMs installed. If no ROMs are installed for a system, its icon will not appear.


You're good to go!

Questions? Comments? Post in the comments section below and I'll do my best to help you out.