Build a RetroPie Handheld in 2026: A Complete Step-by-Step Guide
A DIY RetroPie handheld in 2026 takes a weekend, $140-180 in parts, and produces a console that emulates everything up through Dreamcast and PSP at full speed — indistinguishable from a $250 Anbernic in image quality and considerably more hackable. This guide walks the entire build: bill of materials, why we still pick the Pi 4 over the Pi 5, wiring, RetroPie configuration, the 3D-printed shell, and the bugs that bite first-timers.
If you've never soldered before: yes, you can do this. The soldering on this build is six joints — power switch, battery JST, two GPIO headers, and the audio amp ground. Plan an extra hour to practice on a scrap board first.
Why the Pi 4, not the Pi 5
The Raspberry Pi 5 is the better board on benchmarks. For a handheld it's the worse choice in 2026:
- Power draw at idle. The Pi 5 idles at 2.4W vs the Pi 4's 1.4W. On a 2500 mAh single-cell Li-Po at 3.7V (~9.25 Wh), that's about 3.7 hours of standby on a Pi 5 vs 6.5 hours on a Pi 4.
- Heat under load. The Pi 5 hits 75°C under sustained emulation without active cooling. In a sealed handheld shell active cooling means a fan, and a fan means noise, weight, and a hole in the case.
- Software maturity. Every RetroPie image, EmulationStation theme, and handheld controller HAT in 2026 supports the Pi 4 first. Pi 5 support exists but lags by ~3 months on average and has rougher edges on PSP emulation.
- Cost. Pi 4 4GB at $55 vs Pi 5 4GB at $60 — small enough not to matter, but the Pi 4 reuses every existing handheld accessory in the r/SBCGaming community.
Below the Dreamcast-era cutoff (any 8-bit, 16-bit, PS1, N64, GBA, DS) the Pi 4 runs everything at full speed with frame-perfect timing. PSP runs at 95%+ of titles full speed. Dreamcast runs about 70% of the library at full speed. Above that — Saturn, GameCube, Wii — neither the Pi 4 nor Pi 5 is the right tool; buy an Anbernic RG556 or a Steam Deck.
Bill of materials (~$170 all-in)
| Part | Qty | Price | Why |
|---|---|---|---|
| Raspberry Pi 4 4GB | 1 | $55 | The compute. 8GB is overkill. |
| Sandisk Extreme A2 64GB microSD | 1 | $12 | A2 random-IOPS class — slow cards drag emulation. |
| 5" HDMI LCD 800x480 with capacitive touch | 1 | $35 | The Elecrow / Hosyond 5" panels are widely tested. |
| 2500 mAh single-cell Li-Po (JST-PH) | 1 | $14 | ~5 hours play time. |
| Adafruit PowerBoost 1000C | 1 | $20 | Boost 3.7V to 5V at up to 2A + safe USB charging. |
| Tactile arcade buttons (10mm), 12 pack | 1 | $9 | D-pad + A/B/X/Y + Start/Select + L/R + Home + Volume. |
| Joystick module (Adafruit Mini Thumbstick or analog Hall-effect) | 1 | $7 | Optional but recommended for N64/PSP. |
| Mono PAM8302 audio amp | 1 | $3 | Drives the speaker via Pi GPIO. |
| 1W 8Ω speaker (28 mm) | 1 | $4 | Fits under the screen on most prints. |
| Toggle switch (SPDT) | 1 | $2 | Power. |
| Micro HDMI right-angle adapter | 1 | $8 | The straight cable doesn't fit any handheld print. |
| M2.5 standoff kit | 1 | $7 | For Pi + LCD mounting. |
| 22 AWG hookup wire (~10 ft) | 1 | $5 | GPIO wiring. |
| 3D-printed case (PiGrrl 2 STL or modern handheld) | 1 | $0-25 | Print it or pay a friend / Craftcloud. |
Total: $171, give or take, depending on whether you print the case yourself. If you don't have a printer, Printables lists 20+ "PiGrrl 2" derivative cases and Craftcloud will ship a PETG print for ~$25.
Tools
- A soldering iron at 320°C with a fine tip. Hakko FX-888D or a TS100/TS101 is overkill but reliable.
- Flush cutters, wire strippers (22-24 AWG), small Phillips driver, hot-glue gun (or kapton tape + double-sided foam).
- A multimeter — non-optional. You will measure 5V vs 3.7V at least twice before the build is done.
Day 1 (morning): software image
Don't physically assemble anything yet. Get the software working on a bench setup first.
- Download RetroPie 4.8 for Pi 4 (released 2024, last patched February 2026 for Pi 4 / Bullseye). Flash to the 64GB SD with Raspberry Pi Imager or balenaEtcher.
- Plug Pi 4 into HDMI monitor + USB keyboard, power up.
- First-boot wizard runs
raspi-config. Set timezone, expand filesystem, enable SSH, enable I2C and SPI, set GPU memory split to 256MB, save and reboot. - SSH in from a laptop (
ssh pi@retropie.local, passwordraspberry— change it). All further config is faster over SSH than on the handheld keyboard. - From the RetroPie menu: install lr-mupen64plus, lr-ppsspp, lr-flycast (Dreamcast), lr-mgba, lr-snes9x, lr-nestopia. Skip lr-mame2003-plus unless you specifically need it; MAME romsets are version-locked and a maintenance burden.
- Test with one legal ROM (homebrew or a personally-owned dump): SCP it over to
/home/pi/RetroPie/roms/<system>/, then in EmulationStation press Start → Quit → Restart EmulationStation. The ROM should appear and launch.
Day 1 (afternoon): power circuit
The PowerBoost 1000C is the critical part. Get this wrong and the Pi browns out the moment you load N64. The wiring:
The Pi 4 normally takes power via USB-C with PD negotiation. PowerBoost outputs 5V at 2.4A peak, no PD. You bypass the USB-C input entirely and inject 5V directly onto the GPIO header. Do not connect the USB-C port at the same time — that creates two power paths and damages the PMIC.
Test the rail before connecting anything else: with the Li-Po plugged in and the SPDT switch ON, multimeter from PowerBoost 5V to GND should read 4.95-5.10V steady. If you see 4.7V or drops on load — your Li-Po is undersized or the JST connection is flaky. Fix it now.
Day 2 (morning): GPIO controller wiring
RetroPie's GPIO joypad driver reads buttons connected to GPIO pins as if they were a USB gamepad. The wiring pattern is one pin per button, common-ground to any GND pin on the header.
Standard PiGrrl-style mapping:
| Function | GPIO (BCM) | Header pin |
|---|---|---|
| D-Pad up | 4 | 7 |
| D-Pad down | 17 | 11 |
| D-Pad left | 27 | 13 |
| D-Pad right | 22 | 15 |
| A | 5 | 29 |
| B | 6 | 31 |
| X | 13 | 33 |
| Y | 19 | 35 |
| L | 26 | 37 |
| R | 12 | 32 |
| Start | 16 | 36 |
| Select | 20 | 38 |
| Home | 21 | 40 |
Each button connects between its GPIO pin and any GND pin (pin 6, 9, 14, 20, 25, 30, 34, or 39). The buttons short to ground when pressed; the GPIO joypad driver reads them with the Pi's internal pull-ups enabled.
Wiring tip: use a 16-pin IDC ribbon cable terminated on a 2x20 header — that's one neat connector to the Pi rather than 13 individual wires, and you can disconnect the Pi from the controller harness for service.
Once wired, install mkjoypad:
After install, edit /boot/firmware/config.txt and append:
(All on one logical line — \ to continue if your editor wraps.)
Reboot. EmulationStation's input config wizard should detect the buttons.
Day 2 (afternoon): screen, audio, assembly
The Elecrow / Hosyond 5" HDMI LCDs take 5V on their own micro-USB input. Run a short USB-Micro cable from PowerBoost 5V (you can splice off the Pi 5V rail) to the LCD power input. The HDMI signal connects via the right-angle micro-HDMI adapter to the Pi's HDMI0 port.
For audio, the Pi 4's 3.5mm jack is the easiest source. PAM8302 amp wiring:
The PAM8302 has a small trimpot for volume — set it to ~75% to start.
Assembly order:
- Mount Pi 4 inside case on M2.5 standoffs. Tighten the four corner screws hand-tight; do not strip the through-holes.
- Mount LCD with the supplied bracket. Most cases support 4-screw mounts at the panel corners.
- Glue (or screw, if your case supports it) the PowerBoost, PAM8302, and speaker into the back shell. Hot glue is fine for the amp and speaker; the Li-Po should be held by a foam cradle, not glued — it needs to swell slightly across charge cycles.
- Route the GPIO ribbon to the button PCB. Strain-relieve at both ends with a dab of hot glue.
- Connect everything, last-check the multimeter at the 5V rail, slot the SD card.
- Power on. RetroPie should boot to EmulationStation on the LCD.
Common pitfalls (the real ones)
- Wrong micro-HDMI orientation. The Pi 4 has two micro-HDMI ports; only HDMI0 (the one closest to USB-C) carries the boot-time framebuffer. If your screen stays dark, that's the most likely cause.
- 5V brownout under N64. If
cat /proc/cpuinfoshows under-voltage warnings, your 5V rail is dropping below 4.65V. Cause is almost always a bad JST crimp on the Li-Po. Recrimp or solder directly. - EmulationStation can't see ROMs. ROMs must live in
/home/pi/RetroPie/roms/<system>/and not have spaces in the filename. Linux is happier withSuper_Mario_64_v1.z64thanSuper Mario 64 (1996).z64. - PSP runs at 60% speed. Set Settings → Frameskip = Auto + Skip 1 frame, and set Internal Resolution to 1x in PPSSPP's per-game config. Two-thirds of PSP titles need this on a Pi 4.
- Buttons "stick" or repeat. GPIO inputs need pull-ups. The retrogame overlay enables them by default; if you're using a third-party driver, add
pull=upto each line. - Battery never reaches 100%. PowerBoost 1000C charges at 500 mA from USB-Micro. A 2500 mAh battery takes 5+ hours to top up. Use a USB-Micro charger that can sustain 1A; the bottleneck is the PowerBoost itself, not the wall plug.
When NOT to build this
- You want Saturn, GameCube, or Wii. The Pi 4 can't do it. Buy a Steam Deck OLED, Anbernic RG556, or Retroid Pocket 5.
- You want a polished UI. EmulationStation is functional but ugly. Out-of-box Anbernic CFW and ArkOS are nicer.
- You don't enjoy soldering. Buy a Miyoo Mini Plus for $79; you'll be happier.
- You need long battery life. 5 hours on a 2500 mAh is the ceiling. Commercial handhelds with 5000+ mAh hit 10+ hours.
Where to go next
After your first build, the obvious upgrades:
- Bigger battery. A 5000 mAh Li-Po (still single-cell) buys ~10 hours play time at the cost of weight and case redesign. Use a TP4056 + DW01 protection circuit if you're not using the PowerBoost.
- Analog stick. A Hall-effect joystick module (Adafruit's analog input, read via an MCP3008 ADC on SPI) gives N64 and PSP the proper input. The retrogame driver supports it via
analog_stick=...options. - Better screen. A 5" 720p IPS panel (e.g. Waveshare 5" DSI) costs $48 and looks dramatically better than the 800x480 budget LCDs.
- Add-on SD. A second microSD reader on the back of the case lets you swap ROM libraries without flashing.
Sources and credits
The original Adafruit PiGRRL 2 build guide from 2017 is still the cleanest reference for the wiring topology — the Pi 4 swap is mechanically straightforward but the original schematics hold. RetroPie's own docs at retropie.org.uk/docs cover the modern driver setup. The r/SBCGaming community on Reddit has fresh case STL files almost weekly. Search Printables for "RetroPie handheld" to get current case designs sized for the Pi 4 + 5" LCD combination above.
We've shipped four of these handhelds to family in the last 18 months. Total build time is six to eight hours including the print, and the only one that came back for repair was a single broken micro-HDMI adapter — fixed in five minutes with a spare from the parts bin. Enjoy.
