Hallo zusammen,
ich habe vor einiger Zeit mit openHab angefangen und möchte meine Erfahrungen im Zusammenhang mit meiner Heizung mit euch teilen. Bei der Heizung handelt es sich um eine ETA PC25, welche sich (nach Freischaltung) direkt über einen WebService ansteuern lässt. Zwar lassen sich bereits sehr viele Informationen über das TouchPanel der Heizung abfragen, aber die Historie, Temperaturkurven und Auswertemöglichkeiten fehlen völlig.
Die Aussagen treffen wahrscheinlich auch auf andere Modelle des Herstellers ETA zu (PC 20, PC 25, PC30, ggf. auch PU7, PU11 und PU15 ?).
Der WebService lässt sich über http://[Heizungs-IP]:8080/ erreichen. Über http://[Heizungs-IP]:8080/user/menu ist ein Menü erreichbar, wo sämtliche Verfügbaren Werte inklusive der CAN-Adresse aufgelistet werden. Das sieht z.B. wie folgt aus:

Über die CAN-Adresse lassen sich dann die Werte abfragen, z.B. von der aktuellen Außentemperatur:

Die Werte sind meist genauer als in der Oberfläche der Heizung abfragbar. Angezeigt wird der Wert 26kg, der "richtige" Wert ist allerdings 255 geteilt durch das Attribut scaleFactor.
In OpenHab lässt sich das Ganze relativ simpel über das HTTP-Binding mit einem einfachen XSL-Transformationsscript einbinden.
XSLT:
In der jeweiligen Items-Datei sieht die Einbindung dann wie folgt aus. Abgefragt werden in dem Beispiel die aktuelle Temperatur des Außenfühlers sowie der Pellet-Vorrat im Kessel. Das Ganze wird dann entsprechend persistiert und entsprechende Charts erzeugt. Hierdurch kann man z.B. relativ den Verbrauch gegen die Außentemperatur stellen etc.
Auch das setzen von Werten ist über den WebService möglich. Ich habe das noch nicht gemacht, laut Dokumentation des WebService sollte das allerdings kein Problem sein. Die API des WebService kann über die WebSite des Herstellers runtergaladen werden.
Ich hoffe, dass dies jemandem bei der Einbindung seiner eigenen Heizung weiterhilft.
Viele Grüße,
Sapl
ich habe vor einiger Zeit mit openHab angefangen und möchte meine Erfahrungen im Zusammenhang mit meiner Heizung mit euch teilen. Bei der Heizung handelt es sich um eine ETA PC25, welche sich (nach Freischaltung) direkt über einen WebService ansteuern lässt. Zwar lassen sich bereits sehr viele Informationen über das TouchPanel der Heizung abfragen, aber die Historie, Temperaturkurven und Auswertemöglichkeiten fehlen völlig.
Die Aussagen treffen wahrscheinlich auch auf andere Modelle des Herstellers ETA zu (PC 20, PC 25, PC30, ggf. auch PU7, PU11 und PU15 ?).
Der WebService lässt sich über http://[Heizungs-IP]:8080/ erreichen. Über http://[Heizungs-IP]:8080/user/menu ist ein Menü erreichbar, wo sämtliche Verfügbaren Werte inklusive der CAN-Adresse aufgelistet werden. Das sieht z.B. wie folgt aus:
Über die CAN-Adresse lassen sich dann die Werte abfragen, z.B. von der aktuellen Außentemperatur:
Die Werte sind meist genauer als in der Oberfläche der Heizung abfragbar. Angezeigt wird der Wert 26kg, der "richtige" Wert ist allerdings 255 geteilt durch das Attribut scaleFactor.
In OpenHab lässt sich das Ganze relativ simpel über das HTTP-Binding mit einem einfachen XSL-Transformationsscript einbinden.
XSLT:
Code:
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:eta="http://www.eta.co.at/rest/v1" version="1.0"> <xsl:output indent="yes" method="xml" encoding="UTF-8" omit-xml-declaration="yes" /> <xsl:template match="/"> <xsl:value-of select="//eta:value div //eta:value/@scaleFactor" /> </xsl:template> </xsl:stylesheet>
In der jeweiligen Items-Datei sieht die Einbindung dann wie folgt aus. Abgefragt werden in dem Beispiel die aktuelle Temperatur des Außenfühlers sowie der Pellet-Vorrat im Kessel. Das Ganze wird dann entsprechend persistiert und entsprechende Charts erzeugt. Hierdurch kann man z.B. relativ den Verbrauch gegen die Außentemperatur stellen etc.
Code:
Number Eta_Temp "Temperatur ETA [%.1f °C]" <temperature> (Eta) { http="<[http://192.168.179.11:8080/user/var/40/10241/0/0/12197:600000:XSLT(eta_numeric.xsl)]" } Number Eta_Vorrat_Kessel "Vorrat Kessel [%.1f KG]" <fire> (Eta) { http="<[http://192.168.179.11:8080/user/var/40/10021/0/0/12011:600000:XSLT(eta_numeric.xsl)]" }
Ich hoffe, dass dies jemandem bei der Einbindung seiner eigenen Heizung weiterhilft.
Viele Grüße,
Sapl
Kommentar