Eine MQTT Explorer Desktop App zeigt, was ein Terminal nicht kann: den gesamten Topic-Baum auf einen Blick, welche Zweige aktiv sind, welchen Retained-Wert jedes Topic hat und wie sich ein Payload im Lauf der Zeit verändert hat. Dieser Leitfaden vergleicht die wichtigsten Desktop-Explorer, erklärt, welche Funktionen beim Debuggen eines echten Systems wirklich zählen, und zeigt Schritt für Schritt, wie Sie einen davon mit einem vorbefüllten Topic-Baum an broker.connectmq.com anbinden, damit Sie sie selbst bewerten können. Gerade beim Aufbau eines Unified Namespace (UNS) in der Fabrik ist ein Explorer das wichtigste Werkzeug, um zu prüfen, ob Werke, Linien und Maschinen wirklich dort im Topic-Baum landen, wo die Architektur sie vorsieht.
Warum ein Desktop-Explorer statt der CLI?
Kommandozeilen-Tools sind perfekt für Skripte und schnelle Checks; wir vergleichen sie in MQTT-CLI-Tools. Sie zeigen Nachrichten jedoch als Strom. Hat ein System Hunderte Topics, ist ein Strom schwer zu überblicken. Ein Desktop-Explorer macht aus diesem Strom eine Struktur:
- Ein Baum statt eines Logs. Sie sehen
factory1/line1/cnc1/telemetryals Zweig mit Geschwistern, sodass Benennungsfehler wieLine1stattline1sofort auffallen. - Neuester Wert pro Topic. Ein Klick auf einen Knoten zeigt seinen aktuellen (oft retained) Wert, ohne Wartezeit.
- Verlauf und Diffs. Viele Explorer speichern die letzten Nachrichten pro Topic, sodass Sie sehen, was sich zwischen zwei Payloads geändert hat.
- Sicheres Veröffentlichen. Gespeicherte Payloads, JSON-Formatierung und eine klare Retain-Checkbox verringern das Risiko, etwas Falsches in die Produktion zu senden.
- Mehrere Verbindungen. Wechseln Sie zwischen lokalem Broker, Staging-Broker und Produktion, ohne Zugangsdaten neu einzutippen.
Worauf es bei einer MQTT Explorer Desktop App ankommt
Nutzen Sie diese Checkliste, wenn Sie einen Explorer ausprobieren:
- Protokollunterstützung: MQTT 3.1.1 und 5.0 sowie Sichtbarkeit von MQTT-5-Properties wie User Properties, Content Type und Message Expiry.
- Transportoptionen: TCP, TLS, WebSocket und sicheres WebSocket, mit einem Feld für den WebSocket-Pfad (zum Beispiel
/mqtt). - TLS-Handhabung: nutzt den System-Truststore oder erlaubt das Hinzufügen einer CA-Datei; eine klare Fehlermeldung, wenn das Zertifikat scheitert.
- Performance des Topic-Baums: bleibt reaktionsschnell, wenn Sie auf einem stark frequentierten Broker
#abonnieren. - Payload-Darstellung: formatiertes JSON, Hex-Ansicht für Binärdaten und idealerweise Dekodierung für Formate wie Sparkplug B.
- Verwaltung von Retained Messages: sehen, welche Topics retained sind, und sie durch Veröffentlichen eines leeren Retained-Payloads löschen.
- Komfort beim Veröffentlichen: gespeicherte Nachrichten, QoS- und Retain-Steuerung, MQTT-5-Properties.
- Speicherung von Zugangsdaten: ob Passwörter verschlüsselt oder im Klartext in Konfigurationsdateien abgelegt werden.
- Plattformabdeckung: Builds für Windows, macOS und Linux für Ihr Team.
- Lizenz und Pflege: Open Source, kostenlos oder kommerziell, und wie aktiv das Tool aktualisiert wird.
Die wichtigsten Desktop-Explorer im Vergleich
| App | Lizenz | Stärke | Zu beachten |
|---|---|---|---|
| MQTT Explorer | Open Source | Hervorragender hierarchischer Topic-Baum mit Nachrichtenzählern, Payload-Verlauf, Diffs und Diagrammen für Zahlenwerte | Zum Durchsuchen gebaut; Veröffentlichen ist einfach gehalten |
| MQTTX (Desktop) | Open Source | Chat-artige Ansicht pro Verbindung, starke MQTT-5-Unterstützung, gespeicherte Verbindungen, Skripting | Strom-orientiert; die Baumansicht steht weniger im Mittelpunkt |
| MQTT.fx | Kommerziell | Langjähriges Tool, das vielen Ingenieuren vertraut ist | Lizenzmodell hat sich im Lauf der Zeit geändert; aktuelle Bedingungen prüfen |
| ConnectMQ Desktop MQTT Explorer | Hersteller-Tool | Topics durchsuchen, Testnachrichten veröffentlichen und Payloads prüfen – auf jedem MQTT-Broker | Neueres Tool; ergänzt das Webportal gut |
MQTT Explorer
MQTT Explorer ist das Tool, das viele meinen, wenn sie „MQTT Explorer“ sagen. Es abonniert breit (standardmäßig # und $SYS/#) und stellt alles als einklappbaren Baum dar, mit Zählern, wie viele Nachrichten unter jedem Zweig eingetroffen sind. Die Auswahl eines Topics zeigt den neuesten Payload, einen Verlauf der letzten Werte und einen Diff zur vorherigen Nachricht; numerische Werte lassen sich grafisch darstellen. Um ein unbekanntes System zu verstehen, ist das oft der schnellste Einstieg.
Vorsicht mit dem standardmäßigen #-Abonnement auf großen oder geteilten Brokern. Abonnieren Sie auf dem öffentlichen MQTT-Broker nur Ihr eigenes Präfix, um innerhalb des Limits von 10 Subscriptions pro Client zu bleiben und die App nicht mit dem Verkehr anderer Nutzer zu fluten.
MQTTX Desktop
MQTTX stellt jede Verbindung wie einen Chat dar: gesendete Nachrichten auf der einen, empfangene auf der anderen Seite, filterbar nach Topic. Es eignet sich hervorragend für interaktive Request-Response-Tests, MQTT-5-Properties und eine Bibliothek gespeicherter Verbindungen. Besteht Ihre Arbeit überwiegend aus „Befehl senden, Antwort beobachten“, fühlt sich MQTTX natürlich an.
MQTT.fx
MQTT.fx war jahrelang der Standard-Desktop-Client auf Java-Basis. Sein Lizenzmodell hat sich geändert; prüfen Sie daher die aktuellen Bedingungen, bevor Sie es für ein Team standardisieren.
ConnectMQ Desktop MQTT Explorer
Dieser Explorer wird zusammen mit einer MQTT-Erweiterung für VS Code angeboten. Er durchsucht Topics, veröffentlicht Test-Payloads und prüft Nachrichten – und das mit jedem standardkonformen Broker, nicht nur mit dem eigenen. Verbinden sich Ihre Geräte bereits mit einem ConnectMQ-Broker, ist er eine praktische Ergänzung zum Portal: Nutzen Sie die Desktop-App bei der lokalen Entwicklung und den Live-Topic-Explorer sowie den MQTT-Client im Browser des Portals, wenn Sie nicht an Ihrem Rechner sind.
Praxis: Einen Topic-Baum befüllen und erkunden
Für einen fairen Vergleich geben Sie allen Explorern dieselben Daten. Die folgenden Befehle legen auf dem öffentlichen MQTT-Broker unter einem eindeutigen Präfix einen kleinen, realistischen Baum an. Ersetzen Sie ex4m durch eine eigene Zufallszeichenfolge und denken Sie daran, dass der öffentliche MQTT-Broker für alle sichtbar und nur für Tests und Prototypen gedacht ist.
P="connectmq/demo/ex4m"
H="-h broker.connectmq.com -p 1883 -i seed-ex4m"
mosquitto_pub $H -r -t "$P/plant1/line1/cnc1/status" -m "running"
mosquitto_pub $H -r -t "$P/plant1/line1/cnc1/telemetry" -m '{"spindle_rpm": 8200, "temp_c": 41.5}'
mosquitto_pub $H -r -t "$P/plant1/line1/robot1/status" -m "idle"
mosquitto_pub $H -r -t "$P/plant1/line2/furnace1/telemetry" -m '{"temp_c": 812, "setpoint_c": 820}'
mosquitto_pub $H -r -t "$P/plant1/utilities/tank1/level" -m "67.2"
Fügen Sie dann einen sich live ändernden Wert hinzu, damit Verlauf und Diagramme etwas zu zeigen haben:
for i in $(seq 1 60); do
mosquitto_pub -h broker.connectmq.com -p 1883 -i seed-live-ex4m \
-t "connectmq/demo/ex4m/plant1/utilities/tank1/level" -m "$((60 + RANDOM % 15)).$((RANDOM % 10))"
sleep 1
done
Das tiefste Topic hat hier 7 Ebenen und liegt damit innerhalb des Limits von 8 Ebenen des öffentlichen MQTT-Brokers.
Verbindungseinstellungen
Verwenden Sie diese Einstellungen in jedem Explorer:
| Feld | Öffentlicher MQTT-Broker (Tests) | Ihr privater Broker |
|---|---|---|
| Host | broker.connectmq.com |
Ihr Broker-Host aus dem Portal |
| Port / Protokoll | 1883 TCP oder 8883 mit aktiviertem TLS | 8883 mit TLS (empfohlen) |
| WebSocket | 8083 (ws), 8084 (wss), Pfad /mqtt |
Gleiche Ports und Pfad |
| Client ID | Beliebiger eindeutiger, nicht leerer Wert | Die für Ihre Zugangsdaten generierte Client ID |
| Benutzername / Passwort | Leer | YOUR_USERNAME / YOUR_PASSWORD |
| Subscription | connectmq/demo/ex4m/# |
# oder Ihr eigener Root |
Worauf Sie achten sollten
- Klappen Sie
plant1auf und prüfen Sie, ob die Hierarchie dem Plan entspricht. In echten Projekten entdecken Sie genau hier Geräte, die anPlant1veröffentlichen oder die Geräte-ID auf der falschen Ebene ablegen. - Wählen Sie
tank1/levelund beobachten Sie den Verlauf, während die Schleife läuft. Explorer mit Diagrammen stellen ihn direkt grafisch dar. - Wählen Sie
furnace1/telemetryund prüfen Sie, ob das JSON formatiert angezeigt wird. - Löschen Sie einen Retained-Wert: Veröffentlichen Sie einen leeren Payload mit gesetztem Retain an
cnc1/status. Der Knoten sollte für neue Subscriber verschwinden (oder leer erscheinen). - Trennen Sie die Verbindung und verbinden Sie sich neu. Retained Topics erscheinen sofort wieder; nicht retained Topics warten auf neue Nachrichten. So erfahren Sie am schnellsten, welche Ihrer Topics retained sind.
Eine konsistente Hierarchie wird umso wichtiger, je größer Systeme werden. Der oben verwendete ISA-95-Stil (Standort, Bereich, Linie, Zelle) ist das Rückgrat des UNS: Die Equipment-Hierarchie nach ISA-95 (Enterprise, Site, Area, Line, Cell) wird direkt zur Topic-Struktur auf dem Broker, etwa acme/werk-stuttgart/montage/linie-1/zelle-3/temperatur. Im Explorer sehen Sie dann jedes Werk als eigenen Zweig und erkennen Abweichungen vom Namensschema sofort. Die Begründung dahinter lesen Sie in MQTT Sparkplug B und Unified Namespace.
Fehlerbehebung bei Desktop-Explorern
- Verbindung über TCP klappt, über TLS nicht: Die App nutzt eventuell nicht den Truststore des Betriebssystems. Fügen Sie das Zertifikat ISRG Root X1 (Let's Encrypt) als CA hinzu und prüfen Sie Ihre Systemzeit.
- WebSocket-Verbindung scheitert: Der Pfad fehlt. Verwenden Sie
/mqttmit Port 8083 oder 8084. - Baum friert ein: Sie haben auf einem stark frequentierten Broker
#abonniert. Grenzen Sie die Subscription ein. - Trennung alle paar Sekunden: Ein anderes Tool nutzt dieselbe Client ID. Viele Explorer erzeugen eine; stellen Sie sicher, dass sich zwei gespeicherte Verbindungen keine teilen.
- Not authorized auf einem privaten Broker: Die Client ID muss der mit den Zugangsdaten ausgestellten entsprechen.
Von der Erkundung zum Produktivbetrieb
Ein Desktop-Explorer ist eine Debugging-Lupe; zuverlässig sein muss der Broker. Sobald Ihre Geräte über Experimente hinausgehen, betreiben Sie sie auf einem verwalteten MQTT-Broker statt auf dem geteilten öffentlichen MQTT-Broker. ConnectMQ-Broker unterstützen MQTT 3.1.1 und 5.0 über TCP, TLS, WebSocket und sicheres WebSocket, sodass sich jeder Explorer aus diesem Vergleich ohne Sonderkonfiguration verbindet. Den größeren Zusammenhang der Hosting-Optionen beleuchtet der Leitfaden zum Cloud-MQTT-Broker, und die Seite zum öffentlichen MQTT-Broker listet die geteilten Limits im Detail auf. Um das, was Sie im Explorer sehen, in Anwendungscode zu überführen, ist der Leitfaden zu MQTT-Client-Bibliotheken der nächste Schritt, und die mosquitto_pub- und mosquitto_sub-Beispiele decken die geskriptete Seite ab.
Starten Sie mit ConnectMQ
Erstellen Sie unter app.connectmq.com einen privaten Broker im kostenlosen Serverless-Plan, ganz ohne Kreditkarte, und verbinden Sie Ihren bevorzugten Desktop-Explorer mit den generierten Zugangsdaten. Das Portal ergänzt einen Live-Topic-Explorer, ein Dashboard und eine nach ISA-95-Ebenen organisierte Geräteansicht, sodass Sie den Verkehr auch aus jedem Browser prüfen können.
Häufig gestellte Fragen
Welche MQTT Explorer Desktop App ist die beste?
Zum Durchsuchen eines großen Topic-Baums ist MQTT Explorer kaum zu schlagen. Für interaktive Publish-und-Antwort-Tests mit MQTT 5 ist MQTTX sehr komfortabel. Nutzen Sie ConnectMQ, bieten Ihnen dessen Desktop-Explorer und Portal einen einheitlichen Workflow über alle Rechner hinweg.
Kann sich ein Desktop-MQTT-Explorer mit jedem Broker verbinden?
Ja, solange die App Protokollversion und Transport des Brokers unterstützt. Alle hier vorgestellten Tools sprechen Standard-MQTT und funktionieren mit jedem konformen Broker, ob gehostet oder selbst betrieben.
Ist es sicher, in einem MQTT Explorer # zu abonnieren?
Auf Ihrem eigenen Entwicklungs-Broker ja. Auf Produktiv- oder geteilten Brokern kann es die App überlasten und mehr Daten offenlegen als nötig; abonnieren Sie stattdessen einen bestimmten Root.
Warum zeigen manche Topics sofort Werte an und andere bleiben leer?
Topics mit einer Retained Message werden sofort beim Abonnieren zugestellt. Andere erscheinen erst, wenn die nächste Nachricht veröffentlicht wird.



