Resol DeltaSol CS2 Protokoll?

(Firma: Privat) #8072744
Lesenswert?

Mooi'n,

Unser Heizungsbauer hat uns eine Resol DeltaSol CS2 installiert, mit einem LAN-Adapter. Ohne Netzteil! Nunja, Netzteile habe ich in allen Formen und Spannungen (allesamt Farbe schwarz ;-)), also war auch ein 12V-NT dabei.

Nachdem ich den Adapter wieder abgeschraubt hatte, konnte ich auch das Passwort lesen und hatte so Zugriff auf die Daten.

Es gibt ja die "VBus-Protokollspezifikation.pdf". Die ist aber Stand: 20. April 2009 und mit der komme ich nicht weiter.

Ich bekomme drei verschiedene Datenpakete: aa,10,00,21,11,10,00,01,08,24,be,02,ef,02,48,dd,48,dd,0f,27,19,fc,00,7f,24,80,02,5a,24,80,0b,ff,00,00,00,00,00,00,00,00,00,00 aa,15,00,21,11,10,00,01,0a,1d,01,08,00,00,00,ff,ff,ff,02,0a,00,00,3e,02,6f,02,05,49,00,00,00,7f,00,00,01,0b,00,00,00,00,00,00,02,01,00,0b,80,f1,be,82 aa,00,00,21,11,20,00,05,00,00,00,00,00,00,00,28

Das letzte Datenpaket (Protokollversion 2.0) scheint nicht relevant zu sein (Befehl 0x500: "VBus-Freigabe durch Master").

Bei den beiden ersten Datenpaketen habe ich aber schon Probleme, denn die Zieladresse 0x0010 ist zwar bekannt (DFA, das Display wimre), aber die Quelladresse 0x1121 taucht in der Protokollspezifikation nicht auf. In der Spezifikation ist überhaupt nicht von einer CS2 (oder CS/2) die Rede!

Hat jemand eine aktuellere Version der Protokollspezifikation?

Danke im Voraus und ... bleibt cool,

Josef

: Bearbeitet durch User
(Firma: Privat) #8072808
Lesenswert?

Heinz R. schrieb:

keine Ahnung ob sich da was am Protokoll geändert hat, ich konnte meine Resolsteuerung problemlos auslesen, ist aber 10 Jahre her

Aber schau mal hier - die CS2 ist zumindest mal explizit aufgeführt:

https://esphome.io/components/vbus/

Das sieht schon sehr gut aus: DeltaSol CS2 deltasol_cs2 1121

Vielen Dank schon mal!

(Firma: Privat) #8072945
Lesenswert?

Josef M. schrieb:

Heinz R. schrieb:

keine Ahnung ob sich da was am Protokoll geändert hat, ich konnte meine Resolsteuerung problemlos auslesen, ist aber 10 Jahre her

Aber schau mal hier - die CS2 ist zumindest mal explizit aufgeführt:

https://esphome.io/components/vbus/

Das sieht schon sehr gut aus: DeltaSol CS2 deltasol_cs2 1121

Vielen Dank schon mal!

Ich habe mir das jetzt noch mal angesehen. U.a. haben wir gerade prallen Sonnenschein (understatement of the day) und die Pumpe läuft laut Anzeige auf der Steuerung mit 80%. Also mal in den Daten nach "50" gesucht und (nur) hier fündig geworden: aa,15,00,21,11,10,00,01,0a,1d,01,08,00,00,50,ff,ff,ff,02,0a,00,00,00,00,00,00,00,00,00,00,00,7f,00,00,01,0b,00,00,00,00,00,00,00,00,00,00,00,00,00,00

Nur finde ich weder eine Beschreibung der Daten von DeltSol CS2 (0x1121) nach 0x0015 noch nach 0x0010.

Wie gesagt: das Byte im Datenteil an Offset 4 sieht aus wie die 80% Pumpendrehzahl. Aber der Rest???

Josef

#8073288
Lesenswert?

ich habe gestern mal spasseshalber in ChatGPT gefragt

Bist Du sicher das die Pumpe wirklich gelaufen ist=

Antwort ChatGPT, evtl. hilft sie DIr:

Die Temperaturwerte stehen im ersten Paket mit Zieladresse 0x0010. Das erste Paket:

