PiGRRL 2 - Raspberry Pi Game Console

by adafruit, published

PiGRRL 2 - Raspberry Pi Game Console by adafruit Jan 21, 2016
32 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Design Tools

Autodesk Fusion 360

Use This Project

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

51490Views 15812Downloads Found in Video Games


UPDATE 1.1 The case has been updated! Added new switch holder. New lip snap fits halves together, so no need for news! Removed screws holes for amp, Pi 2 and powerboost, just snap fit onto nubs! Added washers to prevent screws from puncturing case.


Full Parts List & Tutorial:

Download Fusion 360 FREE

PiGRRL Gamepad PCB on Oshpark

Raspberry Pi Retro Game Console
This project takes the original concept of the PiGRRL and makes it more powerful, using a Raspberry Pi 2 (or Model B+). It's about the same size but features more buttons (D-Pad, A,B,X,Y, L, R, pause and start.) and four extra buttons on the PiTFT. It's sporting a small audio amplifier and speaker, so you can enjoy the crispy sounds of 8-bit goodness.

Easier to build!
With this update, we really wanted to make it easier to build. We've dramatically cut the build time in half by making a custom gamepad PCB. Just solder in the buttons and an IDC box header to the gamepad PCB - No more tedious button wiring!

Project Expectations
This project is geared towards beginners, but is still a big project to take on. This guide will walk you through all the necessary steps to wire, assemble and build your very first Raspberry Pi game console. It does require a good amount of soldering, wire tinning and good ol' elbow grease, but don't be discouraged! If your dedicated to take on this project, it'll only take a weekend to make.

More from Video Games

view more

All Apps

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

This App connects Thingiverse with Makeprintable, a cloud-based mesh repair service that analyzes, validates and repairs most common mesh errors that can occur when preparing a 3D design file for p...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

is it possible to simply swap the pi 2 for a pi 3? or would there have to be some case mods and various changes made to it?

I just finished building this with a Pi 3. There is a youtube video that goes through the software upgrade process.
Just FYI I used the screw together case because I like using screws and I printed the top case at 101% size and the bottom case at 100% size. I printed the top slightly bigger so the screen and everything fit nicer without much trimming. I'm not sure about how the 1.1 version fits.

What resolution are people print the various parts at?

It has taken me ages and 3 suppliers but now have all the parts on order to be able to make myself one of these :D Often away on business now so will be a great thing to have with me to play games on :)

I do wonder though if it would be possible to have the Pi rotated 180 degrees to allow the HDMI to come out of the top? Would be nice to be able to connect to a large screen as well!

Got all the parts and printed everything. Having one hell of a time getting it all to work :( The image provided is so out of date (using Wheezy) and RetroPie no longer supports it having moved onto Jessie. I have tried to use the latest version of RetroPie and install the drivers for the PiTFT but that just leaves me with a blank screen.

I have tried using the Jessie image with the drivers already installed and then installing RetroPie via the script, but emulationstation just loads with a flashing cursor and a blank screen :(

Have no idea what to do now, I can get it all to work but using a really outdated version of the OS and RetroPie or I can get bits to work but not all together :(

I am currently building this and used the image found here: https://learn.adafruit.com/pigrrl-2/software

I need to solder the wires but I connected the Pi screen just to test it out and Emulation Station started up fine. I didn't actually try to load a game since I didn't have any inputs connected yet. It doesn't sound like you are using the same image I did but it might be worth a try.

Hay :) Yeah I didnt want to use that image as it is using Wheezy and a really old version of RetroPie. I want to use the latest version of RetroPie but it now only supports Jessie so I was using https://learn.adafruit.com/running-opengl-based-games-and-emulators-on-adafruit-pitft-displays?view=all#pitft-setup to setup the screen. Unfortunately there seems to be an issue with using that method which Adafruit are working on but are unable to give a timeline to a fix :(

As it stands I am, like you, using the old image to use my PiGRRL for the time being but I am really waiting on the fix so I can use the more up to date version of RetroPie!


I was able to use Retropie 3.8 with the PITFT from Adafruit. Took a lot of work, but finally found this video that was very helpful:


The second link has some instructions referenced in the video on how to install the kernel. I assume you were running into the same issue that I ran into; that is, the pi would boot up and power the screen, but it would remain white. Installing the kernel seem to do the trick and now I'm able to view EmulationStation.

Hope that helps.

Aug 6, 2016 - Modified Aug 6, 2016
megatru0ng - in reply to smartroad

Oh I follow you now. I was not aware that the image Adafruit currently has is an older version. And you did say in your original post that the image provided is out of date. I didn't understand at the time that you were talking about the same image that I linked.

Well that's a shame. Hopefully they have an update in the near future. Sorry I couldn't help you. If you do find a solution, please comment. I will do the same if I come across something. Good luck!

so i printed the front peice of version 1.1 but my printer did not print the holes for the things to snap into place

Jul 1, 2016 - Modified Jul 1, 2016

So I printed out the split versions (2 front/2 rear). Awaiting parts to arrive...but how are all 4 printed out pieces supposed to connect as one?

loving putting this together. i'm prepping the 3d print now while I'm still soldering the PCB/buttons/wires. With the snap fit version of the case, I won't need to screw tap the holes in the PiGRRL PCB correct? I believe I read that correctly in the guide. For clarity, are there any 3D print pieces I am missing from this list with Snap Fit: Bot 1.1, Top 1.1, pitft buttons, shoulder buttons, action buttons, dpad, pause start, shoulder mount, washer and washerB?

I am actually working on modding the audio out with another switch and potentially a resistor so you can toggle the audio speaker on/off and have a headphone jack on the outer edge of the case.

Thanks again for the build and the help!

lovely build. i am doing it right now. but i dont like the new updated snapfit case. i like to screw stuff together. but the updated switch holder would suffice on the old revision of the case. but i suck big time in using cad :/

Jun 13, 2016 - Modified Jun 13, 2016

I have a Zortrax and can only print in ABS. How can I "split" the buttons? Or is there a file available for this technique?

Jun 2, 2016 - Modified Jun 2, 2016

New version snap fit doesn't work with robo 3d printer now I have to either tape it or reprint version with screws.

Looks like the lips need to be thicker so it has much more clip strength.

How is power supplied to the raspberry pi? Through the audio wires/amplifier?

May 28, 2016 - Modified May 28, 2016

Could you upload the .step files for the top and bottom of the case? I'd like to make a few edits. I found the source files on the adafruit tutorial, but they seem to be slightly different.

This comment has been deleted.

Is it possible to build this with a Pi 3, or would that require an all new case design?

Can SNES buttons replace the 3d printed ones?

nope, because the buttons from de snes are to big

Any suggestions for printing on a printer with rafts? I have a zortrax m200 and the outside of the case will technically be the bottom of the print bed with the raft support attached. The bottom will not have a "finished" look to it. Any help would be appreciated. Thanks!

Does the Zortrax support external build surface like skins from PrintInZ? If it has auto-bed leveling, then perhaps you'll need to compensate for the extra thickness.

You can choose from a range of different sizes.

No, I don't believe it does. The Z-Suite software is proprietary and does not allow you to NOT print the raft. I think I might experiment with heat guns to smooth out the surface. That seems to be a popular technique.

I've noticed when I print the new version of the PiGrrl 2 case that the edge on the top case begins to fray when the two halves are snapped together. I printed the case halves using a .2 mm layer height with 2 shells. Is there a way to reinforce the edge?

Sounds like a bounding issue, perhaps try printing at a higher temperature on the extruder like 220c.

This comment has been deleted.

Is it possible to laser cut this case out in wood? Has anyone ever tried?

It might be! The fusion 360 archive includes all of the solids and feature set. You'd have to optimize the geometry for milling and create proper tool paths using CAM tools. So, it's possible :-)

I printed out a 1.1 case, but there don't appear to be pegs for the Raspberry Pi? Is it just supposed to sit on top?

Yes, the Raspberry Pi PCB can just sit on the standoffs. Although, adding pegs wouldn't hurt :-)

I found after my first print that the pieces didn't quite fit together, the 'snap-together' lid breaks pretty easily, and the RBP seems doomed to move out of place.

Trying to print the old version of the case, but hoping for a 1.2.

This comment has been deleted.

Will this print on a thingomatic?

If the build volume can print 145mm x 92mm it should! We also have split the case in half, so it can fit on smaller beds.

Hi there,
Really great project -very well designed!
I was wondering how you attached the on-off slide switch to the 3d printed enclosure. Hot glue?
Tanks in advance!

Thanks, Rasmus!

Yes, hot glue or any other adhesive should hold it in place, but you could also make "side clip" that prevent the slide switch from being pushed all the way into the case (like we have done on our upcoming PiGRRL Zero project).

So i am new to 3d printing, are the buttons supposed to be so tight? i do not see this being very good to play with.
Any ideas how to fix this?

There's a 0.5mm clearance around the buttons, so perhaps the case was printed really tight on the bed. A quick sanding around the edges using a filing tool should open those up. :-)

anyone have any luck with battery placement? the only place it fits it makes a loud noise in the speaker, I honestly can't find anywhere to put it. Using a 2500mAh

Check out our short video clip here for referencing how to insert the battery. Wrapping the battery in aluminum foil can help reduce the noise, just be sure to ground it (i.e. to the HDMI port). :-) https://www.instagram.com/p/BEYxaYGmVAs/?taken-by=ecken

