MQTT Adressen I/O – Anbindung an Node-RED und Home AssistantDiese Seite beschreibt Schritt für Schritt, wie Fremdsysteme wie Node-RED und Home Assistant über den Funktionsbaustein MQTT Adressen I/O mit der uni-PRO Steuerung verbunden werden. Der Baustein sendet die Werte der Variablen (Adressen) als MQTT Nachrichten an einen MQTT Broker und übernimmt umgekehrt Werte, die von Fremdsystemen an den Broker gesendet werden.

Wichtig: Für diese Funktion muss die Steuerung eine Image Version 3.034 oder höher haben.
MQTT ist ein einfaches Nachrichtenprotokoll für die Gebäude- und Geräteautomatisierung. Alle Teilnehmer verbinden sich mit einem zentralen Server, dem Broker:
Das Topic wird aus dem Parameter "Topic Präfix" (Standard "uniPRO") und der Adresse Hauptgruppe/Mittelgruppe/Untergruppe gebildet:
| Topic | uniPRO/100/10/1 (Adresse 100/10/1) |
| Payload senden | Zahlenwert, z.B. "21.5". Bitvariablen je nach Parameter "Typ Bitvariable" als "0/1", "on/off" oder "true/false". Textvariablen werden als Text gesendet. |
| Payload empfangen | "on" und "true" werden als 1 übernommen, "off" und "false" als 0, alles andere als Zahlenwert. Bei Textvariablen wird der Text übernommen. |
Es werden nur Adressen der im Parameter "Filter Hauptgruppe" eingestellten Hauptgruppen gesendet und empfangen.
Alle Parameter im Detail: Hilfe MQTT Adressen I/O. Zur Kontrolle der Nachrichten kann im Studio die MQTT Diagnose verwendet werden (Menü Diagnose).
Node-RED ist ein grafisches Werkzeug, mit dem Abläufe (Flows) per Drag & Drop aus Bausteinen (Nodes) zusammengesetzt werden. Es läuft z.B. auf einem Raspberry Pi, einem Server oder in Docker. Die Installation ist hier beschrieben: nodered.org/docs/getting-started. Nach der Installation wird der Editor im Browser unter "http://<IP-Adresse>:1880" geöffnet.
Die MQTT Nodes sind fester Bestandteil von Node-RED und müssen nicht nachinstalliert werden. Sie befinden sich in der Palette links in der Kategorie "Netzwerk" (network):
Sollten zusätzliche Nodes benötigt werden (z.B. Dashboards), können diese über Menü (☰) → "Palette verwalten" installiert werden.
Einen "mqtt in" Node in den Flow ziehen und per Doppelklick öffnen. Neben "Server" über das Stift-Symbol eine neue mqtt-broker Konfiguration anlegen:

Die Konfiguration muss nur einmal angelegt werden und kann dann in allen MQTT Nodes ausgewählt werden.



Weitere Beispiele: Node-RED Cookbook MQTT, Dokumentation: nodered.org/docs.
Home Assistant ist eine Open-Source Software für die Hausautomation. Für die Anbindung wird die MQTT Integration von Home Assistant verwendet.
Home Assistant und der uni-PRO Baustein müssen denselben Broker verwenden. Zwei Möglichkeiten:
In Home Assistant: Einstellungen → Geräte & Dienste → Integration hinzufügen, nach "MQTT" suchen und die Verbindungsdaten des Brokers eingeben:

Wird im Baustein der Parameter "Home Assistant Auto Discovery" aktiviert, sendet der Baustein für jede Variable eine Konfigurationsnachricht an Home Assistant. Die Variablen erscheinen dann automatisch als Entitäten vom Typ "number" (Zahl), der Name der Entität ist der Kommentar der Adresse:

Wichtig: Bei aktiviertem Auto Discovery muss der Parameter "Topic Präfix" auf dem Standardwert "uniPRO" bleiben, da die automatisch erzeugte Konfiguration diese Topics verwendet. Zurzeit werden nur Entitäten vom Typ "number" erzeugt; alle Werte werden dabei als Zahl übertragen.
Alternativ (oder zusätzlich, z.B. für Schalter) können Entitäten manuell in der Datei configuration.yaml angelegt werden. Beispiel für einen Sensor und einen Schalter:
mqtt:
sensor:
- name: "Wohnzimmer Temperatur"
state_topic: "uniPRO/100/10/1"
unit_of_measurement: "°C"
switch:
- name: "Licht Wohnzimmer"
state_topic: "uniPRO/101/1/1"
command_topic: "uniPRO/101/1/1"
payload_on: "1"
payload_off: "0"
payload_on/payload_off müssen zum Parameter "Typ Bitvariable" des Bausteins passen (z.B. "on"/"off" statt "1"/"0"). Nach Änderungen an der configuration.yaml muss Home Assistant neu gestartet werden. Details: Home Assistant MQTT Dokumentation.
Unter Einstellungen → Geräte & Dienste → MQTT → Konfigurieren bietet Home Assistant ein Testwerkzeug: Mit "Auf ein Topic lauschen" und dem Topic "uniPRO/#" werden alle Nachrichten des Bausteins angezeigt. Über "Ein Paket veröffentlichen" kann ein Wert testweise an eine Adresse gesendet werden (Topic z.B. "uniPRO/100/10/1", Payload "21.5").
Hinweis: Node-RED, Home Assistant und Mosquitto sind Produkte von Drittanbietern. Für Installation, Betrieb und Absicherung dieser Software ist der Anwender selbst verantwortlich; die verlinkten Dokumentationen können sich ändern.