๐ ๏ธ MAKER GUIDEApr 16, 2026โขโฑ๏ธ 2 min readโข๐ณ๐ต Tested in Nepal
Automated Solar LED Street Light with LDR Daylight & PIR Motion Dimming
Conserve solar battery energy in rural municipal streets with 2-stage PWM dimming: 20% ambient nightlight increasing to 100% full illumination upon PIR human movement.
๐ ๏ธ BILL OF MATERIALS (BOM)
Required Hardware & Component Checklist
Curated components verified for this project. Check the items you need, adjust quantities, and add straight to cart:
Estimated Total (6/6 items):
NPRย 1,780
โ Cash on Delivery across Nepal
All parts selected
NPRย 750
NPRย 150
NPRย 250
NPRย 60
NPRย 120
NPRย 450
Automated Solar LED Street Light with LDR Daylight & PIR Motion Dimming
Rural street lighting installations often deplete battery reserves before dawn. This smart solar luminaire switches on at dusk via an LDR Light Dependent Resistor, operating at an energy-saving 20% standby glow until the HC-SR501 PIR Motion Sensor detects pedestrians, ramping up to 100% brightness via an IRFZ44N Power MOSFET.
Hardware Bill of Materials (In Stock at Ghumti Pasal):
- Microcontroller: Arduino Nano V3.0 Solderless (Without Cable)
- Light Sensor: LDR Light Dependent Resistor 5mm Photoresistor Sensor Module
- Motion Sensor: HC-SR501 Adjust IR Pyroelectric Infrared PIR Module
- PWM Switch: IRF Z44N N-Channel Power MOSFET
- Battery Charging: Type C 5V 1A 18650 TP 4056 Lithium Battery Charger Module
- Battery: 18650 3.7V 3000mAh Lithium-Ion Battery
Circuit Pinout & Wiring Connections:
| Component / Sensor Pin | Arduino Nano Pin | Function / Description |
|---|---|---|
| LDR Sensor Analog (AO) | Pin A0 | Ambient Dusk / Dawn Threshold Sensing |
| HC-SR501 PIR OUT | Pin D2 (INT0) | Active High Motion Trigger Signal |
| IRFZ44N Gate | Pin D9 (PWM via 1kฮฉ Resistor) | LED High-Frequency PWM Brightness Drive |
| IRFZ44N Drain | High-Power LED Cathode (-) | Switched Ground Path |
| IRFZ44N Source | GND | Common Ground Reference |
| TP4056 BAT+ / BAT- | 18650 Cell (+ / -) | Battery Overcharge & Overdischarge Buffer |
| TP4056 OUT+ / OUT- | Nano VIN & GND | Regulated Microcontroller Power |
Arduino Control Code:
const int ldrPin = A0;
const int pirPin = 2;
const int mosfetPin = 9;
const int duskThreshold = 400; // Calibrated for evening twilight
void setup() {
Serial.begin(9600);
pinMode(pirPin, INPUT);
pinMode(mosfetPin, OUTPUT);
analogWrite(mosfetPin, 0);
}
void loop() {
int lightLevel = analogRead(ldrPin);
bool motionDetected = digitalRead(pirPin);
if (lightLevel > duskThreshold) { // Nighttime
if (motionDetected) {
analogWrite(mosfetPin, 255); // 100% Full High Beam
delay(15000); // Keep illuminated for 15 seconds
} else {
analogWrite(mosfetPin, 50); // 20% Energy Saving Standby Glow
}
} else {
analogWrite(mosfetPin, 0); // Daytime Off & Charging
}
delay(200);
}
โ Previous Guide
Hardware Protocol Debugging: Using USB Logic Analyzers for I2C, SPI & UART
Next Guide โ
Underground Sump & Water Well Depth Monitoring with Hydrostatic Pressure Sensor & ESP32
