,

MQTT Subscribe

4,99 €

MQTT-Daten empfangen und nutzen.

Abonniert beliebig viele Topics, auch mit Wildcards, und gibt jeden Wert als Text und als Zahl aus. Optional mit JSON-Pfad, verbindet sich bei Abbruch selbst neu.

Artikelnummer: smo-mqtt-subscribe-smolabs Kategorien: , Schlagwort:
Kostenlos testen (14 Tage)

Zum Testen bitte anmelden oder registrieren.

Beschreibung

Logikbaustein, der beliebig viele Topics auf einem MQTT-Broker über eine einzige Verbindung abonniert. Je Topic gibt es einen Text- und einen Zahlenausgang. Mit einem optionalen JSON-Pfad lässt sich ein einzelner Wert aus einer JSON-Nachricht holen, z. B. von Zigbee2MQTT, Tasmota oder Shelly. Bricht die Verbindung ab, verbindet der Baustein von selbst neu.

Gerät
Gira X1
Version
1.0.0
Lizenz
Ein Schlüssel je X1 (MAC-Adresse), dauerhaft nutzbar
Thema
Kommunikation

Anleitung

Einrichtung

  1. Broker, Port und bei Bedarf Benutzername und Passwort eintragen. Bleibt der Benutzername leer, meldet sich der Baustein anonym an.
  2. Anzahl Topics einstellen. Für jedes Topic erscheinen ein Parameter „Topic n“ und die Ausgänge „Topic n Text“ und „Topic n Zahl“.
  3. Die Topics eintragen. Platzhalter (Wildcards) sind erlaubt: + steht für genau eine Ebene, # am Ende für beliebig viele.
  4. Den Eingang Verbinden (1 = verbinden, 0 = trennen) mit dem Datenpunkt „Bereit“ des X1 verbinden.

Eingänge

Eingang Wirkung
Verbinden (1 = verbinden, 0 = trennen) 1 baut die Verbindung auf und abonniert alle Topics, 0 trennt sie
Neu verbinden (1 = jetzt neu verbinden) (ausgeblendet) Bei 1 wird die Verbindung sofort neu aufgebaut, z. B. nach geänderten Parametern. Wirkt nur, wenn „Verbinden“ auf 1 steht

Parameter

Parameter Bedeutung
Broker (IP-Adresse oder Name) Adresse des MQTT-Brokers, z. B. 192.168.1.10
Port Vorgabe 1883
Benutzername (leer = anonym), Passwort Ein leeres Passwort ist mit Benutzername erlaubt
Client-ID (leer = automatisch) Name, unter dem sich der Baustein am Broker anmeldet. Leer heißt automatisch (smolabs-…, bleibt bis zum Neustart des Bausteins gleich). Jede Client-ID darf am Broker nur einmal verbunden sein. (ausgeblendet)
QoS (0-2) Zustellgarantie für alle Abonnements: 0 = höchstens einmal, 1 = mindestens einmal, 2 = genau einmal. Vorgabe 0 (ausgeblendet)
Wiederverbinden nach s (0 = aus) Wartezeit vor einem neuen Versuch nach Abbruch oder Fehler, mindestens 5 s, 0 schaltet das automatische Wiederverbinden ab. Vorgabe 30 (ausgeblendet)
Anzahl Topics 1 bis 50, Vorgabe 1
Topic n Topic oder Filter mit +/#
Topic n JSON-Pfad (leer = ganze Nachricht) Sonst der Pfad zum Wert, z. B. temperature, ENERGY.Power oder sensors[0].value (ausgeblendet)
Lizenzschlüssel Schlüssel für diesen X1, siehe „Lizenz“

Ausgänge

Ausgang Inhalt
Verbunden 1, solange die Verbindung zum Broker steht
Letztes Topic, Letzte Nachricht Topic und Inhalt der zuletzt empfangenen Nachricht, nützlich bei Wildcards (ausgeblendet)
Topic n Text Nachricht bzw. Wert am JSON-Pfad als Text
Topic n Zahl Derselbe Wert als Zahl, wenn er eine ist. Punkt und Komma gelten als Dezimaltrennzeichen, true/ON ergibt 1 und false/OFF ergibt 0. Ist der Wert keine Zahl, bleibt der Ausgang unverändert.
Lizenzstatus Ergebnis der Lizenzprüfung
Debug Verbindungsstatus und Fehler (ausgeblendet)

Ausgeblendete Eingänge, Parameter und Ausgänge lassen sich im GPA (Gira Projekt Assistent) am Baustein einblenden.

