Recursive Filters: SMA, EMA, Low-Pass, and a Tiny Kalman for Noisy Data

Recursive Filters: SMA, EMA, Low‑Pass, and a Tiny Kalman

Recursive Filters: SMA, EMA, Low-Pass, and a Tiny Kalman for Noisy Data

I explore recursive filters like SMA, EMA, low-pass, and a simplified 1D Kalman filter for smoothing noisy data streams. These methods offer O(1) memory and compute efficiency, making them ideal for embedded systems and real-time applications. I explain the intuition behind each approach, how to tune their parameters, and when to choose one over the other for optimal performance.

Recursive filters that we'll use, all use constant-size state. That's why they're common in embedded systems, robotics control loops, mobile sensor smoothing and telemetry.
  1. deepsun

    Too basic, I'm not sure anyone needs that to solve the task as basic would need to read an article, it's obvious.

    > Tune by eyeballing lag vs. noise.

    In any serious installations (more than a homelab) you want some numeric metrics, not eyeballing. E.g. management or next engineer may reasonably ask "why alpha is 0.8? what's the rationale, why not 0.85", you want some formula to show it's what we want.

  2. adenjoe

    Good

More from this day

2026-07-30