> Well, I've thought about the VCF issue and all I can say is that I ∗think∗ the STM32 would be able to do its own digital filters on the voices. I don't know this for certain and I am not a math whiz with digital filters (actually I've never created a digital audio filter in code and wouldn't even know where to start). If anyone has a link or ten to help me write an audio digital filter in C, I am all ears. But, even if we keep the VCF as is, we shall be able to produce eight totally independent voices with a long list of waveforms all independently clocked for separate modulation goodness. That can't be a bad thing! My own opinion is that it will be the finishing touch on Poly that will transform it into a "real" synth.
I also don't know a whole lot about DSP, but I'm guessing you can write DSP code the obvious way (with floating point math), or you could write it in a less-obvious optimized way (with integer math). (By "obvious" I only mean obvious to someone who's taken a college course in DSP, which I haven't). And that the performance between these two is pretty large. As an example, all iPad DAWs run on the same hardware, and some can only record 8 tracks, but Auria can record 40 tracks. I assume that Auria has highly optimized integer DSP code and this makes the difference.
So, I have a Nord Micro Modular with a single Motorola DSP56303, 24-bit, 100 Mhz chip. The STM32 is a 32-bit 72 MHz chip, so I can talk about the Nord and we can keep the two clock rates in mind.
As far as the patches you can create, the actual Nord Modular is amazing. But running these patches on the Micro Modular, the polyphony is quite limited. A lot of patches only give you 1 or 2 voices. An oscillator + a multi-stage envelope uses 11.6% CPU, so you can get 8 voices. If you add a static 12DB filter, you get to 13.4%, so you're down to 7 voices. A good 24DB filter with a modulation input gets you to 18.2%, or only 5 voices.
My takeaway from this is, yes, you can improve the Poly 800 by adding an STM32, but it might be a better idea to add ∗two∗ STM32s.
And going back to the software issue: I think Nord also has highly optimized integer code and they consider it a competitive asset. So that would be two STM32s with some high-performant software.
JD