[Modul] Viessmann VitoConnect

Klar. Text-Datei ist super.

paresy

@michl / @hfichtinger Danke für eure Daten. Ich habe das Modul aktualisiert, sodass es mehr Werte anzeigt.

@michl Deine Wunschwerte scheinen in diesem Datensatz aber nicht drin zu sein. Ich sehe irgendwie Referenzen, dass es diese Werte geben soll - aber einen echten passenden Werte habe ich bisher nicht gefunden. Magst du evtl. mit der App mal vergleichen welcher Wert dort angezeigt wird und an welcher Stelle es im Datensatz ist? Vielleicht verstehe ich dann die Verbindung…

Update übrigens im Beta Kanal

paresy

Die Beta dürfte funktionieren, aber welche Werte sind dazu gekommen? Was ich mir aus der von mir verlinkten API hole ist z.b. der Pumpenstatus und den Onlinestatus. Ebenso ändere ich über diese die Wunschtemperatur vom Warmwasser.
Interessant ist, dass sie Zigbee kann, so zumindest diese Bezeichnung „device.zigbee.active (active)“. Hat das schon mal jemand probiert?
Übrigens, eine Abfrage alle 5 Minuten ist ok. Funktioniert bei mir schon seit einigen Monaten.

Ich hatte gerade im Beitrag gesucht, aber keinen Link gefunden. Welche API fragst du ab? Evtl kann ich die ja auch einbauen?

paresy

Stimmt, du hast recht. Ich hab dir das damals as PM geschickt.
Diese hier:

Ich hab das recht erfolgreich bei mir eingebunden. Liefert im Grunde die selben Werte plus ein paar Extrasachen. Ebenso kann hier auch der Modus (Nur Warmwasser, Heizen und Warmwasser) geändert werden, was ich für meine Anlage in Verbindung mit den Honeywell Heizungsreglern verwende. Durch die Umstellung auf „Nur Warmwasser“ schaltet sich nämich die Pumpe nach einer Zeit aus.

Hallo Paresy, hab gerade rausgefunden das mein Kältekreisregler diese Optionen nicht unterstützt.

Auch wenn es eine WO1C Regelung ( Vitronic 200 )
ist, gibt es " anscheinend" verschiedene Kältekreisregler.
Danke trotzdem dafür!

Kannst du sagen, welche Sachen dort „extra“ sind? Dann würde ich mal suchen, wo die herkommen.

Das kann ich einbauen, sobald die 5.6 draußen ist. Die unterstützt endlich String Assoziationen in Profilen.

paresy

Spontan fällt mir ein

  • Pumpenstatus vom Heizkreis
  • Oninestatus der Anlage
  • Änderung vom Modus
  • Anpassung der Zeitpläne und auch auslesen
  • Änderung der Solltemperatur vom Boiler

Hier hast du alles drinnen, was die API hergibt. Vieles ist ident.

Für die Änderung brauch ich das aber nicht. Geht ja jetzt auch. Ich schicke entweder „dhw“ für nur Warmwasser oder „dhwAndHeating“ für Heizen und Warmwasser als String.

Halo Paresy
Seit etwa 83 Minuten bekomme ich beim Aktualisieren der Viessmann Therme folgenden Fehler wenn ich auf den Button der Instanz klicke
image
Ich hab mal den Debug Dump angehängt :wink:
viessmanndump.txt (1,7 MB)
Betrifft aber offenbar nur die Funktion VVC_Update(55152). Das setzen der z.b. Vorlauftemperatur Komfort funktioniert.

Es funktioniert jetzt grad wieder. Soweit ich das gesehen hab, kommt die Meldung von deinem Modul aus Zeile 306 im module.php. Offenbar kommt da vonseiten Viessmann ein Feldtyp zurück, der weder boolean, number oder string ist.
Der Fehler trat immer nach

25.05.2021, 14:37:44 |      yearValueReadAt | heating.heat.production.total | yearValueReadAt = stdClass Object<LF>(<LF>    [type] => string<LF>    [value] => 2021-05-25T12:37:33.000Z<LF>)<LF>

auf

25.05.2021, 14:37:44 |         Unknown Unit | percent

Das sollte eigentlich das sein

25.05.2021, 14:37:44 |       dayValueReadAt | heating.heat.production | dayValueReadAt = stdClass Object<LF>(<LF>    [type] => string<LF>    [value] => 2021-05-25T12:37:33.000Z<LF>)<LF>

Wobei ein „sterben“ lassen schon sehr hart ist. im Zweifel würde halt einfach ein Wert nicht aktuell sein. Das „die()“ sieht man nämlich im Webfront nicht. Erst durch tiefere Erforschung meines Skripts, dass das Update macht - ich starte VVC_Update manuell in einem Skript und nicht durch den Timer - bin ich draufgekommen, dass das Skript nicht durchläuft. Hatte schon meinen Code in Verdacht. Aber nein, das VVC_Update war es. Durch das die() im VVC_Update ist nämlich auch gleich mein Skript mitgestorben.

Magst du mal die Beta-Version (1.8) testen? Die sollte jetzt wieder ne Menge neuer Variablen bringen :slight_smile:

paresy

Ich würde es gerne testen.

Andrzej.

Einfach im Store auf Beta umstellen :slight_smile:

paresy

Weißt du welche neuen Variablen dazugekommen sind?

Leider nein. Ich habe mich nur durch die Fehler gehangelt und deine JSON Datei in die Test-Suite eingepflegt.

paresy

Also von meiner Seite gibts ein Go für die Stable Version. Konnte keine Probleme feststellen.

1 „Gefällt mir“

Ich vermute ihr habt auch alle die E-Mail bekommen, dass die aktuelle API am 15.07 nicht mehr funktionieren wird. Ich vermute, dass ich bis dahin einen Workaround bauen kann, sodass die „Free“ Variante vom Developer Portal weiterhin funktioniert. Es würde jedoch bedeuten, dass sich jeder einmal im Developer Portal anmelden muss um eine passende ClientID zu erstellen.

Die Kollegen haben jedoch auch einmal offiziell als Symcon bei Viessmann nachgefragt, ob evtl. eine offizielle Lösung/Integration ohne zusätzliche Kosten realisiert werden könnte. Sobald ich dort eine Info habe gebe ich noch einmal Bescheid.

paresy

Danke für die Info.
Hab gerade die Mail von Viessmann gelesen :-/

Habs auch bekommen. Mir schwant da böses. Ich hoffe dass ich das in IPS irgendwie hinbekommen. Viel schwerwiegender ist jedoch die Tatsache, dass ich über eine andere Schiene (Paresy hab ich das schon mal geschickt) diverse Änderungen mache, die das Modul von Paresy nicht kann.
Da wären

  • Pumpenstatus (nur lesen)
  • Onlinestatus (nur lesen)
  • Warmwaser Wunschtemperatur
  • Betriebsart (ganz wichtig)

Gibt es eigentlich eine Möglichkeit das ganze ohne Cloud zu machen? Dann könnte man sich das ganze sparen.

Ich habe soeben eine neue Beta-Version hochgeladen, welche die neue API nutzt. Diese ist ähnlich, jedoch nicht vollständig kompatibel. Ich würde empfehlen, dass ihr das Update auf die Beta macht, aber erstmal eine neue Instanz erstellt, sodass die erstellen Variablen „sauber“ sind. Dann würde ich die Daten über das Archiv von den alten auf die neuen Variablen übertragen. Zum Schluss die alten Instanz löschen.

Wichtig: Ihr müsst über https://developer.viessmann.com/de/clients eine ClientID beantragen. Nur mit dieser bekommt ihr Zugriff auf euer System. Die notwendige Redirect URI findet ihr in der neuen VitoConnect Instanz. Im Gegensatz zur alten API wird ab jetzt Symcon Connect zum Einloggen benötigt.

Ich würde mich sehr freuen, wenn ihr mir eure Debug Logs zur Verfügung stellen könntet (z.B. per PM), damit ich diese als Tests ins Modul einpflegen kann.

paresy