#define PIR_SENSOR 2 // PIR Sensor connected to Digital Pin 2
#define LED_PIN 9 // PWM LED pin
#define RELAY_PIN 8 // Relay pin for full light ON/OFF
int brightness = 0; // Initial LED brightness
bool motionDetected = false;
void setup() {
pinMode(PIR_SENSOR, INPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(RELAY_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
int motion = digitalRead(PIR_SENSOR);
if (motion == HIGH) {
Serial.println("Motion Detected! Increasing brightness...");
motionDetected = true;
digitalWrite(RELAY_PIN, HIGH); // Turn ON full light (if using relay)
// Gradually increase brightness
for (brightness = 0; brightness <= 255; brightness += 5) {
analogWrite(LED_PIN, brightness);
delay(50); // Smooth transition effect
}
} else {
if (motionDetected) {
Serial.println("No Motion. Dimming lights...");
motionDetected = false;
// Gradually decrease brightness
for (brightness = 255; brightness >= 0; brightness -= 5) {
analogWrite(LED_PIN, brightness);
delay(50);
}
digitalWrite(RELAY_PIN, LOW); // Turn OFF full light (if using relay)
}
}
delay(500); // Adjust sensitivity delay
}