The RetroPie Project

On this site, you find a summary of all essential posts that are related to the RetroPie project, which started with the post about SNESDev.

  • The idea about the Raspberry Pi as a universal console and the description of a hardware interface for NES/SNES controllers. The beginning of the RetroPie project.
  • An assembly guide for connecting the controllers to the Raspberry Pi.
  • The RetroPie Setup script: An auto-installer and maintaining script that should make the whole software part easy.
  • PetRockBlock PIE, the case for the Raspberry Pi with pre-cut slots for two SNES connectors.
  • A wiki for the RetroPie script and all components that can be installed with it.
  • A GPIO driver for connecting (S)NES Controllers via the GPIO pins of the RPi.
  • The RetroPie GPIO adapter board: a dedicated GPIO adapter for the Raspberry Pi that allows an easy and safe connection of up to two NES or SNES controllers.

21 Responses to The RetroPie Project

  1. Pingback: Buy Raspberry Pi Australia | AusPi Technologies

  2. Pingback: Raspberry Pi i Emuladors | Parufito

  3. Cuppernicus says:

    What is the best way to update RetroPie once it is installed?

    • Florian says:

      Start the script and choose the source-based installation. From there you can choose which components to be updated. The script will then checkout the most recent sources and recompile them for each chosen component. Please note that some of the options in that menu modify the retroarch and/or Emulation Station configurations, so make sure to deselect them if you want to keep them.

      • Mike says:

        It would be helpful to have an “Update” option that only downloaded the new source for the cores\RetroArch\EmulationStation, and left configs alone. Which options impact config files?

      • Florian says:

        I totally agree!
        The source-based installation menu can be used for an update. I have modified the entry titles to make more clear which entries change the settings. Simply deselecting these will update all other components to the most recent versions and keep the configurations untouched.

  4. Pingback: Raspberry pi GET!!! |

  5. mikie says:


    It’s a question about the retroarch really, but I’m assuming it applies to RetroPie…

    Does RetroPie replace the individual emulator configuration files? I’m particularly interested in the MAME implementation; A standalone MAME executable (based on 0.37) needs a file called mame.ini. Is this still the case for the retrolib version? If not, how can I specify things like screen rotation when using RetroPie? I can’t figure out how to do this at the moment (Raspberry Pi version).

    Many thanks,

    • Florian says:

      I have no experience with the standalone MAME emulator. But, at least, I can tell you that the whole configuration for the RetroArch-based emulators is done in the file /etc/retroarch.cfg per default. The RetroPie script uses this config file per default. I hope this helps!?

    • Florian says:

      RetroArch configs can be set in /etc/retroarch.cfg. Of you are using the RetroPie script together with Emulation Station, you should modify ~/RetroPie/configs/all/retroarch.cfg. The config files are well documented and I assume that they contain all possible parameters (see also Regarding the MAME core O must say that I do not have a clue about that.

  6. mikie says:


    thanks for the quick reply! I must admit I was aware of the retroarch.cfg file, but haven’t really taken a close look. The default retroarch.cfg doesn’t seem to mention anything about screen rotation for example. Do you know if the default contains all the config options available? If not, would there be a definitive list somewhere perhaps?

    Thanks again,

  7. Pingback: openArcade | Dec 2012 Status Update

  8. Dominik says:

    Hi, i installed RetroPi on my rpi model 2 (512MB) and it works well (at least when i start it by hand)

    The problem i have on my pi is the performance. When i try to play Super Mario World on the snes emulator i get lacks of almost 1 second between pressing a key (keyboard and jostick doesn’t matter) and seeing the result on the screen.

    Do you also see that problems on your pi (I already tried to overclock the pi to 950Mhz but that doesn’t help)


    • Florian says:

      No, I do not see these lacks with my installation.
      Do you maybe have SNESDev and the gamecon driver polling the game pads at the same time? Or are you using an USB pad?

  9. Dominik says:

    It’s an usb pad and i also see the laag on my keyboard… so this is really odd.

    I started a rebuild yesterday, maybe the problem is now away. Is there any way how i can debug what is causing this ?

    I’m not sure but i tried to install the SNESDev driver, but currently i don’t have a snes gamepad connected. Do you think this can have some side effects because it tries to poll from the USB gamepad ?


  10. Dominik says:

    Mhh the update didn’t help… i just had a look at the cpu load while playing super mario world, first world on the right, where there are about ten turtles, my cpu load goes to 91%… but on my overclocked cpu… is this normal ?

    • Florian says:

      I cannot check the CPU load on my RPi right now, but do you see the same load without the game pad being connected?
      SNESDev does not interfere with other USB devices and (I assume) it is not the source of the problems.

  11. spirit222 says:


    Thanks for making amazing retropie. I have problem with dgen. My gamepad’s d-pad don’t work in dgen, but it works in other emulators. I have modified dgenrc file and got buttons to right place, but cannot understand how to set d-pad directions. In retroarch d-pad works fine and in retroarch.cfg d-pad axes are -2,+2 and -3,+3. But i can’t figure out how to set these axes to dgenrc file. Can you give me a hint to fix d-pad in dgen?

  12. Steve88 says:

    This project (and RetroArch itself) pretty much is the coolest thing I’ve encountered in a looong time.

    Please keep up the good work!

    Just a few minor issues I’ve stumbled upon:

    * The Atari2600-emulator doesn’t seem to work (some failure-message about “Paddles” and “MouseSensitivity” comes up).
    * Also please add the “.a26”-file-extension to the default-settings for the Stellar-emulator (Atari2600).
    * “eduke32” ignores ANY .grp-file passed on the command-line (it will always load the “internal” shareware-episodes).
    * The “GameBoy”-emulator isn’t active by default (“.emulationstation”-settings). “GameBoy Color” and “GameBoy Advance” are available though.

    Other than that… everything else (NES, SNES, MasterSystem, GameGear, NeoGeo, MAME, Genesis, etc.) all works fine out-of-the-box… simply awesome!

    Again… thanks a lot!

    • Florian says:

      Thanks a lot for your feedback!

      I have created corresponding issues at the Github repository of the script!
      Do not hesitate to do this on your own as well in case of future issues that you or someone else might find.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s