Feature complete firmware!

Feature complete firmware!
Current prototype

Happy holidays and happy almost 2026!

It's been a while since my last update, but things are progressing. The firmware is now essentially feature complete - not complete complete, there are still bugs to be fixed and rough edges to sand down - but all of the major pieces are there. I've been adding a lot the past few months and think I've got a pretty solid feature set for launch, with plenty of room for improvement and further feature development via firmware updates. Some recent additions:

  • MIDI clock sync for the LFO. This one was quite a lot of work, and isn't perfect yet - I actually plan to do a post just on this topic, as it's pretty interesting. What I've got working will be sufficient for release, but there's a lot more to be done in the future to really nail it down. I take back all of the bad words I've said about other gear I have that has MIDI clock sync issues.
  • Every onboard oscillator is now available for use as an LFO, including the 8-step wavetable! This, combined with MIDI clock sync and either pitch modulation or filter modulation, opens up some new sound possibilities, essentially becoming a simple 8 step sequencer with a nice tactile interface. The LFO selector also has cute icons.
  • One shot LFO mode. The "LFO reset" button is now an "LFO mode" button that switches between several options:
    • Continuous - all voice LFOs are synced and are free running
    • Reset - Each voice's LFO phase resets on note start
    • One shot full - Each voice's LFO starts on note start and runs for a single cycle and remains at the end of the cycle
    • One shot half - The same as "one shot full" but only half the waveform. Handy if you want to use the sawtooth waveform with LFO modulation as a second envelope but don't want the negative component of the wave (especially useful for pitch modulation).
  • There's a new "oscillator drift" button, with "low" and "high" settings. This will add a random offset to the target frequency of every new note.
  • The oscillator envelope modulation knob is gone, and I added a new "LFO waveform" knob. I just wasn't using the oscillator env modulation much, and with the one shot LFO mode you can get something approximating env modulation pretty easily.
  • Instead of having a button to toggle polarity of the filter envelope modulation, the filter modulation knob is now bipolar, putting both positive and negative modulation amounts on the same control. There's enough room on the knob that it still feels responsive, and having that control on a button never felt right.
  • Filter keyboard tracking.
  • Output stage hard clipper has been replaced with a proper limiter. I went back and forth on this for a while, and am pretty happy with the sound of the limiter now. Playing all 6 voices and pushing the "amp" knob beyond about 60% will push the limiter, but if you're only playing 1 voice it's nice to be able to get more gain out. It's pretty transparent, I decided not to try to introduce any intentional additional distortion or saturation.
  • Parameter display values are all 0-255 (or -127 to 127 for bipolar controls). Behind the scenes there's a little more precision, 9-ish bits, but it's not necessary to display the full precision I think (it would be a little confusing, as I need to fudge the values a bit to handle settling, debouncing, etc). Plus, there's interpolation for the important knobs, so changing the filter cutoff from 254 to 255 has no audible "stepping" as the values are changes gradually over a few milliseconds.
0:00
/0:32

LFO selector with icons!

The remaining work is all in the physical domain:

  • New production candidate PCB, addressing some audio issues on power loss and moving things around to fit into an enclosure.
  • Design the production panel, and determine whether the manufacturing process I'd like to use is feasible (JLCPCB black aluminum panel).
  • Iterate on the wood enclosure idea, experiment with different wood options and finishes. I know so little about woodworking, I have a lot to learn here.

There will be a lot more to do that I haven't discovered yet. But completing - by one definition - the firmware feels like a big step. On track for a 2026 release!