Managed MQTT Cloud

MQTT Broker für Studenten und Unterricht: IoT-Labore ohne eigene Server

Ein praxisnaher Leitfaden für Lehrende und Studierende: Nutzen Sie einen öffentlichen MQTT-Broker für Live-Demos, geben Sie jedem Team einen isolierten kostenlosen Broker für benotete Arbeiten und vermeiden Sie die klassischen Stolperfallen im Labor.

Illustration eines MQTT Brokers für Studenten: Teams in einem Unterrichtsraum publizieren mit ESP32-Boards und Laptops an einen gemeinsamen Cloud-Broker
Probieren Sie es auf Ihrem eigenen MQTT-Broker ausHolen Sie sich im Free-Tarif einen privaten, verwalteten MQTT-Broker und starten Sie mit fertigen Codebeispielen.
Kostenlos testen Codebeispiele Keine Kreditkarte erforderlich

Bei der Wahl eines MQTT Brokers für Studenten geht es vor allem darum, Reibung zu beseitigen: Niemand sollte eine Laborsitzung damit verlieren, Mosquitto zu installieren, gegen eine Campus-Firewall anzukämpfen oder herauszufinden, welcher Sensor welches Teams ein gemeinsames Topic überflutet. Dieser Leitfaden zeigt Lehrenden an Hochschulen, Berufsschulen und in Lernfabriken, wie sie IoT-Labore mit broker.connectmq.com für Live-Demos und einem isolierten, kostenlosen ConnectMQ Serverless Broker pro Team für benotete Projekte durchführen, mit einer Abfolge von Laboreinheiten, sofort lauffähigem Code und Regeln für den Unterricht, die das übliche Chaos verhindern.

Was ein Unterrichtsraum von einem Broker braucht

MQTT zu lehren, setzt andere Prioritäten als der Betrieb produktiver Systeme:

  • Keine Einrichtung auf den Laborrechnern. Studierende sollten in den ersten zehn Minuten publizieren.
  • Von überall erreichbar. Laborrechner, Laptops der Studierenden zu Hause und ESP32-Boards im Campus-WLAN brauchen alle denselben Endpunkt.
  • Sichtbarer Datenverkehr. Nachrichten fließen zu sehen, ist der Aha-Moment; ein Topic-Explorer hilft enorm.
  • Isolation für die Bewertung. Ein benotetes Projekt darf nicht dadurch kaputtgehen, dass ein anderes Team auf dasselbe Topic publiziert.
  • Keine Kosten. Die meisten Lehrveranstaltungen haben kein Budget für Infrastruktur pro Studierendem.

Ein selbst gehosteter Broker auf einem Laborserver kann funktionieren, aber jemand muss ihn warten, Ports öffnen und reparieren, wenn er am Labortag um 9 Uhr ausfällt. Ein gehosteter Dienst vermeidet das. Für das Grundkonzept können Studierende mit was ein MQTT Broker macht beginnen.

Zweistufiges Setup: öffentlich für Demos, privat für Projekte

Einsatz Broker Authentifizierung Isolation Warum
Demos in der Vorlesung, erste Labore broker.connectmq.com (Öffentlicher MQTT-Broker) Keine, beliebige eindeutige Client ID Keine, für alle lesbar Sofortiger Start, alle sehen alles
Teamprojekte, benotete Arbeiten ConnectMQ Serverless (Free), einer pro Team Generierter Benutzername, Passwort, Client ID Isolierter Mandant Teams können sich nicht stören, Zugangsdaten vermitteln gute Praxis

Der öffentliche MQTT-Broker für Demos

Der Öffentliche MQTT-Broker ist für Tests und Prototypen gedacht und akzeptiert anonyme Verbindungen auf 1883, 8883, 8083 und 8084. Seine Limits passen gut zur Lehre: 64 KB pro Nachricht, 10 Nachrichten pro Sekunde und Client, 10 Abonnements pro Client, 8 Topic-Ebenen, QoS 0 bis 2 und Sessions bis zu 30 Minuten. Diese Limits verhindern auch, dass eine außer Kontrolle geratene Schleife im Code eines Studierenden irgendetwas überlastet.

