I am completely new to electronics, and am trying to learn by building an electronic drum set. I've found lots of examples online of circuits to condition the output from a piezo to be read by a controller (a Netduino in my case). The circuit I'm using looks something like this.
A Piezo (connected from the drum to my breadboard w/ some cat5 cable)
A 470k resistor(http://www.kynix.com/Detail/1163633/ERJM1WSF20MU.html) in parallel
A Schottky diode in series (on the + line)
A Zener diode in series (3.3v on the + line)
A 1M resistor in parallel
A 0.1uF capacitor in parallel
A Netduino analog pin (and the ground line connected to the Netduino ground pin)
I currently have 6 of these circuits attaching to the 6 analog pins on my Netduino. The circuit is doing a great job of both not missing any hits on the drums as well as giving a pretty good dynamic range of velocity/volume readings. The problem is that when I strike any of the drums very hard, I'm getting some nasty crosstalk (i.e. I hit one drum, but multiple drums are signalled). I've been stuck on this for a few weeks now and have tried tweaking the circuit in every way I can think of, but can't seem to fix the issue. The closest I can come is to put a voltage divider at the end of the circuit. This does remove the crosstalk, but at the cost of significantly less dynamic range (i.e. no matter how hard I hit the drum, I don't get more then around half of the max ADC readout value). I've checked and double checked that everything is connected to the same ground. The Schottky should be keeping any negative signal from getting to the Netduino, and the Zener should be making sure I'm not getting anything above the 3.3v that the Netduino wants.
I think an oscilloscope would probably help a ton in figuring out what's going wrong, but as this is my first electronics project/experiment it's a little hard to justify a couple hundred dollar purchase to the wife
Can anyone point me in the right direction for figuring out what's going wrong?