Linux Heart Monitor
Linux Heart Monitor is a collection of software and hardware to be able to have your very own ECG / EKG using a simple circuit and a PC with a sound card. It is in very early stages but definately usable. You should only use the information on this site if you (1) know what you are doing (2) assume all possible risk (including death) (3) have researched any associated dangers.

Included:
  • qhm (qt heart monitor) - a gui which allows you see an ECG/EKG style signal of your heart
  • heartfa (heart file analyzer) - a post processing gui to analyze the signal after recording it to a file
  • schematics and information about building a circuit

    Features
    Versions
    Requirements
    License
    Screenshots
    Download
    Schematic
    Support
    To Do
  • Features
    • View your heart signal (similar to an ECG or EKG) in real time
    • View your heart rate in real time
    • Record your heart signal for later viewing
    Versions
    v0.1 - initial release (2/5/2005)
    Requirements
  • recent version of ALSA (included in 2.6 Kernel)
  • recent version of QT (included in almost all Linux distributions)
  • circuit to condition the heart signal for input into a sound card (described below)
  • License
    qhm, heartfa, and the circuit were originally written or designed and still maintained by Michael Spiceland and released under the GPL, GNU General Public License (v2).
    Screenshots

    heartfa (Heart File Analyzer) post processing
    Download
    a href="http://fuzzymonkey.net/cgi-bin/download.cgi?file=LinuxHeartMonitor">Current Version - LinHeartMonitor 0.1.
    Schematic
    The heart signal itself is a very small signal (in the ┬ÁV range) that is easily lost in the noise. To make matters worse, your body has a varying DC voltage that can be quite substantial. The basic idea is to connect two probes to your body and feed them into an instrumentation amplifier with a high CMRR (common mode rejection ratio). This instrumentation amplifier will reject the noise because it is common to both inputs and it will amplify the difference. I chose to use an IC solution since it has high precision balanced resistance needed for such a high CMRR. Additionally, the datasheet for the IC that I chose shows a "right leg drive" connection based off of op amps to eliminate the DC voltage that floats around your body. As you can see from the screenshots I got pretty good results right off of the bat!


    the schematic

    I got the circuit straight from the datasheet for the INA114 instrumentation amplifier that I used. It is towards the end in the applications section. It is easy to spot because it shows a diagram of a body with the connections hooked up. I took great care to make sure that I used a sheilded cable for the probes. I used an old audio cable and soldered alligator clips onto the end. I also purchased some EKG electrodes that you simply peel the backing off of and stick onto your chest. They can be purchased for around $13 for a pack of 50 on the net. For power I used 4 AA batteries. I did this because YOU SHOULD NEVER CONNECT ANYTHING PLUGGED INTO THE WALL TO YOUR CHEST! Even with a battery, small currents could kill you. Also I needed to be able to tap off of the middle to use as the GND.

    Here are some pictures. Please excuse the bad quality. I wrote this entire page and posted all the pictures in about 20 min. It was an either do it now or I'd never get around to it type of thing ...
    To DO
    • Add functions to the Heart File Analyzer to check for abnormalities. I plan on adding a tabbed widget below the main one with "plugins" for different types of analysis. I will start with a simple "heart rate" graph. It will extract the heart rate and graph it over time. Next, I'll research EKG's (with your help) to extract other points of interest and add them one per tab.
    • Update the GUI's. I'm not a Qt wizard by any means! I used a default widget and painted directly on it. If this was some sort of auto scrolling, double buffered, hardware accelerated widget it wouldn't "flicker" as much.
    • heartfa gui must be scrolled to update the display :-( It should update whenever the (1) file is opened (2) zoom is changed etc ...
    • circuit needs to be more robust. Currently it is kinda flaky. It needs to be robust enough to allow for overnight recordings. Protections need to be added to make it more safe.
    • email me with suggestions.
    Suggestions and Comments
    Email me if you have suggestions, questions, or comments!

    © 2003-2012 FuzzyMonkey
    spacer
    Get Firefox! Home + Contact Us + Forum + Articles + Software
    All Content © FuzzyMonkey 1998-2012.