Skip to content

H-E-Clements/MSYNC

Repository files navigation

Information about this repository

MSYNC is a multi-component, full-stack platform for remote cardiovascular health monitoring.
It integrates Android, Spring Boot, React, AWS, and PyTorch microservices to collect, process, and analyse live biometric data from Bluetooth heart rate sensors, enabling real-time anomaly detection and doctor-patient data visualisation.


Overview

Component Technology Description
Android App Kotlin (Jetpack Compose), BLE Connects to heart rate sensors, streams HR and RR intervals, and uploads data.
Web Dashboard React + Tailwind Doctor-facing interface for live data visualisation and patient monitoring.
Backend API Spring Boot (Java) RESTful API managing authentication, patient data, and sensor sessions.
ML Microservice FastAPI (Python) + PyTorch Detects ECG anomalies using a CNN–Autoencoder model trained on PhysioNet datasets.
Cloud Infrastructure AWS (EC2, S3, ECR), GitLab CI/CD Fully containerised and deployed using Docker and automated pipelines.

Objectives

  • Enable continuous remote cardiac monitoring for at-risk patients.
  • Detect potential anomalies in ECG data in real time using machine learning.
  • Provide healthcare professionals with a secure, intuitive dashboard.
  • Demonstrate cross-platform integration across mobile, web, and cloud environments.

Key Features

  • Real-time ECG & HR Data Collection via Bluetooth Low Energy (BLE)
  • Anomaly Detection powered by a trained CNN Autoencoder (PyTorch)
  • Doctor Dashboard with live signal plotting and patient summaries
  • Continuous Integration/Deployment with GitLab CI/CD pipelines to AWS
  • Scalable Microservice Architecture supporting containerised ML models

Machine Learning Component

The anomaly detection model (MsyncNet) is a hybrid CNN + Autoencoder trained on PhysioNet ECG datasets.
It reconstructs normal heartbeats and flags irregular patterns indicating possible arrhythmias.

  • Dataset: PTB-XL / CINC2021 (PhysioNet)
  • Framework: PyTorch
  • Architecture: 1D-CNN Encoder + Decoder
  • Evaluation Metric: Reconstruction Loss (MSE)
  • Output: Binary anomaly flag per ECG segment

Tech Stack

Frontend: React, JavaScript, Tailwind CSS
Mobile: Kotlin, Jetpack Compose, Android BLE API
Backend: Spring Boot, Java, REST APIs, JWT Auth
Machine Learning: PyTorch, FastAPI, NumPy, Pandas
Database: MongoDB, MySQL, InfluxDB
DevOps / Cloud: AWS EC2, S3, ECR, Docker, GitLab CI/CD
Monitoring: Grafana, Prometheus
Other: Git, Agile, Test-Driven Development


System Architecture

  • Android collects and transmits HR/ECG via HTTPS.
  • Spring Boot stores & streams data to the ML microservice.
  • FastAPI model evaluates for anomalies.
  • React dashboard visualises real-time metrics and alerts.

Example Use Case

  1. A patient connects their Bluetooth heart monitor via the Android app.
  2. The app streams live ECG data to the backend.
  3. The ML service analyses the signal in real-time and flags anomalies.
  4. The doctor dashboard visualises alerts and patient health status.

About

MSYNC: Full-stack remote heart-monitoring platform combining Android, Spring Boot, React, and PyTorch. Collects real-time sensor data and detects ECG irregularities through a cloud-deployed ML model.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors