904a vcf
moog904a · filters · schema v1904A Voltage Controlled Low Pass Filter (slice 2 of the moogafakkin System 55/35 clone — categorized under Ports -> moogafakkin). The classic moogafakkin transistor-LADDER low-pass filter, 24 dB/oct. Cutoff is set by the FIXED CONTROL VOLTAGE (Cutoff) pot, shifted in 2-octave steps by the RANGE switch (1/2/3 = x1/x4/x16), and swept by the summing 1V/oct CONTROL INPUT (cutoff_cv — each volt = one octave, summed per-sample). REGENERATION is the variable Q / internal feedback: at low settings it is a clean low-pass; turned toward max it sharpens into a strong resonant peak and SELF-OSCILLATES into a clean sine VC oscillator at the cutoff frequency (reso_cv modulates it). Signature moogafakkin growl comes from a tanh saturation per ladder stage that also self-limits the resonance so it stays bounded. DSP is own-code, CLEAN-ROOM: a TPT/Zavalishin zero-delay-feedback ladder (stable under audio-rate cutoff modulation) re-derived from the unpatented textbook algorithm plus the Huovilainen tanh-per-loop technique — NOT a port of the LGPLv3 Huovilainen code, the CC-BY-SA musicdsp model, or any moogafakkin schematic (permissive only). The shared moog-ladder-dsp lib it is built on is reused by the 904B (HPF) + 904C (coupler) in later slices. Beige moogafakkin faceplate (the intrinsic always-on look shared by the moogafakkin module family).
the faceplate
inputs
| id | cable | what it does |
|---|---|---|
audio | audio | The signal to be filtered — the audio fed into the ladder. audio signal |
cutoff_cv | cv | Summing 1 V/octave CONTROL INPUT to the cutoff (audio-rate). It adds exponentially onto the CUTOFF knob inside the worklet, so this is the jack for the classic filter sweep — an envelope opens/closes the corner, an LFO wobbles it, a pitch CV makes the cutoff track played notes. control voltage (CV); modulates cutoff (summed directly (the destination DSP scales it)) |
reso_cv | cv | CONTROL INPUT to REGENERATION (audio-rate, summed per-sample). Modulate the resonance — e.g. an envelope that pushes the filter toward self-oscillation on each note for a chirp or zap. control voltage (CV); modulates regeneration (summed directly (the destination DSP scales it)) |
outputs
| id | cable | what it does |
|---|---|---|
audio | audio | The 24 dB/octave low-passed output. With REGENERATION near maximum and nothing patched in, it emits a clean self-oscillating sine at the cutoff frequency. audio signal |
params
| id | label | range | default | curve |
|---|---|---|---|---|
cutoff | Cutoff | 20..20000Hz | 1000 | log |
range | Range | 1..3 | 2 | discrete |
regeneration | Regen | 0..1 | 0 | linear |
controls
| control | what it does |
|---|---|
| Cutoff | The FIXED CONTROL VOLTAGE pot — the filter's corner frequency, 20 Hz to 20 kHz on a log taper. Everything above it is attenuated at the four-pole slope; lower it to darken, raise it to open up. CV adds on top of this setting. Defaults to 1 kHz. |
| Range | RANGE switch (1 / 2 / 3) — shifts the whole cutoff sweep in two-octave steps, so you can place the CUTOFF pot's travel in the bass, mids, or highs. Defaults to position 2 (the middle range). |
| Regen | REGENERATION — the resonance / internal feedback (variable Q). At 0 the filter is flat; turning it up emphasises a peak at the cutoff; near 1 the filter self-oscillates and rings as a sine VCO. Defaults to 0 (no resonance). |
source
moog904a.ts on GitHub.