If you purchase products by clicking those links, I may earn an affiliate commission.
Over the holidays, I got a Raspberry Pi 2 in order to experiment with various projects. One thing I was interested in was seeing how it would work for classic game console emulation, since the 900MHz ARMv7 should be enough to handle most of the older consoles pretty well, and the form factor of a small fanless box which can connect via HDMI and use an existing (e.g. DualShock 3) wireless controller seemed ideal.
I used the following hardware to get up and running:
- CanaKit Raspberry Pi 2 Starter Kit ($69.99) - includes the Raspberry Pi 2, USB WiFi adapter, 8GB microSD, power supply, and a nice case
- Plugable USB BLuetooth 4.0 Adapter ($13.95) - to be able to use my existing controllers wirelessly
- USB keyboard from the back of my closet. You may need one of these to do the initial setup for some of these packages after booting, especially if you want to use a WiFi-only network and Bluetooth. Something like this will probably do the job if you don’t have a USB keyboard kicking around somewhere.
With that, setup was pretty easy.1 For most packages, you just download and image the SD card from a computer then put it in the RPi2 and boot up. Here’s all the existing all-in-one emulation frontend packages I was able to find for the Raspberry Pi 2, collected in one place:
Lakka
- Video
- Install instructions
- Frontend: RetroArch
- Backend: libretro
- OS: OpenELEC
- Supported: 2048, Atari 2600, Atari Lynx, Cave Story, Dinothawr, Doom, FB Alpha, Game Boy, Game Boy Advance, Game Boy Color, Game Gear, Master System, Mega Drive, NES, Neo Geo Pocket, Nintendo 64, PCEngine, PCEngine CD, PlayStation, Sega 32X, SuperNES, Vectrex
Recalbox
- Video
- Install instructions
- Frontend: Forked EmulationStation
- Backend: libretro
- OS: Custom buildroot Linux
- Supported: Atari 2600, Atari 7800, NES, Game Boy, Game Boy color, Game Boy Advance, Super Nintendo, Famicom Disk System, Master System, Megadrive (Genesis), Gamegear, Game and Watch, Lynx, NeoGeo, NeoGeo Pocket, FBA (subset), iMame4all (subset), PCEngine, Supergrafx, MSX1/2, PSX, Sega Cd, Sega 32X, Sega SG1000, Playstation, ScummVM, Vectrex, VirtualBoy, Wonderswan
RetroPie
- Video
- Install instructions
- Frontend: EmulationStation
- Backend: libretro
- OS: Raspbian
- Supported: Amiga (UAE4All), Apple II (Basilisk II), Arcade (PiFBA), Atari 800, Atari 2600 (RetroArch), Atari ST/STE/TT/Falcon, C64 (VICE), CaveStory (NXEngine), Doom (RetroArch), Duke Nukem 3D, Final Burn Alpha (RetroArch), Game Boy Advance (gpSP), Game Boy Color (RetroArch), Game Gear (Osmose), Intellivision (RetroArch), MAME (RetroArch), MAME (AdvMAME), NeoGeo (GnGeo), NeoGeo (Genesis-GX, RetroArch), Sega Master System (Osmose), Sega Megadrive (DGEN, Picodrive), Nintendo Entertainment System (RetroArch), N64 (Mupen64Plus-RPi), PC Engine / Turbo Grafx 16 (RetroArch), Playstation 1 (RetroArch), ScummVM, Super Nintendo Entertainment System (RetroArch, PiSNES, SNES-Rpi), Sinclair ZX Spectrum (Fuse), PC / x86 (rpix86), Z Machine emulator (Frotz)
PiPlay (formerly PiMAME)
- Video
Install instructionsPiPlay OS is deprecated and no longer available- Frontend: custom
- Backend: various
- OS: Raspbian
- Supported: MAME (AdvanceMAME & MAME4ALL), CPS I / CPS II (Final Burn Alpha), Neo Geo (GNGeo), Playstation (pcsx-reARMed), Genesis (DGen), SNES (SNES9x), NES (AdvMESS), Gameboy (Gearboy), Gameboy Advance (GPSP), ScummVM, Atari 2600 (Stella), Cavestory (NXEngine), Commodore 64 (VICE)
ignition.io
Footnotes
-
I initially tried using the preloaded NOOBS bootloader/installer that came on the CanaKit microSD card, but accidentally installed an RPi1 version of Lakka which wouldn’t boot, and then apparently messed things up more trying to fix it. I found just wiping and imaging the microSD card each time was easier. ↩