The problems on non-adherence in medicine are far reaching and have wide reaching consequences, such as delayed recovery and increased risk of repeat injury - this comes at a large cost to the health service due to the need for longer longer treatment times a slower reduction in the patient base.

Monitoring adherence in physiotherapy patients is particularly difficult due to the large and wide range of expected recovery times. Moreover, different patients will have different amounts of adherence to the exercise in both frequency and quality. That is to say that one patient may do the exercise every day as instructed but with poor form, whereas another patient may forget to do the exercises but still perform the required exercise to a high standard.

What it does

Monitors and logs smart phone accelerometer and gyroscope data in order to calculate amount of joint rotation and limb displacement. This would be done by holding the phone or strapping it to the patients limb while the exercise is performed. The data is logged and can be compared over time to see improvements in the patients condition.

How we built it

Attempt 1: We attempted to build the front end as a web app to ensure interchangeability between different smartphones, as in general mobile browsers can pull sensor information and record it. Once recorded we planned to pass the data through to python for manipulation, analysis and presentation.

Attempt 2: Due to lack of experience, we were unable to fully implement attempt 1, and therefore we designed a prototype in MATLAB with Simulink which is able to interface with mobile phone sensor data to produce real time readouts of multi-axial displacement and orientation. These real time readouts were logged during an exercise and presented as crisp and deterministic values of limb movement and angular joint displacement.

Challenges we ran into

Working with JavaScript for the first time was extremely difficult, let alone having it interface with Python! The first several hours were spent getting sensor data pulled through the browser, but the rest of the night was spent unsuccessfully trying to pass the data from JavaScript through to Python for manipulation and back again to the front end for displaying.

Accomplishments that we're proud of

Actually doing a thing or two with JavaScript - Also played with webservers for the first time!

What we learned

A lot of JavaScript, and that JavaScript is quite hard to jump into at the deep end. Getting different programming languages talking to each other is hard, and not something we've had to deal with before as we, as engineers, typically work exclusively with either MATLAB or Python.

What's next for Tracking Physio Adherence

We'd like to keep learning JavaScript in order to pass the data through to Python. Ideally once we have the minimal viable product, we'd like to focus more on the practicality and aesthetics of the web interface, as web design is something that interests all of us on the team.

Share this project: