Back to projects

Mobile & IoT

Fall Detection

A complete embedded-ML IoT safety system, firmware to dashboard

ArduinoC++Edge ImpulseTinyMLNode.jsNext.js

Role

Developer

Duration

One Trimester

Date

2025

Type

University Project

By the Numbers

4

System Layers

Firmware → Web

Stack Span

On-device

Inference

Overview

A four-layer system built end to end. An Arduino-based wearable written in C++ runs an Edge Impulse-trained fall-detection model on-device through EloquentTinyML, streaming from accelerometer and gyroscope sensors; a Node.js API with JWT auth, Joi validation, helmet, and rate limiting ingests events and triggers alerts; and a Next.js dashboard gives caregivers live monitoring. One of the few student projects where hardware, embedded ML, and web engineering all had to work together.

Tech Stack

ArduinoC++Edge ImpulseTinyMLNode.jsNext.js

Inside the Project

What it does, how it works, and what it ships.

warning

The Challenge

Detecting a fall reliably from noisy accelerometer data, while keeping the pipeline fast enough that an alert reaches a caregiver when it matters.

sensors

Embedded ML Pipeline

Raw accelerometer-gyroscope data trains an Edge Impulse model that is exported to the wearable for on-device inference, so there is no cloud round-trip for the classification decision. The raw sensor dataset ships in the repo.

  • ei-fall_detection-arduino export via EloquentTinyML
  • Raw acc_gyr.csv sensor dataset included
star

Server & Dashboard

  • Node.js API with Mongoose, JWT, Joi, helmet, express-rate-limit, bcryptjs
  • Next.js App Router dashboard for caregivers

Outcomes

Hardware-to-cloud engineering in one project.

sensors

C++

Wearable Firmware

model_training

TinyML

On-Device Classifier

monitor_heart

Live

Alert Dashboard

“IoT projects punish hand-waving. Every layer either works or the demo fails in front of everyone.”
Personal Reflection

Interested in this project?

Reach out for source code walkthroughs or collaboration.