Guidance Needed - Remote Heart Rate Monitor & Alert System

Hi, I'm new to the world of Arduino (though, I do have programming and electronics experience!) and need some guidance on a remote heart rate monitoring system I'd like to create.

Here's the problem I'm facing:

A friend of mine has recently developed a whole host of rare health issues, and is having a hard time sleeping by her self. She fears she will stop breathing while she is asleep, and wont be able to call 911 in time. So, I thought to myself, why not build a heart rate monitor that she can wear at night, which will alert me if her heart rate drops below a certain threshold?

I have written up some ideas (see below) on how to go about this, but I'd like to get some advice / input / feedback from some seasoned professionals (or non-seasoned)! Am I going about this the right way? What hardware should I use? Is there anything I'm missing, concept-wise?

# Arduino Remote Heart Rate Monitor

## Concept
To design a wearable heart rate monitor that will alert specific individuals if the wearer's heart rate goes below or above a pre-defined threshold. It should also allow for remote monitoring of the wearers pulse at any given time.

## Design Parameters and Considerations

  • Must be comfortable enough to wear overnight
  • Must be light weight
  • Must be able to withstand being slept on, and rolled around on
  • Battery must be able to last overnight (the longer the better), and ideally should be rechargable
  • Ideally, it should be able to differentiate between no pulse, and being disconnected from the wearer
  • Must be able to reliably send data to a remote server

## Current Idea

  • Pulse sensor straps to finger
  • Pulse sensor connects to a miniature arduino affixed to a wrist strap
  • Mini Arduino wirelessly broadcasts a signal to either:
  • An arduino with ethernet capabilities, if broadcast range will allow (approx. 15 ft)
  • An arduino with wifi capabilities, if broadcast range is too short
  • Receiving arduino connects to a remote server:
  • Every 10 minutes and sends an average BPM
  • Every time the BPM goes above or below threshold
  • Every 10 seconds, for 10 minutes, after the threshold has been crossed
  • Remote server will:
  • Log average BPM
  • Display BPM graph to users who log in
  • Alert pre-defined individuals if the BPM threshold has been crossed via text message, or push notification

## Concerns and Questions

  • Accuracy of BPM information
  • Reliability and latency of text messages, or push notifications
  • Are there better ways to determine if someone has stopped breathing?
  • Accelerometer?

## Technologies

Are there better ways to determine if someone has stopped breathing?

A long time ago I did some work with neo-natal monitors. They measured breathing via electrical resistance (impedance).
Ther've been improvements in 35 years!
www.aastweb.org/Resources/FocusGroups/RIP_Intro.pdf

The field is called "plethysmography"

BPM is very accurate. Each beat gives you a new BPM.
Average them to smooth out variability.

For the reliability, perhaps use 2 redundant sensors.
If one falls, or gets crunched, you don't call the cavalry if the other is still giving a normal heartbeat!

Check out current requirements of the sensors; some sensors might draw enough to seriously limit battery usage time.