Building a Synthesizer, 12

Breadboarding the VCF

Posted on September 9, 2025

Nearly all synthesizers have a filter of some kind. There are many different filter designs. Even a phrase like “the Moog ladder filter” can mean many different actual circuits. Differing filter designs can have as much to do with the character of how a synth sounds as different oscillator shapes.

A VCF stands for a “Voltage Controlled Filter,” which is similar to a regular equalizer filter except that it can be voltage controlled, which means that we can use an Envelope Generator or a Low Frequency Oscillator to vary the parameters of the filter (such as cutoff or resonance) as a note plays.

Moritz Klein’s goal when designing the mki x es.EDU VCF was to make a “classic sounding” filter with a very simple design. And when you think about how simple a low-pass filter can be – just a resistor and a capacitor, this feels like it should be possible.

Breadboarding the Filter

One really minor difficulty I had when breadboarding these was figuring out which component was which, e.g., which jack was “input” and which was “output.” Here’s the schematic, which is clear enough:

A schematic, from the manual, for the first order passive filter. There are no units on the resistor or capacitor.
Schematic

However, the breadboard layout is quite a bit less clear, and the jacks are for whatever reason never labeled in the manual. Quick, which jack is input?

A drawing, from the manual, of the breadboard layout of the first order passive filter
Breadboard Layout

(It’s the one on the right.)

This becomes considerably harder when we start using seven op amps split across two different ICs!

Passive Filter

Anyway, here’s the square wave I used as the input to the filter for my testing. You’ll soon see why I need to show this by itself first.

A trace of a square wave on the oscilloscope
#NoFilter, Just a Square Wave

First we build a passive, first order filter using just a resistor and a capacitor. This does an OK job at filtering the output, but note that it also distorts the input signal as well, because the resistor and capacitor add impedance to the input side of the circuit, since there is no isolation between the filter and the input:

The square wave, as a purple trace, and the output of a single order passive filter, as a yellow trace. This distorts the input as well as reshaping theo output.
First Order Passive Filter 500 Hz Signal Input

The purple trace above is the input square wave (distorted due to the passive circuit here), and the output of the filter is the yellow trace.

The filter doesn’t just reshape the wave; it also reduces the output at higher input frequencies. Above I’m using a 500 Hz input; here’s with a 2 kHz input.

The same filter at 2 kHz. The output of the filter is much lower in volume than at 500 Hz
First Order Passive Filter 2000 Hz Signal Input

Second Order Passive Filter

Then we add a second resistor and capacitor to make a second order filter. The output is much more like a sine wave with the second order filter. However, the input is even more distorted.

A second order filter, which both turns the output into a smooth sine wave and also distorts the input into a more curved shape
Second Order Passive Filter

Active Filter

Next we build the active filter. Here’s the schematic:

A schematic for the second order active filter which has no units on the capacitors and units on only one of the three resistors
Active Filter Schematic

When I first build this filter, it didn’t work. I got no output at all. After some tracing, I finally noticed that we were supposed to replace the 1 µ capacitors from the passive filter with 1 n capacitors for the active filter. Unlike the real capacitors, which are visually very distinct, the “1 µ” and “1 n” are just very similar looking white blocks in the breadboard drawings, and the schematic immediately above omits their values altogether!

Anyway, with that sorted, I then had a respectable looking low-pass filter:

An oscilloscope trace from the active filter. The input is a square wave reprepresented in purple. The output is the yellow trace and is filtered, a bit, by the low pass filter
Active Filter Input and Output

Adding Resonance

Next we make the filter resonant. We do this by feeding the output of the filter back into the first capacitor, replacing its connection to ground with the filter’s output.

Oscilloscope trace of resonant filter output. The yellow trace mostly hides the purple trace, except at the leading edge of the square wave where the output has a resonant overshoot
Resonant Filter

In the instructions and in his videos, Moritz notes that this “is basically just the filter itself swinging at its set cutoff frequency in addition and reaction to the oscillation it’s supposed to be filtering.” That’s correct, but it’s only part of the story. In addition to the filter “overreact[ing] to any sudden change in voltage at its input,” the filter also introduces a delay in the signal as it passes through the filter and then gets partially routed back into the input of the filter. The portion of the output which is fed back into the filter circuit is out of phase with the input. Both the delay/phasing and the amplification are responsible for the characteristic sound of the resonance.

Oscilloscope trace showing the output at a lower level than the input, and the corners of the trace rounded off due to the low pass filter
Adjustable Resonant Filter, Set to No Resonance
Oscilloscope trace showing the output with the resonance level set to a higher level, causing an overshoot at the leading edge of the square wave
Adjustable Resonant Filter, with Resonance

