Smart Heart Monitor





Introduction: Smart Heart Monitor

No longer will you have to pay hundreds of dollars for a heart rate monitor! The Smart Heart Monitor will be able to do all of your cardiac measuring needs for you!

The Smart Heart Monitor measures the user's heartbeat using an LED and a very sensitive photo-resistor attached to the user's ear. A light will blink to the user's heartbeat, and the program will calculate the user's beats per minute. The BPM will be displayed on a 7 segment display. If the user's BPM exceeds a user-set limit using a potentiometer, an alarm will sound. Once the user's BPM lowers below that limit, the alarm will turn off.

Step 1: Step 1: Materials

You will need the follwing materials for this project.

One Arduino UNO
One breadboard
One 5V Pulse Sensor that can be bought at the pulsesensor website.
One 4 digit 7 segment display (12 pins)
One potentiometer
One piezoelectric speaker
Depending on how efficient you are with your cable management, around 30 breadboard cables

Step 2: Step 2: Assembly

This step is the hardest, so make sure you follow along closely! The circuit diagram attached may be helpful if you get stuck.

1.) Connect the LED to digital pin 13, and then to ground.
2.) Connect the piezoelectric speaker to digital pin 12, and then to ground.
3.) Connect the potentiometer to the 5V and ground it, and attach the output to analog pin 2 (I was having difficulties on my board with analog pin 1)
4.) Connect the pulsesensor heart rate monitor. Red wire goes to 5V, black wire is grounded, and the purple wire should go to analog pin 0.
5.) Wiring up the 4 digit 7 segment display. (This part is the most confusing, so I've split it up into smaller steps. Refer to the picture with the 7 segment display in it for help. Also, if you are having troubles connecting all of your wires, check out how I wired mine with the white wires.)
a.) connect pin 1 to digital pin 6
b.) connect pin 2 to digital pin 5
c.) skip over pin 3
d.) connect pin 4 to digital pin 4
e.) connect pin 5 to digital pin 8
f.) connect pin 6 to digital pin 11
g.) connect pin 7 to digital pin 3
h.) connect pin 8 to digital pin 10
i.) connect pin 9 to digital pin 9
j.) connect pin 10 to digital pin 7
k.) connect pin 11 to digital pin 2
l.) skip over pin 12
All done with the circuitry! Time for the code.

Step 3: Step 3: Coding

The next step is upload the code for the program using the arduino software. The code is a couple hundred lines long, so I uploaded it to Here's the link!

Step 4: Step 4: Testing It Out

Congratulations! You've done all the steps and your smart heart monitor is ready to go! Here's a video I've made showing how it works.

Sometimes your BPM will jump around a lot, and I've found that readjusting the sensor and/or restarting the program can fix that issue. Also, the 7-segment display will flash extra segments on some of the digits at times. For the most part though, it's very stable.

Thank you for reading. Hope you've enjoyed!



    • Woodworking Contest

      Woodworking Contest
    • Make it Move Contest

      Make it Move Contest
    • Oil Contest

      Oil Contest

    We have a be nice policy.
    Please be positive and constructive.




    can i get the link of this code, because this link in the instructable is not working.

    can anyone mail me the complete arduino code for this instuctable . my email id is .please help me out


    thanks for this great work and i like it but link is broken

    please if possible upload codes here or in other share web for us

    thank you

    Thanx OP, learnt a lot for your code! Got a cheap sensor in the time I had. Faced a lot of problems getting stable values. Simple trimpot will do the trick!

    1 reply

    hi can you help me out.. please send me the codes for this project to this mail

    Can you please help me i am not getting potentiometer,please tell me from where i can get it.

    hi I would like to know what type of potentiometer are you using cause my potentiometer seems to burn out.

    1 reply

    have you finnished this project?

    hi can i please get all documents available about this project.

    1 reply

    he already answered it ?

    pls i want to know, is it possible to use an lcd to display it in place of the 7 segments? if so what would be the best way to go about doing that.

    hi. how would i do it if i want to use LCD 16x2 instead of seven segments?

    Plz help me in my project.....

    the way you wired are just awesome....

    i made this exactly the way yo do this but i havn't this sensor so i use sharp F2 IR Pulse sensor but it is working properly. and my buzzer ,Led and 4 digit 7 segment display continiously blinking.. i used same code that you used and same wiring...plz help me... i m stuck here...i attach my sensor and project image here....


    If you can, please don't use pin13 on Arduino to illuminate a LED because I just burned mine. Never use LED way on attaching there. It may explode to your face while you are working. Just don't add a LED to pin13. On Arduino Mega or others have already default amber LED on the circuit.

    You'r segment connections are really too complicated. Uhh,, I couldn't determine. You may use fritzing please...