CCU Daten über externen MQTT in externen node-red

diverse Zusatzsoftware

Moderator: Co-Administratoren

Antworten
gunterc
Beiträge: 35
Registriert: 05.04.2020, 12:09
System: Alternative CCU (auf Basis OCCU)
Danksagung erhalten: 1 Mal

CCU Daten über externen MQTT in externen node-red

Beitrag von gunterc » 05.05.2020, 15:32

So. Nun muss ich aber doch mal fragen, wie ich hier am Besten weiterkomme.
Zunächst mein Serup:

Auf einem Raspi läuft RasperryMatic. Hier sind aktuell ausschließlich Homematic Geräte angemeldet. In Zukunft sollen aber andere Fabrikate dazukommen.

Als Zusatzsoftware habe ich Mosquitto und RedMatic installiert.
In RedMatic habe ich lediglich eine Verknüpfung, die mir die HM Daten nach MQTT bringt.
Verbinde ich mich mit MQTT.fx mit Mosquitto auf dem Raspi, sehe ich jetzt sowas wie "hm/status/Bad/ACTUAL_TEMPERATURE". Soweit, so gut.
Bemerkung: Ich habe auch schon mal CCU-Jack ausprobiert. Macht hier eigentlich das selbe, nämlich CCU Daten an MQTT binden, führt letztlich aber zum selben, unten beschriebenen Problem.

Nun wo ich hinmöchte, mal unabhängig davon, ob sich das hiterher als sinnvoll herausstellt :wink: :

Ich möchte auf einem (sowieso) permanent laufenden Ubuntu-Rechner je einen Docker-Container für MQTT und node-red laufen lassen. In diesem Node-Red möchte ich die eigentliche Programmierung und Visualisierung vornehmen.

Ich habe den MQTT-Container als Server für Mosquitto auf dem Raspi konfiguriert und sehe hier mit MQTT.fx das selbe, was ich auch sehe, wenn ich mich direkt mit dem Raspi verbinde. Ich habe jetzt also alle Daten auf dem Ubuntu-Rechner.

Was ich nun gerne hätte ist eine halbwegs nachvollziehbare Möglichkeit Werte der CCU auszuwählen, und diese Darzustellen.
Sicher: ich könnte einem MQTT Node ein Topic geben, dass ungefähr so aussieht: "hm/status/Bad Heizung/ACTUAL_TEMPERATURE" und das dann mir Parser- und Funktions-Nodes 'zerhacken'. Habe ich probiert, hat funktioniert. - Aber das ist ja wohl nicht das Mittel der Wahl. :?

Wenn ich RedMatic auf der CCU verwende, habe ich ja Nodes, die aus node-red-contrib-ccu zu kommen scheinen (?). Hiermit ist das einfach hinzukriegen: 'get value', Channel und Datapoint auswählen, und der Fall ist erledigt.
Zwar kann ich node-red-contrib-ccu auch im Container installieren, aber 'get value' möchte sich ja direkt mit einer CCU verbinden und nicht mit MQTT.

Da gibt's doch sicher einen Trick. Oder? :P

gunterc
Beiträge: 35
Registriert: 05.04.2020, 12:09
System: Alternative CCU (auf Basis OCCU)
Danksagung erhalten: 1 Mal

Re: CCU Daten über externen MQTT in externen node-red

Beitrag von gunterc » 12.05.2020, 08:42

Na gut. Wahrscheinlich war die Antwort zu leicht :wink:. Ist sie natürlich auch, wenn man weiß wie es geht. Wenn man aber neu in diesem Ökosystem ist und nur 'mal eben' ein paar Dinge zusammenklicken will, weiß man (ich) das eben nicht.

Mein eigentliches Problem war, dass ich es nicht geschafft hatte, von node-red aus meine Rollladen zu bedienen. Also war die Hoffnung in 'node-red-contrib-ccu' einen Node zu finden, der einfach konfiguriert wird. - Das habe ich nicht hingekriegt und 'node-red-contrib-ccu' wieder entfernt.

Nach langem Suchen und Probieren, weil: man muss eben wirklich ALLES richtig machen, ist meine Lösung jetzt das Parsen zu Fuß:
Ein mqtt -node holt die Nutzdaten, diese gehen in einen json -node ohne weitere Konfiguration. Ein function -node selektiert 'val' (msg.payload = msg.payload.val;), Gegebenenfalls wird das auch sofort mit 100 multipliziert, um auf '%' zu normieren.

Umgekeht, also einen Wert an die Steuerung zu übergeben, ist es noch einfacher. Hier wird nur der Wert, also der Wert von 'val' geschickt.
Und das fuktioniert prächtig, wenn man hier die richtigen Topics verwendet........

Für mich war hier vor allen Dingen mosquitto_sub und mosquitto_pub hilfreich, weil hier ohne Ballast direkt mit mqtt kommuniziert werden kann.

Ich weiß. Ist eigentlich trivial. Aber vielleicht bietet das hier jemandem einen zusätzliche Anlaufstelle. Jemandem, der wie ich, das hier im Forum nicht gefunden hat. Sicher steht das irgendwo bereits 100-mal, und jetzt eben 101-mal. :wink:

Antworten

Zurück zu „Sonstige Addons“