Introduction: Health Alert

There are several tracker bracelets but all collect data of some vital functions by sending them only to your smartphone.

A great additional feature could be the call (or SMS) timely medical attention in case of danger.

With this project, we want to built a similar system, low-cost and accessible.

It uses a GSM Shield and various sensors to monitor vital functions (i.e. temperature, heartbeat, blood pressure).

NB: This system is in prototype stage.

Let's start!

Step 1: Materials

(I am using modules from the grove kit from seeedstudio)

  • 1 x Intel Edison board;
  • 1 x Grove Base Shield;
  • 1 x Grove Temp Sensor;
  • 1 x Grove Led Socket with a LED (white);
  • 1 x Grove Light Sensor;
  • 1 x GSM Module (like this with antenna). You will also need some required accessories to make it work: SIM card, lipoly battery (500mAh will work great), microUSB cable for charging the battery.

The Temp Sensor monitors the temperature of person; the Led Socket and LED used to measure the heartbeat.

Step 2: Connecting It All Together!

Before we get stuck in I am assuming you have your Edison board set up as in Intel guide; if not you can view it here.

Before connecting it all up, I suggest you disconnect the power from the board, it helps prevent any short circuits and other issues.

Firstly, you must connect the Grove Base Shield on Intel Edison Board.

Then, the light sensor needs to connect to port A0 on the expansion board.

The Temp Sensor needs to connect to port A1 on the expansion board.

The Led Socket needs to connect to D3 on the expansion board with a LED (I recommend white).

The GMS Shield send and receive commands over the RX/TX pins.

Step 3: Coding

The sketch can be be divided into three different main parts:

  • Temp control;
  • Heart rate;
  • GSM signal.

const int pinTemp = A1; // pin of temperature sensor on A1

const int analogInPin = A0; //pin of light sensor on A0

const int pinLed = 3; //pin of Led Socket on D3

float Vout = 0.0; //Volt out
float Vin = 3.0; ///Volt of Intel = 3V

//Temp section

void loop()
{ int val = analogRead(pinTemp); // get analog value resistance=(float)(1023-val)*10000/val; // get resistance temperature=1/(log(resistance/10000)/B+1/298.15)-273.15; // calc temperature delay(1000); // delay 1s }

//Heart rate sensor

void setup()
{ pinMode(pinLight, INPUT); //set the Sensor on Analog 0 as an INPUT pinMode(pinLed, OUTPUT); //set the LED on Digital 3 as an OUTPUT } void loop() { digitalWrite(pinLed, HIGH); //set the LED as HIGH int sensorValue = analogRead(pinLight); //read value of Sensor Light Vout = (Vin/1024.0 * sensorValue); //convert sensorValue in Volt

delay(1000); }

//GSM code is work in progress

Step 4: Conclusions

Finally, the various sensors monitors vital functions; when they register an outlier (set in the code), the GSM Shield makes a call (in this case you can put a microphone) or sends SMS to doctor or first aid center to intervene in time.

Another features could be the cloud storage: in fact, the data of the sensors can be sent to cloud storage platform (ie. Elastichsearch and Kibana) and these can create a chart useful to the doctor to monitor the patient's health.

Cheers!