As a CPR instructor, I've noticed how difficult it can be consistently keep students aware of proper effective compressions and helping to ensure they practice those consistently. I've also thought about how difficult it must be for lay responders to know they are performing CPR properly.

As a potential, cost effective, solution for both of these problems this weekend I used a pebble smart watch worn by the provider and an android phone to track how well compressions are being performed. It detects the compressions and predicts how long until the rate drops to the point the provider needs to switch.

It uses an android app running PCA on the 3-axis accelerometer data from the pebble to monitor the energy provided and then detect when a proper compression is preformed. These are then counted to give the rate. Machine learning linear regression tracks the changes to the compression rate and indicates when the user is predicted to need to switch out. There was also a companion app that used the GPS location of the incident to show where help was need and when it would be needed but this stopped working on account of issues with the google-maps API keys.

This longest running challenges are rooted in the difficulty maintaining steady feeds of data from the pebble as it is not designed for real time operations, along with performing the analysis.

This is the first time I've written an android app and I'm proud of the accomplishment. Also I happy to be getting reasonable predictions as the math could be better designed given more time to plan and test.

I'd like to see the idea behind HeartStone deployed as a cost effective teaching aid in CPR classes to help ensure students get effective and consistent instruction on the most important aspect of CPR. There is also potential to use the idea in conjunction with the AEDs becoming more prevalent in the community, where a small sensor to be placed on the patient's chest is included with AED which can work with the AED to proactively guide the first responder in providing proper CPR.

Share this project:

Updates