Der öffentliche MQTT-Broker ist für jeden im Internet lesbar. Machen Sie das zu einem Lerninhalt statt zu einer Fußnote: Publizieren Sie dort niemals Namen, Matrikelnummern, Standorte oder andere persönliche Daten.

Private Serverless Broker für benotete Projekte

Jedes Team registriert sich für einen kostenlosen ConnectMQ Serverless Broker. Es erhält Benutzernamen, Passwort und Client ID, bis zu 25 Verbindungen, QoS bis 1 und Nachrichten bis 256 KB, was für ein Projekt mit mehreren Sensoren, einem Dashboard und einem Node-RED-Flow reichlich ist. Teams können ihre Arbeit im Browser-Client, im Live-Topic-Explorer und im Dashboard des Portals zeigen und Schwellenwert-Alarmregeln konfigurieren, was eine gute Vorführung bei der Bewertung ergibt.

Eine Abfolge aus fünf Laboreinheiten

Labor 1: Publish und Subscribe über die Kommandozeile

Alle Studierenden wählen eine kurze zufällige ID, zum Beispiel ihre Initialen plus vier zufällige Zeichen. Zwei Terminals:

# Terminal 1
mosquitto_sub -h broker.connectmq.com -p 1883 -i sub-ab7k2q -t 'connectmq/demo/ab7k2q/#' -v

# Terminal 2
mosquitto_pub -h broker.connectmq.com -p 1883 -i pub-ab7k2q \
  -t 'connectmq/demo/ab7k2q/hello' -m 'my first MQTT message'

Dann abonniert die Lehrkraft connectmq/demo/+/hello, und die Klasse sieht zu, wie die Nachrichten eintreffen. Dieser eine Befehl vermittelt Topics, Wildcards und Entkopplung besser als jede Folie.

Labor 2: QoS, Retained Messages und Last Will

Publizieren Sie eine retained Message, trennen Sie die Verbindung, verbinden Sie sich neu und beobachten Sie, wie sie sofort ankommt. Beenden Sie einen Client mit registriertem Last Will abrupt und sehen Sie zu, wie der Last Will erscheint. Kombinieren Sie dieses Labor mit MQTT-QoS-Stufen erklärt.

Labor 3: Ein Sensor-Simulator in Python

import json
import random
import time
import uuid

import paho.mqtt.client as mqtt

STUDENT_ID = "ab7k2q"  # durch Ihre eigene zufällige ID ersetzen
BASE = f"connectmq/demo/{STUDENT_ID}/room"

client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2,
                     client_id=f"py-{STUDENT_ID}-{uuid.uuid4().hex[:4]}")
client.will_set(f"{BASE}/status", "offline", qos=1, retain=True)


def on_connect(client, userdata, flags, reason_code, properties):
    print("Connected:", reason_code)
    client.publish(f"{BASE}/status", "online", qos=1, retain=True)
    client.subscribe(f"{BASE}/setpoint")


def on_message(client, userdata, msg):
    print("New setpoint:", msg.payload.decode())


client.on_connect = on_connect
client.on_message = on_message
client.connect("broker.connectmq.com", 1883, keepalive=60)
client.loop_start()

while True:
    reading = {"temp": round(random.uniform(19.0, 24.0), 1), "ts": int(time.time())}
    client.publish(f"{BASE}/temperature", json.dumps(reading), qos=1)
    print("Sent", reading)
    time.sleep(2)

Installieren Sie mit pip install paho-mqtt. Die Studierenden publizieren dann über die Kommandozeile einen Sollwert und sehen, wie ihr Skript reagiert.

Labor 4: Hardware

Wechseln Sie zu ESP32-Boards. Mit dem ESP32-MQTT-Tutorial publiziert ein Board innerhalb einer Sitzung; anschließend ergänzen die Teams einen echten Sensor. Campus-WLANs mit Captive Portal oder WPA2-Enterprise blockieren Embedded-Boards häufig, testen Sie das Netz also vor dem Labor oder bringen Sie einen eigenen Access Point mit.

Labor 5: Teamprojekt auf einem privaten Broker

Die Teams erstellen ihren eigenen Serverless Broker, wechseln zu Port 8883 mit TLS und Zugangsdaten und bauen etwas durchgängig: Sensoren, ein Node-RED- oder Web-Dashboard und einen Alarm. Der Sprung von anonymen zu authentifizierten Verbindungen ist bereits eine Sicherheitslektion; verweisen Sie die Teams auf Best Practices für MQTT-Sicherheit. In Studiengängen mit Bezug zu Industrie 4.0 oder Automatisierungstechnik bietet sich als Projektvorgabe eine Topic-Struktur nach ISA-95 an: Die Ebenen Enterprise, Site, Area, Line und Cell bilden einen kleinen Unified Namespace (UNS), etwa hs-muenchen/lernfabrik/montage/linie-1/zelle-2/temperatur. So üben die Studierenden genau das Muster, das ihnen später in Fertigung und Maschinenbau begegnet; Hintergrund liefert der Beitrag Sparkplug B und Unified Namespace.

Regeln für den Unterricht, die Chaos verhindern

  1. Jede Client ID muss eindeutig sein. Zwei Studierende, die beide esp32 als Client ID verwenden, trennen sich endlos gegenseitig; das ist das häufigste Problem im Labor.
  2. Jedes Topic beginnt mit dem eigenen Präfix. Auf dem öffentlichen MQTT-Broker connectmq/demo/<your-random-id>/.... Kein Publizieren auf das Präfix anderer.
  3. Keine persönlichen Daten auf dem öffentlichen MQTT-Broker. Behandeln Sie ihn wie ein öffentliches Schwarzes Brett.
  4. Jede Publish-Schleife braucht eine Pause. Ein while True ohne sleep erreicht sofort das Ratenlimit.
  5. Zugangsdaten gehören nie in ein öffentliches Git-Repository. Verwenden Sie eine in .gitignore eingetragene Konfigurationsdatei oder Umgebungsvariablen.
  6. Die Topic-Tiefe vernünftig halten. Der öffentliche MQTT-Broker erlaubt 8 Ebenen.

Fehlerbehebung im Labor

Symptom Wahrscheinliche Ursache Lösung
Client verbindet sich und trennt sich immer wieder Doppelte Client ID Eine eindeutige zufällige ID verwenden
Es kommt nichts an Tippfehler im Topic oder falsche Groß-/Kleinschreibung Topics unterscheiden Groß- und Kleinschreibung; prefix/# abonnieren, um alles zu sehen
Verbindung auf dem Campus abgelehnt Port gesperrt 8883 versuchen oder WebSocket auf 8084 aus dem Browser
Nachrichten stoppen nach einem Schwall Ratenlimit auf dem öffentlichen MQTT-Broker Pause zwischen den Publishes einfügen
ESP32 tritt dem WLAN nie bei Enterprise- oder Captive-Portal-Netz Labor-Access-Point oder Smartphone-Hotspot verwenden
TLS-Fehler auf dem privaten Broker Falscher Port oder fehlende CA 8883 mit dem CA-Speicher des Systems verwenden

Zugangsdaten für eine ganze Klasse verwalten

Private Broker bedeuten Zugangsdaten, und Zugangsdaten gehen im Unterricht leicht verloren. Bitten Sie jedes Team, ein Mitglied zu bestimmen, das den Broker anlegt und die Zugangsdaten nur innerhalb des Teams über die Lernplattform teilt, nicht in einem öffentlichen Chat. Ermutigen Sie die Teams, eine kleine config.example-Datei mit Platzhalterwerten im Repository zu führen und die echte Datei von der Versionsverwaltung auszuschließen. Am Ende des Kurses können die Teams ihre Zugangsdaten löschen oder neu generieren, was gleichzeitig eine kurze Lektion zur Rotation von Zugangsdaten ist.

Ideen für die Bewertung

MQTT-Arbeiten lassen sich am leichtesten bewerten, wenn sie beobachtbar sind. Bitten Sie die Teams, einen Topic-Baum im Topic-Explorer zu präsentieren und sein Design zu begründen, vorzuführen, wie ein Last Will ein Gerät im Dashboard auf offline setzt, eine auslösende Alarmregel zu zeigen und ihre QoS-Entscheidungen zu erklären. Eine kurze schriftliche Reflexion darüber, was sich für den Produktivbetrieb ändern würde, etwa Zugangsdaten pro Gerät, TLS überall oder Kapazität, rundet das ab. Unser MQTT-Tutorial eignet sich gut als vorbereitende Lektüre, und der Leitfaden zum Cloud-MQTT-Broker gibt fortgeschrittenen Studierenden das Gesamtbild der Hosting-Optionen.

Starten Sie Ihr IoT-Labor mit ConnectMQ

Führen Sie Ihre erste Demo noch heute ohne Registrierung auf broker.connectmq.com durch und lassen Sie dann jedes Team unter app.connectmq.com ohne Kreditkarte einen kostenlosen Serverless Broker anlegen. ConnectMQ ist ein verwalteter MQTT-Broker, sodass Sie MQTT lehren statt Serveradministration.

Häufig gestellte Fragen

Gibt es einen kostenlosen MQTT Broker für Studenten?

Ja. broker.connectmq.com bietet einen kostenlosen öffentlichen MQTT-Broker für Demos, und alle Studierenden oder Teams können einen kostenlosen ConnectMQ Serverless Broker mit privaten Zugangsdaten und bis zu 25 Verbindungen anlegen.

Können Studierende den öffentlichen MQTT-Broker für ihr Abschlussprojekt nutzen?

Technisch funktioniert das, aber dort ist alles für jeden lesbar, und andere Studierende könnten auf dieselben Topics publizieren. Verwenden Sie für benotete Arbeiten einen privaten Serverless Broker.

Müssen Studierende einen Broker lokal installieren?

Nein. Clients wie mosquitto_pub, paho-mqtt oder der Browser-Client des Portals genügen, was Einrichtungszeit im Labor spart.

Warum werden Studierende ständig getrennt?

Fast immer, weil sich zwei Clients eine Client ID teilen. Jede Verbindung braucht ihre eigene eindeutige ID.

Können wir ESP32-Boards im Campus-WLAN verwenden?

Oft nur in Netzen mit einfachem WPA2-Passwort. Enterprise-Authentifizierung und Captive Portals blockieren Boards meist, ein eigener Labor-Access-Point ist daher die verlässliche Option.

Verwandte Artikel

BYOC-MQTT-Broker: Bring Your Own Cloud einfach erklärt

Ein BYOC-MQTT-Broker läuft in Ihrem Cloud-Konto, wird aber von einem Anbieter betrieben. Erfahren Sie, wie das Modell funktioniert, wie die Verantwortung aufgeteilt ist und wie Sie Ihr Konto darauf vorbereiten.

8 Min. Lesezeit

Google Cloud IoT Core Alternative: Optionen und Migration nach der Abschaltung

Google hat Cloud IoT Core im August 2023 eingestellt. Dieser Leitfaden vergleicht die realistischen Alternativen, überträgt IoT-Core-Konzepte auf reines MQTT und zeigt, wie Sie Geräte zu einem verwalteten MQTT-Broker umziehen, während die Daten weiter in Google Cloud fließen.

8 Min. Lesezeit

MQTT-Nachrichten pro Sekunde: Durchsatz abschätzen und messen

Die Durchsatzplanung für MQTT läuft auf wenige Formeln und eine ehrliche Messung hinaus. Erfahren Sie, wie Sie eingehende und ausgehende Nachrichten pro Sekunde abschätzen, Spitzen berücksichtigen und das Ergebnis einem Broker-Plan zuordnen.

7 Min. Lesezeit

Alle Artikel →

Ihr privater MQTT-Broker ist nur wenige Klicks entfernt

Konto anlegen, Broker-Zugangsdaten erhalten und das erste Gerät verbinden — ohne Server, die installiert, gepatcht oder skaliert werden müssen.