Simple but Effective Spectrum Averaging
In this article, I provide a Matlab function that performs exponential PSD averaging, using first-order infinite impulse response (IIR) filtering to continuously average the PSD bins. This approach works well for computing the spectrum of a long-duration signal over time, because the spectrum is constantly updated as new PSD’s are computed. Conveniently, the time constant of the PSD averaging is determined by the single adjustable parameter α. I also provide a Matlab function for conventional (unweighted) PSD averaging. Neither function requires any canned code other than the Fast Fourier Transform (FFT), although I do use the Matlab hann window function for convenience.
The First-Order IIR Filter -- More than Meets the Eye
While we might be inclined to disdain the simple first-order infinite impulse response (IIR) filter, it is not so simple that we can’t learn something from it. Studying it can teach DSP math skills, and it is a very useful filter in its own right. In this article, we’ll examine the time response of the filter, compare the first-order IIR filter to the FIR moving average filter, use it to smooth a noisy signal, compute the functional form of the impulse response, and find the frequency response.
The Beginning of a New Chapter
After years of hesitation, Stephane Boucher and Jacob Beningo finally turned their virtual events into an in-person reality with the inaugural Signal Processing Summit and Embedded Systems Summit at the Sonesta Silicon Valley. The post captures the logistics, a last-minute travel scare during a US government shutdown, the joy of meeting speakers like Fred Harris, and practical lessons for future technical events. It closes by inviting community feedback and venue suggestions.
RF in Slow Motion: Sonifying a Wi-Fi 7 Packet
What would a 160 MHz OFDM waveform up in the 5 GHz U-NII band sound like if scaled to audio frequencies to keep the same wavelength (acoustic vs RF)?
FIR Filter to Match Any Magnitude and Phase Response
This post details a technique for designing high quality FIR filters that match arbitrary magnitude and phase responses.
Signal Processing Summit - Cancellation Policy
The post announces a flexible cancellation policy for the inaugural Signal Processing Summit, an intimate DSP event limited to 70 seats and scheduled in Silicon Valley this October. It explains refundable options designed to give attendees confidence when registering early: a full refund minus a $95 processing fee for cancellations before the end of September, a 50% refund for cancellations in October before October 6, and no refunds after that date. The policy is positioned to help prospective attendees lock in the Early Bird rate, secure discounted hotel accommodations, and plan travel with reduced risk. The announcement frames the policy as a way to remove barriers to commitment and encourages readers who have been undecided to register now and attend the Summit.
The Signal Processing Summit 2025 - Registrations Now Open!
Stephane Boucher announces that registration is open for the inaugural Signal Processing Summit, October 14-16, 2025 at the Sonesta Silicon Valley. This three-day, engineer-focused event promises practical insights from leading DSP experts and tight networking in an intimate 70-seat setting. Register early to save $200 with the Early Bird rate and lock in a discounted Sonesta room before the block fills.
Call for Speakers for the Inaugural Signal Processing Summit
Announcing the Call for Speakers for the inaugural Signal Processing Summit, happening October 14-16, 2025 in Silicon Valley. If you have practical, real-world DSP experience, including communications, audio, AI/ML, or core techniques, organizers want talks that are actionable and engineer-focused. Four tracks plus an open call for radar, imaging, biomedical, and sensor-system applications are listed; submit proposals by August 8, 2025.
SAVE THE DATE – DSPRelated’s First Ever In-Person Conference!
After 25 years running DSPRelated and co-organizing the DSP Online Conference, the author announces DSPRelated’s first in-person conference. The event is scheduled in Silicon Valley for October 14–16, 2025 and is organized by engineers for engineers, emphasizing empowering, practical, hands-on sessions designed to leave attendees energized and inspired. Several familiar speakers from the online events — including fred harris, Dan Boschen, and Hilmar Lehnert — have already shown strong interest in presenting. Attendance will be limited by venue capacity, so readers are encouraged to mark their calendars and coordinate with employers to secure travel and passes while awaiting forthcoming registration and program details.
A Matlab Function for FIR Half-Band Filter Design
FIR Half-band filters are not difficult to design. In an earlier post [1], I showed how to design them using the window method. Here, I provide a short Matlab function halfband_synth that uses the Parks-McClellan algorithm (Matlab function firpm [2]) to synthesize half-band filters. Compared to the window method, this method uses fewer taps to achieve a given performance.
Simplest Calculation of Half-band Filter Coefficients
Half-band FIR filters put the cutoff at one-quarter of the sampling rate, and nearly half their coefficients are exactly zero, which makes them highly efficient for decimation-by-2 and interpolation-by-2. This post shows the straightforward window-method derivation of half-band coefficients from the ideal sinc impulse response, providing a clear, hands-on explanation for engineers learning filter design. It also points to equiripple options such as Matlab's firhalfband and a later Parks-McClellan implementation.
A Beginner's Guide To Cascaded Integrator-Comb (CIC) Filters
Rick Lyons breaks down cascaded integrator-comb filters into clear, practical terms, showing why they are the efficient choice for high-rate decimation and interpolation in hardware. The post explains CIC structure, its sinc-like frequency response, multistage tradeoffs, register-bit-width rules, and simple FIR compensation tricks. Hands-on tips and references make it easy for engineers to design and implement robust CIC-based decimators and interpolators.
Optimizing the Half-band Filters in Multistage Decimation and Interpolation
Multistage decimation and interpolation by powers of two get a lot cheaper if you size each half-band filter differently. Rick Lyons walks through spectra for three-stage examples that show why early stages can use narrower filters for decimation while interpolation reverses the order, and how aliasing and images are handled by later stages. Learn a simple rule to cut multipliers without sacrificing performance.
The First-Order IIR Filter -- More than Meets the Eye
While we might be inclined to disdain the simple first-order infinite impulse response (IIR) filter, it is not so simple that we can’t learn something from it. Studying it can teach DSP math skills, and it is a very useful filter in its own right. In this article, we’ll examine the time response of the filter, compare the first-order IIR filter to the FIR moving average filter, use it to smooth a noisy signal, compute the functional form of the impulse response, and find the frequency response.
A Matlab Function for FIR Half-Band Filter Design
FIR Half-band filters are not difficult to design. In an earlier post [1], I showed how to design them using the window method. Here, I provide a short Matlab function halfband_synth that uses the Parks-McClellan algorithm (Matlab function firpm [2]) to synthesize half-band filters. Compared to the window method, this method uses fewer taps to achieve a given performance.
A Quadrature Signals Tutorial: Complex, But Not Complicated
Quadrature signals are essential in modern communications, yet complex numbers and the j operator intimidate many engineers. In this tutorial Rick Lyons uses phasor geometry, three-dimensional time and frequency plots, and practical I/Q sampling examples to demystify complex exponentials, negative frequency, and how to generate baseband complex signals. Read to get physical intuition and hands-on rules you can apply to modulation, demodulation, and DSP implementations.
Understanding and Preventing Overflow (I Had Too Much to Add Last Night)
Integer overflow is stealthier than you think, and in embedded systems it can break control loops or corrupt data. Jason Sachs walks through the usual culprits, including addition, subtraction, multiplication, shifting and Q15 fixed-point traps, plus C-specific pitfalls such as undefined signed overflow and INT_MIN edge cases. He then lays out practical defenses: prefer fixed-width types, widen and saturate intermediates, enable wraparound where appropriate, and reason about modular congruence for compound arithmetic.
Minimum Shift Keying (MSK) - A Tutorial
How does MSK achieve both excellent spectral efficiency and a constant-envelope signal suitable for nonlinear amplifiers? This tutorial builds MSK step‑by‑step from binary FSK, shows the minimum frequency spacing and continuous‑phase construction, and then recasts MSK as an OQPSK (pseudo‑symbol) representation. It finishes by generalizing MSK into CP‑FSK and the wider CPM family so you can connect practical pulse shapes and modulation indices to performance.
Already 3000+ Attendees Registered for the Upcoming Embedded Online Conference
More than 3,000 engineers have already signed up for the Embedded Online Conference, and free registration closes at the end of February. Stephane Boucher highlights four practical tracks—DSP and machine learning, FPGA, embedded systems programming, and embedded systems security—and notes that every talk will be available to stream on demand from May 20. If you prefer no-travel learning or want flexible access to world-class talks, register now.
A Fixed-Point Introduction by Example
Christopher Felton walks through binary fixed-point representation with clear examples and a simple W=(wl,iwl,fwl) notation. He argues for designing to range and resolution rather than bit counts, then shows how multiplication and addition affect bit growth and alignment. These concrete examples make it easy to see why rounding, resizing, and radix-point bookkeeping are essential in DSP implementations.
A Quadrature Signals Tutorial: Complex, But Not Complicated
Quadrature signals are essential in modern communications, yet complex numbers and the j operator intimidate many engineers. In this tutorial Rick Lyons uses phasor geometry, three-dimensional time and frequency plots, and practical I/Q sampling examples to demystify complex exponentials, negative frequency, and how to generate baseband complex signals. Read to get physical intuition and hands-on rules you can apply to modulation, demodulation, and DSP implementations.
A Fixed-Point Introduction by Example
Christopher Felton walks through binary fixed-point representation with clear examples and a simple W=(wl,iwl,fwl) notation. He argues for designing to range and resolution rather than bit counts, then shows how multiplication and addition affect bit growth and alignment. These concrete examples make it easy to see why rounding, resizing, and radix-point bookkeeping are essential in DSP implementations.
A Beginner's Guide To Cascaded Integrator-Comb (CIC) Filters
Rick Lyons breaks down cascaded integrator-comb filters into clear, practical terms, showing why they are the efficient choice for high-rate decimation and interpolation in hardware. The post explains CIC structure, its sinc-like frequency response, multistage tradeoffs, register-bit-width rules, and simple FIR compensation tricks. Hands-on tips and references make it easy for engineers to design and implement robust CIC-based decimators and interpolators.
Understanding and Preventing Overflow (I Had Too Much to Add Last Night)
Integer overflow is stealthier than you think, and in embedded systems it can break control loops or corrupt data. Jason Sachs walks through the usual culprits, including addition, subtraction, multiplication, shifting and Q15 fixed-point traps, plus C-specific pitfalls such as undefined signed overflow and INT_MIN edge cases. He then lays out practical defenses: prefer fixed-width types, widen and saturate intermediates, enable wraparound where appropriate, and reason about modular congruence for compound arithmetic.
Sum of Two Equal-Frequency Sinusoids
Rick Lyons exposes a frequent trig mistake and delivers complete closed-form expressions for collapsing two equal-frequency sinusoids into a single sinusoid. Using complex-exponential phasor addition and equating real and imaginary parts, he compiles easy-to-use tables for cosine+cosine, sine+sine, and cosine+sine cases and shows how to derive each form. Engineers get corrected identities and compact derivations useful for analysis and communications.
Minimum Shift Keying (MSK) - A Tutorial
How does MSK achieve both excellent spectral efficiency and a constant-envelope signal suitable for nonlinear amplifiers? This tutorial builds MSK step‑by‑step from binary FSK, shows the minimum frequency spacing and continuous‑phase construction, and then recasts MSK as an OQPSK (pseudo‑symbol) representation. It finishes by generalizing MSK into CP‑FSK and the wider CPM family so you can connect practical pulse shapes and modulation indices to performance.
Adventures in Signal Processing with Python
Jason Sachs shows how PyLab (numpy, scipy, matplotlib) can handle many signal-processing and visualization tasks engineers usually reach for MATLAB to do. He walks through practical examples including PWM ripple, two pole RC filters, and symbolic math with SymPy, and shares real-world installation tips and trade-offs. The post closes with pointers to IPython and pandas to speed interactive analysis and data handling.
Ten Little Algorithms, Part 2: The Single-Pole Low-Pass Filter
Jason Sachs shows how a single-pole IIR low-pass filter, implementable in one line y += alpha * (x - y), tames noise in embedded signals without floating point. The post explains how to compute alpha from tau and delta-t, practical tradeoffs like phase lag and oversampling, and fixed-point pitfalls including how many extra state bits you need to avoid quantization. Short, practical, and code-ready.
Understanding the 'Phasing Method' of Single Sideband Demodulation
Rick Lyons explains how the phasing method separates overlapping single sideband transmissions using quadrature processing and the Hilbert transform, making SSB demodulation practical in crowded RF environments. After reviewing simple synchronous detection, he walks through spectra and block diagrams that show how complex downconversion produces i and q paths which reinforce the desired sideband and cancel the other. The post also covers DSP implementation tips and BFO error effects.
Digital Envelope Detection: The Good, the Bad, and the Ugly
Envelope detection sounds simple, but implementation choices change everything. Rick Lyons gathers common digital detectors, including half-wave, full-wave, square-law, Hilbert-based complex, and synchronous coherent designs, and explains how harmonics, filtering, and carrier recovery change results. He ranks detectors by output SNR from a representative simulation and offers practical tips on filter cutoff, Hilbert transformer bandwidth, and when a simple detector is good enough.
The Beginning of a New Chapter
After years of hesitation, Stephane Boucher and Jacob Beningo finally turned their virtual events into an in-person reality with the inaugural Signal Processing Summit and Embedded Systems Summit at the Sonesta Silicon Valley. The post captures the logistics, a last-minute travel scare during a US government shutdown, the joy of meeting speakers like Fred Harris, and practical lessons for future technical events. It closes by inviting community feedback and venue suggestions.
Signal Processing Summit - Cancellation Policy
The post announces a flexible cancellation policy for the inaugural Signal Processing Summit, an intimate DSP event limited to 70 seats and scheduled in Silicon Valley this October. It explains refundable options designed to give attendees confidence when registering early: a full refund minus a $95 processing fee for cancellations before the end of September, a 50% refund for cancellations in October before October 6, and no refunds after that date. The policy is positioned to help prospective attendees lock in the Early Bird rate, secure discounted hotel accommodations, and plan travel with reduced risk. The announcement frames the policy as a way to remove barriers to commitment and encourages readers who have been undecided to register now and attend the Summit.
The Signal Processing Summit 2025 - Registrations Now Open!
Stephane Boucher announces that registration is open for the inaugural Signal Processing Summit, October 14-16, 2025 at the Sonesta Silicon Valley. This three-day, engineer-focused event promises practical insights from leading DSP experts and tight networking in an intimate 70-seat setting. Register early to save $200 with the Early Bird rate and lock in a discounted Sonesta room before the block fills.
Call for Speakers for the Inaugural Signal Processing Summit
Announcing the Call for Speakers for the inaugural Signal Processing Summit, happening October 14-16, 2025 in Silicon Valley. If you have practical, real-world DSP experience, including communications, audio, AI/ML, or core techniques, organizers want talks that are actionable and engineer-focused. Four tracks plus an open call for radar, imaging, biomedical, and sensor-system applications are listed; submit proposals by August 8, 2025.
SAVE THE DATE – DSPRelated’s First Ever In-Person Conference!
After 25 years running DSPRelated and co-organizing the DSP Online Conference, the author announces DSPRelated’s first in-person conference. The event is scheduled in Silicon Valley for October 14–16, 2025 and is organized by engineers for engineers, emphasizing empowering, practical, hands-on sessions designed to leave attendees energized and inspired. Several familiar speakers from the online events — including fred harris, Dan Boschen, and Hilmar Lehnert — have already shown strong interest in presenting. Attendance will be limited by venue capacity, so readers are encouraged to mark their calendars and coordinate with employers to secure travel and passes while awaiting forthcoming registration and program details.
The 2024 DSP Online Conference
The post announces the fifth annual DSP Online Conference, marking the event’s 5th anniversary and featuring renowned DSP practitioners including fred harris, Rick Lyons, Julius Orion Smith III, and Dan Boschen. It outlines access options—purchased passes provide on-demand viewing of all sessions through September 2025—and explains the daily release structure, with new sessions posted at 6 AM EDT and a chat/forum for each presentation. The article describes select live Q&A interactions hosted via Zoom (informal, 30-minute sessions) and lists three scheduled live presentations: Dan Boschen’s workshop on October 30 at 11 AM EDT and Fred Harris’s talks on October 31 at 10 AM and noon EDT. Recordings of live presentations are promised to appear on-demand shortly after they conclude.
The 2024 DSP Online Conference
The DSP Online Conference returns for a fourth year, running October 29–31, with a program designed for students, engineers, hobbyists, and experts. Organized into four tracks—general DSP theory, communications, audio, and DSP with deep learning—the event accepts short MicroTalks through two-hour Workshops and offers early-bird registration plus immediate archive access for registrants.
Access to 50+ Sessions From the DSP Online Conference
Registering for the 2023 DSP Online Conference gives you 10 months of unlimited access to 50+ on-demand DSP sessions, turning a single sign-up into a compact DSP library. Stephane highlights top-rated talks and workshops you can binge, including deep dives from fred harris and a three-hour control-loop workshop by Dan Boschen. The post points to must-watch recordings on resampling, polyphase filters, FIR design, beamforming, and more.
Sonos, Shut Up and Take My Money! - Is Spatial Audio Finally Here?
Stephane bought a Sonos ERA 300 and discovered that spatial audio can finally feel convincing from a single wireless speaker, provided you set it up correctly. The trick is using Dolby Atmos tracks played inside the Sonos app, plus Sonos' calibration and a close listening position. The post shares setup tips, vivid listening impressions, and encouragement for more spatial mixes to come.
A New Related Site!
The post announces the launch of MLRelated, a new Related site dedicated to machine learning and deep learning. It positions MLRelated as complementary to existing Related sites by highlighting cross-cutting interests: TinyML for embedded developers, machine/deep learning applications in signal processing, and FPGA-based AI/ML implementations. The new site debuts with a modest amount of content and is expected to expand rapidly through contributions from the Related community in the form of blogs, forum threads, and webinars. The author invites readers to report navigation errors, share feedback, and propose ideas to help steer MLRelated into a practical, community-driven resource for researchers and practitioners in ML and adjacent domains.