I downloaded the .stl files, but am having trouble editing them in Creo 3.0. I want to make some modifications to this design. How do I obtain a DWG, STEP, or some other solid object file for this design? @adafruit

You can download the STEP files from the source here http://a360.co/1JIFbDc

I was wondering if anyone has tried making one of these using the capacitive version of the pitft screen https://www.adafruit.com/products/2423 instead of the restive version ??

Yes, it should work fine. It's not that useful while playing games, though it should work in Emulation Station (theoretically) :-)

it would work just the same. sice you dont use the touch screen part anyway

I made mine and the only thing I do not like is you cant easily connect headphones. Does anyone know of a mod to make this easier?

Use a stereo amp and connect a 3.5mm breakout to the amp. Not sure if you could reroute the audio from the mono amp to the standard Pi audio and just extend the 3.5mm to the side of the case with a male 3.5mm to female 3.5mm cable and switch between the two, but a stereo amp would also allow stereo speakers so you'd have to do some research.

there are special 3.5mm headphone jacks that have a cutoff switch built in that bypasses the speaker and only lets sound out of the headphones. you might want a stereo amp for this though since this project only uses mono sound.

Can not wait for everything to become instock / kit to be available.

Sorry about the long wait on getting parts in stock. It's actually due to such a high demand. If you don't want to wait until the kit is fully in stock, we recommend checking out our distributors (ie. sparkfun, digi-key, microcenter, monoprint) Here's a full list of them. https://www.adafruit.com/distributors Again, sorry we just can keep everything in stock! :-)

then youll be waiting for a long time. they never have all the parts at one time. that way they get you to pay the exorbitant shipping cost multiple times. I ended up having to hit up sparkfun and ebay to complete my build.

any update on the pack being avaliable? would love to build this!

Sorry, it's really hard to give an exact date or estimate. We recommend signing up for an email notification when it's in stock!


Working on remixing this :D Have several of the Pine64 boards coming in that ordered from Kickstarter, and have one set aside for this project! Hopefully it fits ok.

Is Polyflex Filament also good for the buttons? I have already printed them in Filaflex, but want to test out the Polyflex also

Should work just fine! Any TPE material will do :-)

Hello, which screws are needed in metric measurements?
Please advise

Have you figured this out yet? Unsurprisingly, Japanese dealers don't have American sizes...

i couldnt find any of the screws mentioned in the build at local hw stores with the exception of the #4-40s i just used what i had handy that were small enough. I think 3mm and 4mm screws will work too.

I can't solder for shit, are there any premade kits available? I can 3D print the case.

the soldering is not that bad

Any update on when the new kit will be available?


The kit is coming VERY soon, sign up for an email notification when it's in stock!


Apr 25, 2016 - Modified Apr 25, 2016
dokool - in reply to adafruit

It's been about 10 weeks, any update?

Why is the gamepad PCB designed so that the GPIO connector is offset from the one on the TFT? if they were lined up you wouldn't need the big kink in the cable which takes up a load of space.

Also moving the power switch up a little, moving the amp up and turning the power boost and having the usb out of the side just below the switch leaves enough space for a round 2200 lithium ion cell, its pretty difficult to get silver pack lithium polymer batteries in the UK now, no one wants to ship them!!

Well I used my awesome (not) Fusion 360 Skillz and remixed the bottom case to fit the other battery.

order your lipos from china, they dont label their packages and you can get a 2500mah battery that will fit in place of the 2200 they recommend.

Can someone post what the four buttons do next to the screen? I hope they can control the volume.

