NEWS
Viessmann-Adapter mit vcontrol
-
Mal versucht die Datenpunkte wo er wegen String und Number meckert, manuell im Objektbtowser direkt in ioBroker auf den gewünschten Datentyp zu ändern?
Des weiteren würde ich dir raten die Dateien mal radikal zu verschlanken, vorallem die vito.xml… mehr wie 70% davon sind doch völlig überflüssig. Wozu sollte man die unbedingt in ioBroker haben wollen…
-
@issr4k
Ich habe gedacht, dass der Typ in der XML bestimmt wird, z.B. hier:<command name="getTempA" protocmd="getaddr"> <addr>0101</addr> <len>2</len> <unit>UT</unit> <description>Information - Allgemein: Aussentemperatur (-40..70)</description>
<unit> sieht mir danach aus, ich habe aber noch keinen Hinweis auf die verschiedenen Units in der Vito.xml gefunden. Ich muss da noch ein bisschen suchen.
DT scheint Text su sein, UT gleich Zahl. Ich suche weiter....
Edit: Ich habe eine Tabelle mit den Infos gefunden:
Name () Datentyp Bytes Berechnung Beschreibung UT signed short 2 * 0.1 Temperatur mit einer Nachkommastelle PR short 2 * 1 Prozentwert 0..100% ST (unsigned) char 1 * 1 Status Boolean 0 oder 1 CO (unsinged) int 4 * 1 Counter (Zähler) CS (unsigned) int 4 / 3600 Sekundenzähler (/3600 in h) CT cycletime n*2 CycleTime, Schaltzeiten (h <<3 + Min DIV 10) An / Aus jeweils ein Byte BA enum 1 Betriebsart SR enum 1 Return Status beim Setzen TI systime 8 WT, TT.MM.JJJJ HH:MM:SS ES errstate 9 1 Byte Fehler + sysdate RT enum 1 Return Status Umwandlung enum
-
@martybr
Oke, demnach nal die Datenpunkte aus dem Log von UT auf ST ändern in der xml… -
@issr4k
Die angemeckerten Werte haben alle ein RT in unit == Return Status Umwandlung.Also doch vielleicht in ioBroker den DP ändern????
Edit:
Ich habe das mal für einen DP in ioBroker geändert, mal schauen.... -
@martybr
Sieht nun gut aus. Ich setze die anderen Date nun auch auf "number" in iobroker. -
@martybr
Dann hoffen dass die Verbindung jetzt länger als zwei Stunden durchhält.Mein vcontrold läuft jetzt seit ein paar Wochen
-
@issr4k
Ich lasse ihn nun mal laufen. Ich habe noch einige Datenpunkte freigeschaltet.
Morgen schmeisse ich mal die Solarwerte aus dem System. Die PV läuft separat. Ich hätte nur gerne den Heizstab im System mit der Option, ihn bei hoher Einspeisung der PV zu aktivieren.Das ist die nächste Herausforderung.
-
@martybr ja genau, das möchte ich auch machen.
Dazu müssen wir mal das Handbuch zu rate ziehen -
@issr4k
Erst mal muss das System in ein paar Tage stabil laufen. Morgen werde ich mal einige Datenpunkte löschen, also alles was mit HK2 und HK3 und die Solar. Die benötige ich nicht.
Und dann geht es an den Heizstab -
-
@issr4k
Mein Viessmann-Adapter und der VControld laufen nun stabil. Ich habe noch einige Datenpunkte rausgeworfen.
Ich kann nun einige Werte interpretieren, z.B. die verschiedenen Temperaturwerte WW, Heizkreis und die Temperaturen der Primärleitung == Erdwärme. Nun habe ich den Verdichter/Kompressor gefunden. -
@martybr Ich bin auch gerade dran.... Allerdings habe ich meine Verbindung gecrasht... Und bekomme sie jetzt nicht mehr zum laufen
Wollte mit Adresse 7907 die Leistung des Heizstabes anpassen, seitdem geht nichts mehr.Lädst du die getesteten Adressen hier hoch?
-
-
@martybr Danke!
Du sag mal funzt "getDevType" bei dir?
ist deine vcontrold.xml noch unverändert? Bzw hängst du Sie auch nochmal an?
-
@issr4k
Ja zu beiden Fragen. Ich kann mit dem Wert nichts anfangen.viessmann.0.get.DevType 1923,2
Hier die vcontrold.xml:
vcontrold.xml -
@martybr die 1923,2 bekomme ich auch darauf... Versuche mein Protokoll auf das 300er umzustellen und reite mich dadurch als weiter rein xD
-
@issr4k Gib mir bitte eine Info zum Heizstab, wenn du da weitergekommen bist.
Ich habe bisher noch keine Einstellungen zum setzen von DPs getestet. Das ist ja auch noch eine Baustelle.
Du kannst ja mal meine XML testen. Die liefern schon eine Menge an Datenpunkten. -
<command name="get1xWW" protocmd="getaddr"> <addr>B020</addr> <len>1</len> <unit>SR</unit> <description>Abfrage WW 1xWW Bereitung</description> </command> <command name="set1xWW" protocmd="setaddr"> <addr>B020</addr> <len>1</len> <unit>SR</unit> <description>Bedienung WW 1xWW Bereitung</description> </command>
Kannst du B020 bei dir mal testen. Bei mir passiert leider nichts.
Zumindest bei "get" müsste doch etwas feststellbar sein, man kann über das Display der Vitocal Menü > Warmwasser > 1x Warmwasserbereitung anwählen (dahinter ist ein Viereck welches einen Haken bekommt wenn aktiv.EDIT:
Es klappt aber nur hiermit<unit>RT</unit>
Es tut sich was. jag es bei dir auch mal durch.
Im Kontext dazu Github die letzten beiden Beiträge
-
@issr4k
Teste ich morgen. In meiner Vito.xml steht ja als unit "RT". -
@martybr
spreche ich "set1xWW" mit 2 an, steht auf dem Display der Vitocal dick und fett Manueller Modbus..EDIT: Wo genau hast du denn die Tabelle mit den Datentypen her?
EDIT 2: So klappt es jetzt... B020 ist wohl nicht der Richtige...
<command name="set1xWW" protocmd="setaddr"> <addr>B0D0</addr> <len>1</len> <unit>RT</unit> <description>Bedienung WW 1xWW Bereitung</description> </command>
Bei "2" wird das Häkchen auf der Vitocal gesetzt und bei "0" entfernt... Bei der "1" passiert gar nichts, soweit ich sehen kann...