NEWS
Viessmann-Adapter mit vcontrol
-
@scrounger
@Issr4k
Ich habe versucht, die Werte abzufragen. leider stürzt vcontrold immer ab. Vielleicht hat jemand einen Tipp für mich.Hier die Test-vito.xml:
<vito> <devices> <device ID="204D" name="V200-S" protocol="P300"/> </devices> <commands> <command name="getDevType" protocmd="getaddr"> <addr>00F8</addr> <len>2</len> <unit>UN</unit> <description>Information - Allgemein: Anlagentyp (204D)</description> </command> <command name="getTempA" protocmd="getaddr"> <addr>0101</addr> <len>2</len> <unit>UT</unit> <description>Information - Allgemein: Aussentemperatur (-40..70)</description> </command> <!-- VERDICHTER --> <command name="getFreigabeVerdichter" protocmd="getaddr"> <addr>5012</addr> <len>1</len> <description>tbd</description> <unit>UTI</unit> </command> <command name="setFreigabeVerdichter" protocmd="setaddrValue"> <addr>5012</addr> <len>1</len> <unit>UTI</unit> <description>tbd</description> </command> <!-- HEIZSTAB --> <command name="getHeizstab_Stufe_1_aktiv" protocmd="getaddr"> <addr>0488</addr> <len>1</len> <description>Heizstab Stufe 1 ein/aus</description> <unit>BST2</unit> </command> <command name="getHeizstab_Stufe_2_aktiv" protocmd="getaddr"> <addr>0489</addr> <len>1</len> <description>Heizstab Stufe 2 ein/aus</description> <unit>BST2</unit> </command> <!-- LUEFTUNG --> <!-- <command name="getFortluft" protocmd="getaddr"> <addr>0A05</addr> <len>1</len> <unit>RT</unit> <description>Volumenstrom Fortluft</description> </command> <command name="getZuluft" protocmd="getaddr"> <addr>0A04</addr> <len>1</len> <unit>RT</unit> <description>Volumenstrom Zuluft</description> </command> --> </commands> </vito>
Hier die Definitionen:
<unit name='Temperatur 1Byte ganzzahlig'> <abbrev>UTI</abbrev> <calc get='V' set='V'/> <type>uchar</type> <entity>°C</entity> </unit> <unit name='Bitstatus_Boolean'> <abbrev>BST2</abbrev> <type>enum</type> <enum bytes='00' text='0'/> <enum bytes='01' text='1'/> <enum bytes='02' text='NV'/> <enum text='UNKNOWN'/> </unit>
Meine originale Vito.xml startet ohne Probleme.
-
Ich kann erfolgreichen Vollzug melden
Zwar manuell über das Display der Vitocal, aber im Vorfeld konnte ich dann auch die 5012 aktiv über iobroker > vcontrold setzen.
Danke @Scrounger !Warum bei reinen Zahlenwerten (5012 = 0-15Wertebereich) Integer nicht funktioniert verstehe ich nicht, aber stattdessen mit uchar ??!!!??? Bin halt kein Informatiker
So klappt es:
<!-- vcontrold.xml --> <unit name='Einstellwert-Test'> <abbrev>XX</abbrev> <calc get='V' set='V'/> <type>uchar</type> <entity/> </unit>
<!-- vito.xml --> <command name="setComp" protocmd="setaddrValue"> <addr>5012</addr> <len>1</len> <unit>XX</unit> <description>Freigabe Verdichter </description> </command> <command name="getComp" protocmd="getaddr"> <addr>5012</addr> <len>1</len> <unit>XX</unit> <description>Freigabe Verdichterstufe (1=WW 2=Heiz 3=WW+Heiz 15=default)</description> </command>
-
5012 auf 0 (Verdichter sperren)
-
7900 Freigabe Heizwasser-Durchlauferhitzer (DLH) beachten (bei mir automatisch auf "3", siehe Beschreibung)
-
7901 nicht aufrufbar bei der Vitocal 222-G (nur bei Kaskade) stattdessen 6015 auf 1
gleiche Einstellung wie über das normale Benutzermnü > Warmwasser > Häckchen setzen bei "WW mit Elektro"
-
ggf. 7902 auf 1
-
ggf. Leistung des Durchlauferhitzers anpassen über 7907
Den Strom habe ich wie angekündigt gemessen:
während unter Diagnose > Anlagenübersicht der Heizstab vor sich hingeblinkt hat, gab der Verdichter keinen Mucks von sich...
Die "2" links davor kennzeichnet die Leistung (7907)
Generell ist die Stromaufnahme etwas unsymmetrisch, das liegt aber an den unterschiedlichen Leistungen der Heizwiderstände:
Generell muss man sagen, dass die Visualisierung über das Display der Vitocal sehr träge ist bis etwas zu sehen ist, auch bis der Heizstab mal endlich ansprang, gingen Sekunden ins Land.
<command name="setComp" protocmd="setaddrValue"> <addr>5012</addr> <len>1</len> <unit>XX</unit> <description>Freigabe Verdichter (0=aus 1=WW 2=Heiz 3=WW+Heiz 15=default)</description> </command> <command name="setHeaterforWW" protocmd="setaddrValue"> <addr>6015</addr> <len>1</len> <unit>XX</unit> <description>Druchlauferhitzer für Warmwasser aktivieren</description> </command> <command name="setHeaterforRoomtemp" protocmd="setaddrValue"> <addr>7902</addr> <len>1</len> <unit>XX</unit> <description>Durchlauferhitzer für Heizung aktivieren</description> </command> <command name="setHeater" protocmd="setaddrValue"> <addr>7907</addr> <len>1</len> <unit>XX</unit> <description>Leistung Durchlauferhitzer (1=3, 2=6 oder 3=9kW)</descript> </command>
-
-
@martybr Hast du mal mit "debug on" versucht über cli?
Habe das auch ab und zu mal. Neustart hilft dann.
-
@issr4k
Ich habe den Fehler gefunden. Da war </description> falsch geschrieben . -
@blauholsten sagte in Viessmann-Adapter mit vcontrol:
Hi, dann wird in deinen xml Dateien die Type Deklaration nicht passen.
Das Problem konnte ich lösen.
Ich habe aber eine Verständnisfrage: Ich versuche die VitoVent zu integrieren. Dazu ändere ich häufig die Vito.xml Datei. Bei jeder Änderung muss die Viessmann-Instanz löschen und wieder installieren. Da gehen mir natürlich auch die Datenpunkte verloren, die ich per Influxdb logge.
Hast du hierfür einen Tipp? Ich hatte in GitHub??? gesehen, dass du an einer Lösung für das dynamische Einlesen der Vito.xml Datei arbeitest.
Vielleicht habe ich auch etwas verwechselt , schön wäre es dann trotzdem. -
@issr4k said in Viessmann-Adapter mit vcontrol:
So hat es funktioniert:
3. 7901 nicht aufrufbar bei der Vitocal 222-G (nur bei Kaskade) stattdessen 6015 auf 1
gleiche Einstellung wie über das normale Benutzermnü > Warmwasser > Häckchen setzen bei "WW mit Elektro"
D.h. wenn ich den Heizstab zusätzlich zum Verdichten anschalten möchte würde das ausreichen?
Gruß
Darth -
Ich habe jetzt einige Werte der Lüftung VitoVent300F erfolgreich einbinden können:
<vito> <devices> <device ID="204D" name="V200-S" protocol="P300"/> </devices> <commands> <command name="getTempA" protocmd="getaddr"> <addr>0101</addr> <len>2</len> <unit>UT</unit> <description>Information - Allgemein: Aussentemperatur (-40..70)</description> </command> <!-- VITOVENT --> <command name="getMinZuluftBypass" protocmd="getaddr"> <addr>7D0F</addr> <len>2</len> <unit>UT</unit> <description>Minimale Zulufttemperatur für den ByPass in Grad 0,1 °C</description> </command> <command name="setMinZuluftBypass" protocmd="setaddr"> <addr>7D0F</addr> <len>2</len> <unit>UT</unit> <description>Setze Minimale Zulufttemperatur für den ByPass in Grad 0,1 °C</description> </command> <command name="getAbluftTemp" protocmd="getaddr"> <addr>7D08</addr> <len>2</len> <unit>UT</unit> <description>Ablufttemperatur-Sollwert in Grad 0,1 °C</description> </command> <command name="setAbluftTemp" protocmd="setaddr"> <addr>7D08</addr> <len>2</len> <unit>UT</unit> <description>Setze Ablufttemperatur-Sollwert in Grad 0,1 °C</description> </command> <command name="getVolstromRed" protocmd="getaddr"> <addr>7D0A</addr> <len>2</len> <unit>UCH</unit> <description>Volumenstrom reduzierte Lüftung in m3</description> </command> <command name="setVolstromRed" protocmd="setaddrValue"> <addr>7D0A</addr> <len>2</len> <unit>UCH</unit> <description>Setze Volumenstrom reduzierte Lüftung in m3 xxx</description> </command> <command name="getVolstromNormal" protocmd="getaddr"> <addr>7D0B</addr> <len>2</len> <unit>UCH</unit> <description>Volumenstrom normale Lüftung in m3</description> </command> <command name="setVolstromNormal" protocmd="setaddrValue"> <addr>7D0B</addr> <len>2</len> <unit>UCH</unit> <description>Setze Volumenstrom normale Lüftung in m3 xxx</description> </command> <command name="getVolstromIntensiv" protocmd="getaddr"> <addr>7D0C</addr> <len>2</len> <unit>UCH</unit> <description>Volumenstrom intensive Lüftung in m3</description> </command> <command name="setVolstromIntensiv" protocmd="setaddrValue"> <addr>7D0C</addr> <len>2</len> <unit>UCH</unit> <description>Setze Volumenstrom intensive Lüftung in m3 xxx</description> </command> <!-- ENDE VITOVENT --> </commands> </vito>
-
@darth2010 sagte in [Viessmann-Adapter mit vcontrol
D.h. wenn ich den Heizstab zusätzlich zum Verdichten anschalten möchte würde das ausreichen?
Ja!
-
@issr4k
Ich habe deine <command> übernommen und auch in die Vito.xml eingebaut. Ich werde sie in den nächsten Tagen testen, so weit ich dafür Zeit finde.Meine Frau verplant gerade meinen Geburtstag, da kann es etwas eng werden
-
@martybr hehe!
Die Heizung ist ja auch noch nach der Feier da -
@issr4k Die beiden Smileys passen gut. Meine Frau und ich haben beide im Abstand von 8 Tagen Geburtstag. da kommt immer was zusammen .....
-
@martybr
Haha das kenne ich! Bei mir sind es 10 Tage -
Super, dann besorge ich ein Opto-Kabel und USB-Verlängerung um das ganze an den ioB-Server anzuschließen.
Danke
Muss man die Optolink Schnittstelle der Vitical noch freischalten oder ist die immer aktiv?
-
@darth2010
Die ist immer aktiv. -
Bitte mal die GitHub Version testen. Das Problem kam mit der Großen Code Umstellung die ich vor ein paar Wochen gemacht habe.
Ich konnte jetzt leider nicht testen, darum bitte mal testen und Feedback geben. Danke
-
EDIT: Kann leider nicht testen.
Habe aus benutzerdefinierter URL https://github.com/misanorot/ioBroker.viessmann installiert. In der Objekt-Struktur taucht zwar etwas auf dieser Ordner ist leer.
Aber ansonsten komme ich in keine Adapterkonfiguration (Instanzen ist diesbezüglich leer) rein...Muss auch dazu sagen, dass ich noch nie einen Adapter o.Ä. von außerhalb des Stable installiert habe.
Wenn du mir erklärst wie, kann ich gerne testen.
-
@issr4k Hallo, den eigentlichen Adapter vorher gelöscht?
Nach der Installation über GitHub, musst du über das plus Zeichen, eine Instanz hinzufügen.
-
@issr4k said in Viessmann-Adapter mit vcontrol:
Grüß dich @martybr
Die set commands laufen bei meiner 222-g auf den gleichen Adressen wie die get commands.
zB. Warmwassertemp über ioB ändern funktioniert ohne Probleme.
Kann heute Abend meine Dateien anhängen.Die vcontrold.xml ist irgendeine Standarddatei aus dem openv Forum, welche ich nur angepasst habe.
vito.xml vcontrold.xmlEdit: Falls die Adressen bei dir auch funktionieren sollten und du weitere herausfindest würde ich mich freuen, wenn du hier noch etwas postest
Hallo issr4k,
ich habe auch eine Vitocal 222-g und daher dachte ich nehme ich deine beiden XMLs als ersten Start.Ich habe meinen PI soweit fertug und er ist per Optolink verbunden.
Ein Putty Test zeigt:
vctrld>version Version: 0.98.12-4-g70ef62b vctrld>getTempA 5.500000 Grad Celsius
Das sind zumindest schonmal Antworten von der Vitocal .
Nun verstehe ich die "5.500000 Grad Celsius" nicht... aktuell sind es 4.1°C.
Wo ist da der Fehler?Gruß
Darth -
@blauholsten bin leider noch nicht wieder ans Testen gekommen…
@darth2010 mhh kann ich dir ad-hoc nicht beantworten, eine Vermutung wäre möglicherweise das falsche Protokol. KW statt 300, da hatte ich zumindest auch schonmal abweichende Werte.
Davon abgesehen gaube ich, dass die xml Dateien aus einem der älteren Posts nicht meinen aktuellen entsprechen.
Ich schaue dass ich die heute Abend nochmal hochlade -
@darth2010
Hier mal meine Dateien, die an der Vitocal 333g funktionieren.
Ich habe weiter unten einige Datenpunkte für die Lüftung Vitovent 300F eingefügt. Die kannst du ja löschen.