#https://www.hivemq.com/demos/websocket-client/
import network
import time
from machine import Pin
from umqtt_simple import MQTTClient
import gc
gc.collect()
led = Pin(17, Pin.OUT)
WIFI_SSID = "Wokwi-GUEST"
WIFI_PASSWORD = ""
MQTT_BROKER = "broker.hivemq.com"
TOPIC = b"wokwi/iot/led17"
print("Connecting to WiFi...")
wifi = network.WLAN(network.STA_IF)
wifi.active(True)
wifi.connect(WIFI_SSID, WIFI_PASSWORD)
while not wifi.isconnected():
time.sleep(0.5)
print("WiFi Connected!")
def callback(topic, msg):
print("Message:", msg)
if msg == b'on':
print("LED ON")
led.value(1)
elif msg == b'off':
print("LED OFF")
led.value(0)
client = MQTTClient("wokwi-client", MQTT_BROKER)
client.set_callback(callback)
client.connect()
print("MQTT Connected")
while True:
client.subscribe(TOPIC)
client.check_msg()
# time.sleep(0.1)