Skip to content

v1.0.0 - Multi-Scale Synthesizer

Choose a tag to compare

@willbearfruits willbearfruits released this 27 Nov 15:14
· 18 commits to main since this release

Multi-Scale 7-Button Synthesizer for Daisy Seed

Transform your Daisy Seed into a versatile polyphonic synthesizer with 5 selectable musical scales!

🎹 Features

Musical Scales

  • Pentatonic Major - G Major pentatonic (G, A, B, D, E, G, A)
  • Dorian Mode - D Dorian mode (D, E, F, G, A, B, C)
  • Chromatic - Half-step chromatic scale (C, C#, D, D#, E, F, F#)
  • Kalimba Traditional - Traditional kalimba tuning
  • Just Intonation - La Monte Young style harmonic tuning

Controls

  • 7 Buttons - Polyphonic triggering (all buttons can play simultaneously)
  • A0 Pot - Brightness control (0.5 - 1.0)
  • A1 Pot - Decay/Sustain control
  • A2 Pot - Transpose (±12 semitones, full octave range)
  • A3 Pot - Scale selector (rotate through 5 scales)
  • A4 Pot - LFO Rate (vibrato speed, 0.1 - 20 Hz)
  • A5 Pot - LFO Depth (vibrato intensity, 0 - 15%)

Display

  • OLED Screen - Shows current scale, transpose amount, active buttons, and note names
  • Real-time parameter visualization

📦 What's Included

  • DigitalKalimba.bin - Compiled firmware (104 KB)
  • Web-based flasher (no command-line tools needed!)
  • Complete wiring documentation
  • Source code and build scripts

🚀 Quick Start

Option 1: Web Flasher (Easiest)

  1. Open web-flasher/index.html in Chrome/Edge
  2. Put Daisy Seed in bootloader mode (hold BOOT, press RESET, release BOOT)
  3. Click "Connect to Daisy Seed"
  4. Click "Flash Firmware"
  5. Press RESET on Daisy to start!

Option 2: Command Line (dfu-util)

# Put Daisy in bootloader mode first
dfu-util -a 0 -s 0x08000000:leave -D DigitalKalimba.bin

📊 Performance

  • CPU Usage: ~12-15% (85% headroom for future effects)
  • Binary Size: 104 KB (80.61% flash usage)
  • Latency: ~0.08ms (4-sample blocks @ 48kHz)
  • Polyphony: 7 simultaneous voices

🔧 Hardware Requirements

  • Electrosmith Daisy Seed
  • 7 momentary push buttons (active-low)
  • 6 potentiometers (10kΩ linear)
  • 0.96" OLED display (SSD1306, I2C, 128x64)
  • Audio output connection

Full wiring guide included in repository.

🎵 What's New in v1.0.0

  • Complete transformation from single-scale to multi-scale synthesizer
  • 5 distinct musical scales with instant switching
  • Real-time transpose (±12 semitones)
  • Updated OLED display with scale visualization
  • Simplified codebase (removed reverb/tremolo)
  • Web-based firmware flasher
  • Comprehensive documentation

📝 Credits

  • Algorithm: Karplus-Strong physical modeling synthesis
  • Platform: Electrosmith Daisy Seed (STM32H750)
  • Libraries: libDaisy, DaisySP
  • Inspired by: Traditional kalimba, La Monte Young's just intonation works

Built with ❤️ using Karplus-Strong synthesis