Overview
The MintyPi is a DIY handheld retro gaming console designed to fit entirely inside a standard 94 × 62 × 18 mm Altoids tin. The project combines a Raspberry Pi Zero 2W running RetroPie, a 2.8" IPS display, a custom battery management circuit, and hand-wired GPIO button inputs into a surprisingly capable pocket emulator.
I built this to sharpen my skills in embedded systems, compact PCB layout, and physical design under strict dimensional constraints — skills that translate directly to sensor packaging and downhole tool design in the oil & gas space.
The challenge
Fitting all the hardware into 18 mm of vertical clearance forced every component choice to be deliberate. Key engineering constraints:
- Display, Pi, battery, and charge board had to stack within the tin depth
- Heat dissipation from the Pi Zero 2W with no active cooling
- Adequate battery life (target: 4+ hours) at minimum weight and volume
- Tactile button travel clearance inside the lid
- GPIO signal integrity across hand-soldered 30 AWG wire runs
What I built
The final build uses a Raspberry Pi Zero 2W as the compute platform, paired with a 2.8" 320×240 IPS display connected over SPI. A 1200 mAh LiPo cell powers the system through a TP4056-based charge/protection module, fed by a 5V boost converter to the Pi's GPIO power rail. An MCP23017 I²C GPIO expander handles the 10-button input matrix (D-pad, A/B/X/Y, Start, Select, L, R), keeping the GPIO wiring manageable.
I laser-cut an acrylic inner frame to hold the display and battery in fixed positions, and 3D-printed low-profile button caps that sit flush with the tin surface. A Python daemon running at boot monitors cell voltage and triggers a clean shutdown before the battery hits the protection cutoff.
Outcome
The finished unit plays SNES, NES, Game Boy, GBA, and MAME titles smoothly. Battery life measured 5.5–7 hours depending on emulator load. The form factor is genuinely pocketable — it fits in a jacket pocket with room to spare.
Most importantly, the project reinforced how much physical constraints drive embedded design decisions: the same first-principles approach I use in FEA and CFD work applies equally well to a 94 mm tin.