So there are two stereo Virtual Analog filters in Ribbons (4 pole low pass and 4 pole high pass):
The 4 pole low pass matches the linear frequency response of analog 4 pole low pass filters such as the Moog transistor ladder or other Roland 4P LP filters (Jupiter 8, SH series, etc). It was designed using the techniques described by Vadim Zavalishin in The Art of VA Filter Design.
To create the 4 pole high pass filter, I have been using a technique called pole mixing, which is often used to create other types of filters from a 4 pole low pass filter (the Oberheim Matrix 12 was one of the first synthesizers that did this and it’s part of the reason why it’s so cool). So I thought, “Alright, I want a 4 pole high pass… let’s just mix together the right poles and that will give us a 4 pole high pass that is the exact compliment of the 4 pole low pass”. Well, it technically IS a 24 db/octave filter… but it has some resonance issues.
Ideally, we’d like our 4 pole HPF to be the exact mirror of the 4 pole LP4:
But when you use pole mixing, you don’t get the same resonance response from the high pass filter (this is the current state of Ribbons in v0.2 software):
Increasing the resonance can improve the resonant peak but then there is a weird dip above the peak:
How to resolve this? Scratch the pole mixing and design a 4 pole VA HPF from scratch:
Then implement and test it. Shown below are measurements of the current high pass filter (multi-mode) vs the new one. A big improvement.:
This will also arrive in the new v0.3 update (see the Development Blog for more info on what else is in the v0.3 update). Still testing a couple final things but it should be available soon.