Throwback Thursday! Synthesizer code from 2008! ported to run on the Daisy Seed

STM32CubeIDE Synthesizer code ported to run on Daisy Seed board.

This is a port of a 6-Voice polyphonic VA Synthesizer I wrote back in Summer of 2008.
It runs fine on the Daisy Seed board, but still need to get USB-MIDI to work, and output thru the Audio Codec chip instead of thru the STM32H750’s 12-bit DACs.

If you like using STM32CubeIDE, and prefer the extended functionality of the ST-Link debugger, it is a lot of fun to step thru the code and use “Live Expressions” to watch variables move in real-time.

Here are the specifications:

  • 6 voice polyphonic.
  • Dual oscillator per voice.
  • VCA per voice.
  • VCF (4-pole Resonant low-pass) per voice.
  • Separate ADSR’s for VCA and VCF
  • MIDI Editable parameters.
  • Waveform select for both oscillators; Saw, Square (with pw/pwm).
  • Oscillator (1/2) mix.
  • Oscillator 2 De-tune.
  • Scale for Oscillator 2.
  • LFO for Pitch Modulation Wheel.
  • LFO for Pulse Width Modulation on each oscillator.
  • LFO for VCF Modulation.
  • Keyboard follow for VCF and ENV.
  • Keyboard velocity routable to VCA and/or VCF.
  • VCF envelope level.
  • Stereo simulation effect.

Thank you so much for sharing, nettech15!

It’s amazing that all the functions are built from scratch too!

1 Like

I also added a simple one-track ScratchPad Sequencer to the code.


Finally added a USB-MIDI Device interface. No more slow, clumsy CDC serial interface.

1 Like

The big hurdle is porting code for the Daisy WM audio codec over to STM32CubeIDE.

Thanks for keeping us posted with updates :slight_smile:
And we would love to see a video document or demo when you get a chance!

This is perfect! Thank you so much for putting together this detailed demo.
The synth sounds amazing!

1 Like