Cytomic CF100 Discrete OTA JH VCF

edit: The product is finished and can be purchased at the VCV Rack Library page. Here is the product info page:

I’ve finished the DSP for my Discrete OTA JH VCF module for VCVRack, which I’ll release as soon as the final graphics are done, hopefully before the end of next week. (edit) It will be USD 15.

It’s a fully discrete version of the classic SSM2040 cascade filter found in the early Prophet 5, and the “JH” in the name is because it’s based off the incredible schematic created by Jürgen Haible, who was a legend in the synth DIY community:

Some of his other incredible projects are here:

I’ve added a few more features, including multiples output responses, and 0dB +6dB and +12dB selectable input and output boost amounts for more flexible gain staging into the filter and into a clipping opamp at the output.

Here are the responses:

  • LP4 = Low Pass 4 pole -24dB/Oct
  • LP2 = Low Pass 2 pole -12dB/Oct
  • BP4 = Band Pass 4 pole -12dB/Oct on each side
  • HP2 = High Pass 2 pole -12dB/Oct
  • NPN2 = Notch Peak Notch filter with a -12dB/Oct notch one octave down, and one octave up from the cutoff frequency

Until the final graphics are delivered and I do a release here are some demo videos of it in action:


Crunchy! That NPN2 model sounded really nice, good stuff!

1 Like

Good choice, looking forward to it.

Here’s the list mail from Jürgen Haible describing his original filter.

Also, If anyone wants to make the circuit from the gif, pay attention to the note on the text page that " (There’a little error in the drawing: the pnp current mirrors have C and E mixed up.)"

Yep, I did notice the pnp current mirrors were flipped :slight_smile:

A couple of new audio demos:


Yeah, that’s a custom shape I designed back when working at FXpansion, it’s the good old trick of summing the different stages of the filter: input+res, lp1, lp2, lp3, and lp4, with the right weights to make different responses. The exact tuning of the notches makes it really musical to the ear, and great to mess the phase / shape of an oscillator when you tune the filter with pitch cv to keep it locked.


You’re the same person who worked on the VCV Wasp filter, thought we’d see more Doepfer stuff coming over, but did they not want to do further modules after seeing what happened with the Wasp for their own reasons despite it being a successful port?

1 Like

Yes I did the Wasp model. Dieter loved the sound of the model, and was very happy with the project. I took a long time to choose which other modules I wanted to model, and Andrew Belt and I are waiting on Doepfer to send some modules over, and they’re busy at the moment running their business. I don’t know how long it will take but it’s all still in progress. That’s part of the reason I thought I’d just start releasing my own modules.


Glad everyone’s happy. Hopefully he sends you an A-105 SSM so you can add the SSM2044 to the 2040 you’ve worked on.


Superb! Another absolute classic filter in Rack from a top-tier DSP’er! Agree with @LarsBjerregaard on the NPN2, that’s a fabulous pole-mixing recipe. Sounds amazing.

Very glad to hear both that the Doepfer project is ongoing and that you’re releasing your own stuff. Excellent news.

1 Like

Excellent. Funny how this follows so soon after the release of the E440 emulation of the same filter chip with several lowpass modes.

Yes, fortuitous! E440 has the Habile design in its DNA (JH’s name is even on the circuit board) but I think that when Paul Schreiber “realized” the design, as he puts it, some things changed/developed. (This is on top of the different output modes, of course). Plus, two DSP engineers are going to end up with two different emulations, no matter what.

When Andy’s version is released, I’m academically eager to A/B the LP2/LP4 outputs. My initial impression from the demo is that they both sound great and will nicely complement each other.

Speaking of, if anybody’s planning to patch these new filters in to a poly configuration, a neat trick (borrowed from hardware Eurorack, where it’s often necessary) is to use two similar filters (this and the E440 would be a perfect example), with settings dialed in to match, and split the voices between them, either randomly/sequentially or by register. This can create some extremely pleasing differentiation/variation while staying within the lines of polyphonic consistency.


Yes! My favorite filter! Instabuy!


2044! Alway my favorite. There are 8 in the Voyetra-8.


I hope some day someone gets hired to do a good Qpas filter in Rack. Wink wink, nudge nudge…


Glad that you pointed out the E440 is based off the JH CEM2040 discrete OTA.

Well, if you’d like to hear the CF100 vs the E440 I did a video (make sure to keep on eye on the cpu usage as well as an ear on the sound, with high cutoff and resonance the E440 uses around 4% cpu, the CF100 uses under 2%):

And here is a demo of creating voices using my Unison mod for the VCV Rack internal MIDI to CV module, where you can easily vary the parameters of unison voices to create stereo and effects:


Thanks for posting this link. RIP the great Jürgen Haible. I would have loved to meet him in person before he passed. I really appreciate his contribution to synthesis, and I hope to be able to contribute in my own DSP kinda way by publishing my own technical papers on useful subjects for others to use as references, like I’ve used his circuit examples.


I know at one point a Cytomic modular was discussed, but I hope that’s heading more in the direction of a bunch of Cytomic VCV modules. Seems like a much easier, more open proposition.

Also, don’t be shy about throwing this new filter in a Drop update. :slight_smile:

1 Like

Ooooh, nice comparison! To my ear it’s as I hoped–they both sound great and they’re also differentiated enough that they’ll both have their uses. On a quick listen I get a lovely open woody sound from the CF100 and a good chunk of gnarl and bass heft from the E440. [EDIT: there’s also some stuff going on in the E440 high end at high resonance–timestamp around 3:20 onward–that @jatinchowdhury18 may want to listen to. Was this recorded using the 2.0.2 patch from June 22nd?]

Lower CPU is a nice perk regardless, of course, especially in the stacked application that you so wonderfully demonstrate via your Unison mod. (Is that for your personal use only or have you open-sourced it somewhere? It’s great!)

Frankly, at this price point, I think the question for anyone who can afford audio software is simply which one to get first. Rack is an absolute cornucopia at this point, both in terms of the free side and the paid module side. I continue to fail to understand why releases like the SynTech pack, the (upcoming) CF100 and maybe two dozen others just this year aren’t front-page news on music production sites, reviewed in the print version of Sound on Sound, discussed for 15 minutes on the very next Sonic Talk, etc.

It makes me want to take a day off from music AND day job and write a bunch of emails to industry press people trying to explain what’s going on over here.

And yes, all respect to Jürgen Haible; an extraordinary person and a worthy example. Such amazing generosity of knowledge and ability at such a crucial moment in synthesis. He may not have the name recognition of Moog or Buchla or even Gillet or Doepfer but those who know, know.

I absolutely love this, by the way :slight_smile:


my theory: because vcv and the module devs don’t advertise in those magazines.

SOS is of course one of the better magazines. A few year ago I sent them a letter saying I had been a subscriber for over 20 years, but since they don’t cover VCV at all I was going to cancel my subscription.