from machine import Pin
from time import sleep
import dht
# Pin definitions
led = Pin(2, Pin.OUT) # LED on GPIO2
buzzer = Pin(15, Pin.OUT) # Buzzer on GPIO15
dht_sensor = dht.DHT22(Pin(4)) # DHT22 sensor on GPIO4
# Temperature threshold (example value, adjust as needed)
TEMP_THRESHOLD = 30 # Temperature in °C
while True:
try:
dht_sensor.measure()
temperature = dht_sensor.temperature() # Get temperature
humidity = dht_sensor.humidity() # Get humidity
print("Temperature:", temperature, "°C")
print("Humidity:", humidity, "%")
# Check temperature threshold and take action
if temperature > TEMP_THRESHOLD:
print("High Temperature Detected!")
for _ in range(5): # Blink LED and sound buzzer 5 times
led.on()
buzzer.on()
sleep(0.5) # Wait for 0.5 seconds
led.off()
buzzer.off()
sleep(0.5) # Wait for 0.5 seconds
else:
led.off() # Ensure LED is off
buzzer.off() # Ensure Buzzer is off
except OSError as e:
print("Failed to read from DHT22 sensor:", e)
sleep(1) # Wait for 1 second before next measurement