I have setup a circuit much the same as the image below:
I am using the MEAS minisense100 vibration sensor. My output at the moment works fine as an active high sensor however I want to use the sensor on pin2 interrupt on my arduino uno that will be hibernating in sleep mode. I have read that to wake the arduino you need an active low sensor.
How would I go about altering my circuit to pass active low instead of active high? I assume I would need to hold the pin to 5v and then on knock switch to ground?
Any external interrupt (LOW, CHANGE, RISING, FALLING) can wake the processor from Idle sleep. For deeper sleeps it only works for 'level' interrupts and the only 'level' interrupt is LOW (there is no "Interrupt on HIGH").
You can use a single NPN transistor as an inverter. Use a weak pull-up resistor to keep the input pin HIGH and use the transistor to pull the pin LOW when your sensor goes HIGH.
Awesome I have it working now. I need to work on the resistors I have used as the sensor is not overly sensitive but it is working as you described waking from a deep sleep when it is knocked.
Hmm it seems as though you have to model the sensor as shown below:
with a capacitance of 240pF. In order to to get any sensitivity with my proposed circuit I would need some mega resistance. At this point would it be easier to use an op amp to do the inversion?