An intelligent, IoT-driven streetlight management system for urban energy efficiency.
AutoLightIQ automates urban illumination using the ESP8266 microcontroller. Traditional streetlights waste energy by staying on all night; this system uses a "light-on-demand" approach.
Static timers for streetlights lead to significant energy waste during inactivity and daylight.
A tiered decision-making framework:
- LDR Sensor: Detects if it is night or day. If bright, system stays dormant.
- IR Sensor Array: Once dark, the system waits for motion.
- LED Bank: Triggers 4 LEDs only when movement is detected.
- OTA Management: WiFi integration allows for remote firmware updates.
I had the honor of showcasing AutoLightIQ at the PNT Labs Expo 2025, hosted at my college. The project demonstrated real-time energy savings through automated sensor logic.
| Component | Quantity | Purpose |
|---|---|---|
| NodeMCU V3 (ESP8266) | 1 | Main Controller & WiFi Hub |
| IR Proximity Modules | 2 | Motion detection |
| LDR Module | 1 | Ambient light sensing |
| LED Bulbs | 4 | Streetlight simulation |
| Breadboard/Jumper Wires | ~ 35-40 | Physical connections |
![]() NodeMCU ESP8266 V3 |
![]() Start Infrared (IR) Sensor |
![]() End Infrared (IR) Sensor |
![]() Light Dependent Resistor (LDR) Module |
I personally executed the complete physical assembly and wiring of this project. Being my first experience with the NodeMCU and ArduinoIDE platform, I fully admit to using AI tools to help bridge the gap in my technical knowledge, that is to generate the majority of the code. However, every connection and line of code was reviewed by me, as the code is in C++, which is very similar to C that I am familiar with.
graph TD
A[Start] --> B{Is it Dark? - LDR}
B -- No --> C[LEDs OFF / Sleep]
B -- Yes --> D{Motion Detected? - IR}
D -- No --> E[LEDs OFF / Standby]
D -- Yes --> F[Trigger LEDs]
F --> G[Wait for Clear]
G --> B





