-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Description
Describe the bug
Hallo,
ich habe einen kleinen Bug, dass immer mal wieder teilweise die Anfragen zum Wechselrichter für grid, pv und battery einen Fehler werfen. Aber das passiert nicht konstant.
Ich habe von QCells einen LAN-Adapter für den Wechselrichter. Vorher hatte ich einen WLAN-Adapter, wo das nicht passierte. Es gibt auch kein anderes Gerät, was gleichzeitig eine Anfrage sendet.
Nach etwas Testen habe ich herausgefunden, dass die Latenz vom evcc-Container zum LAN-Adapter bei ungefähr 0,1 bis 0,2 ms liegt (bei WLAN war dies bei ca. 200-300 ms). Ich vermute, dass die Anfragen von evcc aufgrund der Latenz manchmal zu schnell hintereinander geschickt werden, bevor der Adapter wieder frei schaltet, weshalb dann teilweise diese Fehler passieren.
Also ich denke, wenn es eine kleine Verzögerung gäbe, sollte das nicht passieren.
Vielleicht könnte auch so ein kleiner Delay über die Config einstellbar sein?
Dazu kommt: wenn die erste Anfrage einen Timeout als Fehler bekommt, dann werden die anschließenden Anfragen gar nicht mehr versucht und als Connection refused markiert.
Hier habe ich verschiedene Logs, die ich zur Übersicht etwas gekürzt habe:
Fehler bei grid energy, verursachte dann auch bei pv energy und battery soc (Latenz lag bei 0,13 ms, als der Fehler passierte)
[site ] DEBUG 2025/08/03 15:58:28 ----
[amperfied] TRACE 2025/08/03 15:58:28 modbus: send 01 65 00 00 00 06 fe 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 15:58:28 modbus: send 01 6f 00 00 00 06 ff 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 15:58:28 modbus: recv 01 65 00 00 00 05 fe 04 02 00 03
[lp-2 ] DEBUG 2025/08/03 15:58:28 charge power: 3W
[amperfied] TRACE 2025/08/03 15:58:28 modbus: send 01 66 00 00 00 06 fe 04 00 06 00 03
[amperfied] TRACE 2025/08/03 15:58:28 modbus: recv 01 6f 00 00 00 05 ff 04 02 00 00
[lp-1 ] DEBUG 2025/08/03 15:58:28 charge power: 0W
[amperfied] TRACE 2025/08/03 15:58:28 modbus: send 01 70 00 00 00 06 ff 04 00 06 00 03
[amperfied] TRACE 2025/08/03 15:58:28 modbus: recv 01 66 00 00 00 09 fe 04 06 00 00 00 00 00 00
[lp-2 ] DEBUG 2025/08/03 15:58:28 charge currents: [0 0 0]A
[amperfied] TRACE 2025/08/03 15:58:28 modbus: recv 01 70 00 00 00 09 ff 04 06 00 00 00 00 00 00
[lp-1 ] DEBUG 2025/08/03 15:58:28 charge currents: [0 0 0]A
[grid1 ] TRACE 2025/08/03 15:58:28 modbus: send 01 27 00 00 00 06 01 04 00 46 00 02
[grid1 ] TRACE 2025/08/03 15:58:28 modbus: recv 01 27 00 00 00 07 01 04 04 00 00 00 00
[site ] DEBUG 2025/08/03 15:58:28 grid power: -0W
[pv2 ] TRACE 2025/08/03 15:58:28 modbus: send 01 28 00 00 00 06 01 04 00 0a 00 01
[pv2 ] TRACE 2025/08/03 15:58:29 modbus: recv 01 28 00 00 00 05 01 04 02 02 1b
[pv2 ] TRACE 2025/08/03 15:58:29 modbus: send 01 29 00 00 00 06 01 04 00 0b 00 01
[pv2 ] TRACE 2025/08/03 15:58:29 modbus: recv 01 29 00 00 00 05 01 04 02 02 8f
[site ] DEBUG 2025/08/03 15:58:29 pv 1 power: 1194W
[battery3] TRACE 2025/08/03 15:58:29 modbus: send 01 2a 00 00 00 06 01 04 00 16 00 01
[battery3] TRACE 2025/08/03 15:58:30 modbus: recv 01 2a 00 00 00 05 01 04 02 01 09
[site ] DEBUG 2025/08/03 15:58:30 battery 1 power: -265W
[grid1 ] TRACE 2025/08/03 15:58:30 modbus: send 01 2b 00 00 00 06 01 04 00 4a 00 02
[grid1 ] TRACE 2025/08/03 15:58:33 modbus: close connection: read tcp 10.1.10.9:39022->10.1.10.200:502: i/o timeout
[site ] ERROR 2025/08/03 15:58:33 grid energy: read failed: read tcp 10.1.10.9:39022->10.1.10.200:502: i/o timeout
[site ] ERROR 2025/08/03 15:58:33 pv 1 energy: read failed: dial tcp 10.1.10.200:502: connect: connection refused
[site ] ERROR 2025/08/03 15:58:33 battery 1 soc: read failed: dial tcp 10.1.10.200:502: connect: connection refused
[site ] DEBUG 2025/08/03 15:58:33 battery has priority at soc 0% (< 75%)
[site ] DEBUG 2025/08/03 15:58:33 site power: 100W
[amperfied] TRACE 2025/08/03 15:58:33 modbus: send 01 67 00 00 00 06 fe 04 00 0a 00 03
[amperfied] TRACE 2025/08/03 15:58:33 modbus: recv 01 67 00 00 00 09 fe 04 06 00 ea 00 eb 00 eb
[lp-2 ] DEBUG 2025/08/03 15:58:33 charge voltages: [234 235 235]V
[lp-2 ] DEBUG 2025/08/03 15:58:33 detected connected phases: 3p
Hier direkt der nächste Zyklus 30 s später als Vergleich, ohne Fehler (Latenz bei 0,22 ms als die Anfragen für grid energy usw. waren)
[site ] DEBUG 2025/08/03 15:58:58 ----
[amperfied] TRACE 2025/08/03 15:58:58 modbus: send 01 70 00 00 00 06 fe 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 15:58:58 modbus: send 01 75 00 00 00 06 ff 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 15:58:58 modbus: recv 01 70 00 00 00 05 fe 04 02 00 02
[lp-2 ] DEBUG 2025/08/03 15:58:58 charge power: 2W
[amperfied] TRACE 2025/08/03 15:58:58 modbus: send 01 71 00 00 00 06 fe 04 00 06 00 03
[amperfied] TRACE 2025/08/03 15:58:58 modbus: recv 01 75 00 00 00 05 ff 04 02 00 00
[lp-1 ] DEBUG 2025/08/03 15:58:58 charge power: 0W
[amperfied] TRACE 2025/08/03 15:58:58 modbus: send 01 76 00 00 00 06 ff 04 00 06 00 03
[amperfied] TRACE 2025/08/03 15:58:58 modbus: recv 01 71 00 00 00 09 fe 04 06 00 00 00 00 00 00
[lp-2 ] DEBUG 2025/08/03 15:58:58 charge currents: [0 0 0]A
[amperfied] TRACE 2025/08/03 15:58:58 modbus: recv 01 76 00 00 00 09 ff 04 06 00 00 00 00 00 00
[lp-1 ] DEBUG 2025/08/03 15:58:58 charge currents: [0 0 0]A
[pv2 ] TRACE 2025/08/03 15:58:58 modbus: send 01 2e 00 00 00 06 01 04 00 0a 00 01
[pv2 ] TRACE 2025/08/03 15:58:58 modbus: recv 01 2e 00 00 00 05 01 04 02 02 19
[pv2 ] TRACE 2025/08/03 15:58:58 modbus: send 01 2f 00 00 00 06 01 04 00 0b 00 01
[pv2 ] TRACE 2025/08/03 15:58:59 modbus: recv 01 2f 00 00 00 05 01 04 02 02 82
[site ] DEBUG 2025/08/03 15:58:59 pv 1 power: 1179W
[battery3] TRACE 2025/08/03 15:58:59 modbus: send 01 30 00 00 00 06 01 04 00 16 00 01
[battery3] TRACE 2025/08/03 15:58:59 modbus: recv 01 30 00 00 00 05 01 04 02 01 02
[site ] DEBUG 2025/08/03 15:58:59 battery 1 power: -258W
[grid1 ] TRACE 2025/08/03 15:58:59 modbus: send 01 31 00 00 00 06 01 04 00 46 00 02
[grid1 ] TRACE 2025/08/03 15:59:00 modbus: recv 01 31 00 00 00 07 01 04 04 00 00 00 00
[site ] DEBUG 2025/08/03 15:59:00 grid power: -0W
[pv2 ] TRACE 2025/08/03 15:59:00 modbus: send 01 32 00 00 00 06 01 04 00 94 00 02
[pv2 ] TRACE 2025/08/03 15:59:01 modbus: recv 01 32 00 00 00 07 01 04 04 a2 61 00 00
[battery3] TRACE 2025/08/03 15:59:01 modbus: send 01 33 00 00 00 06 01 04 00 1c 00 01
[battery3] TRACE 2025/08/03 15:59:02 modbus: recv 01 33 00 00 00 05 01 04 02 00 61
[site ] DEBUG 2025/08/03 15:59:02 battery 1 soc: 97%
[grid1 ] TRACE 2025/08/03 15:59:02 modbus: send 01 34 00 00 00 06 01 04 00 4a 00 02
[grid1 ] TRACE 2025/08/03 15:59:03 modbus: recv 01 34 00 00 00 07 01 04 04 78 74 00 0e
[site ] DEBUG 2025/08/03 15:59:03 site power: -258W
[amperfied] TRACE 2025/08/03 15:59:03 modbus: send 01 77 00 00 00 06 ff 04 00 0a 00 03
[amperfied] TRACE 2025/08/03 15:59:03 modbus: recv 01 77 00 00 00 09 ff 04 06 00 e9 00 ea 00 ea
[lp-1 ] DEBUG 2025/08/03 15:59:03 charge voltages: [233 234 234]V
[lp-1 ] DEBUG 2025/08/03 15:59:03 detected connected phases: 3p
Hier am Ende nochmal, wo nur der Fehler bei battery war (Latenz 0,14 ms)
[site ] DEBUG 2025/08/03 16:03:58 ----
[amperfied] TRACE 2025/08/03 16:03:58 modbus: send 01 c5 00 00 00 06 fe 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 16:03:58 modbus: send 01 ca 00 00 00 06 ff 04 00 0e 00 01
[amperfied] TRACE 2025/08/03 16:03:58 modbus: recv 01 c5 00 00 00 05 fe 04 02 00 02
[lp-2 ] DEBUG 2025/08/03 16:03:58 charge power: 2W
[amperfied] TRACE 2025/08/03 16:03:58 modbus: send 01 c6 00 00 00 06 fe 04 00 06 00 03
[amperfied] TRACE 2025/08/03 16:03:58 modbus: recv 01 ca 00 00 00 05 ff 04 02 00 00
[lp-1 ] DEBUG 2025/08/03 16:03:58 charge power: 0W
[amperfied] TRACE 2025/08/03 16:03:58 modbus: send 01 cb 00 00 00 06 ff 04 00 06 00 03
[amperfied] TRACE 2025/08/03 16:03:58 modbus: recv 01 c6 00 00 00 09 fe 04 06 00 00 00 00 00 00
[lp-2 ] DEBUG 2025/08/03 16:03:58 charge currents: [0 0 0]A
[amperfied] TRACE 2025/08/03 16:03:58 modbus: recv 01 cb 00 00 00 09 ff 04 06 00 00 00 00 00 00
[lp-1 ] DEBUG 2025/08/03 16:03:58 charge currents: [0 0 0]A
[grid1 ] TRACE 2025/08/03 16:03:58 modbus: send 01 74 00 00 00 06 01 04 00 46 00 02
[grid1 ] TRACE 2025/08/03 16:03:58 modbus: recv 01 74 00 00 00 07 01 04 04 00 00 00 00
[site ] DEBUG 2025/08/03 16:03:58 grid power: -0W
[grid1 ] TRACE 2025/08/03 16:03:58 modbus: send 01 75 00 00 00 06 01 04 00 4a 00 02
[grid1 ] TRACE 2025/08/03 16:03:59 modbus: recv 01 75 00 00 00 07 01 04 04 78 74 00 0e
[pv2 ] TRACE 2025/08/03 16:03:59 modbus: send 01 76 00 00 00 06 01 04 00 0a 00 01
[pv2 ] TRACE 2025/08/03 16:03:59 modbus: recv 01 76 00 00 00 05 01 04 02 01 ee
[battery3] TRACE 2025/08/03 16:03:59 modbus: send 01 77 00 00 00 06 01 04 00 16 00 01
[battery3] TRACE 2025/08/03 16:04:00 modbus: recv 01 77 00 00 00 05 01 04 02 00 47
[site ] DEBUG 2025/08/03 16:04:00 battery 1 power: -71W
[pv2 ] TRACE 2025/08/03 16:04:00 modbus: send 01 78 00 00 00 06 01 04 00 0b 00 01
[pv2 ] TRACE 2025/08/03 16:04:03 modbus: close connection: read tcp 10.1.10.9:39178->10.1.10.200:502: i/o timeout
[site ] ERROR 2025/08/03 16:04:03 battery 1 soc: read failed: dial tcp 10.1.10.200:502: connect: connection refused
[pv2 ] TRACE 2025/08/03 16:04:03 modbus: send 01 7c 00 00 00 06 01 04 00 0a 00 01
[pv2 ] TRACE 2025/08/03 16:04:03 modbus: recv 01 7c 00 00 00 05 01 04 02 01 e5
[pv2 ] TRACE 2025/08/03 16:04:03 modbus: send 01 7d 00 00 00 06 01 04 00 0b 00 01
[pv2 ] TRACE 2025/08/03 16:04:04 modbus: recv 01 7d 00 00 00 05 01 04 02 02 19
[site ] DEBUG 2025/08/03 16:04:04 pv 1 power: 1022W
[pv2 ] TRACE 2025/08/03 16:04:04 modbus: send 01 7e 00 00 00 06 01 04 00 94 00 02
[pv2 ] TRACE 2025/08/03 16:04:05 modbus: recv 01 7e 00 00 00 07 01 04 04 a2 62 00 00
[site ] DEBUG 2025/08/03 16:04:05 battery has priority at soc 0% (< 75%)
[site ] DEBUG 2025/08/03 16:04:05 site power: 100W
[amperfied] TRACE 2025/08/03 16:04:05 modbus: send 01 cc 00 00 00 06 ff 04 00 0a 00 03
[amperfied] TRACE 2025/08/03 16:04:05 modbus: recv 01 cc 00 00 00 09 ff 04 06 00 eb 00 eb 00 ec
[lp-1 ] DEBUG 2025/08/03 16:04:05 charge voltages: [235 235 236]V
[lp-1 ] DEBUG 2025/08/03 16:04:05 detected connected phases: 3p
Es gibt auch das Szenario, bei dem erst pv energy einen Timout und anschließend battery connection refused hat (kann ich bei Bedarf auch senden).
Steps to reproduce
siehe oben
Configuration details
# Nur relevantes:
interval: 30s
meters:
- type: template
template: solax
id: 1
host: 10.1.10.200
port: 502
usage: grid
modbus: tcpip
mppt3: false
name: grid1
- type: template
template: solax
id: 1
host: 10.1.10.200
port: 502
usage: pv
modbus: tcpip
mppt3: false
name: pv2
- type: template
template: solax
id: 1
host: 10.1.10.200
port: 502
usage: battery
modbus: tcpip
mppt3: false
name: battery3
Log details
siehe oben
What type of operating system or environment does evcc run on?
Docker container
External automation
- I have made sure that no external automation like HomeAssistant or Node-RED is active or accessing any of the mentioned devices when this issue occurs.
Nightly build
- I have verified that the issue is reproducible with the latest nightly build
Version
0.207.0