Einbindung Solax- WR Gen4

Auflistung von gewünschten Features, Ausschreibung zur Umsetzung
tobias.faust
Beiträge: 55
Registriert: Fr Okt 21, 2022 8:49 am

Re: Einbindung Solax- WR Gen4

Beitrag von tobias.faust »

Moin,
Müsste alles funktionieren.
Das Wiki hatte ich die letzten Tage aktualisiert, im JSON findest du dazu passende Beispiele.

Die Lade und Entladeleistung ebenfalls, im Wiki steht’s auch, nur testen konnte ich es nicht.
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Nochmal bezüglich der momentanen Speicherleistung:
openWB/set/houseBattery/W Speicherleistung in Watt, int, positiv Ladung, negativ Entladung

"position": [47, 48],
"name": "BatPower",
"realname": "Battery Power",
"openwbtopic": "openWB/set/houseBattery/W",
"datatype": "integer",
"unit": "W"

Der Growatt gibt nur positive Werte aus und das für Ladung und Entladung in getrennten Registern
Bedeutet es wären jeweils 2 Positionen für Ladung und Entladung, abgesehen von der Logik zwecks positiv/negativ.
Aus deinem Beispiel sehe ich nicht das das implementiert ist...oder wenn doch wie ist dann die Angabe?

Weiterhin Zähler die über 4 Positionen gehen, werden einfach so angegeben?
"position": [58, 59, 60, 61],


--------------

Übrigens der Name "Growatt-SPH1000TL3-BH-UP" wird im Webinterface nicht korrekt angegeben, irgendwelche Steuerzeichen entweder zu lang oder die "-" stören.
Ich denke auch das es reicht Growatt SPH anzugeben, den auch in der Doku werden die WR so unterteilt. SPH, TL-H......


-------------

IDLiveData funktioniert noch nicht, da kommen keinerlei Daten an....habe ich mir aber auch noch nicht genau angeschaut...die Register scheinen richtig zu sein
tobias.faust
Beiträge: 55
Registriert: Fr Okt 21, 2022 8:49 am

Re: Einbindung Solax- WR Gen4

Beitrag von tobias.faust »

Mach mal ein git Update.
Der growattname passt seit gestern.
Für die Batterieleistung gibt es im Solax-x1 ganz unten im JSON ein Beispiel mit position2 für ein 2tes speicherregister

Bitte schau dazu ins Wiki :)
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Nabend, ich bin ein Stück weiter, die Positionen habe ich berichtigt in deiner aktuellen register.h
Werte werden an OpenWB übergeben von SOC und Geladene/Entladene Energie werden übergeben.
Aktuelle Leistung muss ich mal eben tricksen weil Speicher leer um die Vorzeichen zu testen.

Ein Problem bei Geladene/Entladene Energie hier scheint ein Rundungsfehler zu sein. Vielleicht kannst da mal schauen.
Der WR gibt Wert * 0,1 in kwh aus. Die OpenWB erwartet Wh.
Also muss ich den Wert * 100 nehmen

456 und 369 sind die empfangenen Hex Werte Dec
daraus entsteht in der WebUI
45700.00 und 37000.00

{
"position": [362, 363, 364, 365],
"name": "InputEnergyCharge",
"realname": "Geladene Energie Speicher",
"openwbtopic": "openWB/set/houseBattery/WhImported",
"datatype": "float",
"factor": 100,
"unit": "Wh"
},
{
"position": [354, 355, 356, 357],
"name": "OutputEnergyCharge",
"realname": "Entladene Energie Speicher",
"openwbtopic": "openWB/set/houseBattery/WhExported",
"datatype": "float",
"factor": 100,
"unit": "Wh"
}
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Bei der aktuellen Speicherleistung scheint was nicht zu stimmen.

Beim Laden macht er aus 770W 770,1W, die richtung also positiv stimmt
Beim entladen wird in der WebUI eine 0 angezeigt anstatt negativer Leistung
Ausserdem ist das ganze abgestürzt.
Das ist es bisher noch nie passiert ausser jetzt bei Batterie Entladung
OpenWb Verbindung habe ich noch nicht getestet

{
"position": [268, 269, 270, 271],
"position2": [264, 265, 266, 267],
"name": "BatChargingPower",
"realname": "Battery Charging Power",
"openwbtopic": "openWB/set/houseBattery/W",
"datatype": "float",
"factor": 0.1,
"unit": "W"
},
tobias.faust
Beiträge: 55
Registriert: Fr Okt 21, 2022 8:49 am

Re: Einbindung Solax- WR Gen4

Beitrag von tobias.faust »

Poste mal bitte den kompletten HexString aus RawLiveData sowie dein komplettes JSON für den Growatt

Ich muss das nachstellen können
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Hier ein kompletter HexString von gestern Abend. Das komplette JSON kann ich erst heute Abend posten..

