How to use the LM324 High Sensitivity Vibration Sensor

Thread Starter


Joined Feb 8, 2014
Built this circuit and it detects grain of sugar falling on my desk:

1) Can the circuit above be modified to operate at 3.3V and give an output between 0-3.3V?

2) I would like to use the HIGH output of the comparator to momentarily pull the Reset pin of my micro-controller LOW, so to wake it up from deep sleep and run it's code.

I need the Reset pin to stay HIGH for a couple minutes while the code is running. I can set a GPIO pin HIGH to keep the "switch" open until the code has run, for example (dont know how exactly).


Here is what I tried on Falstad with an NPN transistor (the output from the lM324 comparator on the left):

Maybe i could keep the capacitor from discharging by connecting it to a GPIO set to HIGH as soon as the microcontroller wakes up; then the GPIO would be set LOW just before the uC deep sleeps again, the capacitor would discharge and wait for another trigger from the LM324.


thanks in advance
Last edited:


Joined Sep 17, 2013
Here's a modification of your linked circuit which should do what you want.
ZD1 is a 2.7V zener to replace the 5.1V one.
D2 and D3 provide an 'OR' function so that, as you suggested, an output from the micro can latch the comparator output High.
C1 and C2 are decoupling caps to stabilise voltages.
Depending on the input offset characteristics of the opamps, you might need an additional high value resistor (e.g. 1Meg) as a pull-up on the inverting input of U1a if you want the default output of the comparator U1b to be Low.
Last edited:


Joined Aug 21, 2008
I like your solution but remember that the LM324/358 output stage cannot get higher than roughly Vcc -1.4V nor higher than ground +0.6V without external help.


Joined Aug 21, 2008
You're right -maybe he can just adjust the voltages in his pulse forming circuit and everything will be fine. I thought that he intended to use the output of U1B to drive his reset input.