NEWS
Test Adapter e3oncan - Viessmann E3 Serie einbinden
-
@jrbwh Tag! Bin wieder stecken geblieben. Es geht um den Datenpunkt 1006: Einmalladung Warmwasser.
e3oncan.0.HPMUMASTER_0x680.tree.1006_TargetQuickMode
Es ist beschrieben hier auf Seite 6:
[https://community.viessmann.de/viessmann/attachments/viessmann/customers-heatpump-hybrid/74546/1/6196307 Kundendatenpunktliste Vitocal (1).pdf](link url)
aber komischerweise nicht mehr in dem neueren Dokument hier:
[https://static.viessmann.com/resources/technical_documents/DE/de/VDP/6218400VDP00002_1.pdf](link url)Der Defaultwert ist "00000000". Wenn ich in der ViGuide oder ViCare das einmalige Warmwasser-Erwärmen aktiviere, wechselt der Wert auf "02010000" (und wird direkt als Punkt 1007 gespiegelt), was schon mal eine leichte Diskrepanz mit dem Dokument darstellt.
Der Punkt ist schreibbar, aber nicht in der Tree aufgelistet sondern nur in der Liste mit den Raw-Werten. Manuell kann ich es zwischen "02010000" und "00000000" umschalten. Wenn ist es aber vom JScript aus versuche, bekomme ich Fehler.
der Aufruf:setState('e3oncan.0.HPMUMASTER_0x680.tree.1006_TargetQuickMode',"02010000")
produziert:
Das gleiche nicht über die Tree sondern über den Raw-Baum führt zu noch mehr Error-Ausgaben:setState('e3oncan.0.HPMUMASTER_0x680.raw.1006_TargetQuickMode', "02010000");
Anschließend schmiert der Adapter ab und startet neu.Eine Idee, wie ich den Punkt aus dem Script heraus doch beschreiben kann?
Wäre es möglich, ausgehend von der Doku, den Punkt aufzubereiten und in der Tree als z.B. 1006_TargetQuickMode.Type (1006.0) und 1006_TargetQuickMode.Value(1006.1) (ich spinne mal jetzt mit den Namen) verfügbar machen, auch wenn der Wert 02 in der Doku nicht vorkommt? -
@tobi-5 Die Fehlermeldungen kommen, weil als Datenformat immer ein JSON-Objekt erwartet wird, der Befehl muss also so aussehen:
setState('e3oncan.0.HPMUMASTER_0x680.raw.1006_TargetQuickMode',JSON.stringify("02010000"));
Einen Absturz sollte das natürlich trotzdem nicht produzieren. Das werde ich mir anschauen und abfangen.
Die Datenpunktstruktur für 1006/1007 arbeite ich dann auch gleich ein. Eine gute Anlaufstelle für Diskussionen zum Verhalten und zur Nutzung der Datenpunkte ist auch das open3e Diskussionsforum.
-
@Tobi-5 Mit Version 0.10.8 ist der Bug gefixt und die Datenpunkte 1006/1007 sind als Struktur implementiert. Sollte morgen im Beta-Repo verfügbar sein.
-
@jrbwh Vielen lieben Dank. Werde ich bei Gelegenheit ausprobieren.
Dank Deiner Arbeit habe ich die letzten Tage, wo es so sonnig war, den Hausstrom, die Heizung und das Warmwasser um sonst, also wirklich 0 kWh Strom gekauft, dafür noch welchen eingespeist.
Das ganze automatisiert und visualisiert. Das (auch von Dir bereitgestellte?) Viessmann-Diagnose-Bild einer 252-A habe ich mit vernünfitgen Vektor-Grafiken nachgebaut, aufbereitet und um den Heizkreis mit Mischer erweitert. Es sieht dann so aus:
Wärmepumpe.mp4 -
@tobi-5 Vielen Dank für die tolle Rückmeldung
Das Diagnose-Bild sieht super aus
Ja, ich habe das mal von der Anlage abfotografiert und aufbereitet.
Wäre super, wenn Du Deine Version als View zur Verfügung stellen könntest. Am besten als neuen Beitrag unter Discussions.Viele Grüße, Jürgen
-
@jrbwh Hallo! Sorry, im Moment habe ich etwas viel um die Ohren.
Das "View" ist bestimmt ein Begriff aus VIS, ich habe mit der VIS2 gearbeitet. Dort gibt es den Knopf "Widgets exportieren", als Ergebnis kommt eine JSON (?) Datei raus. Diese lässt sich wieder importieren. Ich hoffe, man kann damit in VIS etwas anfangen, umgekehrt ließ sich dein View in VIS2 importieren. Die Grafiken sind schön durchsichtig, sodass man mit eigenen Hintergründen arbeiten kann. Sie müssen, wie gehabt, mit dem im VIS(2) integrierten Dateimanager in ein ensprechendes Verzeichnis (wo VIS sie wieder findet) geladen werden. Eventuell sind die Pfade anzupassen.
Meine Anlage beinhaltet die Vitocal 252-A (mit eingebautem 190L Warmwasserspeicher), mit kleiner Außeneinheit (R290 und nur 1 Propeller), einem 400L Puffer und einem Heizkreis mit Mischer (daher Heizkreis 2). Die Fußbodenheizung lässt sich einzeln über ein Ventil hinzuschalten (Shelly). Einzelne Objekte habe ich selber erstellt und die Logik dahinter wird mit einem Script bedient, hier muss jeder selber einen Ersatz schaffen oder eine andere Steuergröße aus den vorgefertigten Objekten wählen.
Da ich kein GitHub-Account habe, werfe ich es hier flach übers Netz, wenn es jemand gebrauchen kann: viel Spaß damit: VIS2VitocalHeatPump.zip -
@tobi-5 Danke für Deine Rückmeldung. Im ZIP-File sehe ich etliche Bilddateien, aber die Datei HeatPump ist leider leer, Größe ist 0. Würdest Du da bitte nochmal schauen?
-
@jrbwh Oh, da ist etwas schiefgegangen. Hier die Datei einzeln: HeatPump.zip
-
@tobi-5 Super, danke. Mit Vis-1 scheint es nicht zu gehen. Muss jetzt erstmal Vis-2 installieren.
-
@jrbwh Hallo jrbwh, jetzt habe ich doch noch eine Frage: Kennst Du einen Link zu einer detaillierten Beschreibung der Datenpunkte eines VitoCharge VX3 ? - Ich konnte mir zwar die Bedeutung einiger Datenpunkte durch Visualisierung zusammenreimen, aber aus machen werde ich einfach nicht schlau.
Zum Beispiel passt der Wert von e3oncan.0.EMCUMASTER_0x680.tree.0535_ObjectElectricalEnergyStatistical.GridFeedInEnergy zu keinem Wert der Smart Meters e380.
Hast Du eine Idee ? -
@flatlander Der beste Ort für Infos und Diskussionen ist das open3e-Projekt. Darauf basiert ja e3oncan-Adapter. Interessant ist auch das Viessmann-Forum, allerdings ziemlich unübersichtlich.
Der Datenpunkt 535 enthält kumulierte Energiewerte. Da ist natürlich die Frage, wann die auf Null waren. Ich habe schon erlebt, dass kumulierte Werte nach einem SW-Update durch Viessmann plötzlich wieder Null waren.
Kannst Du zumindest die Änderungen zwischen 535 und E380-Werten in Einklang bringen?
Ich benutze 535 nicht, kann deshalb nichts konkretes dazu sagen. -
@jrbwh Das Viessmann-Forum habe ich zu Datenpunkten schon durchsucht, da findet man nur Klagen, dass Viessmann eben keine Auskunft dazu gibt. Im Forum des open3e-Projekts habe ich dann unter vx3_datapoints nur das da gefunden:
import open3e.Open3Ecodecs from open3e.Open3Ecodecs import * dataIdentifiers = { "name": "EMCU", "dids": { 256 : None, 257 : None, 258 : None, 259 : None, 260 : None, 261 : None, 262 : None, 263 : None, 264 : None, ... usw.
Schade. So langsam gehen mir die Ideen aus, wo ich noch suchen könnte.
-
@flatlander In der Datei vx3_... stehen nur die Datenpunkte, die vom Standardwert abweichen, also z.B. eine andere Länge haben. Alle anderen Datenpunkte stehen im generischen File Open3Edatapoints.py. Das bringt Dich aber vermutlich auch nicht weiter.
Würde empfehlen, Deine Frage(n) im Viessmann-Forum oder in open3e unter Discussions zu stellen. Vielleicht hat bereits ein anderer User das Problem gelöst.