element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Fun & Games
  • Challenges & Projects
  • Project14
  • Fun & Games
  • More
  • Cancel
Fun & Games
Projects PiBoy Advance
  • News
  • Projects
  • Forum
  • Leaderboard
  • More
  • Cancel
  • New
Join Fun & Games to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: Arnovsharma
  • Date Created: 1 Mar 2026 3:31 AM Date Created
  • Views 128 views
  • Likes 5 likes
  • Comments 4 comments
  • Fun & Games
Related
Recommended

PiBoy Advance

Arnovsharma
Arnovsharma
1 Mar 2026
PiBoy Advance

Hey everyone, 

Meet PiBoy Advance—a DIY Game Boy built inside the shell of a Game Boy Advance, powered not by a Raspberry Pi, but by something far more minimal: the Raspberry Pi Pico.

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

imageimage
image

Unlike the full-fledged Raspberry Pi that comes with operating systems and multimedia support, the Pico is a microcontroller. That means no Linux, no built-in graphics stack, and no luxury of high-level emulation frameworks. Everything—from display handling to sound generation and ROM loading—had to be engineered from scratch. And that’s exactly what makes this build special. However, we are not really building the emulator from scratch; we are using an existing Pico GB project repository. All the circuitry has been built from scratch.

PiBoy Advance runs Game Boy ROMs directly from an SD card, displays them on an ILI9225 screen, and even outputs sound using a MAX98357 I2S Module.

The shell used in this project was arranged from a local marketplace in my city, which is the Lajpat Rai market. It's one of the biggest electronics marketplaces in India; it's in front of Red Fort, New Delhi, and here you can find a bunch of old retro games and related stuff. I even got an OLED PSP and PS2 from here, which I will be using in a future project.

By following the PICO GB pinout info found on their GitHub page, I was able to make a simple circuit that houses the PICO display and the sound module together along with buttons for controls.

Additionally, because we are making a handheld device, we had to provide a stable power source, so we added a power management circuit in our setup, which uses a LiPo cell to provide power to our PICO setup.

This article covers the complete build process of the PiBoy Advance project, so let's get started with the build.

Materials Required

These are the materials required in this build-

  • Custom PCB (Provided by NEXTPCB)
  • Raspberry Pi PICO
  • ILI9225 Display
  • MAX98357 Audio Module- With Low Profile Speaker
  • Gameboy Advance Body kit
  • LiPo Cell 3.7V 1000mAh
  • IP5306
  • 1uH Inductor
  • 10uF 50V 1206 Capacitor
  • Push Button- 4.5 x 4.5 x 4.5
  • SMD Push Button
  • Vertical Push Button

Hardware

For our Game Boy Project, we're using the Pico-GB repository created by YouMakeTech; this version was a fork of the RP2040-GB Game Boy (DMG) emulator from deltabeard. Here the PICO serves as the brain of the project. I did try to use PICO 2 and even PICO W, but this only works with the PICO RP2040.

For the display, we have to use the ILI9225 display, which runs more than 70 fps, which is insane. The original DMG project didn't support audio out, so youMakeTech modified the original file and added a few key functions that include I2S sound, meaning we had to use an I2S amplifier module. For this, we chose the MAX98357 audio module that is connected to a small form factor 1W speaker, which will provide audio output for our device. a small fun fact, this small 1W Speaker is harvested from DF ROBOT'S unihiker k10 Dev board.

Game Boy Advance Shell

imageimage

One of the most important parts of this project is the Original Nintendo Game Boy Advance replacement body kit, which I purchased from a retro game vendor that sells vintage consoles like the PS1, PS2, XBOX, and others at a local electronics market.

I saw this orange Game Boy advance shell while the seller was selling replacement body kits for handheld devices, and it made me think, "Why not build the entire Game Boy from scratch?" Since the body is brand new, all I had to do was develop the circuitry, which should be really, really simple.

The D-pad, A, B, and trigger buttons are all included in this shell, along with the front and rear enclosures and a few more pieces on the left and right sides of the device.

It even features a Game Boy Advance logo and a front PC Cover, this PC cover part has an adhesive tape stick on the back, which allows us to take off the protective covering and attach it to the front body.

Breadboard Version


You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

PCB Design

imageimage

The PCB for PiBoy Advance is split into two major sections: the Pico Setup and the Peripheral Connections. At the heart of it all is the Raspberry Pi Pico, which interfaces with the ILI9225 display, MAX98357 audio module, and a set of push buttons for user input.

We’ve made full use of the RP2040’s GPIOs to handle all button inputs:

  • GPIO2 - Button Up
  • GPIO3 - Button Down
  • GPIO4 - Button Left
  • GPIO5 - Button Right
  • GPIO6 - Button A
  • GPIO7 - Button B
  • GPIO8 - Select
  • GPIO9 - Start

The SD card slot of ILI9225 is wired for SPI communication with PICO through following GPIOs:

  • GPIO12 - MISO
  • GPIO13 - CS
  • GPIO14 - SCK
  • GPIO15 - MOSI
  • GND - Pico GND
  • VCC - Pico VBUS

The Display is powered via the Pico’s 3.3V and controlled through the following GPIOs:

  • VCC - 3.3V
  • GPIO22 - LCD LED
  • GPIO21 - RESET
  • GPIO20 - RS
  • GPIO19 - SDI
  • GPIO18 - CLK
  • GPIO17 - LCD CS

The audio module is powered by VBUS and connected as follows:

  • VCC - Pico VBUS
  • GND - Pico GND
  • GPIO28 - LRC
  • GPIO27 - BCLK
  • GPIO26 - DIN

The second major section of the PCB design focuses on power management—an essential part of any handheld device.

For the PiBoy Advance, we chose a single-cell LiPo battery as the power source, charged via a USB Type-C port. To handle power regulation, we integrated the IP5306, a compact power management IC capable of delivering a stable 5V at up to 2A from a 3.7V Li-ion or LiPo cell.

The IP5306’s output is routed directly to the VBUS pin of the Raspberry Pi Pico, which in turn powers the display, the Pico itself, and all other components on the board. It’s a clean, centralized setup that keeps the system efficient and compact.

This IC also includes smart features like low-cut and high-cut protection and a battery fuel indicator LED. During charging, the LED blinks slowly and becomes solid once the battery is fully charged. When the battery is low, it blinks rapidly every two seconds—making it easy to monitor power status without extra circuitry.

Once the schematic was finalized, we moved on to the PCB layout. The board outline shape was based on the shell dimensions, and component placement was guided by the 3D model.

The top side of the PCB houses all SMD components, including the display and push buttons, while the bottom side holds the Raspberry Pi Pico, battery terminals, and the MAX98357 audio module.

Power Source

For PiBoy Advance, we chose a 1000mAh 3.7V LiPo cell as the power source. Its compact size made it a perfect fit inside the Game Boy Advance shell. While we initially hoped to use a higher-capacity battery, space constraints made that tricky. Thankfully, it’s not a major issue—this device draws significantly less power than typical Raspberry Pi-based emulation setups. With the 1000mAh cell, we’re getting a solid 2.5 to 3 hours of gameplay, which is honestly impressive. It even outperforms my ROG Ally, which barely manages an hour!

The battery assembly process was straightforward. We soldered the positive terminal of the LiPo to the Battery CON + pad on the PCB, and the negative terminal to the Battery CON – pad. To secure the cell to the back of the board, we used double-sided tape and press-fit it into place—keeping the setup clean, stable, and low-profile.

RESULTS

Here’s the end result of this small but seriously fun project: a handheld console that looks just like a Game Boy Advance, but inside, it’s running Game Boy games on a custom-built circuit powered by the Raspberry Pi Pico.

From the outside, it feels like a nostalgic throwback, but open it up and you’ll find a fully DIY setup—a custom PCB featuring the Pico, connected to an ILI9225 display, SD card slot, and audio module, all stitched together without relying on a full-sized Raspberry Pi board.

We ran a bunch of classics, from Tetris to Pokémon to Zelda, and the Pico handled every game flawlessly, without breaking a sweat.

Thanks to the onboard battery, we got a solid 2.5 to 3 hours of backup, which was perfect for outdoor use—we even took it trekking and played a few rounds when we reached our destination.

imageimage

Here’s the end result of this small but seriously fun project: a handheld console that looks just like a Game Boy Advance, but inside, it’s running Game Boy games on a custom-built circuit powered by the Raspberry Pi Pico.

From the outside, it feels like a nostalgic throwback, but open it up and you’ll find a fully DIY setup—a custom PCB featuring the Pico, connected to an ILI9225 display, SD card slot, and audio module, all stitched together without relying on a full-sized Raspberry Pi board.

We ran a bunch of classics, from Tetris to Pokémon to Zelda, and the Pico handled every game flawlessly, without breaking a sweat.

Thanks to the onboard battery, we got a solid 2.5 to 3 hours of backup, which was perfect for outdoor use—we even took it trekking and played a few rounds when we reached our destination.

CONCLUSION

Overall this project has been completed, and all the files related to this project are attached, which you can use freely for making your own PiBoy Advance!

For full technical documentation and development logs, kindly refer to my Hackster.io profile:

  • Sign in to reply
  • Arnovsharma
    Arnovsharma 1 day ago in reply to kmikemoo

    Thank you Hugging

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Arnovsharma
    Arnovsharma 1 day ago in reply to arvindsa

    Yep I found it later!Sweat smile

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • arvindsa
    arvindsa 1 day ago

    Cool. But it seems Lajpat Market shop gave you two B buttons. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • kmikemoo
    kmikemoo 1 day ago

    Amazing!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube