As I was biking in the heat one day, I began to contemplate about the current health monitoring solutions on the market. My original idea questioned whether the hydration level of an athlete could be calculated or estimated based upon the voltage across their skin. My idea behind this was that various types of sweat may conduct different voltages. This could correspond and be correlated to different hydration levels based upon the content of the sweat. I continued to ponder this question over the next couple of days and then decided to pursue it as a personal project. My vision is for the following: a miniature wearable sized arduino would be connected to a series of thermometers, heart rate monitors (HRM) and possibly voltage meters. This information from the array of sensors would then be broadcast over Bluetooth Low Energy (BLE) and read through an iPhone application. The iPhone application would then take in this information, compare it across scales and other outside information such as temperature, humidity etc. Finally, all of this information would be run through an algorithm to determine the fitness level and health of an athlete. This information could be used to provide warning information through audible sounds in order to warn the athlete if they are getting close to an injury or heat exhaustion.
I researched the parts and ordered them. For the microcontroller, I ordered the Adafruit Feather 32u4 Bluefruit LE . I decided to combine this with an array of temperature breakout boards also from Adafruit. I would then follow a guide to build my HRM. I was lucky enough to find example code from Adafruit for connecting an iPHone application and sending HRM and thermometer information over BLE. I have been able to combine these two sketches to form one program that advertises both sets of information at the same time. The code can be found on GitHub . An issue that I ran into is that the BLE for the thermometer uses the GATT standard and is struggling to transmit any decimals. At this point, I round the float temperature reading to the nearest whole value and then convert this to an int and transmit it. I am currently working on wiring the custom HRM and then will port the code over so that instead of transmitting a random value, it can actually read the correct value. My future plans for the project are the following:
Finish wiring the HRM
Add code to read and transmit the HRM data
Using the code found here , write a custom iPHone application
Design and construct an alogrithm for testing the health of the wearer
Research the correlation between skin voltage and hydration levels
Design custom PCB for project