0x01 0x04 0xEE 0x00 0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x02 0x05 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x79 0x01 0x13 0x88 0x10 0x02 0x00 0x2A 0x00 0x00 0x79 0x7D 0x10 0x08 0x00 0x2B 0x00 0x00 0x00 0x00 0x0F 0xCE 0x00 0x2A 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x5B 0x00 0x00 0x05 0xE6 0x00 0x1D 0x2C 0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x54 0x01 0x47 0x01 0x69 0x00 0x00 0x0A 0x02 0x1C 0x1F 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x83 0x00 0x00 0x02 0xE8 0x00 0x00 0x00 0x00 0x00 0x00 0x7A 0x44 0x01 0x04 0xEE 0x00 0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x20 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x82 0x78 0x00 0x00 0x00 0x00 0x0A 0x05 0x00 0x1B 0x00 0x00 0x00 0x00 0x05 0x3A 0xFE 0x79 0xFC 0x49 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x09 0x43 0x02 0x90 0x00 0x44 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x82 0x78 0x00 0x00 0x04 0x09 0x04 0x17 0x03 0xFB 0x00 0x00 0x82 0x78 0x00 0x00 0x00 0xEF 0x00 0x06 0x1C 0x1C 0x00 0xFA 0x00 0x00 0x00 0x26 0x00 0x00 0x06 0xC1 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x57 0x00 0x00 0x01 0x5D 0x00 0x00 0x00 0x6E 0x00 0x00 0x01 0xB9 0x00 0x00 0x00 0x6F 0x00 0x00 0x07 0x5F 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x09 0x2F 0x00 0x00 0x00 0x00 0x00 0x00 0x09 0x1A 0x00 0x00 0x00 0x00 0x00 0x00 0x09 0x0B 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x82 0x00 0x00 0x00 0x00 0x00 0x1B 0x0A 0x05 0xFB 0x00 0x01 0x20 0x00 0xFA 0x04 0xE2 0x11 0xBC 0x00 0x00 0x00 0x18 0x00 0x03 0x00 0x64 0x0B 0x18 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x0B 0x18 0x09 0x38 0x0C 0x95 0x0C 0x7D 0x04 0x2F 0x05 0x49 0x00 0xEF 0x00 0xDA 0x01 0x04 0x05 0x11 0x00 0x50 0xA4 0x20
tobias.faust
Beiträge: 55
Registriert: Fr Okt 21, 2022 8:49 am

Re: Einbindung Solax- WR Gen4

Beitrag von tobias.faust »

einen Absturz habe ich nicht nachstellen können. Aber der "Rundungsfehler" war ein Integer overflow bei 32bit Items.
Deine aktuellen Growatt adressen habe ich gleich übernommen.
Ist jetzt alles im Git aktualisiert.
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Hier der JSON:

"Growatt-SPH": {
"config": {
"RequestLiveData": [
["#ClientID", "0x04", "0x00", "0x00", "0x00", "0x77"],
["#ClientID", "0x04", "0x03", "0xE8", "0x00", "0x77"]
],
"RequestIdData": ["#ClientID", "0x03", "0x00", "0x00", "0x00", "0x14"],
"ClientIdPos": 0,
"LiveDataFunctionCodePos": 1,
"LiveDataFunctionCode": "0x04",
"IdDataFunctionCodePos": 1,
"IdDataFunctionCode": "0x03",
"LiveDataStartsAtPos": 3,
"IdDataStartsAtPos": 3,
"LiveDataErrorPos": 1,
"LiveDataErrorCode": "0x84",
"IdDataErrorPos": 1,
"IdDataErrorCode": "0x83",
"LiveDataSuccessPos": 1,
"LiveDataSuccessCode": "0x04",
"IdDataSuccessPos": 1,
"IdDataSuccessCode": "0x03"
},
"data": {
"livedata": [{
"position": [272, 273],
"name": "BatVoltage",
"realname": "Battery Voltage",
"datatype": "float",
"factor": 0.1,
"unit": "V"
},
{
"position": [77, 78],
"name": "GridFrequency",
"realname": "Grid Frequency",
"datatype": "float",
"factor": 0.01,
"unit": "Hz"
},
{
"position": [274, 275],
"name": "BatCapacity",
"realname": "Battery Capacity (SOC)",
"openwbtopic": "openWB/set/houseBattery/%Soc",
"datatype": "integer",
"unit": "%"
},{
"position": [268, 269, 270, 271],
"position2": [264, 265, 266, 267],
"name": "BatChargingPower",
"realname": "Battery Charging Power",
"openwbtopic": "openWB/set/houseBattery/W",
"datatype": "float",
"factor": 0.1,
"unit": "W"
},
{
"position": [362, 363, 364, 365],
"name": "InputEnergyCharge",
"realname": "Geladene Energie Speicher",
"openwbtopic": "openWB/set/houseBattery/WhImported",
"datatype": "float",
"factor": 100,
"unit": "Wh"
},
{
"position": [354, 355, 356, 357],
"name": "OutputEnergyCharge",
"realname": "Entladene Energie Speicher",
"openwbtopic": "openWB/set/houseBattery/WhExported",
"datatype": "float",
"factor": 100,
"unit": "Wh"
}
],
"id": [{
"position": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55],
"name": "InverterSN",
"realname": "Inverter SerialNumber",
"datatype": "string"
}]
}
}
Sascho
Beiträge: 61
Registriert: Mo Aug 24, 2020 1:21 pm

Re: Einbindung Solax- WR Gen4

Beitrag von Sascho »

Sorry JSON ging nicht eher.....
Testen kann ich aber erst heute Abend.
Übernimm bitte auch die Addressen für BatVoltage, BatCapacity

Was war mit der Lade/Entladeleistung?
Auch da ein Problem mit dem Vorzeichen gefunden bzw es wurde ja eine Null bei negativ angezeigt?

Hast Du eigentlich ne Idee warum die IdData nicht empfangen werden?
Es kommen keine Hex Strings in der Live Ansicht an...
Antworten