import network import time import urequests import machine import dht from secrets import WIFI_SSID, WIFI_PASSWORD, AIO_USERNAME, AIO_KEY # DHT11 setup (GP14) sensor = dht.DHT11(machine.Pin(14)) # Connect to Wi-Fi wlan = network.WLAN(network.STA_IF) wlan.active(True) wlan.connect(WIFI_SSID, WIFI_PASSWORD) print("Connecting to Wi-Fi...") while not wlan.isconnected(): time.sleep(1) print("Connected:", wlan.ifconfig()) # Adafruit IO URLs temp_url = "https://io.adafruit.com/api/v2/{}/feeds/temperature/data".format(AIO_USERNAME) hum_url = "https://io.adafruit.com/api/v2/{}/feeds/humidity/data".format(AIO_USERNAME) headers = { "X-AIO-Key": AIO_KEY, "Content-Type": "application/json" } while True: try: sensor.measure() temp_c = sensor.temperature() humidity = sensor.humidity() # Convert to Fahrenheit temp_f = (temp_c * 9/5) + 32 print("Temp: {:.1f}°F Humidity: {}%".format(temp_f, humidity)) # Send temperature temp_data = {"value": temp_f} r = urequests.post(temp_url, json=temp_data, headers=headers) r.close() # Send humidity hum_data = {"value": humidity} r = urequests.post(hum_url, json=hum_data, headers=headers) r.close() print("Uploaded to Adafruit IO ✅") except Exception as e: print("Error:", e) # Wait 60 seconds time.sleep(60)