from machine import Pin
from umqtt.simple import MQTTClient
import time
import ujson
import network
import dht
led = Pin(4, Pin.OUT)
sensor = dht.DHT22(Pin(2))
wifi = network.WLAN(network.STA_IF)
wifi.active(True)
if not wifi.isconnected():
wifi.connect("Wokwi-GUEST", "")
while not wifi.isconnected():
pass
print("WiFi Connected:", wifi.ifconfig())
MQTT_CLIENT_ID = "nasywa"
MQTT_BROKER = "mqtt.thingsboard.cloud"
MQTT_USERNAME = "nasywaharvard2027"
MQTT_PASSWORD = "rimo2020"
TOPIC = "v1/devices/me/telemetry"
client = MQTTClient(MQTT_CLIENT_ID, MQTT_BROKER, user=MQTT_USERNAME, password=MQTT_PASSWORD)
client.connect()
print("Connected!")
while True:
try:
sensor.measure()
temp = sensor.temperature()
hum = sensor.humidity()
print("Temp:", temp, "Hum:", hum)
data = {
"temperature": temp,
"humidity": hum
}
client.publish(TOPIC, ujson.dumps(data))
print("Data sent!")
except Exception as e:
print("Error:", e)
time.sleep(2)