Tonight I finally got my first prototype filter mocked up for the 8 bit VCO. Okay, technically that's not true, I've made four separate output filters so far. But they've all had problems one way or another.
The first one, a passive filter, was just too rough. Second one was alright but I lost my paper with the component values on it. Easier to just design it all over again.
Third was a too aggressive 3 db ripple Chebyshev Sallen Key filter that ultimately had some strange aggressiveness in the high end when you mixed several VCOs together. I later learned that a Sallen Key filter can stop filtering in the stop band and boomerang back up and start passing more high end, and I suspect this was a contributing factor (could have been the ripple though).
Fourth one (the one I've been living with for the past 6 months) was another passive filter, but even worse than the first. (That's alright because I largely used it to prototype the LFO stuff I was working on.)
The problem I had with the first three designs is I just designed them on paper, implemented them on a PCB, and then lived with whatever happened next. So this time, I resolved to actually prototype something.
Now I have another 6 designs ready for testing. Tonight I finished up the prototype of my first design and... it sounds pretty good! So much better than the garbage I was living with before. It's a 3 stage multiple feedback filter, and I'm trying to decide if I keep prototyping or not.
One design I'm fairly excited about is a five stage filter, but to be honest, eventually I have to put this design into an SMT PCB. And, unfortunately, with the ongoing MLCC shortage, it's going to be a massive pain in the neck to get a decent prototype of an analog filter with 0603 capacitors. I'm going to have to redesign parts of this filter every time I order new caps, because they discontinue these packages so quickly, and they're always coming out with tweaks to the dielectric. So the thought of adding another two capacitors to this filter.... I can feel the annoyance level rising.
(I know that the above paragraph makes me sound like I know what I'm talking about but I've never actually built one of these filters in SMT in real life (yet!). But I have taken a few of my on paper prototypes and attempted to source some parts and the MLCCs are enough to drive a person completely bug nutty.)
All that to say I'm fairly happy with how the filter turned out tonight. My wife came into the room and she thought I was playing an Atari game!
Next steps are to tweak the filter values a bit, and look around for my design notes for the 8-bit VCO to see what was left in terms of software tweaks that it needed.