A playable Karplus–Strong “digital Kalimba” built on the Daisy Seed platform.
Designed as both an instrument and a teaching tool for exploring physical modelling, microcontrollers, and sound design.
Status: Workshop-ready; evolving with student feedback.
- A complete hardware + firmware project:
- Daisy Seed-based audio core
- Simple controls for tuning, decay, damping, etc.
- Audio out designed for pedal/synth workflows
- A workshop-ready instrument:
- Web Flasher so students can program it from a browser (no toolchain needed!)
- Clear wiring diagrams and parts list
- Documentation written for people who like to experiment and break things
- Karplus–Strong synthesis (plucked string / Kalimba vibe) with 7-voice polyphony
- 5 Selectable Scales (Pentatonic, Dorian, Chromatic, Kalimba, Just Intonation)
- Stereo Reverb (ReverbSc) for spatial depth
- Octave Shift (-2 to +2 range)
- Low Latency (~0.08ms) for responsive playability
- Parameters exposed as simple potentiometers, making it easy to teach DSP concepts like "damping" and "feedback" physically.
- Core: Electrosmith Daisy Seed (STM32H750)
- Controls:
- 7 Push Buttons (Notes D1-D7)
- 6 Potentiometers (Tone, Decay, Octave, Scale, Reverb Mix, Reverb Time)
- 1 OLED Display (Optional, I2C)
- I/O:
- Stereo Audio Out (Pins 19/20)
- USB for flashing
See KALIMBA_WIRING.md for complete wiring details and pinouts.
No coding required. Perfect for workshops.
- Connect Daisy Seed via USB.
- Put in bootloader mode (Hold BOOT, press RESET).
- Go to the Web Flasher.
- Click "Connect" -> "Flash".
For modifying the code and DSP.
git clone https://github.com/willbearfruits/KarplusStrongMachine.git
cd KarplusStrongMachine
# Build
make -j4
# Flash
make program-dfuI use this project in workshops on:
- Synths and Microcontrollers
- Physical Modelling Synthesis
- Building Complete Instruments (DSP + Hardware + Enclosure)
It is intentionally:
- Minimal enough for beginners to follow the signal path.
- Open enough for advanced students to fork (e.g., "change the scale," "add a delay effect," "make it a drone machine").
If you use it in a class, feel free to open an issue or PR with notes!
- Platform: Daisy Seed (ARM Cortex-M7 @ 480MHz)
- Audio: 48kHz, 24-bit, 4-sample block size
- DSP: Custom
Stringclass (ported from Mutable Instruments Rings) - CPU Usage: ~15% (plenty of room for more effects)
MIT. Break it, bend it, rebuild it.