Beschreibung
Logikbaustein, der Werte an beliebig viele Topics auf einem MQTT-Broker sendet. Er nutzt dafür eine einzige, dauerhafte Verbindung. Je Topic gibt es einen Eingang. Bricht die Verbindung ab, verbindet der Baustein von selbst neu und sendet den letzten Wert je Topic nach, der in der Zwischenzeit nicht gesendet werden konnte. Das Gegenstück zum Empfangen ist „MQTT Subscribe | SMoLabs“.
Wichtig: In der Simulation im GPA muss vor dem Beenden zuerst die Verbindung getrennt werden, also der Eingang „Verbinden“ auf 0 gesetzt werden. Wird die Simulation mit bestehender Verbindung gestoppt, stürzt der GPA ab.
- Gerät
- Gira X1
- Version
- 1.0.0
- Lizenz
- Ein Schlüssel je X1 (MAC-Adresse), dauerhaft nutzbar
- Thema
- Kommunikation
Anleitung
Einrichtung
- Broker, Port und bei Bedarf Benutzername und Passwort eintragen. Bleibt der Benutzername leer, meldet sich der Baustein anonym an.
- Anzahl Topics einstellen. Für jedes Topic erscheinen ein Parameter „Topic n“ und ein Eingang „Topic n Wert“.
- Die Topics eintragen, z. B.
cmnd/steckdose/POWERoderzigbee2mqtt/lampe/set. - 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, 0 trennt sie |
| Neu verbinden (1 = jetzt neu verbinden) (ausgeblendet) | Bei 1 wird die Verbindung sofort neu aufgebaut. Wirkt nur, wenn „Verbinden“ auf 1 steht |
| Topic n Wert | Jeder neue Wert wird als Text an Topic n gesendet, auch ein gleicher Wert erneut. Ein Eingang, der noch nie einen Wert bekommen hat, sendet nichts. Ein leerer Text wird ebenfalls gesendet. Mit „Topic n Retain“ = 1 löscht er den gehaltenen Wert am Broker. |
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, also nicht dieselbe wie bei „MQTT Subscribe | SMoLabs“ eintragen. (ausgeblendet) |
| QoS (0-2) | Zustellgarantie für alle Topics: 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 ohne Platzhalter (+ und # sind beim Senden nicht erlaubt) |
| Topic n Retain (1 = Broker hält den Wert) | 1: Der Broker hält den letzten Wert und gibt ihn jedem neuen Abonnenten sofort. Vorgabe 0 (ausgeblendet) |
| Lizenzschlüssel | Schlüssel für diesen X1, siehe „Lizenz“ |
Ausgänge
| Ausgang | Inhalt |
|---|---|
| Verbunden | 1, solange die Verbindung zum Broker steht |
| Lizenzstatus | Ergebnis der Lizenzprüfung |
| Debug | Verbindungsstatus, zuletzt gesendeter Wert und Fehler (ausgeblendet) |
Ausgeblendete Eingänge, Parameter und Ausgänge lassen sich im GPA (Gira Projekt Assistent) am Baustein einblenden.
Nachsenden
Kommt ein Wert, während keine Verbindung besteht (Broker weg, Netzwerk unterbrochen, „Verbinden“ noch nicht gesetzt), merkt sich der Baustein den letzten Wert je Topic. Nach dem nächsten erfolgreichen Verbinden werden alle offenen Werte gesendet. Ältere Zwischenwerte desselben Topics gehen dabei verloren, gesendet wird nur der aktuelle Stand. Schlägt das Senden selbst fehl, gilt dasselbe. Die gemerkten Werte bleiben bis zu einem Neustart des X1 erhalten.
Fehlerverhalten
| Debug | Ursache |
|---|---|
| Verbunden mit … (Client-ID …) | Verbindung steht |
| Gesendet an …: … | Wert gesendet |
| Getrennt | „Verbinden“ steht auf 0 |
| Verbindung verloren, neuer Versuch in … s | Der Broker oder das Netzwerk ist weg, der Baustein verbindet von selbst neu |
| Nicht verbunden, Wert für Topic n wird nach dem Verbinden gesendet | Keine Verbindung, der Wert ist gemerkt |
| Verbindung zu … fehlgeschlagen | Broker nicht erreichbar, falsche Adresse oder falscher Port |
| Verbindung zu … abgelehnt | Benutzername, Passwort oder Client-ID wurden vom Broker abgelehnt |
| Senden an … fehlgeschlagen | Die Verbindung ist beim Senden abgebrochen, der Wert wird nach dem Verbinden gesendet |
| Topic n ist leer oder enthält Wildcards, Wert verworfen | Der Wert wird verworfen. Das GPA meldet das schon bei der Projektprüfung. |
Unterstützt wird MQTT 3.1.1 ohne Verschlüsselung (TLS).
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 und sendet 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, trennt der Baustein die Verbindung beim nächsten eingehenden Wert und sendet nichts mehr, 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.




Rezensionen
Es gibt noch keine Rezensionen.