Predictive Maintenance System — ESP32 Edge Node + AI Anomaly-Detection Backend
- Client
- Manufacturing & Industry 4.0
- Year
- 2024
- Category
- Internet of Things (IoT)

Sudden machine failure is the most expensive kind of downtime. NELSco built a system that links a custom ESP32-based hardware node, installed directly on the machine, with a server-side machine-learning engine for real-time anomaly detection and exact faulty-sensor identification, rather than a generic alarm.
An ESP32 edge node mounted on the machine continuously streams live temperature, pressure, and vibration data to the server; the backend's 5-algorithm PyOD core (Isolation Forest, ECOD, and three other top models) auto-selects the best model for each machine's behavior profile.
IQR-based outlier removal and automatic multi-sensor normalization before the model, plus Z-Score root-cause analysis that identifies the exact faulty sensor with a numerical deviation (e.g. "4.5σ deviation on the X-axis vibration sensor").
Time-series storage with InfluxDB, a FastAPI + PostgreSQL REST backend, and live Streamlit + Grafana dashboards in a microservices architecture scalable across multiple machines.
The Challenge
Detecting an emerging fault from raw temperature, pressure, and vibration data is hard: fixed thresholds either flood operators with false alarms or catch failures too late, sensor communication noise pollutes predictions, and large-scale sensors can mask small-scale but critical ones. On top of that, the operator must know exactly which sensor is at fault.
Our Approach
On the hardware layer, a compact ESP32-based sensing device mounted directly on the machine continuously streams live temperature, pressure, and vibration data to the server. On the backend, a 5-algorithm PyOD core (Isolation Forest, ECOD, plus three other top models) auto-selects the best model for each machine's unique behavior profile. Before the model, IQR-based outlier removal and automatic multi-sensor normalization are applied, and Z-Score root-cause analysis pinpoints the exact faulty sensor with a numerical deviation (e.g. "4.5σ deviation on the X-axis vibration sensor"). InfluxDB stores the time-series streams, a FastAPI + PostgreSQL REST backend handles device/user management, and Streamlit + Grafana power live dashboards in a microservices architecture.
The Result
The system analyzes sensor data and detects abnormal operating conditions before a machine fails: the maintenance team is dispatched ahead of the breakdown, avoiding costly unplanned downtime. The microservices architecture scales across multiple machines.
Results
- Detects abnormal conditions before failure and avoids unplanned downtime
- Pinpoints the exact faulty sensor with a numerical deviation, not a generic alarm
- Scales across multiple machines via a microservices architecture
Have a similar project?
Get in touch with NELSco's engineering team to discuss your project requirements.