VGC Zero: The Ultra-Portable Keychain Video Game Console #
VGC Zero is a pocket‑scale handheld you can actually carry everywhere. Clip it to your keys, plug in, code a game, share it—same device. Retro vibe, modern internals, fully hackable.
Highlights #
What it feels like to own & build on VGC Zero:
- Always‑with‑you size: lives on your keychain, not a drawer
- Hack-first mindset: hardware + firmware intentionally open
- Fast iteration loop: edit → flash → run in seconds
- Unique input: rotary encoder enables scroll, spin, dial mechanics
- Audio flexibility: speaker for casual play, jack/Bluetooth for focus
- Community moddable shells & CAD from day one
- Teaches embedded concepts without overwhelming complexity
- Designed for sharing: small game binaries, simple packaging
- Runs on approachable tooling (forked 32blit SDK + Python/C++)
Development Status #
We have built two prototypes so far, and both run games. Our work can be tracked on our github.
Prototype hardware #
The first prototype was built on a breadboard (see the breadboard guide):
| Component | Part |
|---|---|
| MCU | Raspberry Pi Pico 2 W (RP2350) |
| Display | 1.44" 128×128 colour TFT, ST7735S driver, SPI |
| Audio | HXJ8002 amplifier module + small speaker |
| Controls | Tactile buttons + rotary encoder |
The current prototype is the v1.1.4 PCB (vgc-zero-hardware):
| Component | Part |
|---|---|
| MCU | Waveshare RP2350-Plus module (RP2350, Pico-compatible) |
| Display | Waveshare 1.5" RGB OLED module, 128×128, SSD1351 driver, SPI |
| Audio | Buzzer |
| Controls | 10 tactile buttons |
| Power | USB through the MCU module, slide power switch |
| Other | Status LED, 3 GPIO pin headers |
The v1.1.4 board has no battery, charger, headphone jack, rotary encoder or PSRAM yet. The next PCB revision moves to a TFT IPS display and adds audio filtering and a real-time clock.
First public hardware target: 2027.
We’re fully open hardware + open source:
- Schematics, PCB, enclosure CAD: to be published under a permissive license.
- Bootloader, firmware, SDK, tools, sample games: open repo with documented changes.
What’s Coming Next #
Rolling out soon:
- Hardware pinout & electrical notes
- Firmware architecture overview
- SDK & API reference
- Game packaging / distribution workflow
- Contribution & hacking guides
DIY Builds #
We’ll publish guides to assemble a working prototype from off‑the‑shelf parts (MCU module, 128×128 display, buttons, audio + power). Expect:
- Parts list + sourcing
- Wiring / pinout diagrams
- Flashing + first boot
- Optional add‑ons (rotary encoder, low‑power tweaks, audio variants)
Build early. Hack freely. Give feedback before the compact edition lands.
Target Specs #
These are the planned specs for the final VGC Zero, not the current prototype.
| Component | Specification |
|---|---|
| CPU | RP2350 @ 150MHz |
| RAM | 520KB on-chip + 16MB PSRAM |
| Storage | 16MB Flash |
| Display | 128×128 color TFT IPS |
| Audio | Mono speaker, 3.5mm jack, Bluetooth audio |
| Battery | Target up to ~9 hours |
| Controls | D‑Pad, A, B, START, MENU, 2 shoulders, rotary encoder |
| Connectivity | Wi‑Fi + Bluetooth |
| Charging | USB‑C |
Why It’s Different #
Fully open. Small enough to carry daily. A rotary encoder adds an input axis most micro handhelds skip. You can fork firmware, design cases, and ship your own games without a gatekeeper.
Make & Share Games #
SDK features (work in progress):
- C++ & Python game development
- Rotary encoder + button input APIs
- Asset + build tooling
- Packaging & distribution flow
Automated CI:
- Games auto-build via GitHub Actions targeting 6 platforms with artifacts you can download directly from each release:
- VGC Zero
- 32blit (console)
- Web
- Windows
- Linux
- MacOS
Based on a fork of the 32blit SDK with:
- RP2350 hardware bring‑up & memory layout changes
- 128×128 display timings + driver tweaks
- Rotary encoder input layer
- Power management hooks
- Expanded audio path (speaker / jack / Bluetooth)
We plan to upstream improvements where feasible with clear divergence docs.
Play Sample Games #
Community #
Join us on Discord to discuss VGC Zero, share ideas, and get involved in development.