NEWS
Viessmann-Adapter mit vcontrol
-
@issr4k
Meine ist Bj. 2017. Ich habe noch eine VitoVent300F an der Anlage (zentrale Lüftung mit Wärmerückgewinnung).
Mit der VitoComfort kann ich sie auch zentral mit der Vitocal zusammen steuern. Zumindest die Lüftungssteuerung kann ich auch per VitoConnect steuern, das müsste also auch über vcontrold gehen. Infos gibt es dazu nicht. Ich suche mir hier einen Wolf. -
@martybr
Naja das ist ja nicht verwunderlich, wenn man Viessmann‘s aktuelle Strategier sieht… mit Cloud Geld verdienen… das sind wir denen natürlich ein Dorn im Auge…Suche mal bei Google nach Datenpunkten Vitocal KNX Vitogate… da steht möglicherweise noch was brauchbares.
Ließt du nach jeder Änderung an der vito.xml im ioBroker adapter neu ein?
Bei mir passiert irgendwie gar nichts mehr im Adapter.
Wenn ich „neu einlesen“ ankreuze meldet iobroker das der adapter wiederholt abstürzt -
@issr4k
Da such ich mal. Zu deiner Frage: Wenn ich die xml-Dateien (auch die Vito.xml) ändere, dann starte ich den vcontrld-Server neu. Auch entferne ich die Viessmann-Instanz und konfiguriere ich neu. Die Instanz startet ansonsten nicht mehr. Auch wenn ich angebe, die Vito.xml neu zu laden. Das ist echt zeitaufwendig. -
@issr4k
Ich habe hier eine interessante PDF von Viessmann gefunden. Hier stehen auch die Werte für die Lüftung:
204D_Vitocal_xxx-S_Vitotronic_200_Typ_WO1C__Vitocaldens__Vitolacaldens.pdfIch werde mir in den nächsten Wochen eine neue Vito.xml Datei bauen.
Vorbild wird die Vito.xml von @dtp sein. Seine Vito hat eine schöne Struktur mit einer Aufteilung nach Themen.
Ich versuche da auch die Lüftung einzubauen. Das wird aber eine weile dauern. Ich bin nun zuversichtlich, dass der vcontrold besser als die API Lösung ist, da man hier auf das Entgegenkommen von Viessmann angewiesen ist. -
@martybr Hmm Instanz entfernen… da hätte icu auch drauf kommen können
Danke probiere ich aus -
@issr4k
Ja wäre auch interessant die vcontrold.xml auf ein minimum zu verschlankenEDIT: das 300er läuft bei mir nun auch
Versuche weiter mit dem PV Thema
-
@issr4k
Hier mein Versuch mit der Vitovent. Ich habe mal zwei Datenpunkte, die in der Viessmann Beschreibung aufgeführt werden, eingetragen. Das habe ich dann auf meinem Testserver getestet, um mein Produktivsystem nicht zu verändern.Bei ersten Test ist VControld abgestürzt und hat keine Werte geliefert. Ein Telnet liess sich auch nicht beenden. Ich hatte als unit "RT" eingegeben.
Bei Zweiten Versuch hatte ich dann als init "CO" eingetragen. Das führte dann nicht zum Absturz, liefere aber keine Werte. Hast du eine Übersicht über die unit-Werte? Es scheint da eine Menge zu geben.Hier die vito.xml aus dem Test-System:
vito_test.xml -
@martybr habe leider keine Vitovent.
Hatte noch einen kleinen Erfolg zB beim Verdichter sperren (5012) Werkseinstellung sind 15.. Kann man in der Codierebene 1 natürlich aufrufen.
Vcontrold bekommt auch was allerdings habe ich noch nicht so recht die richtige einheit..
Wenn ich über telnet „debug on“ die 5012 aufrufe, versteht vcontrold die Antwort Stand jetzt nicht.
Bei debug bekomme ich aber ein 0x0F sprich 15.
Wenn ich über die Vitocal die 5012 anpasse auf zB 11 .
Steht bei Debug 0xB… also die werte kommen korrekt an, jetzt müsste man noch tüfteln, sodass vcontrol sie auch versteht.Bei dem 5012 (siehe Anleitung)
Handelt es sich um einen Parameter mit 4 Bit
Bit—Wertigkeit—Einstellwert—Summe
Bit 0 — 1 — 1 — 1
Bit 1 — 2 — 1 — 2
Bit 2 — 4 — 1 — 4
Bit 3 — 8 — 1 — 8Sind dann insgesamt 15, nimmt man Bit 2 raus bzw setzt den Einstellwert auf 0 landen wir bei den angesprochenen 11.
Ich lade morgen dazu nochmal Fotos hoch, dann ist es eventuell verständlicher. -
@issr4k Eine kurze Frage:
Laufen bei dir meine xml-Dateien? Ich habe gerade die vcontrold.xml etwas um neue Units erweitert. Sie läuft bei mir einwandfrei.
Ich kann sie dir hier einstellen. -
@martybr
Ja gerne doch!
Welche units sind denn die neuen?
Und wo hast du die her? -
@issr4k
Die kann man in der vcontrold.xml selber definieren. Schau mal rein:
vcontrold_neu.xml -
@martybr und woher weißt du wie?
-
@issr4k Ich habe mir verschiede vcontrold.xml Dateien angeschaut. Dort werden die <unit> Definitionen erstellt.
-
@martybr Kannst du mir das an einem Beispiel erklären?
-
@issr4k
Hier zwei Unit-Einträge:<unit name='BetriebsArt'> <abbrev>BA</abbrev> <type>enum</type> <enum bytes='00' text='Abschaltbetrieb'/> <enum bytes='01' text='Warmwasser'/> <enum bytes='02' text='Heizen und Warmwasser'/> <enum bytes='03' text='3'/> <enum bytes='04' text='dauernd reduziert'/> <enum bytes='05' text='dauernd normal'/> <enum bytes='06' text='normal Abschalt'/> <enum bytes='07' text='nur Kuehlen'/> <enum text='UNKNOWN'/> </unit> <unit name='Aktuelle Betriebsart'> <abbrev>ABA</abbrev> <type>enum</type> <enum bytes='00' text='Abschaltbetr. (Dauernd)'/> <enum bytes='01' text='Red. Betrieb (Schaltuhr)'/> <enum bytes='02' text='Normalbetrieb (Schaltuhr)'/> <enum bytes='03' text='Normalbetrieb (Dauernd)'/> <enum text='?'/> </unit>
Der obere steht in jeder XML. Hier werden Werte von 00 bis 07 ausgewertet. Der untere ist eine Variation, der die Werte von 00 bis 03 auswertet. Je nach Datenpunkt kannst du dann die entsprechende unit eintragen.
Beispiel vito.xml:
<command name="getTempSekVL" protocmd="getaddr"> <addr>0105</addr> <len>2</len> <unit>UT</unit> <description>Information - Heizkreis HK1: Vorlauftemperatur Sekundaer 1 (0..95)</description> </command>
Hier wird die unit == UT eingetragen. Die Definition steht wieder in der vcontrold.xml.
Hier:
<unit name='Temperatur'> <abbrev>UT</abbrev> <calc get='V/10' set='V*10'/> <type>short</type> <entity>° C</entity> </unit>
-
@martybr sagte in Viessmann-Adapter mit vcontrol:
@issr4k
Hier zwei Unit-Einträge:<unit name='BetriebsArt'> <abbrev>BA</abbrev> <type>enum</type> <enum bytes='00' text='Abschaltbetrieb'/> <enum bytes='01' text='Warmwasser'/> <enum bytes='02' text='Heizen und Warmwasser'/> <enum bytes='03' text='3'/> <enum bytes='04' text='dauernd reduziert'/> <enum bytes='05' text='dauernd normal'/> <enum bytes='06' text='normal Abschalt'/> <enum bytes='07' text='nur Kuehlen'/> <enum text='UNKNOWN'/> </unit> <unit name='Aktuelle Betriebsart'> <abbrev>ABA</abbrev> <type>enum</type> <enum bytes='00' text='Abschaltbetr. (Dauernd)'/> <enum bytes='01' text='Red. Betrieb (Schaltuhr)'/> <enum bytes='02' text='Normalbetrieb (Schaltuhr)'/> <enum bytes='03' text='Normalbetrieb (Dauernd)'/> <enum text='?'/> </unit>
Und wieder beispielhaft, mit welcher Adresse verwendest du die Einheit ABA ?
-
@issr4k
Habe ich noch nicht implementiert. Das wird mich in den nächsten Wochen beschäftigen. Ich schreibe ja gerade die vito.xml komplett um (hatte ich ja weiter oben geschrieben). Ich habe extra ein Testsystem aufgebaut, um mein laufendes System nicht zu himmeln. -
@issr4k
Meine Liste von Viessmann der Datenpunkte zur 204D muss fehlerhaft sein. Ich habe jetzt versucht, die Lüftung zu integrieren, das ist aber fehlgeschlagen. Beim Vergleich der Datenpunkte funktionierende Befehle zur Viessmannliste zeigt große Differenzen.
Hast du evtl. eine Liste der Datenpunkte? -
Hier gibts ein nettes Projekt wo man sich die möglichen Adressen für sein Gerät rausziehen kann:
https://github.com/sarnau/InsideViessmannVitosoftBei mir ist das leider schon lange her und hat auch nur bedingt funktioniert. Ich hab mir da folgende Daten rausgezogen und nen Excel erstellt:
EventTypes.xlsxWenn man nach
WPR3
filtert findet man alle Adressen inkl. Type für W01C Steuerung.
Allerdings muss man dann doch immer probieren ob die funktionieren. Ich hab mir das Handbuch genommen und dort nach den Adressen geschaut und dann getestet. Mit der Methode hab ich alles gefunden was ich so brauche. Die Adressen stehen ja auch in der Anlage wenn man in Codierebene 1 / 2 geht.Hier mal meine xmls:
vcontrold.xml
vito.xmlDamit hab ich dann ne ganz nette Visu erstellen können:
Edit:
Grad noch entdeckt: https://github.com/philippoo66/ViessData21
Hier gibts die Listen (DP_Listen_2.zip) pro Gerät. -
@scrounger Super, vielen Dank. Die Werte korrespondieren mit meinen Werten, dass scheint die gleiche Steuerung zu sein.
Eine Frage habe ich aber noch: Müssen eure Mieter niedrigere Temperaturen als ihr haben, oder ist das Zufall?Ich schaue mir mal in Ruhe die Excel an, auch hier für vielen Dank. Ich habe mir gerade das Handbuch der VitoTronic 200 rausgesucht. Dann kann ich da ja die Dateien finalisieren.
Ich habe nun auch im Handbuch endlich die Werte für die Vitovent gefunden:
Die liegen bei 7D0x.
Da steckt ja noch jede Menge Arbeit vor mir.Meine Visa sieht aktuell so aus (nicht so schön wie deine, bin noch am basteln):