Measuring Heart Rate With A Piezo

Look around for heart rate sensors that interface easily to microcontrollers, and you’ll come up with a few projects that use LEDs and other microcontrollers to do the dirty work of filtering out pulses in a wash of light.

[Thomas] was working on a project that detects if water is flowing through a pipe with a few piezoelectric sensors. Out of curiosity, he taped the sensor to his finger, and to everyone’s surprise, the values his microcontroller were spitting out were an extremely noise-free version of his heart rate.

The piezo in question is a standard, off the shelf module, and adding this to a microcontroller is as easy as putting the piezo on an analog pin. From there, it’s just averaging measurements and extracting a heartbeat from the data.

It’s a much simpler solution to measuring a heart rate, and since two people haven’t heard of this technique, it’s likely a lot more people haven’t heard of this technique either. If you’re looking for an entry to The Hackaday Prize, this would be a great jumping off point for anything in either the fitness or medical domains.

13 thoughts on “Measuring Heart Rate With A Piezo

  1. Actually, the old IVAC model# 4200 Non-Invasive Blood Pressure monitors used this technique to detect the pulse. There was a small microphone in the hose assembly that went into a pocket on the air bladder that was used to look for the pulse. When the cable was damaged, it would stop detecting the pulse and couldn’t take a blood pressure anymore. Modern NIBP monitors sense the change in air pressure and don’t use this technique anymore from what I have seen, but as [Thomas] discovered it was a very simple and effective method to detect the pulse!

  2. I use these and a scope to check ultrasonic cleaners that I mend for a company. You just need to stick it on the water or even near to the water for it to develop a very readable signal.

    1. How sensitive? I have an application where I would like to make something for an infant to wear that monitors for tachycardia and when it detects it, sends a signal over wifi. It would not have to be hugely accurate, I just need to see when a heart rate exceeds a safe limit like say 140bpm. Would that be possible with a bracelet or anklet thats not overly tight. i.e. would it make enough contact do you think?

      1. Maybe the rather new technique called Eulerian Video Amplification would be a better solution for that. It greatly enhances/amplified minute movements and/or color shifts caused by breathing and the pumping blood. https://youtu.be/ONZcjs1Pjmk?t=1m52s
        There are even apps for iphones/android devices that works pretty well, I can just point my phone camera to cover the torso and face and it will show me my current breathing rate and pulse.

  3. I tried this last night using the piezo element from a smoke alarm. I didn’t even have to take it out of the plastic casing the manufacturer put around it. Just unsolder from the board and hook up to the G and M terminals.

    There’s a good bit of noise (60Hz), so some kind of filtering would be a good thing. If the filtering was done really well, band-passing about 1Hz to 3Hz, it would be very effective.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.