Adding the Diode Ladder

We want to make the filter adjustable using control voltage. The first step is to make it adjustable at all. This kit solves that problem using diodes as “voltage controlled resistors.” I won’t bother explaining the theory here as that is very well covered in the manual, which I encourage you to read if this project is at all interesting to you. The manuals for the mki x es.EDU DIY kits are (really) great reading.

A photo of the breadboarded VCF circuit
Filter with Diode Ladder At Upper Left

Adding the Output Stage

In the images which follow, the input square wave is in yellow, the top and bottom of the diode ladder are in purple and green, and the output is in cyan.

Some things to note here. First, the scaling is a bit deceptive. The input signal is much hotter than the rest of the traces (note its vertical scaling is 2V/div).

The output signal varies quite a bit in amplitude depending on where the filter cutoff is set, which isn’t ideal. We will fix that in the next section.

There’s a low-frequency noise, probably 60 Hz, in the output. I blame this on the noisy breadboard and low output level.

An oscilloscope trace showing an output with a fairly square wave signal, like the input
High Cutoff
An oscilloscope trace showing an output with a somwhat rounded signal
Middle Cutoff
An oscilloscope trace showing an output with an output which looks fairly close to a sine wave
Low Cutoff

This build took me quite a while to debug. At first I found that a couple of wires were in the wrong breadboard sockets, and then after a considerable amount of troubleshooting I found a couple of resistor leads which contacted each other due to “leaning” on the breadboard. Which is, frankly, an easy mistake to make:

A photo of the breadboarded VCF circuit with output stage
VCF with Output Stage

Still, this gave me ample opportunity to put my ideas about debugging circuits into practice!

Adding CV Processing and Output Scaling

One part of breadboarding the mki x es.EDU kits which has repeatedly caused confusion for me is, when going from one step to the next in the instructions, figuring out which parts are not needed in the next step and should be removed vs. which parts need to remain.

I think this example will show you what I mean. These two steps follow each other sequentially in the manual.

A hand-drawn picture of a breadboard with many components on it
“CV Processing” Step
Another hand-drawn picture of the same breadboard, with even more components on it, and a few removed
“Resonance II” Step

Quick, which components should I remove to go from the first to the second? Which components need to be added? No matter how carefully I work I still make mistakes. It’s another opportunity to test my debugging skills.

Anyway, after a lot of assembly and debugging, the output is much cleaner. Note that the cyan trace here (the filter’s output) has been switched to 500 mV/div, which is the same vertical resolution as the purple and green traces (which are the top and bottom of the diode ladder), and 10* less magnification than the 50 mv/div vertical resolution of the cyan trace (output, again) of the previous section.

An oscilloscope trace showing an output with a fairly square wave signal, like the input
High Cutoff
An oscilloscope trace showing an output with with a somwhat rounded signal
Low Cutoff

I like this because you can really clearly see how the green and purple traces get further away from each other as the filter’s cutoff gets higher and higher. This “drags the input voltage” (into either end of the diode ladder) into a different part of the diodes’ nonlinear range, making it a variable resistor, which is what we wanted.

Resonance II

The big problem that I had getting the resonance working is that I mistakenly used the Schottky diodes supplied with the kit for the power supply in place of the 1N4148 diodes that I was meant to use. The breadboard instructions just say “diode,” although they are not interchangeable! Anyway, with the correct diodes in place I can now affect the resonance a bit, although at this point every time I touched anything I would knock off the input, one of my four oscilliscope probes, a random electronic component, etc. I didn’t want to spend a lot of effort adjusting the trimpot, which is fiddly enough without all of these other cables to bump into. Still, I can see the effect of the resonance on the leading edge of the square wave here, even if it is a bit subtle:

An oscilloscope trace which shows the output wave with the resonance knob set high, showing a small spike at the head of the wave
High Resonance
An oscilloscope trace which shows the output wave with the resonance knob set low, showing a smooth round edge at the heaed of the wave
Low Resonance

Anyway, now we are finished with the breadboarding!

The completed breadboard
All Finished!

The breadboard is by now getting quite crowded. I think this kit might be better built across two breadboards.

This post is getting fairly long, so I think I will save the PC board build for next time!

Resources

Instructions

Product Pages

Community

Simulations

All of these simulations are by Moritz Klein

Videos

The folling series of videos are iterations on the design of what is ultimately a slightly different VCF built by Moritz Klein. I do think they are useful, though:

Tags: , ,