import network
import time
from machine import Pin
import dht
from umqtt.simple import MQTTClient
# Paramètres WiFi
WIFI_SSID = "Wokwi-GUEST"
# Paramètres MQTT
CLIENT_ID = "dht22_sensor"
BROKER = "broker.mqttdashboard.com"
TOPIC = "serferweather"
# Connexion WiFi
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
print("Connexion WiFi...", end="")
wlan.connect(WIFI_SSID)
while not wlan.isconnected():
print(".", end="")
time.sleep(0.1)
print(" OK")
# Connexion MQTT
client = MQTTClient(CLIENT_ID, BROKER)
client.connect()
print("Connexion MQTT réussie")
# Capteur DHT22
sensor = dht.DHT22(Pin(15))
prev_data = None
while True:
sensor.measure()
data = f'{{"temp":{sensor.temperature()},"humidity":{sensor.humidity()}}}'
if data != prev_data:
print("Envoi des données :", data)
client.publish(TOPIC, data)
prev_data = data
else:
print("Pas de changement")
time.sleep(1)