A hobbyist's build log
I built a synthesizer.
Three chips, eight voices, and a lot of dead ends.
A polyphonic hardware synthesizer — designed, wired, and coded from scratch. Custom PCB, a full effects chain, Bluetooth MIDI, a web control interface, and a password-protected volume limiter built for grandchildren whose parents turned out to be the main users.
This isn't a tutorial. It's a build log — the real decisions, the dead ends, the bugs that took weeks to find, and how AI-assisted development changed the way I work through problems. The goal is to show that a project that looks impossibly complicated can be broken into pieces small enough to actually tackle.
The project is unfinished. The site reflects that.
The Project
What I built — and where it stands

📷 The complete system — synthesizer unit with web control interface and BLE MIDI keyboard
The project started as an analog design using the AD9833 waveform generator, then pivoted to a fully digital architecture when the limitations of single-channel synthesis became clear. The current design runs on three microcontrollers: an STM32F411 as the synthesis engine driving a PCM5102A DAC over I2S, and two ESP32 modules handling control, connectivity, and Bluetooth MIDI.
The Build
Chapter by chapter
Tools & Resources
What actually helped
Not a comprehensive list. These are the tools and references I personally used — with straightforward notes on where they help and where they don't.
What's Next
The current frontier
This site updates as the project evolves. The build log is written as things happen — including the parts that don't work yet.
If you're working on something similar, have a question, or want to compare notes, join the conversation in the project's GitHub Discussions (a free GitHub account is needed to post). Found a bug in the firmware? Please report it as an issue.
Questions, ideas or your own build stories are welcome. Commenting needs a free GitHub account; comments also appear in the project's GitHub Discussions.