from machine import Pin
from time import sleep
from dht import DHT22
# Initialize DHT22 on GPIO 14
dht = DHT22(Pin(14))
# Initialize LEDs
blue_led = Pin(0, Pin.OUT) # Blue LED for <15°C
red_led = Pin(2, Pin.OUT) # Red LED for >30°C
yellow_led = Pin(13, Pin.OUT) # Yellow LED for 15°C–30°C
# Let the sensor stabilize
sleep(2)
while True:
try:
dht.measure()
temp = dht.temperature()
hum = dht.humidity()
print(f"Temperature: {temp}°C Humidity: {hum}%")
# Temperature logic
if temp < 15:
blue_led.on()
yellow_led.off()
red_led.off()
elif 15 <= temp <= 30:
blue_led.off()
yellow_led.on()
red_led.off()
else: # temp > 30
blue_led.off()
yellow_led.off()
red_led.on()
except OSError as e:
print("Sensor read failed. Check wiring or resistor.")
sleep(2)