from gpiozero import MotionSensor, LED, Buzzer
from signal import pause
import time
# Setup
pir = MotionSensor(17) # PIR sensor connected to GPIO 17
buzzer = Buzzer(19) # Buzzer connected to GPIO 19
red_led = LED(20) # Red LED connected to GPIO 20
green_led = LED(21) # Green LED connected to GPIO 21
def alarm():
red_led.on() # Turn on red LED
buzzer.on() # Activate buzzer
print("Motion detected! Alarm activated!")
def reset_alarm():
red_led.off() # Turn off red LED
buzzer.off() # Deactivate buzzer
green_led.on() # Turn on green LED when reset
print("Alarm reset.")
# Attach motion detection event handlers
pir.when_motion = alarm
pir.when_no_motion = reset_alarm
# Keep the program running
try:
pause()
except KeyboardInterrupt:
reset_alarm()