Smart Home Energy Monitor
An IoT system that tracks household energy usage in real time and suggests optimizations using ML models.
- Python
- TensorFlow Lite
- Raspberry Pi
- MQTT
- React Native
- PostgreSQL
Overview
Developed an end-to-end IoT system that monitors household energy consumption at the circuit level, identifies usage patterns, and recommends actionable optimizations. A companion mobile app provides real-time visibility and push notifications for anomalies.
The Challenge
Residential energy bills are opaque — homeowners see a monthly total but have no visibility into which appliances or habits drive consumption. Existing smart plugs monitor individual devices but miss the whole-home picture and can't identify behavioral patterns over time.
Approach
Deployed current-sensing hardware on the main electrical panel, streaming readings via MQTT to a Raspberry Pi hub. The hub runs a TensorFlow Lite model trained on labeled appliance signatures (non-intrusive load monitoring) to disaggregate total consumption into per-appliance estimates. Data syncs to a cloud backend for long-term trend analysis, and a React Native app surfaces insights and alerts.
Results
Pilot households reduced energy consumption by an average of 18% within the first three months. The disaggregation model identifies major appliances with 92% accuracy. The system detected a failing HVAC compressor in one home two weeks before it would have broken down, saving an estimated $1,200 in emergency repair costs.
Key Features
- Circuit-level energy monitoring with 1-second granularity
- Non-intrusive load monitoring with 92% appliance identification accuracy
- Real-time mobile dashboard with push notifications for anomalies
- ML-driven optimization suggestions based on usage patterns
- Predictive maintenance alerts for major appliances
Lessons Learned
The hardest part was training the disaggregation model on real-world data. Lab datasets didn't capture the noise and variability of actual households — overlapping appliance signatures, voltage fluctuations, and seasonal changes. Collecting a labeled dataset from 20 volunteer homes and using data augmentation techniques was the breakthrough that pushed accuracy from 74% to 92%.