Eine Nachricht geht an alle passenden Topics. Wer also haus/+/temp und haus/# einträgt, bekommt eine Nachricht auf haus/bad/temp an beiden Ausgängen. Die Ausgänge werden bei jeder Nachricht gesetzt, auch wenn sich der Inhalt nicht ändert. So kommen auch wiederholte Ereignisse an, z. B. mehrmals single von einem Taster.

Beispiele

Gerät Topic JSON-Pfad Nachricht Text / Zahl
Tasmota-Steckdose tele/steckdose/SENSOR ENERGY.Power {"ENERGY":{"Power":123.4}} 123.4 / 123,4
Tasmota-Schaltzustand stat/steckdose/POWER ON ON / 1
Zigbee2MQTT-Thermometer zigbee2mqtt/bad temperature {"temperature":21.5,"humidity":60} 21.5 / 21,5
Zigbee2MQTT-Fensterkontakt zigbee2mqtt/fenster contact {"contact":false} false / 0
Shelly Plus shellyplus1pm/status/switch:0 apower {"id":0,"apower":7.3} 7.3 / 7,3

Verbindung und Wiederverbinden

  • Es gibt genau eine Verbindung je Baustein. Ein erneutes 1 am Eingang „Verbinden“ trennt die alte Verbindung, bevor es eine neue aufbaut.
  • Fällt der Broker aus oder bricht das Netzwerk ab, meldet „Debug“ „Verbindung verloren, neuer Versuch in … s“. Der Baustein versucht es so lange erneut, bis der Broker wieder da ist oder „Verbinden“ auf 0 geht. Steht „Wiederverbinden nach s“ auf 0, verbindet er nicht von selbst neu.
  • Ist der Broker beim Start nicht erreichbar, gilt dasselbe. Der Baustein muss nicht neu gestartet werden.
  • Gehaltene Nachrichten (Retain, der Broker merkt sich den letzten Wert eines Topics) liefert der Broker direkt nach dem Abonnieren aus. Nach einem Neustart stehen dann sofort die letzten Werte an.
  • Unterstützt wird MQTT 3.1.1 ohne Verschlüsselung (TLS).

Fehlerverhalten

Debug Ursache
Kein Topic eingetragen Alle Topic-Parameter sind leer, es wird nicht verbunden
Ungültiger Topic-Filter: … # steht nicht am Ende oder +/# ist nicht die ganze Ebene. Das GPA meldet das schon bei der Projektprüfung.
Verbindung zu … fehlgeschlagen Broker nicht erreichbar, falsche Adresse oder falscher Port
Verbindung zu … abgelehnt Benutzername, Passwort oder Client-ID wurden vom Broker abgelehnt
Topic n (…): JSON-Pfad ‚…‘ nicht gefunden Die Nachricht enthält den Pfad nicht, die Ausgänge bleiben unverändert
Topic n (…): kein gültiges JSON … Die Nachricht ist kein JSON, obwohl ein JSON-Pfad eingetragen ist, oder der JSON-Pfad selbst ist ungültig

Lizenz

Der Lizenzschlüssel wird im GPA im Parameter „Lizenzschlüssel“ eingetragen. Der Baustein prüft ihn beim Start auf dem X1, offline und gebunden an die MAC-Adresse des X1. Der Ausgang „Lizenzstatus“ zeigt das Ergebnis, bei einem Schlüssel für ein anderes Gerät auch die MAC-Adresse dieses X1. Ohne gültigen Schlüssel verbindet sich der Baustein nicht. In der Simulation des GPA am PC läuft er ohne Lizenzprüfung, damit sich Logikblätter testen lassen.

Läuft eine Testlizenz ab, gibt der Baustein empfangene Nachrichten nicht mehr aus, bis ein neuer Schlüssel eingetragen ist. Den Schlüssel erhältst du beim Kauf über smolabs.de.

Changelog

Version 1.0.0
  • Erste Version.

Kompatibilität mit Gira X1 und Gira HomeServer

Die Funktion ist nur für die hier genannten Firmwarestände zugesichert. Vor einem Firmware-Update des Geräts bitte diese Tabelle prüfen.

Baustein-VersionGerät und FirmwareStatus
1.0.0Gira X1, Firmware 4.0.350Kompatibel
1.0.0Gira X1, Firmware 3.0.52Kompatibel
1.0.0Gira X1, Firmware 2.8.874Kompatibel
1.0.0Gira X1, Firmware 2.8.869Kompatibel
1.0.0Gira X1, Firmware 2.8.858Kompatibel
1.0.0Gira X1, Firmware 2.7.585Kompatibel

Rezensionen

Es gibt noch keine Rezensionen.

Schreibe die erste Rezension für „MQTT Subscribe“

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen