Go Down

Topic: need help with piezoelectric circuit (Read 2901 times) previous topic - next topic


Actually I dont know :-) ... I wrote it only for reference ... so far I've seen piezos comming in two flavors: some with 1.3kHz and others with 2.9 ... but dont ask me :-)

Teensy looks very intresting! Maybe I will use one of them for future projects. Thank you! Thats very good to know!


Ran Talbott

I tried to use the power adapter with the P-Switch and it went crazy immediately, firing randomly on its own.

Was it a regulated adapter?  Most 9V ones,  especially those made for cheap consumer electronics,  are not.

It could also be electrical noise:  that long cable coming from the wall wart could be acting as an antenna.

Most "9V" rechargeable batteries are actually only 7.2V or so,  because they're 6-cell.  So they start off looking "half-dead".  There are some 8-cell batteries available,  but you have to shop carefully to find them.  But they're pretty lame in the mAH department.  Consider using an 8-AA holder and attaching a 9V snap (or whatever power connector you need) to it:  that will give you several times the battery life.

Paul's approach might be made to work for you by attaching several sensors to your head:  it's conceivable that it could be "trained" to recognize several different facial expressions,  giving you a lot more "states" to control things with.

If you still have good control over moving your head around,  you might be able to get a mouse-like control with a head-mounted accelerometer.

I don't know if the eye-tracking systems I've seen on NOVA-type shows are commercially available or within your budget.  If not,  and you live near a university,  you might be able to get access to one by offering to be a guinea pig for researchers.


Dec 18, 2010, 12:56 pm Last Edit: Dec 18, 2010, 01:06 pm by raalst Reason: 1
Hi all,

The 2,7 kHz reference is the frequency the piezo will oscillate on.
these piezo disks can be sensors but also beepers, and they are made to resonate (and therefore beep very loudly) at a specific frequency.
in this case 2,7 kHz.

I also suspect that any response you get from the disk as a sensor will likely also be a sinus from around 2,7 kHz.
I like to compare them to tuning forks.
it does not matter how/with what/where you strike a tuning fork, it will always reply with the tune it was designed to hum...

the piezo sensor will react to bending (and nothing else) so
the switch is basically reacting to movements/rippling of your skin.
a piezo sensor will not pick up electric signals from muscles or nerves.

It occurs to me that you need to be sure it actually is a piezo. normal
electrical medical probes can look similar, as can capacitive pickups.

for using a piezo with an arduino, maybe this link helps to shape ideas

David Norwood

I am very excited.  I was able to hook up a sensor to my Uno board and ran the Graph sketch that sammy posted a link to.  I wasn't able to get the graph working, but i was able to watch the serial monitor and the numbers flying by change from zero to a few hundred and back to zero as i twitched my eyebrow.  I think this is going to work!  

I have a few questions.  

How do i get the graphing function working?  I saved the java code to a file, but didn't know what directory to put it in so Processing would find it.  

I had to take out the resistor in the Graph and Knock example circuits in order to get my eyebrow twitches to register.  Am i in any danger of over loading and frying my Atmel chip without a resistor?  The voltage produced by the piezoelectric sensor is high (about 12 volts if you really push on it) but the current is tiny.  
Also, can someone explain why a resistor in parallel with the sensor has any affect at all.  I would understand if it were in series.    

Is there a usb mouse library for the Uno?  I bought the Uno because it has a better usb chip, but nobody has written one yet.  I should have paid attention to Ran and just gotten a Teensy straight off instead of waiting.  

Richard: i don't have any neck strength but eye tracking is an option.    


Enno Schultz

Hello Forum!

@David: I've written two simple sketches for arduino and processing that move your mouse pointer and perform mouse clicks with a single piezo unsing multiple thresholds to detect how hard you pushed it and which action to trigger.

This might not be the best interface for you and you would probably have to finetune the thresholds and train yourself a bit in using it. But i think its a good start.

@raalst: Thank you very much for the blow sensor link! This is really cool stuff!

@David: You might also consider using a blow sensor with multiple thresholds. To trigger different actions depending on how strong you blow. This could be easier to control than your eyebrow.


Enno Schultz

Have a look at: http://wired.enno-schultz.de/2010/move-your-mouse-pointer-with-a-piezo/

@David: You just need to paste the sketch into processing and run it or save it from within processing.


Dec 23, 2010, 01:51 pm Last Edit: Dec 23, 2010, 01:53 pm by raalst Reason: 1
The blow sensor is not only for blowing, it will generally register any bending of the piezo disk. I posted it because if it can register a bit of air, then it can probably also register the movement of an eyebrow
when attached close to it on the skin.

when you are referring to the picture here http://www.arduino.cc/en/Tutorial/KnockSensor,
without the resistor the voltages created by the piezo will be very high, since there is no path to ground. the input pin consumes virtually no current at all. all electrons will "queue up" in
front of that input pin. leaving the resistor out *might* damage the chip
(the chip has some protection built in, and when one pin is damaged there are often lots more left functioning anyway)

But if you take too low a resistor, the piezo will be sort of shorted to ground and you will not see a signal.
be sure to use a resistor of several megaohm, as the example says.

also, the piezo requires a 5 volts voltage difference between it's two wires, that difference will not be there when one wire is connected to the 5Volts terminal but the other is ONLY connected to a high-impedance input pin. This setup without looks very much like a piezo with just one wire attached. the resistor closes the loop towards the Ground terminal of the board. only then will the voltage difference on the piezo be 5 volts. voltages are always "experienced" with reference to ground, and therefore you will need some connection to the ground terminal.

it's the same "experience" as grabbing the mains while on rubber tiles, compared to grabbing it when standing in a puddle  ;D


Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131