the buttons come standard with the screen and are mapped to esc 1 2 & 3 respectively. you can use them for anything. I use them for load and save state and vol up and down.

I just built mine about a week ago and the software that is included in the tutorial that adafruit posted made the top button on the screen exit the game but all the others are not assigned. I made two buttons do save/load state and the other one is still free

I haven't built one yet, but I know the past versions of the PiGrrl people have remixed the case and wired in volume control. Those also had the four buttons. http://www.thingiverse.com/thing:969194

Pocket Pigrrl - Volume Knob

The PiGRRL Gamepad PCB need a different order or is in the box, thanks

Any timetable on when the new kit will be available? I am super excited to build this!

Can all the buttons be printed in PLA? I'm using my school's printer and I can't afford to buy semiflex or ninja flex. Do the abxy, side, and shoulder buttons just have to be split?

Yes, The gamepad buttons can be printed in PLA/ABS as long as they're split up to avoid "double presses". Other folks have had success with this method.

Thank you so much for the response!

Does it work with adafruit 2.8" TFT w/touch screen REV.B (STMPE610 + ILI9341 V2 ) ? I plan to use a Raspberry pi B+ .
Awesome project anyway !

The case was specifically designed around the 2.8" PiTFT Plus (https://www.adafruit.com/products/2298). The previous model (https://www.adafruit.com/products/1601) has different mounting holes and the position of the GPIO breakout is slightly offset, so that one unfortunately will not fit in the case.


Is there a way this could be re-designed so it is more ergonomic so there is less blank space? maybe better button positioning, larger screen or larger buttons?

Anyone else having slicing issues with slicing using cura-engine? All the openings end up with a single layer in them. Slic3r is fine with it though. Very confusing! Only tried the top so far.

i used cura and didnt have an issue. maybe update to the latest build?

Question... If i plugged an HDMI cord from the PiGRRL to a monitor, will I be able to play whatever game on my monitor rather than the TFT screen?

not really. you need to have fbcp installed to run emulationstation on the tft. and this mirrors all the content from fb0 to fb1. and you have to setup specific "hdmi" modes for the tft, so yeah you could work that out, but then youd have to totally redesign the case and hook up a keyboard everytime you wanted to switch between the two, kill fbcp and change the fb used to execute es, so it would be less time consuming to just buy abother pi.

Most likely, from what I understand the pi will default to hdmi if it is connected.

Printing now, once the kit is up I will order one and post the Make. then order more lol, at least 3 friends want one now.

finished and posted the make, will update it once i am able to order and install the electronics


Can we get access to the gamepad eagle files please? The button on the learn pages to the pcb source files gives a 404 ... :)

Thanks for catching the bad link! Just added a ZIP which contains the .brd and .sch eagle CAD files. https://learn.adafruit.com/system/assets/assets/000/029/938/original/PiGRRL-ButtonPCB.zip?1453489766

Very nice! But too big for my printer's 12x12cm bed...
A Pocket PiGRRL with Pi zero would be awesome!

We just added a "split version" which has the top and bottom parts cut in half - these should fit on print beds ~10x10cm. These can be glued together and smoothed with some finishing techniques (like Smooth-Os XTC-3D ). Hope this helps!

Having the M3D I am in the split case camp. Isn't the width of the case walls a little thin to hold glueing? Other wise awesome build

Can you provide the Fusion 360 file so that I can modify the case design?

Sure, the source file can be downloaded here: http://a360.co/1JIFbDc

Can you guys post a place to buy the buttons? I have a access to a printer but can't use anything except PLA in it.

I have had good results using pla buttons instead for the screen. You just need to cut them apart from the strip so they can each move individually.

You may want to try semiflex or cheetah from ninjaflex3d.com - it preforms much better than regular Ninjaflex on bowden style machines. There's also http://3DHubs.com to consider.

I printed mine in semi flex on my Rostock max

How the crap do I get the gamepad PCB without ordering 3 at once?

Please help!

We're working on making a kit, it'll be availabe soon - hang tight!


Can I print the buttons separately? I don't have ninjaflex.

I have had good results using pla buttons instead for the screen. You just need to cut them apart from the strip so they can each move individually.

think them do them soon

now Download All Files right only 2 of them in file

Ive found the download all button hasnt been working lately on most pages. Just save each individually

It seems the new update to Thingiverse may have caused the issue... Downloading them individually is your best bet!