Remote Mobility Monitoring System

In this capstone project, the UBC Electrical and Computer Engineering (ECE) capstone students developed a proof of concept solution for the UBC CIC that allows caregivers to virtually monitor the mobility metrics of mobility-affected people. Supervised by their Capstone instructor, the student team SF-64 developed a set of platforms called Mobimon which includes a web application and an iOS app, which aggregates data from Apple Health Mobility metrics. As their client, the UBC CIC provided the AWS resources, guidance, and technical expertise. The Remote Mobility Monitoring System project was submitted to the 2023 Capstone Design & Innovation Day showcase as part of the ‘Facilitate Our Personal And Community Connection’ category.

Remote Mobility Monitoring System

Published:

Currently, mobility metrics are measured during regular checkups and require synchronous and on-premise meetings between the caregiver and patient. The purpose of the project was to develop a solution to collect data remotely so that metrics collected during synchronous meetings are supplemented. The solution prototype allows mobility metrics to be recorded asynchronously at any time and place. Mobimon offers convenience for caregivers to monitor patient metrics as well as in providing more frequent care for patients.

Approach

The UBC CIC had collaborated on a separate challenge to develop a solution prototype to improve the process of data collection for patients recovering from mobility challenges. Seizing an opportunity to build on the related project, the UBC CIC submitted a proposal to the ECE capstone program for students to expand on the concept and develop functionality to increase the utility of the solution by other organizations in different settings, such as nursing homes.

Both projects share the challenge where there is an opportunity to improve data collection and to minimize the necessity of mobility-challenged patients to visit healthcare premises to provide the metric information needed by caregivers.

The Remote Mobility Monitoring System capstone project is a complete mobility metric recording set that includes an iOS app to collect patient data and a web app for admins and caregivers to manage and visualize the mobility data. The main AWS components utilized are DynamoDB, Lambda, and Timestream to allow user access to the app or web app, and record metrics.

Screenshots of UI

Web App for Admins and Caregivers

The image shows the Mobimon web app page where admins can click on the 'Add new caregiver' button to add a new caregiver to the solution.

Admins can sign in and add a new caregiver with the ‘add new caregiver’ button.

This image displays multiple patient name cards that a caregiver can see.

Caregivers must log in to their account and link their patient by clicking on ‘add a new patient’. For verification, the patient will then be provided with a QR code to scan on their device.

The caregiver can view either individual or all patients’ metrics in graphs and tables.

iOS App for Patients

A screenshot of the patient sign in page on the iOS app.

On the app, patients can sign in once they have signed up for an account.

This image provides an example of what the Mobimon app looks like using sample data. It displays the complete list of mobility metrics patients can record and send to their caregivers.

Patients can view and send mobility metrics by clicking ‘send data’. Alternatively, the mobility data is also automatically uploaded in the background once every hour.

User Guide Video

Architecture Diagram

The architecture diagram of Mobimon's backend and frontend components. It contains the icons of each AWS service used, connected by arrows.

Technical Details

DynamoDB

The icon representing AWS' DynamoDB service. The icon consists of a blue background with a cylinder and lightning bolt.

In Mobimon’s use case, DynamoDB is used to store data records of users and the relationships between the users.

When an admin creates a caregiver account on the web app, a caregiver record is created in DynamoDB. Similarly, when a patient creates an account on the iOS app, a patient record is created in DynamoDB. Once the accounts have been created, caregivers and patients can log into their respective platforms.

For a patient to be linked to a caregiver, the caregiver must specify the patient’s email on the web app. It then creates another record on DynamoDB that links the patient to their caregiver.

Lambda

The icon of AWS Lambda. It has an orange background and a shape that resembles the letter A.

A Lambda function is used in multiple instances. It allows codes to be executed automatically without provision.

During the account creation process for caregivers and patients, the Lambda is called first before a record is created in DynamoDB. When caregiver accounts are created, a Create Caregiver Lambda is called. When patient accounts are created, a Create Patient Lambda is called.

In a separate situation, when patients send their mobility metrics to their caregiver(s), a Lambda is also used. The Add Metrics Lambda is called to send the data to Timestream (more details below).

Refer to the architecture diagram for the steps involved in each Lambda.

Timestream

The icon representing AWS Timeshare. In the blue square, there is a mini graph on top of a cylinder.

Timestream is a database that stores the patient’s mobility metrics on the AWS cloud.

When a patient sends mobility metrics to their caregiver(s), the data is sent to the AWS backend then to the web app. Within that process, the Lambda (more details above) is called and time-series data is sent to Timestream.

On the caregiver’s end, when they look for a patient’s metrics, they would be making a query from Timestream for data to appear on their web app.

For additional information on the technical details, refer to the Architecture Deep Dive on the GitHub repository.

Link to solution on GitHub: https://github.com/UBC-CIC/remote-mobility-monitoring/tree/main

Acknowledgements

This project was architected and developed by senior students in Electrical and Computer Engineering as part of the UBC Electrical and Computer Engineering Capstone Program. Guidance was provided by a faculty member who acted as the technical director and supported by the UBC Cloud Innovation Centre.

About the University of British Columbia Cloud Innovation Centre (UBC CIC)

The UBC CIC is a public-private collaboration between UBC and Amazon. A CIC identifies digital transformation challenges, the problems or opportunities that matter to the community, and provides subject matter expertise and CIC leadership.

Using Amazon’s innovation methodology, dedicated UBC and Amazon CIC staff work with students, staff and faculty, as well as community, government or not-for-profit organizations to define challenges, to engage with subject matter experts, to identify a solution, and to build a Proof of Concept (PoC). Through co-op and work-integrated learning, students also have an opportunity to learn new skills which they will later be able to apply in the workforce.