#--------------------------------------------------
# Module importieren
import network
import time
import random
from umqtt.simple import MQTTClient
#--------------------------------------------------
# WLAN-Konfiguration
WIFI_SSID = "Wokwi-GUEST"
WIFI_PASSWORD = ""
# MQTT-Konfiguration
MQTT_BROKER = "public.cloud.shiftr.io"
MQTT_USER = "public"
MQTT_PASSWORD = "public"
MQTT_TOPIC = "BBW/random"
#--------------------------------------------------
# setup
# WiFi auf ESP32 starten
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
# Verbinden mit WiFi-Netzwerk
print("Verbinde mit WiFi...")
wlan.connect(WIFI_SSID, WIFI_PASSWORD)
while not wlan.isconnected():
time.sleep(1)
print("Warten auf Verbindung...")
print("Mit WiFi verbunden!")
print("IP-Adresse:", wlan.ifconfig()[0])
# Verbinden mit MQTT-Broker
client = MQTTClient("BBW_esp32_client", MQTT_BROKER, user=MQTT_USER, password=MQTT_PASSWORD)
print("Verbinde mit MQTT-Broker...")
client.connect()
print("Mit MQTT-Broker verbunden!")
#--------------------------------------------------
# loop
while True:
# Zufälligen Wert (0..1000) generieren
random_value = random.randint(0, 1000)
# Nachricht auf MQTT-Broker publizieren
client.publish(MQTT_TOPIC, str(random_value))
# Info-Ausgabe in der Konsole
print("Publiziere Payload", random_value, "auf Topic", MQTT_TOPIC)
# 1 Sekunde Pause
time.sleep(1)