
Design, simulate, and measure first order filters via Python scripts, online simulators, and breadboard experiments, linking theory to real-world applications and preparing for second order filters and digital signal processing.
Explore first order filters through Python simulations (NumPy, Matplotlib) and online circuit simulators like Circuit Lab and Tinkercad, with optional hands-on hardware.
Explore how filters shape signal flow across audio, communication, and power electronics by using analog and digital types, from first order RC and RL networks to second order designs.
Explore how first order filters shape signals, protect circuits, and enable reliable sensor readings, motor control, and wireless communication in real-world electronics; build toward second order filters for sharper selectivity.
Explore the four fundamental filters—low-pass, high-pass, band-pass, and band-stop—and how first- and second-order circuits realize them to shape signal frequency content, with examples like a subwoofer and mains hum.
Visualize how a simple first order RC low pass filter reduces high-frequency noise by comparing unfiltered and filtered waveforms. Gain intuitive insight into RC components and the cutoff.
Explore first order RC and RL filters that control signal frequencies, using resistors, capacitors, and inductors, and learn about voltage, division, cutoff frequency, and phase shift.
Explore first-order filters, the simplest filters using a single energy storage element with a resistor to shape frequency; learn about time constant, cutoff frequency, and a gentle 20 dB/decade rolloff.
Explore RC low-pass filters where a resistor and capacitor preserve low frequencies and attenuate high ones. Understand the cutoff frequency, -3 dB point, passband, stopband, and the transfer function.
The RC high-pass filter passes high-frequency signals and attenuates low-frequency signals using a series capacitor and a resistor to ground, with a cutoff frequency f_c = 1/(2πRC).
Explore rl low-pass filter behavior as a resistor-inductor divider that passes low frequencies and attenuates high ones, with the cutoff frequency and transfer function guiding the frequency response.
Explore the RL high-pass filter, where a resistor and inductor form a voltage divider that attenuates low frequencies and passes high frequencies, with a cutoff frequency f_c = R/(2πL).
Explore how AC voltage division relies on impedance, with capacitive and inductive reactance shaping magnitude and phase across RC and RL networks as frequency varies.
Define the cutoff frequency as the boundary between passband and stopband, and present RC and RL formulas fc = 1/(2 pi RC) and f_c = R/(2 pi L).
Explore phase shift in first-order RC and RL filters, linking input-output time delay to frequency and reactive components, and visualize how capacitor values tune the phase response.
Examine the step response of first-order filters, showing how an RC low-pass charging capacitor yields an exponential output toward the input, governed by the RC time constant.
Describe the impulse response of first-order filters, especially RC low-pass filters, and how it characterizes output to impulses via exponential decay and its relation to the step response.
Download a pdf glossary with quick definitions for the terms discussed so far in the course, including upcoming terms, and print and keep it handy as a quick reference.
Calculate the magnitude of an rc low-pass transfer function at low, cutoff, and high frequencies using r = 1kΩ and c = 1 μf, and verify with a Python script.
Explore how to compute and verify the magnitude of RC filter responses at low, cutoff, and high frequencies using a Python script that plots the transfer function.
Simulate the RC low-pass filter's time-domain response, analyzing phase shifts and amplitudes at three frequencies to plot input and output waveforms, with Python verification.
Explore the time-domain response of a first-order RC lowpass filter with a Python script, illustrating input-output plots, attenuation, and phase lag across 10 Hz, cutoff, and 100 kHz.
Explore how varying resistor and inductor values in an RL filter affect amplitude and phase, using a Python script to compute output amplitude scaling and phase shift.
Build an rc high pass filter with a capacitor and resistor, observed on an oscilloscope. Measure its frequency response and phase shift near the 796 hz cutoff.
Measure a breadboard first-order filter’s frequency response from 20 Hz to 20 kHz, noting attenuation, phase shift, and the 796 Hz cutoff with spectrum and network analysis tools.
Explore bode plots and phasor analysis to assess first-order filter behavior across wide frequencies, interpreting magnitude, phase, and transfer functions for design confidence.
Explore how a bode plot combines magnitude and phase graphs to show a filter's response across frequencies, using the RC low-pass example to explain cutoff, decade slopes, and decibels.
Construct and interpret bode plots by hand for simple passive filters, including RC low-pass and RL high-pass examples, annotating cutoff and -3 dB points and the magnitude and phase behavior.
Explore phasors and their use in analyzing sinusoidal signals. Represent voltages and currents as rotating vectors in the complex plane to simplify magnitude and phase analysis via transfer functions.
Explore phasor plots for first order RC low-pass and RL high-pass filters, learning to compute transfer functions, plot magnitude and phase across frequencies, and interpret passband to cutoff behavior.
Calculate the resistor for a given capacitor to set a 150 Hz low-pass filter, using the 0.707 magnitude and 45-degree phase, and omega rc equals one.
Calculate the resistor value for a 159 Hz cutoff in a low-pass filter with 1 μF, then verify via circuit lab AC sweep showing magnitude and phase.
Design an RL high-pass filter by computing the inductor from the target cutoff frequency and known resistor, then sketch the magnitude, phase, and phasor plots.
Draws hand-drawn bode magnitude, phase, and phasor plots for an RL high-pass filter with a 3.4 kHz cutoff, marking -3 dB and approximating -20 dB per decade.
Design an rl high-pass filter for a target cutoff using magnitude and phase from a resistor and inductor, with omega = 2 pi f and Python for phasor plots.
Use a script to design an rl high-pass filter for a target cutoff frequency, compute the required inductance L, and display magnitude, phase (bode) plots and a phasor plot.
Explore a simple resistor-capacitor high-pass filter, measure its frequency response from 10 Hz to 100 kHz, and generate a phasor plot and bode plots from csv data with Python.
Explore how first order filters use time constants to shape signals across audio, sensors, debouncing switches, PWM to analog conversion, and power supply ripple reduction.
Observe how a 2 kΩ–100 nF rc low-pass filter responds to a square wave, illustrating the time constant governing the capacitor's charging and discharging.
The time constant of a first order RC or RL filter shapes output waveforms by smoothing or tracking a square wave relative to the signal period.
Explore how the RC filter's time constant shapes signals—from triangle to square waves—through smoothing, delayed edges, and exponential capacitor discharge, using two plots and measurement cursors.
Explore how simple first order RC filters shape audio tone by emphasizing or attenuating low and high frequencies, with practical guidance on cutoff, time constant, and bass and treble control.
Explore first-order RC filtering with a 100 nF capacitor and a 0–10 kΩ potentiometer in a Tinkercad or breadboard setup, hearing attenuation, phase shifts, and sine, square, triangle wave shaping.
Apply first order RC filters to condition sensor signals by removing noise and drift, using low pass and high pass configurations, demonstrated with breadboard and simple Python simulations.
Demonstrates using a passive RC low-pass filter to clean a noisy photoresistor signal from ambient light, with Analog Discovery 3, noise injection, oscilloscope measurements, and a Python low-pass script.
Explore how first order RC filters remove noise from sensor and system signals by using low-pass and high-pass configurations, with cutoff frequencies tuned to the frequency of interest.
Explore how a simple first order high-pass filter removes 50 Hz hum from a noisy Arduino signal, showing wobble reduction and a steady output with breadboard setup and Python simulation.
Use a simple RC low-pass filter to debounce mechanical switches, yielding a single clean transition for microcontrollers. Start with 10 kΩ and 0.1–1 µF to achieve 1–100 ms filtering.
Demonstrates button debouncing on a breadboard with an RC low-pass filter (4.7k, 100 nF), visualized by waveforms, emphasizing trial-and-error tuning and a Python simulation of noisy presses.
Learn how a simple RC low-pass filter smooths PWM signals into a stable DC voltage, preserving duty cycle changes while suppressing switching noise.
Demonstrates smoothing a pwm signal with a first-order rc low-pass filter. Varies duty cycle, offset, and frequency, using a 10 kiloohm resistor and a 47 microfarad capacitor, plus a python simulation.
Learn how first order RC and RL filters smooth power supply ripple and noise after rectification, using capacitors and resistors to produce cleaner, more reliable DC.
Design a first-order high-pass filter for a microphone to block low-frequency rumble below 100 Hz, preserving speech from 100 Hz to 3 kHz, using practical resistor-capacitor values.
Design a simple first order low pass filter to stabilize a thermistor or photoresistor by removing high frequency noise while preserving slow ambient signals.
Explore cascade filters by connecting two or more RC low-pass and high-pass stages to achieve sharper rolloffs, enhanced selectivity, and precise band isolation.
Cascade RC low-pass and high-pass filters to achieve an effective second-order behavior with sharper cutoffs. Visualize with Python scripts and validate through breadboard experiments.
Explore cascading two-stage RC filters, compare simulated and physical frequency responses using Python scripts, Circuit Lab, and breadboard experiments, and analyze magnitude and phase with a bode plot.
Explore how to build a bandpass filter by cascading high-pass and low-pass RC stages, define the passband, and visualize responses with Python for applications in radio, audio, and biomedical sensing.
Explore how a two-stage bandpass filter, with a high-pass stage and a low-pass stage, shapes the frequency response, using Python plots, Circuit Lab simulations, and breadboard experiments.
Design cascaded first-order RC filters while managing loading, attenuation, and bandwidth, using buffers and limited stages with careful cutoff choices and simulations.
Design, build, and test a two-stage cascaded rc bandpass filter to isolate a target frequency band, such as speech 300–3400 Hz, using cutoff calculations, circuit simulation, and refinement.
Learn to simulate and visualize the frequency response of cascaded bandpass filters with a Python script and Plotly, exploring voice communications, subwoofers, fast sensors, and Am radio receivers.
Learn how Python complements electronics education by modeling and visualizing circuits with simple code. Use Python to calculate, simulate, and plot key behaviors of voltage dividers, RC, and RLC filters.
Set up Python, create a dedicated virtual environment, and install numpy and matplotlib to run the course scripts and verify imports.
Learn Python basics for electronics simulations, focusing on script structure, imports (numpy, matplotlib), variables, functions, and plotting; run scripts in a virtual environment and use comments and text editors.
Learn NumPy essentials for electronics: create and manipulate arrays, perform vectorized calculations, generate frequency points with linspace and logspace, and prepare data for plotting with Matplotlib.
Explore how to visualize data with matplotlib, plotting frequency response from numpy arrays, and customize plots with labels, grids, legends, and logarithmic scales for clear scientific visualization of filters.
Learn how to read, run, and safely modify electronics simulation scripts, make one change at a time, keep backups, and use print statements to explore filter frequency responses.
Discover official Python, NumPy, and Matplotlib documentation and books like Automate the boring stuff with Python and Python Data Science Handbook. Join Stack Overflow and NumPy/Matplotlib communities for ongoing help.
Explore algebra as a practical tool for understanding and designing first-order RC and RL filters, solving for voltage, current, and cutoff frequency through transfer functions and algebraic rearrangement.
Master rearranging equations to isolate the target variable using division, multiplication, addition, and subtraction, with examples like solving for c in a = b c.
Explore how ratios and proportions express relationships in first order RC and RL filters, solving for unknowns via cross-multiplication and applying voltage divider and transfer function concepts.
Explore manipulating fractions and complex fractions in first order filter analysis, mastering multiplication, division, addition, and reciprocal rules to simplify transfer functions and interpret circuit behavior.
Learn how powers and roots affect frequencies, resistances, and capacitances in first order filter analysis. Use scientific notation and powers of ten to simplify transfer functions and cutoff frequency calculations.
Explore complex numbers in electronics to analyze circuits with magnitude and phase, using real and imaginary parts, j, impedance concepts, and basic operations, especially for first-order filters.
Explain frequency and angular frequency, with omega = 2 pi f, and show how j omega enables rc transfer functions in the frequency domain.
Updated August 2025: Now with Role Play, and PDF companion!
I have just added interactive Role Play exercises designed to help you apply what you’ve learned in realistic engineering scenarios. In a Role Play, you’ll take on the role of an engineer and engage in structured conversations with a simulated colleague to solve practical design problems. These exercises reinforce your technical understanding and build confidence in real-world decision-making.
You can now download the course companion PDF from Lecture 4 in the Introductory section.
This PDF includes content that relates to the first section of the course, along with a helpful list of terms and definitions commonly used in analog filter analysis and design.
I recommend keeping it handy as you progress through the course.
--
This course introduces the foundational concepts of RC and RL filters, empowering you to understand, design, and analyze these essential circuits. You will explore how these filters control and shape electrical signals through low-pass and high-pass configurations, and learn how to determine critical parameters such as cutoff frequency and phase shift. The course also covers real-world applications of these filters, from audio tone shaping and noise removal to sensor signal conditioning and switch debouncing.
The course structure combines short, focused video lectures, clear explanations, and practical activities that build your knowledge progressively. Throughout, you will engage in simulation-based exercises and breadboard experiments, applying your understanding to real-life situations. Key activities include calculating filter responses at various frequencies, visualizing behavior with Bode plots and phasors, and examining how cascading filters can improve performance.
To support your learning, you will use Python, CircuitLab, and the Analog Discovery 3 for simulations and practical measurements. If you do not have this hardware, you can still follow along with the demonstrations and Python exercises, using online simulators or your own measurement tools. Downloadable resources and exercises ensure you can apply what you learn immediately, gaining practical skills in designing and analysing RC and RL filters.
Who is this course for?
This course is designed for electronics enthusiasts, hobbyists, and students who already have a solid foundation in basic electronics concepts, such as Ohm’s Law, voltage division, and working with simple circuits. If you have completed my Introduction to Electronics course or have equivalent experience, you are well-prepared to dive into RC and RL filters and expand your understanding of how these essential building blocks shape and control electrical signals.
Whether you’re looking to reinforce your skills with practical, hands-on experiments or you want to explore real-world applications like audio shaping, sensor conditioning, and noise filtering, this course will guide you step by step. It is an ideal next step for learners who want to bridge the gap between theory and practice, and build confidence in analysing and designing first-order RC and RL filter circuits.
Hardware & Software
This course uses a combination of simulation, data analysis, and circuit design tools to support your learning and experiments.
Python
Python is used throughout the course for data analysis, visualisation, and calculation of filter responses. If you do not have Python installed, you can download it from the official Python website. The course includes a primer on essential Python skills, and uses the following libraries:
NumPy for numerical calculations and managing arrays.
Matplotlib for creating plots and visualising data
Simulators
The course demonstrates filter behaviour using online circuit simulators that make it easy to build and analyse circuits:
CircuitLab is an intuitive online simulator that allows you to create and analyse circuits, measure filter responses, and experiment with circuit designs.
Tinkercad Circuits is another accessible, web-based tool that lets you build and simulate circuits interactively. It’s ideal for beginners and can be used for exploring basic RC and RL filter behaviour.
WaveForms (for Analog Discovery 3 users)
If you have the Analog Discovery 3 device, you can use the WaveForms software to generate signals, measure filter responses, and capture data. This powerful tool integrates an oscilloscope, waveform generator, spectrum analyser, and other instruments, making it ideal for hands-on experimentation.
The course includes detailed instructions and resources to help you set up and use these software tools, even if you are new to them. If you prefer to work with other simulation tools, you can still follow the principles and adapt the examples to your preferred environment.
Hardware
The practical activities in this course are designed to be accessible and flexible, using commonly available electronic components. Aside from a mini-breadboard, you will need the following:
Resistors
A range of resistor values will be useful for constructing RC and RL filters, typically:
1 kΩ to 100 kΩ for standard filter configurations
Adjustable resistors (potentiometers) can be used for experiments requiring variable resistance.
Capacitor
Common capacitor values include:
100 nF to 10 µF for typical RC filter applications
Ceramic or electrolytic capacitors are both acceptable, depending on the experiment.
Inductors
For RL filter activities, suitable inductors typically range from:
1 mH to 100 mH
Values depend on the desired cutoff frequency and practical considerations in your circuits.
Breadboard and jumper wires
A breadboard and jumper wires will allow you to build and test your circuits without soldering.
Oscilloscope (optional)
An oscilloscope helps to visualise filter responses in the time domain, but if you do not have one, you can follow along with the demonstrations and simulations in the course.
Signal generator (optional)
A standalone signal generator can be a useful tool for testing filter performance with different input waveforms. If you do not have a signal generator, the Analog Discovery 3 or your computer’s audio output (for audio-range signals) can serve as alternatives.
Analog Discovery 3 (optional)
The Analog Discovery 3 is a powerful, all-in-one instrument that can function as a signal generator, oscilloscope, and spectrum analyser. It’s highly recommended for deeper experiments in filter response and real-world circuit behaviour.
If you do not have access to the optional hardware, you can still complete all simulation-based activities and follow along with demonstrations for the hands-on experiments. The course is designed to be accessible and practical, regardless of the hardware you have on hand.