Skip to main content
Version: ACS CC

Gumdrop Mini

A Raspberry Pi Pico‑powered handheld that runs a Rust implementation of a platformer game.

info

Author: Caraian Sonia-Adriana
GitHub Project Link: https://github.com/UPB-PMRust-Students/proiect-soniacaraian

Description

I decided to build a handheld console designed to run a Rust reimplementation of a platformer game I had originally created in a previous project, "Princess Bubblegum Adventure". Inspired by the game's candy-themed world, I named the console Gumdrop Mini.

Motivation

I chose this project because I had taken a lot of creative freedom when designing "Princess Bubblegum Adventure" — from the gameplay mechanics to the visual assets, all of which I created myself. I wanted to see the game run on real hardware rather than just in a development environment. Because it was inspired by retro games, it only felt natural to run it on a handheld console.

Architecture

Architecture

Log

Week 5 - 11 May

Week 12 - 18 May

Week 19 - 25 May

Hardware

The console is built around the Raspberry Pi Pico 2W, and is powered by a 9V battery regulated through a step-down voltage module. User input is handled via push buttons connected on a breadboard, while game audio is played through a buzzer. An LCD display is used for game output.

Schematics

KiCad schematic

Bill of Materials

DeviceUsagePrice
Raspberry Pi Pico 2WThe microcontroller39 RON
Modul DC-DC Step Down LM2596SVoltage regulation from 9V battery to 3.3V/5V13 RON
Baterie de 9V Varta SuperlifePower source6 RON
Conector pentru baterie 9VConnects battery to power circuit1.29 RON
Breadboard 175 x 67 mmPrototyping and wiring connections12 RON
Modul cititor card SDExternal storage access6 RON
Set fire M-M 40p, 30 cmJumper wires for circuit connections10 RON
Set fire M-F 40p, 30 cmJumper wires for mixed pin headers10 RON
Set fire F-F 40p, 10 cmShort jumper wires for compact connections5 RON
Buzzer pasiv 3VOutputs sound/music using PWM1 RON
Buton 6x6x6 mmInput controls for the game (e.g., A/B/Start)0.36 RON
3.5" TFT LCD ILI9486 DisplayLarge color display with touchscreen, SPI interface~43 RON

Software

LibraryDescriptionUsage
embedded-graphicsA 2D graphics library for embedded systems without a framebuffer. Supports drawing text, shapes, and images.Used to render visuals for the game on the LCD screen
ili9486-driverA Rust driver for ILI9486-based TFT displays over SPI, compatible with embedded-graphics.Used to control and render graphics on the 3.5" TFT LCD
tinybmpA parser for BMP image files with no std dependency, useful for rendering sprites.Loads and draws bitmap assets onto the display