IELS2002 ECG measurement system
Complete ECG measurement system: analog interface circuit, ADC, ESP32 with heart rate calculation and web-based live display, from breadboard to four-layer PCB.

What we built
A group project of two in Engineering Project II. The system amplifies and filters weak biopotentials and shows the ECG and heart rate live in the browser.
The system
- Analog part: instrumentation amplifier (INA126), a 33.8 mHz high-pass filter and an amplifier stage with TL071 and a 16 Hz low-pass filter. Total gain of about 1000 V/V.
- Digital part: 16-bit ADC (ADS1115) at 860 samples per second, and an ESP32 that finds R peaks, calculates the heart rate and sends data over WebSocket.
- Battery operation with a Li-ion cell, and a 3D-printed enclosure.




Results
- Clear QRS complexes on the prototype board, and a heart rate that differed by 1 to 3 beats per minute from a Garmin watch.
- Measured cutoff frequencies close to the calculated ones, and a CMRR of almost 100 dB on the PCB.
- Realized in four steps: simulation, breadboard, prototype board and a four-layer PCB drawn in KiCad.
What did not work
The PCB got an offset problem in stage 2 that drove the next stage into saturation, so it was never used for ECG logging. The report describes the fault openly and proposes a fix for the next revision, while all logging was done on the prototype board.





