A Sallen-Key low pass filter is a second-order active RC circuit that uses an operational amplifier to attenuate high-frequency signals at a rate of -40dB per decade without requiring inductors. In practical circuit design, it changes the game by replacing bulky, lossy, and expensive passive LC filters with cheap, compact RC components while simultaneously providing high input impedance and low output impedance buffering. Beginners commonly confuse it with the Multiple Feedback (MFB) topology—which inverts the signal and is highly sensitive to op-amp gain-bandwidth limits—or mistakenly assume it is just a cascaded pair of first-order RC filters, which only yields a sluggish -20dB/decade roll-off and poor transient response.

The Anatomy of a Unity-Gain Sallen-Key Topology

To understand why this topology dominates bench prototypes and production PCBs, you have to look at the feedback loop. A standard unity-gain Sallen and Key low pass filter consists of two resistors ($R_1$, $R_2$), two capacitors ($C_1$, $C_2$), and an op-amp configured as a voltage follower.

  • The Forward Path: The signal passes through $R_1$ and $R_2$ into the non-inverting input of the op-amp.
  • The Ground Reference: $C_2$ ties the op-amp's non-inverting input to ground, forming the primary low-pass pole.
  • The Q-Boost (Positive Feedback): $C_1$ connects from the node between $R_1$ and $R_2$ back to the op-amp's output. This is the magic of the Sallen-Key design. By feeding a portion of the output signal back into the intermediate RC node, the circuit artificially boosts the Quality Factor (Q) near the cutoff frequency, achieving a sharp Butterworth, Bessel, or Chebyshev response without the phase inversion of MFB filters.

Because the op-amp operates in a unity-gain configuration (output tied directly to the inverting input), the circuit's stability is largely independent of the op-amp's closed-loop gain drift, making it incredibly forgiving for hobbyists and production environments alike.

Worked Numeric Example: Designing a 1kHz Butterworth Filter

Let's design a filter with a cutoff frequency ($f_c$) of 1kHz and a Butterworth response (maximally flat passband), which requires a Quality Factor of Q = 0.707. We will use the simplified unity-gain design equations where $R_1 = R_2 = R$.

Design Equations for Unity-Gain Sallen-Key:
$C_1 = \frac{Q}{\pi \cdot f_c \cdot R}$
$C_2 = \frac{1}{4 \cdot \pi \cdot Q \cdot f_c \cdot R}$
  1. Choose a standard resistor value: Let's set $R = 10k\Omega$ to keep impedance low enough to minimize Johnson-Nyquist thermal noise, but high enough to avoid overloading the op-amp output.
  2. Calculate $C_1$: $C_1 = \frac{0.707}{\pi \cdot 1000 \cdot 10000} = 22.5nF$.
  3. Calculate $C_2$: $C_2 = \frac{1}{4 \cdot \pi \cdot 0.707 \cdot 1000 \cdot 10000} = 11.25nF$.
  4. Select real-world components: Standard capacitor values are 10nF and 22nF. Let's lock in $C_2 = 10nF$ and $C_1 = 22nF$ (maintaining the required 1:2.2 ratio, which is close enough to the theoretical 1:2 for a Butterworth curve).
  5. Recalculate $R$ for exact tuning: Using $C_2 = 10nF$, we solve for $R$: $R = \frac{1}{4 \cdot \pi \cdot 0.707 \cdot 1000 \cdot 10 \times 10^{-9}} = 11.25k\Omega$.

The Bench Solution: Use an 11.3kΩ 1% metal film resistor for both $R_1$ and $R_2$. Pair them with 10nF and 22nF C0G/NP0 ceramic capacitors. This yields a precise 1kHz cutoff with a Q of 0.701, virtually indistinguishable from the ideal 0.707 on a Bode plot.

Where You Meet This in Practice

You will rarely see a Sallen-Key filter in high-voltage power electronics, but it is ubiquitous in signal conditioning. You will encounter it in:

  • Audio DAC Reconstruction: Smoothing the staircase output of an R-2R ladder or I2S DAC to remove high-frequency sampling aliases.
  • ADC Anti-Aliasing: Placed directly in front of a microcontroller's SAR ADC to hard-clip frequencies above the Nyquist limit, preventing phantom signals from corrupting your FFT data.
  • Load Cell Amplification: Stripping 60Hz mains hum and high-frequency EMI from strain gauge bridge outputs before the signal hits a 24-bit HX711 or ADS1232.

