Affordable IoT home automation with voice control, energy monitoring & Android companion app
Smart Home is an affordable IoT home automation system developed and deployed in a real-time environment. It enables clients to monitor and control home appliances from anywhere in the world — with optional automation triggered by integrated sensors. The system features real-time energy analytics, voice control, and a companion Android app.
"Why only Smart Cities? Why Not Smart Huts?"
Built: Jan 2018 – Mar 2018
flowchart TD
Voice[Voice Recognition] --> App[Android App\nJava + Firebase]
App --> FB[(Firebase\nRealtime DB)]
FB --> MCU[Arduino / NodeMCU\nMQTT Controller]
MCU --> R1[Relay — Lights]
MCU --> R2[Relay — Fan / AC]
MCU --> R3[Relay — Appliances]
Sensors[IoT Sensors\nMotion · Temp · Humidity] --> MCU
MCU --> Energy[Energy Monitor\nBill Prediction]
Energy --> FB
FB --> App
style App fill:#3DDC84,color:#000,stroke:none
style FB fill:#FFCA28,color:#000,stroke:none
style MCU fill:#00979D,color:#fff,stroke:none
style Energy fill:#0288D1,color:#fff,stroke:none
| Layer | Technology |
|---|---|
| Mobile App | Android, Java |
| Backend | Firebase Realtime Database |
| Hardware | Arduino, NodeMCU (ESP8266) |
| Protocol | MQTT, WiFi |
| Features | Voice Recognition, Energy Monitoring |
| Sensors | Motion, Temperature, Humidity |
- Remote control — manage appliances from anywhere via the Android app
- Voice recognition — hands-free control of connected devices
- One-click automation — sensor-triggered rules with a single tap
- Real-time energy analytics — live usage dashboard with bill prediction
- Multi-utility controllers — lights, fans, AC, and custom appliances
- Secure pairing — Bluetooth-assisted device pairing on first setup
| Screen | Description |
|---|---|
| First Screen | Welcome and authentication |
| Pairing Screen | Bluetooth device pairing |
| Home Dashboard | Main appliance control panel |
| Consumption Activity | Energy usage and bill analytics |
| Log Activity | Event and automation logs |
- Clone the repo and open in Android Studio
- Add your
google-services.jsontoapp/ - Flash the Arduino sketch to your NodeMCU
- Build and install the APK on your Android device