Building a 24 dB filter with 6dB LP filter


#5

I believe this is a pretty complete reference on VA filter design
https://www.native-instruments.com/fileadmin/ni_media/downloads/pdf/VAFilterDesign_1.1.1.pdf


Juno6 emulation
#6

Just digging up this topic for a bit, is there a particular reason there's no 4-pole filter? I am right in thinking that the VCF family of objects is still only 2-pole?
A 24dB slope could be achieved by chaining 2 2-pole filters, but I have a feeling their response to resonance would be different from a true 4-pole object since it effectively represents two separate (internal) feedback paths (output of pole 2 back into pole 1 and output of pole 4 back into pole 3).


#7

I'm prototyping a 4pole filter now, based on source code from Miller Puckette:

"Imitates a Moog resonant filter by Runge-Kutte numerical integration of a differential equation approximately describing the dynamics of the circuit."

Stay tuned - but don't go into self-oscillation yet :slight_smile:


Juno6 emulation
#8

I'll try, but the weather's so hot I fear I might drift. :stuck_out_tongue:


#9

Ok, added a test patch to axoloti-contrib/patches/jt/devel/filter-4pole-test.axp
You can fetch it from version 1.0.10, if you "sync libraries".
It's not a dedicated object yet, not very optimized, consider it a preview. It does self-resonate but only if clip is set to on. Otherwise, the filter explodes at high resonance settings.
It does not drift, no matter how hot the weather is.


#10

Thanks you @johannes.
I just compile the current version of axoloti from source and "sync libraries", but I can't find your patch on the axoloti-contrib repository.
Is there something I did not understand ?


#11

It's in the 1.0.10 branch of the axoloti-contrib repo
https://github.com/axoloti/axoloti-contrib/tree/1.0.10/patches/jt/devel


#12

Ooops sorry for the noise.


#13

I did some tests and it works like a charm ! Thx !


#14

Im sorry but how do i use this filter? If i open the filter-4pole-test.axp as a patch in the axoloti patcher i get tons of errors. Using version 10 of the patcher by the way:)


#15

works for me @the19thbear ...
I assume you did a sync libraries to get the patch? (and also to update the libraries to 1.0.10)

what errors do you get?

@johannes , sounds really nice :slight_smile: ...
bit heavy on cpu (about 20% per filter) ,and for some reason compiler errors if i put it in a subpatch... not really spent to much seeing why (undefined reference to `_cxaguard_acquire'), but rings a bell from before.

anyway, very tasty for mono synths !

one thought, where are we on the opening up the other filters to 24k ?
do you want to do this once the object lifecycle is 'resolved'?
or go with the original suggestion of giving them different names? .... @DrJustice were you still up for doing this ? given the credit for finding and resolving this goes to you.


#16

sorry, but how do i update the library?

This is what comes up when i open axoloti

Axoloti version : 1.0.10-0-gf8ed51d build time : 10/05/2016 19:56:36 UTC
Link to firmware CRC 3DB31696
Status: factory (1.0.10,anon) : OK ( 1.0.10,clean )
Status : home : OK
Status: community (1.0.10,anon) : OK ( 1.0.10,clean )
USB device found
connected
Authentic Axoloti Core
search path : /Users/TRJ/Documents/axoloti/axoloti-factory/objects
Firmware version: 1.0.0.1, crc=0x3DB31696, entrypoint=0x20011000
search path : /Users/TRJ/Documents/axoloti/objects
search path : /Users/TRJ/Documents/axoloti/axoloti-contrib/objects
finished loading objects


#17

file menu -> sync libraries.

also what errors do you get when you open the patch?

@johannes, just seen your v2 patch... something a bit odd... you have 2 connections going to pitch (on both filters)
this shouldn't be allows (and doesn't work ... are you using an unreleased feature :wink:)


Beat Contributions
#18

Working. Thanks alot


#19

yes i also got errors:
java.lang.ClassNotFoundException: is-copy-enabled
loaded the file from directly github,
because when i sync, console says
org.eclipse.jgit.api.errors.WrongRepositoryStateException: Cannot pull into a repository with state: MERGING
org.eclipse.jgit.api.errors.WrongRepositoryStateException: Cannot pull into a repository with state: MERGING

I experienced this 2 cable in one input, since 1.0.9 sometimes, in MAX its a feature.....


#20

I suspect this is because you had outstanding changes when you upgraded...
as it tried to merge the changes from 1.0.10 with changes you had locally, but found conflicts... which would need resolving and committing...

if you know, you don't have any changes you need to keep then you should use
File->Preferences-> Reset All

if you do have changes that you need to keep, then you should copy the files that you need to keep before doing reset all, then you can put the copied files back. (just check they still are opening ok, PM me a copy of the affected files)


#21

I've seen those erros too when trying a string inlet on polyphonic subpatches, and haven't found a quick diagnosis or solution.

Working on a fixed point version, a/b test is the v2 patch, gives a nice 40% reduction in cpu power, BUT it blows up a frequencies higher than 12kHz... I'm investigating...


#22

Well, one solution for doubling the cutoff frequency of vcf3 was given in the Full bandwidth filters -thread (which is now closed).

However, and I wanted to discuss that there, it's not that simple. Turns out that the vcf3 oscillates at ca 6kHz, so not even nyquist/2 but nyquist/4, and nyquist/2 is what my quick fix in that thread offered. Therefore it's no surprise that the doubling was very obvious. I did coax it to go to nyquist, but then the filter blows up - this is of course not supposed to happen with the rbj cookbook filters. I discussed it a little with Johannes, but we didn't really conclude. Johannes says there's plenty of room in the internal FLASH, and there's no problem accommodating several more complete filters, as opposed to the wrapper I initially proposed. So a vcf3 with a doubling of the cutoff can be easily had, but there is a question of the coefficients already being calculated to support very clever scaling, so that such a simple modification brings out a somewhat altered filter response.

I think the matter needs a deeper look-into. BTW, I tried my hand at a 24dB ladder, but it blows up at high resonance - a bit irritating as I've successfully implemented it on other systems (not a fault of Axoloti I hasten to add, it's just me not being done with it yet...). I look forward to see Johannes' implementation.

If Johannes and you decide that new filters are on for 1.0.11 (or in the near future) I might look into things again, although there are people better qualified than me here...


#23

Fixed on github (will be in next release)


#24

Is there any quick fix for objects that show this particular behaviour?