NEWS
Test Adapter e3oncan - Viessmann E3 Serie einbinden
-
@flatlander Freut mich. Was war die Frage??
-
@jrbwh Das hat sich erledigt. Mir war nicht klar, dass man nach dem Scan die Datenpunkte für den EMCU aus dem Objectbaum dann in dem Reiter "Requesting data..." nochmal einzeln anfordern muss.
Jetzt funzt alles, ich muss mir nur noch über die Bedeutung der Bezeichnungen klar werden. Ist vieles ein wenig kryptisch.... -
@jrbwh
Liefert Viessmann eigentlich nur die Verdichterdrehzahl in Prozent oder gibt es noch irgendwo die tatsächliche Verdichterdrehzahl? Bei der 10 kW Variante ist Drehzahlbereich beschnitten, aber der gleiche Verdichter.Nochmals Danke für den super Support von Dir!
-
@raspican Mir ist kein Datenpunkt bekannt, der die Drehzahl in U/min liefert. Mit inhaltlichen Fragen zu den Viessmann-Geräten und Daten schaust Du am besten im Viessmann Forum und in den open3e-Diskussion vorbei.
-
@jrbwh Hallo! Bin neu hier, ich bitte um Gnade, wenn meine Fragen zu primitiv erscheinen.
Ersteinmal: vielen lieben Dank! Tolle Arbeit mit dem e3oncan. Sehr hilfreich!
Seit 3 Wochen verrichtet bei mir eine Vitocal A-252 ihren dienst. Sie ist über die Klemme 91 und CAN2USB an einem Mini-PC mit IOBroker angeschlossen, an dem auch ein Wechselrichter über Modbus hängt. Die e3oncan instanz ist auf Anhieb angelaufen, ich kann eine von mir definierte Reihe von Datenpunkten zyklisch auslesen und visualisieren.
Was ich nicht hinbekommen habe: die Datenpunkte zu schreiben. Was mache ich falsch? Habe ich etwas übersehen?
Ich versuche es mit Hilfe eines JScripts. Ähnlich mache ich es z.B. mit Shelly-Steckdosen, das funktioniert es. Hier Ein Beispielaufruf um die Zirkulationspumpe anzusteuern:setState('e3oncan.0.HPMUMASTER_0x680.tree.0491_DomesticHotWaterCirculationPump.State', 1);
Es gibt wohl irgenwo eine Whitelist mit beschreibbaren Datenpunkten. Muss sie etwa editiert werden?
Ich würde mich über einen Tipp freuen. -
@tobi-5 Freut mich, wenn Dir der Adapter gefällt
Der Schreibbefehl sollte so eigentlich funktionieren. Wichtig ist, dass man beim Schreiben des Datenpunktes Ack=false setzt, aber das macht ja setState() per Default.
Du kannst den Datenpunkte auch einfach mal von Hand ändern, dabei natürlich das Häkchen bei "Ack" nicht setzen.
Auf der Whitelist steht der Datenpunkt definitiv drauf.Was passiert denn, wenn Du versuchst zu schreiben?
Stell den Adapter mal auf Log-Level "Debug". Dann müsste bei einem Schreibvorgang ein Eintrag kommen:
User command UDS WriteByDid on HPMUMASTER_0x680.491
Der Datenpunkt 491 hat auch noch eine "Spezialfunktion" durch Viessmann: Die Anlage setzt den Wert automatisch nach 5 Minuten wieder auf 0 zurück. Soll die Zirkulationspumpe länger laufen, muss man rechtzeitig (alle 4 Minuten) erneut einen Schreibbefehl absetzen.
-
@jrbwh Es funktioniert! Wie immer saß der Fehler vor der Tastatur. Danke für wertvolle Tipps. Das manuelles Setzen des Wertes hat mich zu meinem Fehler geführt, es lag an der if Anweisung davor. Ich versuche mich zu zügeln mit Debug-Anfragen und selbst bessere Arbeit zu machen. Dennoch: vielen herzlichen Dank, jetzt bin ich nicht mehr verunsichert, das Schreiben funktioniert grundsätzlich und ich muss nicht den Sinn des Lebens in Frage stellen.
Die erwähnte "Selbsrückstellung" nach 5 Minuten kann mit dem Datenpunkt 497 zu tun haben. In meiner Verzweiflung bin ich auf folgendes Dokument gestoßen:
[https://community.viessmann.de/viessmann/attachments/viessmann/customers-heatpump-hybrid/145143/2/Viessmann One Base handbuchWP.pdf]
Die Beschreibung des Datenpunktes 497 ab Seite 22 ist sehr detailiert und es kann auch sein, dass das aktivieren der Pumpe am Nachmittag mit dem Wert des Datenpunktes zu tun hatte: laut Zeitprogramm war sie deaktiviert. Jetzt verändere ich beide Werte und es klappt.
Leider sind in dem verlinkten Dokument nicht alle Punkte aufgelistet. Pflegt jemand von Euch Gurus (Entwicklern des e3oncan) eine ähnlich detaillierte Beschreibung aller Datenpunkte? Wo bekommt ihr die Daten her? Manche wichtige Punkte im Baum sind leider nichtssagend (z.B. Mode=1). -
@tobi-5 Danke für den Tipp zu 497. Hab jetzt 497.Mode auf 1 gesetzt. Bin gespannt, ob es jetzt ohne Refresh funktioniert.
-
@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.