I’m experimenting with some piezo transducers (sensors) to capture physical taps as a beats per minute measure with a microprocessor. All the filtering and debouncing of the raw piezo signal is done onboard the ATmega328 using a combination of:
- analog comparator interrupts
- filtering based on musical assumptions
- exponential averaging
The result is a BPM between the threshold of the perceptual present and too fast to be useful.
As always, all notes, schematics and code are in the Little Electronics & Arduino Projects repo on GitHub