I’ve learned so much about piezos, microcontrollers, serial data capture, graphing. All from people I’ve never even met in person. Tod E. Kurt’s work on the Arduino MIDI drum kit lead me to want to replicate the project for myself, and I’ve been running into some very tricky problems with the sensors triggering samples two or three times. I got a boost of confidence that I was detecting a real problem thanks to the fine work done by mschaff’s Ardrumo project. Now, thanks very much to Tom Igoe’s article on Sensor Graphing using a tiny arduino sketch, the terminal, and grapher.app, I can actually scientifically diagnose the reason why this is happening.
I was able to capture and graph the data that the sensor is outputting. Here are a few screenshots of the highlights:
This first screenshot shows a good peak, right at the beginning of the strike. Then the ringing begins. If, for instance, I had the threshold set to 500, this would trigger not just one, but *three* midi notes. Ok, but what if I had set the threshold to closer to 750? a big problem with that is that I’m losing a lot of the dynamic quality of the kick pedal. I’d have to hammer on it just to register above the minimum value, and then there’s no way to play it quietly. Every kick would end up being 750 or higher.
But wait, there’s more! Here’s another reading:
So, the question still remains… how to get a clean sensor reading? Here’s my current idea: