Forum: Haus & Smart Home Soyosource protokoll zum wifi-esp oder display


von Uwe (uwe_bj_88)


Angehängte Dateien:

Lesenswert?

Hab meinen neuen soyosource grid-tie bekommen.
Der hat wifi und kein display. Als wifi ist ein esp8266 dongle dabei. 
Die soft funktioniert zwar, aber ... mühsahmst und über die china seite. 
NoGo.

Deshalb hab ich mir die kommunikation zwischen soyo und esp angeschaut. 
Seriell, 9600 baud.

soyo -> esp
1
A6 10 B2 51 02 00 36 00 00 00 DE 64 02 01 6F 
2
5.2V, 0A, 220V, 50hz, 0W, 22 grad C, 0kwh, offline, battery constant mode, standby, DC low.
3
4
A6 10 B2 51 02 01 3E 00 00 00 DE 64 02 03 64
5
31.8V, 0A, 219V ...
6
7
A6 10 B2 51 02 00 DA 00 00 00 DF 64 02 04 C7
8
21.8V...
9
10
A6 10 B2 61 02 00 DA 00 00 00 DE 64 02 05 B7
11
PV mode
12
13
A6 10 B2 51 02 00 DA 00 00 00 DF 64 02 04 C7
14
               inp V       mainV  |
15
                                2*HZ?

esp -> soyo
1
55 01 2E 2C 32 64 00 00 00 06 00 08
2
             |
3
          max pwr in 10W
4
5
55 01 2E 2C 32 64 00 00 00 06 00 08
6
       |
7
  bat start volt
8
9
55 01 2E 2C 32 64 00 00 00 06 00 08
10
          |
11
    bat shutdown volt
12
13
55 01 2E 2C 32 64 00 00 00 06 00 08
14
                           |
15
                        start delay
16
17
mode switch
18
55 0B 2E 2C 0A 64 00 00 00 08 11 13 to pv limit
19
55 0B 2E 2C 0A 64 00 00 00 08 01 23 to pv
20
55 0B 2E 2C 0A 64 00 00 00 08 12 12 to bat limit
21
55 0B 2E 2C 0A 64 00 00 00 08 02 22 to bat const power
22
23
read settings
24
55 03 2E 2C 0A 64 00 00 00 08 00 2C
25
26
save settings
27
55 0B 2E 2C 0A 64 00 00 00 08 02 22

Hat jemand lust das genauer zu analysieren und eine nicht china-cloud 
basierte version zu basteln?
Die messages scheinen die gleichen zu sein die der display soyo auch 
benutzt. Die haben an das selbe IF einfach einen esp anstatt ein display 
gehängt. Heisst ma kann ein defektes display einfachst umgehen.

Was fehlt ist die amps und watt, hab kein netzteil dass 48V kann, und 
das auslesen der setup werte, hab ich vergessen.

: Bearbeitet durch User
von Uwe (uwe_bj_88)


Lesenswert?

Hab mir mal die datenstrukturen gebastelt:
1
struct soyo_esp_data
2
{
3
  float V_input;
4
  float A_input;
5
  float V_main;
6
  float net_HZ;
7
};
8
soyo_esp_data sd;
9
10
struct soyo_esp
11
{
12
  uint8_t  sync; // A6
13
  uint8_t  dunno1;
14
  uint8_t  dunno2;
15
  uint8_t  dunno3;
16
  uint8_t  dunno4;
17
  uint16_t vinp;
18
  uint16_t ainp;
19
  uint16_t vnet;
20
  uint8_t  hz;
21
  uint8_t  dunno5;
22
  uint8_t  dunno6;
23
  uint8_t  cs;
24
};
25
soyo_esp sm;
26
27
void msg_soyo_esp()
28
{
29
  sd.V_input = 0.1 * (float)sm.vinp;
30
  sd.A_input = 0.1 * (float)sm.ainp;
31
  sd.V_main  = (float)sm.vnet;
32
  sd.net_HZ  = 0.5 * (float)sm.hz;
33
}
34
35
// opmode 11-pvlimit, 01-pv, 12-batlimit, 02batconst
36
// msgid 0B-switchtomode, 03-readsettings, 01-info
37
38
struct esp_soyo_data
39
{
40
  float V_batstart;
41
  float V_batstop;
42
  float Maxpower;
43
  int   startdelay;
44
  bool  bat;
45
  bool  limit;
46
};
47
esp_soyo_data ed;
48
49
struct esp_soyo
50
{
51
  uint8_t  sync; // 55
52
  uint8_t  msgid;
53
  uint8_t  batstartV;
54
  uint8_t  batstopV;
55
  uint8_t  maxpwr;
56
  uint8_t  dunno2;
57
  uint8_t  dunno3;
58
  uint8_t  dunno4;
59
  uint8_t  dunno5;
60
  uint8_t  startdelay;
61
  uint8_t  opmode;
62
  uint8_t  cs;
63
};
64
esp_soyo em;
65
66
void msg_esp_soyo()
67
{
68
  em.batstartV  = (uint8_t)ed.V_batstart;
69
  em.batstopV   = (uint8_t)ed.V_batstop;
70
  em.maxpwr     = (uint8_t)(0.1*ed.Maxpower);
71
  em.startdelay = (uint8_t)ed.startdelay;
72
  if (ed.bat)   em.opmode = 2; else em.opmode = 1;
73
  if (ed.limit) em.opmode += 0x10;
74
}

Echt niemand interesse?

von Michael B. (laberkopp)


Lesenswert?

Uwe schrieb:
> Echt niemand interesse?

Er hat sich abgemeldet:

Beitrag "Soyosource grid-tie inverter, defektes LCD"

Auf akkudoktor find ich auch kein Protokoll dafür.

von Peepee (Gast)


Lesenswert?

Michael B. schrieb:
> Er hat sich abgemeldet

Er wurde abgemeldet. Sowohl "Uwe" mit der szenetypischen 88 als auch 
"Abcd" sind "Pepe the Frog", der braune Schwurbler aus der Schweiz.

von Heinz R. (heijz)


Lesenswert?

Uwe schrieb:
> Hat jemand lust das genauer zu analysieren und eine nicht china-cloud
> basierte version zu basteln?

Gibt es doch alles längst

Entweder per RS485

https://github.com/KlausLi/Esp-Soyosource-Controller

oder so

https://github.com/syssi/esphome-soyosource-gtn-virtual-meter

oder den vorhandenen Stick umflashen

https://github.com/syssi/esphome-soyosource-gtn-virtual-meter/tree/main/docs/wifi-dongle

von Uwe (uwe_bj_88)


Lesenswert?

Danke Heinz.
Das klausili ist für den RS485 4800 baud anschluss, nicht für den 
seriellen 9600 baud dongle anschluss. Obwohl die messages scheinen die 
gleichen zu sein. Leider ohne source, also wertfrei.

Was die syssi dongle firmware soll ist mir nicht klar. Ich denke das ist 
die "stock firmware" und nichts neues? Im dongle ist ja zwischen seriell 
und esp8266 noch ein weiterer "51" prozessor drin, das dongle ist 
völliger würg.

Schade ist der rest der syssi soft so schlecht beschrieben. Ich blick da 
"noch nicht" durch.

: Bearbeitet durch User
von Heinz R. (heijz)


Lesenswert?

Uwe schrieb:
> Was die syssi dongle firmware soll ist mir nicht klar.

Das ist wohl eine Software mit der der Original Wifi Stick umgeflasht 
wird , dadurch Cloudfrei

Die beiden anderen Geschichten mit RS485 - eigentlich reicht das auch
Ich hatte so meinen Soyosource problemlos gesteuert

Ich habe ihn aber mittlerweile wieder verkauft
Er hat zwar ohne Murren funktioniert, aber dann hat das passende 
Ladegerät gefehlt, da kam ein Victron dann genau richtig :-)

von Uwe (uwe_bj_88)


Lesenswert?

Heinz R. schrieb:
> da kam ein Victron dann genau richtig

Sind die nicht schweineteuer?

Ich lass meine soyo als PV WR laufen, nix batterie. Einspeiseregelung 
brauch ich auch nicht, immer volle power. Die 240v leitung ist auf 16A 
dauer ausgelegt und wird nur für die WR gebraucht.

Das neubau-dongle möcht ich zum lokalen überwachen und aufzeichnen der 
leistung.

: Bearbeitet durch User
von Heinz R. (heijz)


Lesenswert?

Uwe schrieb:
> Sind die nicht schweineteuer?

vor der ganzen Krise hatte ich das Glück, einen gebrauchten MP2 für 700€ 
zu bekommen

Aktuell so leider nciht mehr möglich :-)

von Michael B. (laberkopp)


Lesenswert?

Heinz R. schrieb:
> vor der ganzen Krise hatte ich das Glück, einen gebrauchten MP2 für 700€

Die 500 EUR extra müssen sich auch erst mal amortisieren...
das sind einige Jahre Balkonsolar.

von Heinz R. (heijz)


Lesenswert?

Ich hätte halt auch noch ein Ladegerät gebraucht, so ein fettes Netzteil 
kostet auch noch mal einiges ...

Klar, wenn man direkt per DC lädt oder so wie hier nur direkt einspeist 
sieht es anders aus

von Uwe (uwe_bj_88)


Lesenswert?

Heinz R. schrieb:
> einen gebrauchten MP2 für 700€

700 für einen 3kw? Guter preis.

Hab gemerkt ein esp8266 devboard dranhängen geht nicht, das hat nur 
einen seriellen port und der ist schon durch usb belegt.

von Heinz R. (heijz)


Lesenswert?

Uwe schrieb:
> Hab gemerkt ein esp8266 devboard dranhängen geht nicht, das hat nur
> einen seriellen port und der ist schon durch usb belegt.

Bei mir hat das damals problemlos funktioniert, vielleicht ein anderer 
UART-Wandler?

Uwe schrieb:
> 700 für einen 3kw? Guter preis.

beim Soyosource hatte ich zugegeben irgendwann Angst das mir über 800W 
die Bude abfackelt :-)

von Uwe (uwe_bj_88)


Lesenswert?

Heinz R. schrieb:
> Bei mir hat das damals problemlos funktioniert

Ich hab wegen der 5V -> 3.3V anpassung einen 1kohm drin, das dürfte der 
grund sein warum RX nicht mehr geht. Ohne die 1k ging das. Egal, man 
kann beim 2866 mit swap() die seriellen pins umschalten, das ist dann 
eine saubere lösung.

Beitrag #7318250 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.