There are many medical conditions that require an electrocardiogram, ECG or EKG, for proper diagnosis and treatment. An electrocardiogram is a measure of the electrical activity of the heart. The heart muscles contract, which results in a heartbeat which is dictated by electrical impulses that have been well characterized by the medical community.
A traditional ECG instrument, found in a well-funded and well-resourced hospital, costs thousands of dollars. Although these provide great resolution and accuracy for an ECG reading, these instruments are not affordable for individual use, or a low resource hospital, and many are very large which exclude them from point of care application.
In order to combat the challenges posed with a traditional ECG instrument, we created a point of care ECG mat. This is a very inexpensive design that only requires an individual to place their hands on the mat, embedded with pre-gelled bioelectrode sensors, in order to obtain an ECG.
This point of care ECG mat is completely portable due to its small size and the fact that the entire mat can be powered by a small battery pack. This device provides a very inexpensive, easily portable, relatively reliable ECG reading.
Materials and Tools:
- 1 Arduino Uno MicroProcessor Purchase on Arduino
- 1 Half-sized Bread Board Purchase on Digikey
- 1 BITalino ECG Sensor BITalino kit
- 1 1 x 3 Lead Accessory BITalino kit
- 1 RJ22 to Molex Connection Cable BITalino kit
- 3 Pre-gelled Disposable Electrode BITalino kit
- 1 Adafruit 2.8" TFT LCD Shield with Touchscreen version 2 (TFT code: ILI9341) Purchase on Adafruit
- 2 220 Ohm Resistor Purchase on Amazon
- 1 Button Purchase on Amazon
- 1 Green LED Purchase on Amazon
- 1 Potentiometer Purchase on Amazon
- 16 Female-Male Jumper Cables Purchase on Amazon
- 8 Connecting Wires Purchase on Amazon
- 1 12" x 12" x 5/8" Foam Tile Purchase on Michaels Craft Store
- 1 12" x 4" x 2" Foam Block Purchase on Michaels Craft Store
- Computer with Arduino Coding Software (Supplier: Arduino)
- USB Com Port Cable (Supplier: Arduino)
- Understanding and familiarity with Arduino coding
- Understanding of circuit design
- Understanding of BITalino Sensors:
- Proper placement
- Sensitivity thresholds
- Sources of error and noise in signal
- The different segments that comprise an ECG
- The electrical impulses corresponding to each segment
- The physiological action of the heart corresponding to each segment
- The characteristics of a "normal" and "healthy" ECG
- GitHub Libraries
Safety Considerations for Use:
- Make sure to check for frayed wires before use
- If not using battery power, ensure that there is proper connection between the computer and the Arduino
- If connected to the computer, ensure that the computer is properly grounded with a three-prong plug
- If connected to the computer, do not use in thunderstorms, risk of power surge
- Modified circuit design only when power is disconnected
- Make sure that the skin is dry and unbroken when placing hands on sensors or when using the button or potentiometer
- Do not use point of care ECG mat near liquid or on damp surfaces
- Medical Warnings:
- Keep out of reach of children
- This is not a diagnostic device, if problem detected have a 12 lead ECG performed by your doctor
- This device should not be used for self-diagnosis, always consult a medical professional with health concerns
- The ECG signal with BITalino sensors is prone to noise and motion artifact
Hints & Tips:
- Ensure that all the Female-Male jumper cables are securely connected
- Check the version of the TFT LCD shield being used in order to ensure that the correct TFT library from GitHub is used
- Verify that the corresponding TFT shield pins match on the Arduino Uno board
- Open the serial monitor on the Arduino software on the computer to check that the ECG signal and threshold are woking as expected
- Make sure that the different electrodes are placed in the correct positions on the mat in order for the correct leads to form
- To improve signal, have the patient adjust placement of the gel electrodes on the palms
- Aim for positioning near veins or capillaries on the palm
- BITalino sensors are subject to motion artifact, have patient keep hands very still
This design could be taken further by soldering the circuit components, (potentiometer, green LED, resistors, button, ect) to a soldering bread board. This bread board would then be connected to a bluefruit shield which would be placed in between the Arduino Uno and the Adafruit TFT LCD. This would make the circuit design more compact, increase the stability of connections, and increase the overall durability of the device.
Another improvement that could be made is within the Arduino code for the point of care ECG mat. A command could be implemented to clear the heart rate calculation from the screen, so that it does not overlay on top of the previously calculated rate.
Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.
Connect the Arduino Uno's 3.3V and ground pins to the breadboard
Add the switch, grounding it via a 220 ohm resistor and connecting it to digital pin 3
Add the green LED grounding it via a 220 ohm resistor and connecting it to digital pin 2
Add the potentiometer between the 3.3V and ground with the output voltage connected to analog pin 5
Add the ECG Bitalino sensor cables, connecting the red wire to 3.3V, black to ground, and purple to the analog pin 4
Connect the 2.8" TFT Adafruit shield using male-female jumper cables for
all the following corresponding pins: RESET, 3.3V, 5V, all the Ground pins, Vin, digital pins 13-8.
Draw or trace hands onto the 12” x 12” x 0.5” foam tile
Place electrodes on the foam within traced hands as indicated in the diagram below. The black and white lead electrode are on the left hand. The red lead electrode is on the right hand. Press electrodes into foam so that they lay flush with the top of the tile.
Carve space for the TFT screen, wires, and Arduino with breadboard in the 2"x4"x12" foam block according to the dimensions of your specific pieces. Be sure to cut out space to reach the button and potentiometer.
Place the Arduino, breadboard, and TFT screen into the foam block
Connect the Bitalino sensors to the gel electrodes
Secure the smaller block with hot glue on the mat foam block
Upload code from computer, unplug, then connect battery
Turn on battery, have patient place hands on board, press button and collect ECG. Adjust threshold if needed to calculate heart rate. Can be connected to computer to display data on serial monitor as well.