In October 2016, I felt the need to have my personal ECG (Electrocardiogramm or in German “EKG”) device. This is because I have some people which are close to me, which have some trouble with their heart rhytm. Going to the doctor is of course always a good idea, but it is also handy to be able to have a quick look on your own, espicially if you are trained with interpreting ECG signals. As I was working on an ambulance as an EMT (Emergency Medical Technician, or “Rettungssanitäter” in German) during my civil service, I have the knowledge for basic ECG interpretation. A quick look on the internet did not show anything impressive. Maybe this one at Amazon: Cheap ECG device. But spending 80 Euros seemed very expensive for this purpose. I thought man – why not use a smartphone for display and a cheap bluetooth measurement device, which just measures the ECG? Okay, there is something which does this, but it is even more expensive: Alivecor Kardia. It is $99 so about 95 Euros.

So stop here. Why does it need to be that expensive? Because it is a “medical” device? Where is the big cost hidden? So this project is set out to create something smarter, low cost “for the masses”. It could be used in developing countries to deliver a very low cost ECG device for people who cannot afford more, or it could help parents of a heart sick child to check their childs heart, or help paramedics/EMT with an ultra-mobile solution or it could be used for extended first aid.

After some more research, i finally found a project that comes close: Olimex MOD-EKG. It is an open source / open hardware project that implements a simple ECG. I ordered that together with an Olimex MOD-USB to allow hook up to a PC for ECG waveform viewing. Without the ECG waveform, the Olimex MOD-EKG is pretty straightforward: insert a CR2032 coin cell and touch the PC Board integrated gold electrodes with the left and right hand, and you already get a heart rate reading on the LC display. But when you want to hook it up with a PC to see the waveform, things get a little complicated: The Olimex MOD-USB requires some jumpering to get RX and TX and Power right. If you supply via the battery while it is hooked to USB, the battery gets heavily loaded down (reason unknown). Also, there is a lot of powerline (50/60 Hz) interference when the PC is connected to supply mains via a wall power supply. For safety reasons, it is of course better to use the device with a laptop which runs on battery power – and this also mitigates the powerline interference.


This page contains circuits for ECG measurement. As these type of circuits could be regulated in your country due to safety/ effectiveness considerations, use all informations at your own risk. Even though risks are considered on this page, the list cannot be regarded as complete. If you use the circuits/ software, do so at your own risk!


This project will be an open source / open hardware project. License details will follow.


Safety is first, so the ECG device must be safe for “patients” users and everyone involved. As I am an electrical engineer with a background in medical device development, medical device safety is considered in this project, although not on a level that would satisfy certification in Germany. In Germany, if you want to develop and sell a medical device, this is regulated by strict quality management standards / codes (e.g. ISO 13485 and EN 60601).

Anyhow, I show the most important aspects such as leakage currents and protective measures.

After safety, which is of course first, there is low cost as the second most important requirement. As there are many devices out there doing ECG measurement, there is no value in creating another one which just does the same. The trick is to develop something that everybody can afford.


The wireless approach (Bluetooth)

This is of course the sexy approach. Use some small box with two ECG electrodes and then a wireless connection to a display device.

Avoid having a display, because displays tend to be expensive. We assume that everybody has a smartphone. Hey – maybe not everybody (see “The stand-alone approach (LCD)”).

After some research, the best option to me seemed to choose a microcontroller that has a bluetooth radio frequency frontend integrated. Like this one: Nordic nRF51822. The guys at Nordic even send me over a free development board with a bluetooth USB dongle worth 90 Euros. Thank you Nordic for supporting my project!

The bluetooth integration allows the microcontroller to communicate directly with a smartphone.

The wired approach (USB)

This one uses a small box with two electrodes, and then a USB connection to a PC/Tablet. We assume that everybody has a PC/Tablet. Hey – maybe not everybody (see “The stand-alone approach (LCD)”).

The stand-alone approach (LCD)

This one uses a box with two electrodes an a graphical low power display. For everybody that neither has a PC, Laptop nor Smartphone at hand.


These modules can be combined for the above concepts. Some modules can be integrated together. Some Modules are needed for one concept, but not the others (e.g. a battery is only needed in the wireless approach).

ECG Analog Frontend

ECG and Noise Source Simulation

Free ECG Test Signals can be found here: Physionet ECG Test Signals
If you put it into a circuit simulation tool as a voltage source, you can model the ECG amplifier chain. A good, free modelling tool is LTSpice from Linear Technology.


PCB Electrodes

Wet Electrodes

Capacitive Electrodes

Protection Circuits




USB Interface

Bluetooth Interface



Power via USB

Energy Harvesting