For complex multi-stage designs, engineers frequently use the Analog Devices Filter Wizard to cascade multiple Sallen-Key stages, staggering the Q-values to achieve 4th-order or 8th-order Linkwitz-Riley alignments.

Bench Scenario: ESP32 PWM Audio Filtering Gone Wrong

Theory is clean; the workbench is not. Here is a real-world scenario demonstrating how a mathematically correct Sallen and Key low pass filter can fail if you ignore op-amp limitations.

The Setup: An ESP32 generating 8-bit audio via PWM at a 40kHz carrier frequency. The goal was to strip the 40kHz switching noise while passing the 20Hz–20kHz audio band. I designed a Sallen-Key filter with $f_c = 22kHz$, using 10kΩ resistors and standard ceramic capacitors. For the op-amp, I grabbed a generic LM358 from the parts bin, powering it from the ESP32's 3.3V rail.

The Numbers: $R_1=R_2=10k\Omega$, $C_1=1.5nF$, $C_2=680pF$. The math checked out for a 22kHz cutoff.

The Outcome: The audio sounded incredibly "muddy" and distorted. Bass notes were entirely missing, and a harsh buzzing accompanied high-hat cymbals. Hooking up the oscilloscope revealed severe flat-topping on low-frequency waveforms and strange high-frequency intermodulation ringing.

What Went Wrong?
The LM358 is a legacy part with two fatal flaws for this application:
  1. Output Swing: The LM358 is not rail-to-rail output. On a 3.3V supply, its maximum output swing is roughly $V_{CC} - 1.5V$, meaning it clipped hard at ~1.8V, destroying the bass dynamics.
  2. Slew Rate & Crossover Distortion: With a dismal 0.5V/µs slew rate and class-B output stage crossover distortion, the LM358 couldn't cleanly handle the residual 40kHz PWM harmonics, generating intermodulation distortion that folded back into the audible band.

The Fix: I swapped the LM358 for an OPA365 (or the budget-friendly MCP6002). The OPA365 features rail-to-rail I/O, a 50MHz gain-bandwidth product, and a 25V/µs slew rate. The clipping vanished, the noise floor dropped by 14dB, and the audio became crisp. Always check the op-amp's output voltage swing specifications against your single-supply rail limits.

Component Selection: The Capacitor Dielectric Trap

When sourcing $C_1$ and $C_2$, the dielectric material matters just as much as the capacitance value. If you use standard X7R or Y5V multilayer ceramic capacitors (MLCCs) in the feedback path of a Sallen-Key filter, you will introduce severe non-linear distortion.

X7R capacitors exhibit a massive voltage coefficient—a 10µF X7R cap might drop to 2µF when biased at just 10V DC. Furthermore, they suffer from dielectric absorption (DA) and microphonics, acting like tiny piezoelectric microphones that inject mechanical vibration noise into your signal path. For any Sallen-Key filter handling audio or precision DC signals, you must use C0G/NP0 ceramics or WIMA polyester film capacitors (like the MKS2 or MKP10 series). They cost a few cents more but guarantee linear capacitance regardless of applied voltage or temperature.

FAQ: Sallen-Key Filter Troubleshooting

Why is my filter oscillating or ringing on the oscilloscope?

This usually happens for two reasons. First, your op-amp's Gain-Bandwidth Product (GBW) is too low. As a rule of thumb, the op-amp's GBW must be at least 100 times the filter's cutoff frequency multiplied by the Q-factor. Second, you may have a highly capacitive load (like a long coaxial cable) connected directly to the op-amp output, destroying the phase margin. Add a 47Ω series isolation resistor between the op-amp output and the load.

Can I just cascade two identical Sallen-Key stages for a 4th-order filter?

No. If you cascade two identical 2nd-order Butterworth stages, the combined Q-peaking will create a massive gain bump at the cutoff frequency, resulting in a Chebyshev-like response with severe passband ripple. To build a 4th-order Butterworth filter, you must stagger the component values. Stage 1 should be tuned to a Q of 0.541, and Stage 2 to a Q of 1.307. Consult the Texas Instruments SLOA049 application report for exact staggered coefficient tables.

Does the Sallen-Key topology work for high-pass filtering?

Yes, you simply swap the positions of the resistors and capacitors. However, high-pass Sallen-Key filters are much more sensitive to op-amp slew-rate limiting and high-frequency noise pickup. For high-pass applications above 10kHz, the Multiple Feedback (MFB) topology is often preferred due to its superior high-frequency rejection and lower sensitivity to op-amp open-loop gain variations.