IoT Safety Monitoring System
A wearable ESP32 helmet that tracks a miner's zone, gas levels, temperature and falls — streaming to a live supervisor dashboard and firing Telegram alerts when a reading crosses the line.

- Team
- Team of 3
- Period
- 2025
- Status
- Delivered
- Platform
- IoT
- Languages
- TypeScript · C++
The problem
Underground, the two things a supervisor cannot see are where a worker is and what they are breathing. By the time either becomes obvious from the surface, it is an incident report rather than a warning.
How it was built
- 01
Wrote the ESP32 firmware in C++ to poll MQ-135 gas, DHT11 temperature and humidity, and MPU6050 accelerometer data on a fixed cycle.
- 02
Authenticated each worker at the helmet with an MFRC522 RFID reader, so telemetry is attributed to a person and a zone rather than to a device id.
- 03
Streamed readings to Firebase Realtime Database, which gives the dashboard a live subscription instead of a polling loop.
- 04
Detected falls from MPU6050 orientation deltas and fired Telegram alerts on threshold breaches — the alert reaches a phone already in the supervisor's pocket.
- 05
Built the supervisor dashboard in TypeScript for live zone, gas and status views across all active helmets.
What shipped
Live dashboard deployed at minelivemonitor.systems.
Full pipeline from sensor to cloud to alert: ESP32 → Firebase RTDB → dashboard and Telegram.
Three-star repository combining C++ firmware with a TypeScript web dashboard.
In one paragraph
The IoT Safety Monitoring System is a smart safety helmet for underground miners. An ESP32 reads gas levels (MQ-135), temperature and humidity (DHT11), motion and falls (MPU6050) and worker identity (MFRC522 RFID), streams telemetry to Firebase Realtime Database, sends Telegram alerts on threshold breaches, and feeds a live TypeScript supervisor dashboard hosted at minelivemonitor.systems.