A Modular Embedded Audio Learning Kit
G-Kit SoundBox is a standalone MP3 player kit built around the Glyph Development Board, inspired by the charm of classic vintage boomboxes and powered by modern modular electronics.
This project combines digital audio processing, intuitive UI design, and hands-on hardware interaction into one compact build. More than just a music player, SoundBox is an educational platform designed to help you learn embedded audio systems while building something fun, tactile, and nostalgic.
Whether you're a beginner exploring embedded audio for the first time or an advanced maker experimenting with real-time audio pipelines, SoundBox offers a practical and rewarding learning experience, all within the Arduino ecosystem.
At its core, SoundBox walks you through how digital audio systems work end to end:
- Digital Audio Processing
Understand how compressed audio files are decoded and streamed. - I²S Audio Interface
Learn how digital audio data flows from the ESP32 to a dedicated audio chip. - Real-Time System Design
Non-blocking audio playback keeps the UI and buttons fully responsive. - Live UI Feedback
Track metadata, elapsed time, and playback status update instantly on the OLED.
Best part: Everything runs inside Arduino, making it approachable and hackable.
SoundBox takes visual and tactile inspiration from traditional boombox designs:
- Symmetrical speaker & button layout
- Physical controls with clear feedback
- Minimal, purpose-driven interface
- Nostalgic feel with modern internals
It’s designed to feel like real hardware not just another exploration platform.
- MP3 / WAV playback from SD card
- Track navigation: Next / Previous / Play / Pause
- Non-blocking audio loop for responsive UI
- Track metadata support (title & duration)
- High-contrast OLED UI using U8g2lib
- Track information screen
- Play / pause state indicator
- Elapsed time & total duration
- Volume display (0–100%)
- Simple UI navigation system (prev / next / select)
- 3 physical buttons:
- Previous
- Play / Select
- Next
- Debounced inputs using OneButton library
- Expandable control logic:
- Long press
- Double click
- Custom actions
- Volume control range: 0–100%
- UI ↔ Player sync ensures displayed values always match real output
This repository contains:
- Arduino source code for the SoundBox
- Audio playback & UI logic
- Button handling and control flow
- Display rendering and metadata handling
Hardware design files and assembly instructions are not included in this repo.
For the complete build guide, wiring diagrams, parts list, and enclosure details, visit:
Build Guide:
https://learn.pcbcupid.com/boards/g-kit/soundbox
- Students learning embedded systems
- Makers interested in audio electronics
- Arduino & ESP32 developers
- Educators teaching digital audio concepts
- Anyone who loves building real hardware
This project is open-source under MIT license. Feel free to learn, modify, and build upon it.

