import network
import urequests
import time
from machine import Pin
import dht
# WiFi Setup
WIFI_SSID = "Wokwi-GUEST" # Use your Wi-Fi name
WIFI_PASSWORD = "" # No password for Wokwi
# Firebase Realtime DB URL
FIREBASE_URL = "https://cowfit-demo-d2364-default-rtdb.firebaseio.com/weather.json"
# DHT22 Sensor Setup on GPIO 15
sensor = dht.DHT22(Pin(15))
# Connect to Wi-Fi
print("Connecting to WiFi...", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect(WIFI_SSID, WIFI_PASSWORD)
while not sta_if.isconnected():
print(".", end="")
time.sleep(0.5)
print(" Connected!")
# Loop to send data every 5 seconds
while True:
try:
sensor.measure()
temp = sensor.temperature()
humidity = sensor.humidity()
data = {
"temperature": temp,
"humidity": humidity,
"timestamp": time.time()
}
print("Uploading to Firebase:", data)
response = urequests.post(FIREBASE_URL, json=data)
print("Response:", response.text)
response.close()
except Exception as e:
print("Error:", e)
time.sleep(5)