A low pass filter allows signals below a specific cutoff frequency to pass while attenuating higher frequencies, whereas a high pass filter does the exact opposite, blocking low frequencies and passing high ones. In a real circuit, these passive RC (resistor-capacitor) networks change the amplitude and phase of an AC signal by acting as a frequency-dependent voltage divider. Beginners commonly confuse the -3dB cutoff frequency with a 'brick-wall' shutoff; they assume a 1kHz low pass filter completely eliminates a 1.05kHz signal, when in reality, a first-order filter only attenuates the cutoff frequency by 3dB (roughly a 30% voltage drop) and rolls off gradually.
The Math Behind the Cutoff (Worked Numeric Example)
The cutoff frequency for both first-order passive filters is determined by the same fundamental equation:
$$f_c = \frac{1}{2\pi RC}$$
Let's design a practical low pass filter for an ESP32 microcontroller. The ESP32's built-in ADC is notoriously noisy, and we are reading a slow-moving DC temperature sensor (like an LM35) that only changes a few millivolts per second. We want to eliminate 60Hz mains hum and high-frequency switching noise from nearby Wi-Fi antennas by setting a cutoff frequency ($f_c$) of 15Hz.
Step 1: Choose the capacitor. For signal filtering, always use a C0G/NP0 ceramic capacitor because it has near-zero voltage coefficient and low dielectric absorption. We select a standard 100nF (0.1µF) C0G capacitor.
Step 2: Calculate the resistor.
$R = \frac{1}{2\pi \times f_c \times C}$
$R = \frac{1}{2\pi \times 15 \times 100 \times 10^{-9}}$
$R \approx 106,103 \Omega$
Step 3: Select a standard component and verify. We choose a standard 1% tolerance resistor of 105kΩ. Recalculating the actual cutoff frequency with this real-world part:
$f_c = \frac{1}{2\pi \times 105,000 \times 100 \times 10^{-9}} = \mathbf{15.15 Hz}$
This 15.15Hz low pass filter will easily pass our slow-moving DC temperature data while heavily attenuating the 60Hz AC noise (which is nearly two decades higher, meaning it will be attenuated by roughly -40dB, or 99% of the noise voltage removed). If we were designing a high pass filter to AC-couple an electret microphone, we would use the exact same math, but swap the physical positions of the resistor and capacitor in the voltage divider.
Where You Meet This in Practice
You rarely build these filters just for the sake of theory; they solve specific, expensive problems in real-world hardware design.
- Microcontroller ADC Conditioning: As shown in the ESP32 example above, low pass filters act as anti-aliasing and noise-rejection shields. Without them, high-frequency RF noise folds back into your DC readings, causing erratic sensor data.
- Audio Crossovers: In a 2-way speaker cabinet, a high pass filter routes high frequencies to the tweeter (preventing low-frequency bass from physically destroying the delicate tweeter dome), while a low pass filter routes bass to the woofer.
- Power Supply Ripple Filtering: A low pass filter on the output of a switching buck converter smooths out the high-frequency PWM switching ripple, leaving behind a clean DC rail for sensitive analog op-amps.
- EMI/RFI Suppression: Ferrite beads combined with small bypass capacitors form low pass filters on USB and HDMI data lines to prevent the cable from acting as an antenna and radiating digital clock harmonics.
Low Pass vs High Pass: Component Placement & Behavior
The physical topology of the circuit dictates its behavior. In a passive RC network, the component connected to ground determines the filter type.
| Characteristic | Low Pass Filter (LPF) | High Pass Filter (HPF) |
|---|---|---|
| Component to Ground | Capacitor | Resistor |
| Series Component | Resistor | Capacitor |
| DC Behavior (0 Hz) | Passes completely (Capacitor is open) | Blocks completely (Capacitor is open) |
| High-Freq Behavior | Blocks (Capacitor shorts to GND) | Passes (Capacitor acts as short) |
| Phase Shift at $f_c$ | -45° (Output lags input) | +45° (Output leads input) |
Think of a capacitor like a compressed sponge in a water pipe: it easily absorbs rapid, tiny pressure pulses (high frequencies) but lets a slow, steady flow (DC or low frequencies) push right past it once saturated. In a low pass filter, that 'sponge' is placed in the drain line (to ground), soaking up the high-frequency noise before it reaches the output.
Common Design Mistakes & Edge Cases
Beyond loading effects, component selection ruins more filter designs than bad math. Here are the edge cases you must account for on the bench:
1. Capacitor Dielectric Absorption and Microphonics
Never use X7R or Y5V ceramic capacitors for precision audio or sensor low pass filters. X7R dielectrics exhibit severe voltage coefficient (capacitance drops as DC bias increases) and piezoelectric microphonics (they generate voltage when physically vibrated). Always specify C0G/NP0 ceramics for values under 1µF, or film capacitors (polypropylene/polyester) for higher values.
2. Equivalent Series Resistance (ESR) Limits
In a high pass filter designed to block DC while passing high-frequency RF, the capacitor's internal ESR creates a hidden low-pass ceiling. At very high frequencies, the capacitor stops looking like a capacitor and starts looking like a resistor. If you need a high pass filter that passes signals into the MHz range, check the capacitor's impedance vs. frequency graph in the datasheet to ensure the ESR doesn't bottleneck your signal.
3. Resistor Noise
If you are designing a low pass filter for a high-gain audio preamp, using standard thick-film resistors will inject thermal and current noise into the signal path. Switch to metal film resistors (which have lower excess noise) and keep the resistance values as low as practically possible to minimize Johnson-Nyquist thermal noise.
Frequently Asked Questions
What happens when you combine a low pass filter and high pass filter in series?
When you cascade a low pass filter and high pass filter, you create a band-pass filter. The high pass filter sets the lower boundary (blocking sub-bass or DC offset), and the low pass filter sets the upper boundary (blocking high-frequency noise). For this to work predictably without the stages interacting, the low pass cutoff frequency must be significantly higher than the high pass cutoff frequency, and the stages should be isolated by an op-amp buffer to prevent impedance loading.
How do you calculate the exact phase shift of a low pass filter and high pass filter at the cutoff frequency?
At the exact -3dB cutoff frequency ($f_c$), both first-order filters introduce a phase shift of exactly 45 degrees. In a low pass filter, the output lags the input by -45°. In a high pass filter, the output leads the input by +45°. As frequency moves further away from the cutoff, the phase shift asymptotically approaches -90° for the LPF and +90° for the HPF. The formula for phase angle ($\phi$) at any frequency is $\phi = \arctan(\frac{X_c}{R})$, adjusted for the specific topology.
Why is my active low pass filter and high pass filter circuit oscillating or distorting?
If you are using an op-amp to build an active filter (like a Sallen-Key topology) and the output is ringing or oscillating, you have a phase margin issue. This usually happens when the op-amp's gain-bandwidth product (GBWP) is too low for the filter's Q-factor and cutoff frequency, or when driving a capacitive load directly from the op-amp output. To fix this, choose an op-amp with a GBWP at least 50 to 100 times higher than your filter's cutoff frequency, and add a small series isolation resistor (e.g., 50Ω) between the op-amp output and any downstream capacitive load.
References and further reading: For deeper mathematical proofs on filter topologies, consult the Electronics Tutorials passive filter guides. For microcontroller-specific ADC anti-aliasing implementation, refer to the Espressif ESP32 ADC API documentation.






