CCU-Jack für Beobachtung einer Pelletsheizung

Der CCU-Jack als REST- und MQTT-Schnittstelle für die CCU und virtuelle Geräte für das IoT

Moderator: Co-Administratoren

Antworten
Benutzeravatar
FUEL4EP
Beiträge: 586
Registriert: 01.11.2017, 17:26
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 76 Mal
Danksagung erhalten: 79 Mal
Kontaktdaten:

CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von FUEL4EP » 07.11.2023, 15:25

Hallo Mathias,

die Einbindung der Messwerte meiner Ökofen Pelletsheizung Smart XS mit CCU-Jack V2.8.0 per MQTT war relativ einfach.

Vielen Dank für dieses hervorrragende Addon.

Der MQTT-Publish geht wie folgt:

1. Die Oekofen Pelletronic Steuerung der Heizung liefert Messwerte im JSON-Format.
2. Ein lokaler Raspberry PI basierter Proxy-Server liest die JSON-Daten und speichert sie in einer lokalen InfluxDB ab, die auch mit Grafana ausgewertet werden kann.
3. Mittels eines Cron-Prozesses auf dem Prox-Server, wird ein Python-Skript aufgerufen, der ausgewählte Messdaten per MQTT an den CCU-Jack MQTT Broker sendet, der als Addon auf meiner RaspberryMatic läuft.
4. Eine weitere Untermenge der Messdaten, zur Zeit noch im Testbetrieb, wird auf ein virtuelles Gerät 'JACK000003' vom Type 'HmIP-STHD' abgebildet.
5. Die Datenpunkte des virtuuellen Geräts werden durch ein CCU-Historian aufgezeichnet und können dort auch ausgewertet werden.

Die Ansicht im MQTT Explorer sieht so aus:

MQTT_explorer_view.png

Die Ansicht in der RaspberryMatic sieht bei 2 exemplarischen Datenpunkten so aus:

RaspberryMatic_device_viwe.png

Die Ansicht im CCU-Jack sieht so aus:

CCU-Jack_view.png

Soweit läuft alles perfekt. Als Verbesserung für CCU-Jack habe ich folgende Wünsche / Vorschläge:

1. Lässt sich statt HmIP-STHD ein generisches CCU-Jack-Gerät definieren? Also kein bekanntes EQ-3-Gerät, sondern z.B. mit dem Typ-Name 'HM-JACK-GENERIC'. Dazu passend ein generisches Thumbnail-Bild. (=Box).

2. Lassen sich für die analogen Meswertkanäle auch individuelle Namen vergeben? Also z.B. statt 'Analoger Eingang' mehr sinnhaft: 'Wärmeenergie letzte 24h'?

3. Lässt sich für jeden Kanal eine individuelle Einheit wie bei Homematic-Geräten hinzuaddieren, z.B. kWh?

Das wäre ausgezeichnet, wenn sich das (mittelfristig) im CCU-Jack umsetzen ließe.

Vielen Dank im Voraus.
Zuletzt geändert von FUEL4EP am 11.11.2023, 12:43, insgesamt 1-mal geändert.
Grüße

Ewald

Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs

Mathias
Beiträge: 1796
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 262 Mal
Kontaktdaten:

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von Mathias » 07.11.2023, 22:05

FUEL4EP hat geschrieben:
07.11.2023, 15:25
Soweit läuft alles perfekt. Als Verbesserung für CCU-Jack habe ich folgende Wünsche / Vorschläge:

1. Lässt sich statt HmIP-STHD ein generisches CCU-Jack-Gerät definieren? Also kein bekanntes EQ-3-Gerät, sondern z.B. mit dem Typ-Name 'HM-JACK-GENERIC'. Dazu passend ein generisches Thumbnail-Bild. (=Box).
Die Thumbnail-Bilder der CCU können nicht durch den CCU-Jack mit vertretbarem Aufwand ergänzt werden. Es müssen die vorhandenen Bilder verwendet werden. Der CCU-Jack könnte ein Gerätetyp verwenden, der nicht der CCU bekannt ist. Dann wird, soweit ich weiß, eine leere weiße Box dargestellt. Das hat dann aber weniger Sinn.
(Hinweis: Der eingestellt Gerätetyp für ein virtuelles Gerät hat keine Auswirkung auf die Funktion. Die Funktion wird rein durch den ausgewählten Kanaltyp bestimmt.)
FUEL4EP hat geschrieben:
07.11.2023, 15:25
2. Lassen sich für die analogen Meswertkanäle auch individuelle Namen vergeben? Also z.B. statt 'Analoger Eingang' mehr sinnhaft: 'Wärmeenergie letzte 24h'?
Dieser Punkt wurde bereits häufiger angemerkt. Die CCU-Jack-Geräte orientieren sich an realen HomeMatic-Geräten. Dadurch ist die höchste Kompatibilität zur CCU-Software gewährleistet. Ohne Anpassung der CCU-Firmware kann das nicht umgesetzt werden. Du kannst aber den Wert in einer Systemvariable schöner darstellen, und die Variable an den Kanal hängen.
FUEL4EP hat geschrieben:
07.11.2023, 15:25
3. Lässt sich für jeden Kanal eine individuelle Einheit wie bei Homematic-Geräten hinzuaddieren, z.B. kWh?
Siehe vorigen Punkt.

