Plaitsy (Plaits port for Patch) - Mutable Daisies

Hello community, I’m pleased to show you a project I have been working on for a month now. :grin:

This is the first firmware for Patch of a series I have named “Mutable Daisies” by Ducktronics :duck:.
The global project is to port some of the best mutable instruments modules to Patch with a common UI.
More details on the project goals are available in the REAME of the github repository.
Documentation about the common UI of these firmwares in the dedicated README.

The first port Plaitsy is no more than the legendary Plaits.
I have written a detailed explanations of the firmware features in its dedicated README (no direct link because “new users can only post 2 links”…. WTF).

But in summary:

  • all 3 banks (24 engines)
  • MIDI and V/Oct + Gate support
  • Ladder Filter
  • 2 stages audio rate modulation with the 8 algorithms of Mutable Instruments Warps
  • 2 audio source based modulator (envelope follower / trigger)
  • 2 modulators for the CV outputs (envelope / LFO)
  • User data (custom wave tables, wave terrains and sysex banks) loadable from SD card
  • Polyphony (limited but implemented)
  • Configurable parameters to CV or CC mapping
  • Presets saving / loading from SD card

The firmware still needs to be battle-tested, but there are no major bugs, and except for polyphony, all the features can work simultaneously.
I’m not an expert in DSP / synthesis, and I do not own the original MI module (but I have used them a lot in VCV), so the audio “correctness” is only guaranteed by my knowledge of programming (the port implementations seem OK to me) and my hearing/comparison with VCV modules.

The project is totally open source so do not hesitate to create issue and contribute with PR if something seems wrong / do not work or maybe improved.

The firmware can be downloaded in the release page (need bootloader).

1 Like

Thank you so much for sharing with the community! This is very exciting.

I’m sorry about the link limitation. It was set to 2 by default. I just changed the setting, so you should be able to post and edit in more now! If there’s an issue, please let me know and I can edit your post to include those two links (I can get them from your Discord post).

So already a new version or… 2 versions !

This evening, I was thinking of a way to optimize the firmware because the polyphony was not very satisfying (more than two voices were already hitting CPU limits).
I tried to increase the audio block size because I found that 24 samples was pretty small, and and I no longer remembered why I used this value.
It turns out that it was because the original Plaits firmware was using this audio block size, and increasing it needed a lot of changes in the original firmware code.
Finally, it works, and it works very well! With this change, all polyphonic engines now run smoothly with 4 voices and even with some effects like the ladder filter (which is pretty heavy).

Because of the changes it needed in the original firmware DSP code and of the increased latency I decided to split the firmware in 2 versions:

One monophonic version with low latency and less original DSP code changes.
One polyphonic version with higher latency and more original DSP code changes.

The new monophonic version can be found in this release page.
The new polyphonic version can be found in this release page.

1 Like