import network
import time
from machine import Pin
from umqtt.simple import MQTTClient
# WiFi
ssid = "Wokwi-GUEST"
password = ""
# MQTT
mqtt_server = "broker.emqx.io"
topic_led = b"esp32/led"
# LED
pin_led = Pin(15, Pin.OUT)
# Connexion WiFi
wifi = network.WLAN(network.STA_IF)
wifi.active(True)
wifi.connect(ssid, password)
print("Connexion WiFi...")
while not wifi.isconnected():
time.sleep(0.2)
print("WiFi connecté")
# Callback MQTT
def callback(topic, msg):
print("Message reçu :", topic, msg)
if topic == topic_led:
if msg == b"ON":
pin_led.on()
elif msg == b"OFF":
pin_led.off()
# Connexion MQTT
client = MQTTClient("esp32_led", mqtt_server)
client.set_callback(callback)
client.connect()
client.subscribe(topic_led)
print("MQTT connecté")
print("Abonné à esp32/led")
while True:
client.check_msg()
time.sleep(0.1)