Viele Grüße
Mathias

Benutzeravatar
Baxxy
Beiträge: 10850
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2230 Mal

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von Baxxy » 07.11.2023, 23:04

Letztlich ist die Problematik doch identisch zu den HB-Geräten die, wenn sie sich von Original-Geräten unterscheiden oder komplett anders sind, ein eigenes Add-On brauchen welches der CCU die Gerätedefinitionen beibringt.

Benutzeravatar
FUEL4EP
Beiträge: 586
Registriert: 01.11.2017, 17:26
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 76 Mal
Danksagung erhalten: 79 Mal
Kontaktdaten:

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von FUEL4EP » 08.11.2023, 11:45

Hallo Mathias, hallo Baxxy,

vielen Dank für Eure Antworten.

Hier nun die Geräteansicht basierend auf den aktuellen Möglichkeiten:
CCU_Jack_Oekofen_Smart_XS.png

Fragen an Mathias:

1. Ließe sich eventell als neuer Kanaltyp 'MQTT Wert' machen (statt 'Analoger Eingang')?
2. Ließe sich für diesen neuen Kanaltyp 'MQTT Wert' als Kanalname nutzen (statt 'Eingangsspannung')?

Damit wäre die Geräteausgabe in Homematic / RaspberryMatic 'hübscher' :D

Danke in Voraus.
Grüße

Ewald

Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs

Benutzeravatar
Baxxy
Beiträge: 10850
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2230 Mal

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von Baxxy » 08.11.2023, 22:56

Ich glaube nichts davon ist einfach umsetzbar, weil halt alles was die CCU von Hause aus nicht kennt per Add-On implementiert werden muss.

Aber, bei Uwe's CUxD gibt es das (90) Universal Wrapper Device / Funktion: Transform.

Da kann man "Datenpunktname" und Einheit selbst bestimmen.
Beispiel:
RM_CUX_Transform.JPG
Das Gerät (als Jack-Kanal) wäre als "Universalempfänger für Zahlenwerte" eigentlich Ideal für den Jack.

Wie Uwe das macht weiß ich nicht, aber vielleicht schließen sich unsere Entwickler mal kurz. :wink:

Mathias
Beiträge: 1796
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 262 Mal
Kontaktdaten:

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von Mathias » 09.11.2023, 13:08

FUEL4EP hat geschrieben:
08.11.2023, 11:45
Fragen an Mathias:

1. Ließe sich eventell als neuer Kanaltyp 'MQTT Wert' machen (statt 'Analoger Eingang')?
2. Ließe sich für diesen neuen Kanaltyp 'MQTT Wert' als Kanalname nutzen (statt 'Eingangsspannung')?
Baxxy hat geschrieben:
08.11.2023, 22:56
Ich glaube nichts davon ist einfach umsetzbar, weil halt alles was die CCU von Hause aus nicht kennt per Add-On implementiert werden muss.
Die Firmware der CCU müsste angepasst werden. Also für jedes Firmware-Update müsste es dann auch ein Update des Add-Ons geben. Im Endeffekt ist der Aufwand einfach zu hoch. Da stecke ich meine begrenzte Entwicklungszeit lieber in andere Themen, die auch funktional den CCU-Jack voran bringen.
Baxxy hat geschrieben:
08.11.2023, 22:56
Aber, bei Uwe's CUxD gibt es das (90) Universal Wrapper Device / Funktion: Transform.
Da kann man "Datenpunktname" und Einheit selbst bestimmen.
Das werde ich mir mal anschauen, da es ohne Änderung der Firmware funktioniert.

Gruß
Mathias

Mathias
Beiträge: 1796
Registriert: 03.11.2010, 10:25
System: CCU
Wohnort: Aachen
Hat sich bedankt: 58 Mal
Danksagung erhalten: 262 Mal
Kontaktdaten:

Re: CCU-Jack für Beobachtung einer Pelletsheizung

Beitrag von Mathias » 12.11.2023, 10:51

Der CUxD macht sich in diesem Fall zunutze, wie die CCU unbekannte Kanaltypen anzeigt. Der interne Kanalbezeichner wird in eckigen Klammern dargestellt. Hinter dem Wert wird noch die vom Gerät ausgelesene Einheit dargestellt. Den Bezeichner und die Einheit können bei den Geräteeinstellungen angepasst, woraufhin das Gerät sozusagen seine Hülle dynamisch ändert. Das Ändern der Hülle nach dem Anlernen ist etwas problematisch (z.B. für den CCU-Jack und den CCU-Historian, die davon ausgehen, das Geräte nicht mutieren).

Allerdings können beim Erstellen eines virtuellen Geräts (z.B. in der Web-UI des CCU-Jacks) bereits die Informationen (Kanalbezeichner und Einheit) zur Gerätehülle mitgegeben werden, sodass eine nachträgliche Anpassung nicht mehr nötig ist.

Ich habe mal ein Eintrag auf GitHub erstellt.

Antworten

Zurück zu „CCU-Jack“