Electrocardiograph & Heart Rate Monitor





Introduction: Electrocardiograph & Heart Rate Monitor

123D Circuits Contest

Third Prize in the
123D Circuits Contest

This instructable shows you how to make an electrocardiograph and a heart rate monitor. It is intended to be a fun science project only. Of course, it should not serve as a medical purpose.

PLEASE NOTE : To avoid any risk of electric shock, only use battery alimentation. Electrodes are theorically isolated from the circuit by the instrumentation amplifier, but play safe. I'm not responsible for any accident that may happen. 

This is a simple design that fits on a single breadboard. You are free to experiment and to custom it for your needs.

Since it's my first Instructable and also since English is my second langage, don't hesitate to contact me if you find an error or if you want some clarifications about a section or another. I will be happy to edit my project for the better!

Step 1: List of Materials

- (1) Instrumentation amplifier INA128
- (1) Operational amplifier 741
- (1) Arduino Uno
- (1) 16x2 characters Liquid crystal display
- (1) Voltage regulator 7805
- (1) 8 ohms mini speaker
- (1) Brigth LED (I use a 10 mm one)
- (1) Diode 1N3064
- (2) 9V Batteries with connectors
-  Breadboard
-  Jump wires
Resistors :
- (2) 100 ohms, 1/4W
- (1) 470 ohms, 1/4W
- (1) 1 kiloohms, 1/4W
- (2) 10 kiloohms, 1/4W
- (2) 100 kiloohms, 1/4W
- (1) 1 Megaohms, 1/4W
Capacitors :
- (1) 10 nF
- (1) 47 nF

For the electrodes :
- About one meter of speaker wire
- Antistatic wrist strap
- Medical tape
- Aluminum paper
- (2) metallic paper clips
- Shower gel (a substitute for electrocardiogram gel)

Optional but recommended:
-Oscilloscope, for the electrocardiography part of the device

Step 2: Build the Circuit

Here is the schematic of the circuit and a suggestion of the breadboard implementation. The two electrodes will be plugged on pin 2 and 3 of the INA128. An additionnal reference electrode (an antistatic wrist placed on your right leg) will be plugged in ground. This configuration allows you to use unshielded cables.

The best signal is just after the low-pass filter (between the two 100kOmhs resistors). I suggest that you plug the oscilloscope probe at this point for demonstration, although you might want to check other points to see if everything is working properly.

Step 3: Download Code on the Arduino

Download the attached file on your computer, open it with the arduino IDE, plug your arduino, dowload the sketch and you're ready to go!

Step 4: Make the Electrodes

Firmly attach the two paper clips on the pair of denuded speaker wire. Cut pieces of aluminum paper and clip them in the paper clips. The result should look like the picture. You might also want to experiment to find a better design.
When everything is ready, put some shower gel on the electrodes and use some medical tape in order to stick the result on your chest.

Step 5: Place Electrodes and Play!

Put the antistatic wrist around your right leg and connect it to the circuit ground. 

Place the electrodes on your chest and play with them until you get a signal. It could take some time, as the electrical connection is fluctuating. Be patient!

Here is a demonstration of my electrocardiograph :

An interesting thing to do is to experiment with electrode location as you will get a different signal. Professional electrocardiographs use 10 electrodes to map the signal (see the 3rd picture). On the first picture you can see my average electrode placement. This configuration works well because I essentially pick up the ventricular spike that I use for frequency measurement.

Another effect that you can see is the noise caused by movements. The electrodes can pick up electric signals of your muscles. If you want a clean signal, stay still!

Here is the video I've made (in French, sorry!) for my YouTube channel! Enjoy!

4 People Made This Project!


  • Epilog Challenge 9

    Epilog Challenge 9
  • First Time Author Contest 2018

    First Time Author Contest 2018
  • Sew Warm Contest 2018

    Sew Warm Contest 2018

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




Hello i want to ask you about the probes did you just used the wires?? or there is something else?
because the video is not clear 100% it doesn't show the probes
i will be pleazed if you answer me
thank you

Hello birdyberth,

I constructed the circuit by following whole steps. The led flashed, but lcd screen showed " <30 bpm You are dead ". I think that there is a problem on arduino code. Could you help me please ?


No, it's because you're dead! :p Do you have a scope to check the signal? Does the LED flash at a constant heart rate interval? Check your electrode connection, the problem is generally there.

Why was the SB Freeduino used instead of other Arduino boards?

Hahaha :) This is my first arduino board I purchased in my life (I think it was in 2011, I don't remember)... I'm still using it! (although I had to change the atmega chip once because I blew it with too a short circuit and also I broke the RX diode on it by accidentally dropping it in the snow while it was working) At that time, arduinos were hard to find in canadian shops and the freeduino was a great alternative, and fun to build too (because it was sold in a semi-kit). But yeah, any arduino board will do.

Hello again
i can't find the INA 128 and the diode :'( can i replace it?

Yes, try to experiment with any other instrumentation amplifier and standard low-voltage low-current diode.

dude the circuit is up here, go to step 2, there is the schematic and the breadboard placement of components

I don't offer coaching on how to make this project, everything is up here, if you have specific questions put them here in the comments section.

is there any alternative for Diode 1N3064 and Instrumentation amplifier INA128