Can piezoelectric sensor detect heartbeat?

I want to know if i a piezoelectric sensor detect heartbeat pulse from my wrist or my finger.
I already made the simulation and code but I want to know if it will work so I can buy the sensor

Here is the code
piezo.ino (536 Bytes)

I just tried it with a piezo disk and a fingertip and it doesn't seem reliable. Maybe you could make it work but most pulse rate sensors use light through the fingertip or earlobe.

1 Like

it doesnt work at all or is it not accurate enough?

"Not reliable" means that you can't trust the results.

An accelerometer module will work fine to detect heart beat.

I wish i could but my project is to use any mechanical sensor in a medical application so I'm obliged to use this sensor and other sensors like strain gauge and the load cell

A strain gauge would work.

For a heartbeat detector, can you tell me how is that?

Isn't that your project assignment?

I've searched but found nothing so that's why I'm asking how

If I rest my right wrist pulse point on the disk just right I can get a trace on Serial Plotter that looks like a pulse. Any other position and the trace looks like a flat line or random noise.
When it's a flat line, even the motion due to breathing can cause some blips every few seconds.

#define sensorpin A0 // analog pin 0

void setup()

void loop()
  static int threshold = 128;
  int a = analogRead(sensorpin);
  Serial.println(a-threshold + 512);

  digitalWrite(LED_BUILTIN, a > threshold);

  threshold *= 15;
  threshold += a;
  threshold /= 16;
1 Like

Thanks sir, you are a life saver

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.