Arduino Filter Demos
Channel: Creative Kinetic Systems
Date: 2020-10-29

Walkthrough of several examples of single-channel signal processing on an Arduino using the course FilterDemos Arduino sketch.

00:52 FilterDemos Arduino sketch
01:24 Arduino compatibility meant for cut and paste
02:29 top-level demo sketch
02:50 statistics.h for central measures of average and variance
03:57 linear.ino with floating-point linear mapping
04:30 hysteresis.ino with hysteresis thresholding, value suppression, and debouncing
05:54 static variables within the functions
06:47 mistake: showing suppress_value() while discussing debounce()
07:27 corrected explanation of suppress_value()
07:52 smoothing.ino with a first-order smoothing filter
09:12 median.ino with a short three-sample median for suppressing outliers
10:07 lowpass.ino with a linear IIR discrete-time smoothing filter
11:32 low-pass transfer function plot
11:59 chirp response of the low-pass filter
12:50 return to transfer plot
13:08 walk through the lowpass() function
14:29 flow chart of the digital biquad filter
15:41 filter order and rolloff
16:28 bandpass.ino with a band-pass filter to pass a range of frequencies
17:11 chirp response of the band-pass filter
18:17 generating fixed-filter code using SciPy
19:05 bandstop.ino with a filter that suppresses a range of frequencies
19:33 ring_buffer.ino with a history buffer
20:23 ring buffer differentiator
21:07 ring_median.ino with a longer median filter window
21:59 trajfit.ino with a quadratic fitting filter to estimate position, velocity, and acceleration
24:42 learning to apply this algorithms with offline testing
25:38 tools and libraries
26:02 summary and wrapup