NEWS
Viessmann-Adapter mit vcontrol
-
Ok da hast du natürlich recht, dann muss man die auch schreiben können. Hab gesehen das die in der Excel 2mal auftauchen und da sind sie beschreibbar.
Wie das genau geht müsste ich auch ausprobieren bzw. aus meiner vito eine Adresse mit gleichen type finden und dann entsprechend umbauen.Das sind aber nur Einstellungen die man dadurch ändert. Ein Einschalten des Heizstabes wird darüber denke ich nicht möglich sein. Ob Heizstab aktiv ist lese ich z.B. so aus:
<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>
Schreiben ging bei den Adressen wenn ich es noch richtig im Kopf habe nicht.
-
@scrounger Habe mir deine Dateien ja auch angesehen und leider keinen passenden Typ gefunden.
Die Adresse die ich genannt habe stehen ja im Handbuch drin.
Die 0488 und 0489 nicht, wenn ich es richtig gesehen habe…Hättest du denn irgendeinen Ansatz für zB die 5012?
Edit:
Das Einschalten des Heizstabes wäre ja theoretisch die logische Konsequenz, wenn der Verdichter gesperrt ist und die Hysterese unterschritten wird (und der Heizstab auch freigegeben ist).Ich probiere das morgen mal manuell aus direkt am Display der Vitocal.
5012 auf 0 setzen
7901 auf 1 um Warmwasser über Heizstab zu erlauben und dann 1x Warmwasserbereitung.
Dabei messe ich dann den Strom an den Vorsicherungen vom Verdichter und Heizstab. -
@issr4k sagte in Viessmann-Adapter mit vcontrol:
Hättest du denn irgendeinen Ansatz für zB die 5012?
Hiermit gehts bei mir, unit
UTI
aus meiner vcontrold.xml nehmen:<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>
Edit:
Das Einschalten des Heizstabes wäre ja theoretisch die logische Konsequenz, wenn der Verdichter gesperrt ist und die Hysterese unterschritten wird (und der Heizstab auch freigegeben ist).Ich probiere das morgen mal manuell aus direkt am Display der Vitocal.
5012 auf 0 setzen
7901 auf 1 um Warmwasser über Heizstab zu erlauben und dann 1x Warmwasserbereitung.
Dabei messe ich dann den Strom an den Vorsicherungen vom Verdichter und Heizstab.Ah ok jetzt hab ich verstanden wie du das umsetzen willst - das sollte wohl klappen. Bin gespannt auf deine Erfahrungen.
-
@scrounger Prima, damit versuche ich es. Danke!
Und das manuelle Testen ebenso. Spätestens am Wochenende.
-
@scrounger Heute Abend teste ich meine neuen xml-Dateien. Wenn das Ergebnis positiv ausfällt, dann poste ich sie hier.
-
Und ich dachte es wäre einfach von 0 auf 1 und wieder zurück, da es im Menü an der Heizung ein einfacher an/aus Punkt ist
Wieder erwas dazu gelehrnt
Bin gespannt was eure Forschungen ergeben.
Ich bin noch bei der Suche nach einem günstigen Optolink-Kabel.Gruß
Darth -
@issr4k Hast du die Commands für die 7901?
Ich teste das mal parallel bei mir durch. -
@darth2010
Leider nicht. Die Vitocal will immer lieber den Verdichter verwenden, was ja energetisch auch Sinn macht, aber der Heizstab arbeitet verschleißfrei (vorausgesetzt man übertreibt es nicht mit den Spitzentemperaturen, Stichwort Kalkausfall).
abe mein Optolink-Kabel von Kleinanzeigen ~ 35€, auf Löten hatte ich keine Lust.@MartyBr was meinst du genau 7901, kann laut meinem Handbuch nur 0 und 1. Da steht aber etwas von Wärmepumpenkaskade bei… ggf. müssen wir auf 6015 aufweichen um den Heizstab für Warmwasser zu nutzen, darauf wird zumindest bei 7900 verwiesen…
-
@issr4k Bei meinem Handbuch steht zu 6015: Wert 0 und 1
Freigabe Durchlauferhitzer 7900
Freigabe Elektroheizeinsatz (Freigabe Zusatzheizung 6014)
Das verstehe ich nicht.
Wie schaltest du die 7901? Hast du dazu ein Code-Beispiel?
Ich habe an der VitoCal den Heizstab über die Codier-Ebene 1 freigeschaltet. Über das Menü kann ich den Heizstab schalten, ich bekomme es aber nicht über Vcontrol hin. -
@martybr Ich bin leider noch nicht dazu gekommen.
Morgen im Laufe des Tages werde ich aber Erkenntnisse haben. -
@issr4k Lass dir Zeit, ich habe heute mal meine Dateien erstmal fertig bekommen. Die Lüftungswerte konnte ich noch nicht finalisieren. Ich bekomme da keine Werte. Es sollen 7D08 (Abluft-Temperatur Sollwert) und 7D1D (Quelle Raumtemperatur-Istwert).
Ich habe mir nun eine Test Vito.xml mit diesen Werten gebaut und werde ich auch morgen mal testen. -
@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