aa,10,00,21,11,10,00,01,08,24, be,02,ef,02,48,dd,48,dd,0f,27,19,fc,00,7f, 24,80,02,5a,24,80,0b,ff,00,00,00,00,00,00,00,00,00,00

Nach dem 10-Byte-Header beginnen die Nutzdaten:

be,02, ef,02, 48,dd, 48,dd, 0f,27,19,fc,00,7f ...

Die Temperaturen sind jeweils 16 Bit Little Endian, vorzeichenbehaftet und mit Faktor 0,1. Genau so dekodiert ESPHome beim DeltaSol CS2 die Offsets 0, 2, 4 und 6.

Temperaturwerte Temperatur 1 – Nutzdatenoffset 0 und 1 be 02 → 0x02BE 0x02BE = 702 702 × 0,1 = 70,2 °C Temperatur 2 – Nutzdatenoffset 2 und 3 ef 02 → 0x02EF 0x02EF = 751 751 × 0,1 = 75,1 °C Temperatur 3 – Nutzdatenoffset 4 und 5 48 dd → 0xDD48

Als vorzeichenbehafteter 16-Bit-Wert:

0xDD48 = -8888 -8888 × 0,1 = -888,8 °C

Das ist kein echter Temperaturwert, sondern sehr wahrscheinlich die Kennzeichnung für einen nicht angeschlossenen oder nicht verwendeten Sensor.

Temperatur 4 – Nutzdatenoffset 6 und 7 48 dd → -888,8 °C

Auch dieser Sensor ist offenbar nicht belegt.

Übersicht Wert Nutzdatenoffset Gesamtindex ab 0 Bytes Ergebnis Temperatur 1 0–1 10–11 be 02 70,2 °C Temperatur 2 2–3 12–13 ef 02 75,1 °C Temperatur 3 4–5 14–15 48 dd −888,8 °C / unbelegt Temperatur 4 6–7 16–17 48 dd −888,8 °C / unbelegt

Damit ist auch klar: Das Paket ist bereits korrekt dekodiert und ent-septettiert.

Und die Pumpenleistung?

Beim DeltaSol CS2 verwendet ESPHome:

message[12]

also Nutzdatenoffset 12.

Im richtigen Paket an 0x0010 ist das:

Nutzdatenoffset 12 = 00

Also in diesem Moment:

Pumpenleistung = 0 %

Für Dein Programm solltest Du filtern auf:

Zieladresse: 0x0010 Quelladresse: 0x1121 Befehl: 0x0100

Dann gelten:

Temperatur 1: Nutzdatenbyte 0–1 Temperatur 2: Nutzdatenbyte 2–3 Temperatur 3: Nutzdatenbyte 4–5 Temperatur 4: Nutzdatenbyte 6–7 UWP-Leistung: Nutzdatenbyte 12

Im vollständigen Paket liegt die UWP-Leistung damit bei Gesamtindex 22, derzeit 00 = 0 %.

(Firma: Privat) #8073323
Lesenswert?

Bist Du sicher das die Pumpe wirklich gelaufen ist=

Ja, es kann aber sein, daß die Pumpe gerade nicht (mehr) lief, wir haben 6 PT-Kollektoren auf dem Dach (als wir gebaut haben, wohnten hier noch 3 Kinder mit im Haus, izwischen haben die eigene Häuser ;-) ) und damit ist der Pufferspeicher ziemlich schnell durcherhitzt.

Die 70,2° und 75,1° sind vermutlich die Temperaturen unten im Pufferspeicher (in der vorherigen Version hieß das dann "Tspu") und im Kollektor ("Tkol"), obwohl letztere eigentlich recht schnell über 100° hat, wenn die Pumpe nicht mehr läuft.

Und, ja, ich denke, daß nur zwei Temperatursensoren angeschlossen sind, eben im Kollektor und am Pufferspeicher.

ich habe gestern mal spasseshalber in ChatGPT gefragt

Ich bin zwar kein Freund von ChatGPT, aber danke, daß Du es für mich befragt hast. Es ist eine Basis, auf der ich weiter aufbauen kann.

Josef

PS Die Heizungsanlage steht oben unter dem Dach und ich sitzen zwei Etagen tiefer auf dem Sofa ;-) Deswegen ist es schwer, die gemessenen Werte mit der Anzeige an der DeltaSol CS2 ab zu gleichen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren