Abfrage & Steuerung von Viessmann Heizungen

Alles zurück. Ich sehe du hast den Fehler schon behoben. Danke dir.

Alles zurück. Ich sehe du hast den Fehler schon behoben. Danke dir.

Neue Version draußen, bitte mal prüfen ob es jetzt endlich mit der Temperatur klappt.

Swen

edit:
außen.jpg
leider nein, wie du siehst. sowohl Temperatur 100 als auch 10 bringen Schrott

Hm hätte ich das doch nur ne viertel Stunde früher gelsen… jetzt haben wir +0,1°:eek:
Ich geb morgen bescheid.
gruß
goran

Leider nun noch viel schlimmer

Fehler.JPG

Die Version davor, mit der Abfrage >32768 funktionierte.
Nachdem ich diese wieder eingespielt habe ist der Spuk wieder vorbei.

Ich schau mir das am Wochenende nochmal an :stuck_out_tongue:

Send mir mal bitte die Hexwerte die Fehler verursachen mit den entsprechen Dezimalwerten (die richtigen natürlich)

Swen

Hi Swen,

kann ich nicht mehr. Bin ja auf die vorherige Version gegangen. Im Moment habe ich auch keine Zeit mehr dafür immer neue Scripte zu schreiben, die mein Archiv wieder gerade biegen.

Vielleicht am WE mal kurz für ein paar Minuten.

hi Swen
wie komm ich an die Hexwerte? Ich hab die Abfragen eh nur nebenbei laufen, benutze noch meine errechneten Werte.
gruß
goran

Einfach Debug anschalten, da sollte dann der Hexwert drinstehen, müssen natürlich minus grade sein.

Swen

Hi Swen,

der Fehler tritt bei mir bei Plus Temperaturen auf.

Hi Swen,

Funktioniert das Schreiben der Systemzeit eigentlich in der Zwischenzeit?
Wäre super, wenn das funktionieren würde, da ich momentan noch mit meinen alten Skripten die nachgehende Anlagenzeit periodisch überprüfe und ggf. korrigiere.

Gruß
Peter

Schau ich mir grade an update folgt.

Zum Thema Negative Zahlen:
So jetzt hab ich alles noch einmal getestet und bin mir nun sicher das es gehen sollte.
Habe es mal überpürft:


echo ViesmannOpenV_ConvertHexToRealNumbers(12345, "0000", 2); // Ergibt 0
echo ViesmannOpenV_ConvertHexToRealNumbers(12345, "0005", 2); // Ergibt 5
echo ViesmannOpenV_ConvertHexToRealNumbers(12345, "FFFF", 2); // Ergibt -1
echo ViesmannOpenV_ConvertHexToRealNumbers(12345, "FFFB", 2); // Ergibt -5


Bitte nochmal pürfen und denkt dran temperatur10 teilt den Wert noch durch 10 und temperatur100 ihn durch 100 :smiley:

Gruß Swen

Hi Swen,

kann es nicht vielleicht daran liegen, dass die Heizung gar nicht 2 Bytes zurückliefert. Vielleicht gehört das 2.te Byte gar nicht dazu.
Es kommen ja auch weiterhin 05er Werte ohne Grund, anstatt wirkliche Daten.

05 sendet die Heizung immer kurzen Abstand das bedeutet das die Heizung bereit ist Daten zu empfangen.

Hier ein kleiner Auszug.

Kommunikation (alle Werte in Hex)

Vitotronic sendet periodisch 0x05
Sofort (xx msec) nach dem Empfang von 0x05 kann ein Telegramm gesendet werden und wird sofort beantwortet.
Ehe ein weiteres Telegramm gesendet werden kann, muss erst auf das nächste 0x05 gewartet werden.
Anstatt auf das nächste 0x05 zu warten, kann auch direkt nach dem Empfang einer Antwort das nächste Telegramm geschickt werden. Dabei darf das Telegramm nicht mit 0x01 eingeleitet werden (Somit ist das 0x01 logisch gesehen nicht ein Telegram-Start-Byte sondern ein ACK auf die 0x05).

Gruß Swen

P.s. Die Funktion geht natürlich auch mit anderen Bytegrößen.

Hi Swen,

das weiß ich.
Es geht darum, dass die Anlage öfters mal ein 05 Datensatz liefert, statt wirkliche Daten. Siehe diesen Thread ein paar Seiten zurück. Das hattest du doch auch schon festgestellt und dafür einige Sachen umgesetzt um diese zu unterdrücken.
Vielleicht schafft es ja doch ein Datensatz trotzdem noch durchzukommen.

Das Problem liegt dabei beim clientsocket, der gibt nämlich seine Werte aus wie er grade lust hat.
Ja das stimmt, das Problem ist nur das 05 ja auch als wert zurückgeben werden kann, und ich ihn somit sporadisch selten unterdrücken kann, die einzige Möglichkeit wäre noch ein Interner Time der Prüft ob die Antwort innerhalb von 1 Sekunde kam.

Swen

So hab nun die BCDDates als Standardaktion eingefügt.
Es wird aber wahrscheinlich nicht gehen und ich finde den Fehler grade auch nicht, da die Werte richtig an die Heizung übergeben werden meine Heizung aber daraus macht was sie will.:mad:Ich werde aus den werten nicht schlau die in der heizung eingestellt werden. Im Internet hab ich auch noch nichts dazu gefunden.

Deshalb Nutzung auf eigene Gefahr!!!

Swen

Update raus:

Fix: Fehler bei den Umwandlungen der Temperaturen sollten behoben sein

Update raus:

Fix: Fehler bei den Umwandlungen der Temperaturen sollten behoben sein

Swen