Willkommen im Loxone Community Forum. Um alle Funktionen nutzen und sehen zu können, registriere dich bitte zuerst. Dies gilt auch für das herunterladen von Dateien.
Bitte im Titel immer zuerst den Namen des Plugins hinschreiben
Hallo Zusammen
ich habe mich versucht mit Literatur und Videos an das Thema Loxberry und MQTT heranzutasten mit folgenden Unklarheiten.
die Kommunikation zwischen MQTT und Loxberry steht. Ich habe nun die virtuellen Eingänge in der Config angelegt, diese zeigen jedoch keine Werte an und gleichzeitig ist die Kommunikation vom WR zum Portal unterbrochen….
welche Informationen werden benötigt um die Fehler zu finden?
ich hab tatsächlich auch ein paar Anläufe gebraucht um das stabil zum Laufen zu kriegen. Aber wenns mal läuft is es top.
- Hat dein Wechselrichter eine statische IP?
- Mach im Plug-in den Verbindungstest. Nur wenn der klappt, bekommst du auch Werte.
- Siehst du Werte im MQTT Finder?
- Wenn im MQTT Finder Werte da sind, die Gateway Subscriptions passen und auch im Incoming Overwiew auch alles da ist, check mal deine Eingänge in der Loxone Config nochmal ob da wirklich alles sauber ist. (Ist der Name wirklich identisch zum MQTT Server, passen min-max Werte, Digitaleingang deaktiviert...)
- Zum Verbindungsabbruch zum SEMS-Portal: Du darfst die Abfragerate der Werte nicht zu hoch ansetzen. Dann steigt die Verbindung zum SEMS Portal regelmäßig aus. Bei mir läuft es mit "alle 5min" stabil. Man sieht zwar in den SEMS Reports, dass nicht mehr alles ankommt, aber scheinbar genug um nicht in einen Fehler zu gehen.
P.S. Falls du eine Loxone Modbus-Extension hast, kannst du den Wechselrichter eventuell direkt mit dem Miniserver verbinden und alle paar Sekunden per Modbus RTU direkt Daten abholen. Ganz ohne Loxberry... :-) Ich hab nen GW15K-ET. Der kann das. Daher ist das Plugin bei mir auch aktuell nicht mehr aktiv...
ein Kollege von mir nutzt ebenfalls einen Goodwe GW10K-ET, den ich direkt via Modbus TCP/IP über den WiFI/LAN Kit2.0anspreche. Allerdings finde ich keine Option, um die Goodwe Wallbox zu integrieren. Mein Ziel ist es, diese in mein Loxone-System einzubinden und über das Energiemanagementsystem (EMS) zu steuern.
Hat das jemand von euch hinbekommen oder hat Info wie man das umsetzen könnte?
Genau dafür ist dieses Plugin.
Wenn du deinen loxberry eingerichtet hast, Plugin installieren und über deinen Router die IP des Wechselrichters raussuchen. Der Rest wird automatisch eingestellt und du kannst die Daten über MQTT auslesen.
Ich habe das gleiche Modell und verwende das Plugin seit 10 Monaten zuverlässig. Einziges Manko, das ich habe, ist eine stündliche Fehlermeldung, weswegen ich die E-Mail-Benachrichtigungen des Loxberrys ausschalten musste.
Hi loxfori,
vielen Dank für die schnelle Rückmeldung.
Liest er dann auch alle Daten für die Wallbox aus?
Kann ich dann auch damit die Wallbox steuern?
Falls ja, wie sieht das ganze aus? Hast du evtl. Bilder damit ich mir mal ein Bild davon machen kann :-)
Es werden sehr viele Daten ausgelesen. Ob es alle sind, weiß ich nicht, aber auf jeden Fall alle relevanten.
Steuern lässt sich damit nichts, aber das übernimmt ja Loxone.
Wie weit bist du denn bei der Einrichtung?
1. Hast du einen loxberry?
2. Hast du das Plugin installiert?
3. Hast du im Plugin deinen Wechselrichter über die entsprechende IP gefunden?
4. Kommen Daten über MQTT rein?
5. Hast du diese an Loxone weitergeleitet?
Wovon möchtest du denn Bilder haben? Aus der Config?
Hi loxfori,
1. ja, habe ich schon seit fast 5 Jahren
2. ja, ist installiert —> aber ich lese die Daten aktuelle direkt über Modbus ein
3. muss ich noch Konfigurieren
4. dazu fehlt Schritt 3
5. dazu fehlen Schritt 3 und 4
Ich habe kein Problem die Daten vom WR einzulesen. Aus der TCP/IP Doku von Goodwe kann ich alle Register auslesen die relevant sind. Read only / sowie auch Write Register.
Ich möchte aber auch die WALLBOX auslesen und über Loxone steuern. Deshalb die Frage ob das Plugin auch die Wallbox-Daten auslesen kann. Ich habe bisher nirgends im Internet oder Foren davon lesen können.
bei einem Kollegen von mir habe ich nun auch Loxberry mit GoodWe2MQTT eingerichtet.
Er hat einen GW10K-ET und einen GW20K-DT Wechselrichter
Ich hab das Plugin zwei mal auf Loxberry installiert.
der GW10K-ET wird super abgefragt, jedoch habe ich beim GW20K-DT irgendein Problem.
Der Verbindungstest ist in Ordnung
14:05:19: Prüfe ob IP vorhanden ... <OK>
14:05:19: Scanne nach Wechselrichtern (optional) ... <Fehler>
Fehler
Traceback (most recent call last):
File "/opt/loxberry/bin/plugins/goodwe2mqtt2/tests/scanTest.py", line 15, in <module>
asyncio.run(get_runtime_data())
File "/usr/lib/python3.11/asyncio/runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/opt/loxberry/bin/plugins/goodwe2mqtt2/tests/scanTest.py", line 8, in get_runtime_data
result = await goodwe.search_inverters()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/__init__.py", line 127, in search_inverters
result = await command.execute(UdpInverterProtocol("255.255.255.2 55", 48899, 1, 0))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 456, in execute
response_future = await protocol.send_request(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 182, in send_request
await self._connect()
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 124, in _connect
self._transport, self.protocol = await asyncio.get_running_loop().create_datagram_endpoin t(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1386, in create_datagram_endpoint
raise exceptions[0]
File "/usr/lib/python3.11/asyncio/base_events.py", line 1373, in create_datagram_endpoint
await self.sock_connect(sock, remote_address)
File "/usr/lib/python3.11/asyncio/selector_events.py", line 634, in sock_connect
return await fut
^^^^^^^^^
File "/usr/lib/python3.11/asyncio/selector_events.py", line 642, in _sock_connect
sock.connect(address)
PermissionError: [Errno 13] Permission denied
Ausgabe
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Searching inverters by broadcast to port 48899
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
14:05:19: Versuche den Wechselrichter zu pingen (optional) ... <OK>
PING 192.168.25.73 (192.168.25.73) 56(84) bytes of data.
64 bytes from 192.168.25.73: icmp_seq=1 ttl=255 time=1.59 ms
--- 192.168.25.73 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.593/1.593/1.593/0.000 ms
14:05:19: Prüfe Verbindung zu Wechselrichter ... <OK>
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Probing inverter at 192.168.25.73:8899.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241)
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc001820002410315031c
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #1/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc001820002410315031c
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #2/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc001820002410315031c
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #3/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ device info (aa55c07f0102000241) failed.
DEBUG:goodwe:Probing ET inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1)
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #1/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #2/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #3/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ 33 registers from 35000 (f70388b800213ac1) failed.
DEBUG:goodwe:Probing DT inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409)
DEBUG:goodwe.protocol:Received: aa557f0350000200c80001353032304b445454323334573031 3037475732304b542d445420ffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffff000000110011 003604840050000100007903
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 73 registers from 30100 (7f0375940049d5c2)
DEBUG:goodwe.protocol:Received: aa557f0392180a020e04261a80007d1a65003affffffffffff ffffffffffffffffffff0f6e0f7f0f8408f208de090200b100 ae00b113861387138800002eea000100000000000000000000 0000011f0000000003e7ffff01a8ffffffff008f00002ddf00 0000f900020000000000000000ffffffffffffffffffffffff ffffffff02121b300db7000000040000048402120000ffff00 643db1
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea)
DEBUG:goodwe.protocol:Failed to receive response to READ register 30196 (7f0375f40001d5ea) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #1/3
DEBUG:goodwe.modbus:Response CRC-16 checksum does not match.
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #2/3
DEBUG:goodwe.modbus:Response CRC-16 checksum does not match.
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #3/3
DEBUG:goodwe.modbus:Response is command failure: ILLEGAL DATA ADDRESS.
DEBUG:goodwe.protocol:Received exception response: aa557f8302a0e9
INFO:goodwe.dt:Meter values not supported, disabling further attempts.
DEBUG:goodweetected DT family inverter GW20KT-DT, S/N:5020KDTT234W0107.
DEBUG:goodwe.protocol:Socket closed.
14:05:26: Prüfe ob Informationen über Wechselrichter Sensoren geholt werden kann ... <OK>
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Probing inverter at 192.168.25.73:8899.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241)
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #1/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #2/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #3/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ device info (aa55c07f0102000241) failed.
DEBUG:goodwe:Probing ET inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1)
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #1/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #2/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #3/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ 33 registers from 35000 (f70388b800213ac1) failed.
DEBUG:goodwe:Probing DT inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409)
DEBUG:goodwe.protocol:Failed to receive response to READ 40 registers from 30001 (7f03753100280409) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409) - retry #1/3
DEBUG:goodwe.protocol:Received: aa557f0350000200c80001353032304b445454323334573031 3037475732304b542d445420ffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffff000000110011 003604840050000100007903
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 73 registers from 30100 (7f0375940049d5c2)
DEBUG:goodwe.protocol:Received: aa557f0392180a020e042f1a83007b1a740037ffffffffffff ffffffffffffffffffff0f7d0f8e0f9308f908e6090b00ad00 aa00ab13861387138700002dbf000100000000000000000000 000001160000000003e7ffff01a9ffffffff009000002de000 0000f900020000000000000000ffffffffffffffffffffffff ffffffff02121b470dc0000000040000048402120000000000 64647e
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea)
DEBUG:goodwe.protocol:Failed to receive response to READ register 30196 (7f0375f40001d5ea) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #1/3
DEBUG:goodwe.modbus:Response CRC-16 checksum does not match.
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #2/3
DEBUG:goodwe.modbus:Response is command failure: ILLEGAL DATA ADDRESS.
DEBUG:goodwe.protocol:Received exception response: aa557f8302a0e9
INFO:goodwe.dt:Meter values not supported, disabling further attempts.
DEBUG:goodweetected DT family inverter GW20KT-DT, S/N:5020KDTT234W0107.
["Timestamp(id_='timestamp', offset=30100, name='Timestamp', size_=6, unit='', kind=None)", "Voltage(id_='vpv1', offset=30103, name='PV1 Voltage', size_=2, unit='V', kind=)", "Current(id_='ipv1', offset=30104, name='PV1 Current', size_=2, unit='A', kind=)", "Calculated(id_='ppv1', offset=0, name='PV1 Power', size_=0, unit='W', kind=)", "Voltage(id_='vpv2', offset=30105, name='PV2 Voltage', size_=2, unit='V', kind=)", "Current(id_='ipv2', offset=30106, name='PV2 Current', size_=2, unit='A', kind=)", "Calculated(id_='ppv2', offset=0, name='PV2 Power', size_=0, unit='W', kind=)", "Calculated(id_='ppv', offset=0, name='PV Power', size_=0, unit='W', kind=)", "Voltage(id_='vline1', offset=30115, name='On-grid L1-L2 Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vline2', offset=30116, name='On-grid L2-L3 Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vline3', offset=30117, name='On-grid L3-L1 Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vgrid1', offset=30118, name='On-grid L1 Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vgrid2', offset=30119, name='On-grid L2 Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vgrid3', offset=30120, name='On-grid L3 Voltage', size_=2, unit='V', kind=)", "Current(id_='igrid1', offset=30121, name='On-grid L1 Current', size_=2, unit='A', kind=)", "Current(id_='igrid2', offset=30122, name='On-grid L2 Current', size_=2, unit='A', kind=)", "Current(id_='igrid3', offset=30123, name='On-grid L3 Current', size_=2, unit='A', kind=)", "Frequency(id_='fgrid1', offset=30124, name='On-grid L1 Frequency', size_=2, unit='Hz', kind=)", "Frequency(id_='fgrid2', offset=30125, name='On-grid L2 Frequency', size_=2, unit='Hz', kind=)", "Frequency(id_='fgrid3', offset=30126, name='On-grid L3 Frequency', size_=2, unit='Hz', kind=)", "Calculated(id_='pgrid1', offset=0, name='On-grid L1 Power', size_=0, unit='W', kind=)", "Calculated(id_='pgrid2', offset=0, name='On-grid L2 Power', size_=0, unit='W', kind=)", "Calculated(id_='pgrid3', offset=0, name='On-grid L3 Power', size_=0, unit='W', kind=)", "PowerS(id_='total_inverter_power', offset=30128, name='Total Power', size_=2, unit='W', kind=)", "Integer(id_='work_mode', offset=30129, name='Work Mode code', size_=2, unit='', kind=None)", "Enum2(id_='work_mode_label', offset=30129, name='Work Mode', size_=2, unit='', kind=None)", "Long(id_='error_codes', offset=30130, name='Error Codes', size_=4, unit='', kind=None)", "Integer(id_='warning_code', offset=30132, name='Warning code', size_=2, unit='', kind=None)", "Apparent4(id_='apparent_power', offset=30133, name='Apparent Power', size_=2, unit='VA', kind=)", "Reactive4(id_='reactive_power', offset=30135, name='Reactive Power', size_=2, unit='var', kind=)", "Decimal(id_='power_factor', offset=30139, name='Power Factor', size_=2, unit='', kind=)", "Temp(id_='temperature', offset=30141, name='Inverter Temperature', size_=2, unit='C', kind=)", "Energy(id_='e_day', offset=30144, name="Today's PV Generation", size_=2, unit='kWh', kind=)", "Energy4(id_='e_total', offset=30145, name='Total PV Generation', size_=4, unit='kWh', kind=)", "Long(id_='h_total', offset=30147, name='Hours Total', size_=4, unit='h', kind=)", "Integer(id_='safety_country', offset=30149, name='Safety Country code', size_=2, unit='', kind=)", "Enum2(id_='safety_country_label', offset=30149, name='Safety Country', size_=2, unit='', kind=)", "Integer(id_='funbit', offset=30162, name='FunBit', size_=2, unit='', kind=)", "Voltage(id_='vbus', offset=30163, name='Bus Voltage', size_=2, unit='V', kind=)", "Voltage(id_='vnbus', offset=30164, name='NBus Voltage', size_=2, unit='V', kind=)", "Long(id_='derating_mode', offset=30165, name='Derating Mode code', size_=4, unit='', kind=None)", "EnumBitmap4(id_='derating_mode_label', offset=30165, name='Derating Mode', size_=4, unit='', kind=None)"]DEBUG:goodwe.protocol:Socket closed.
14:05:34: Prüfe ob aktuelle Daten vom Wechselrichter geholt werden kann ... <OK>
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Probing inverter at 192.168.25.73:8899.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241)
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #1/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #2/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241) - retry #3/3
DEBUG:goodwe.protocol:Response invalid - too long (13).
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ device info (aa55c07f0102000241) failed.
DEBUG:goodwe:Probing ET inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1)
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #1/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #2/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1) - retry #3/3
DEBUG:goodwe.protocol:Failed to receive response to READ 33 registers from 35000 (f70388b800213ac1) in time (1s).
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ 33 registers from 35000 (f70388b800213ac1) failed.
DEBUG:goodwe:Probing DT inverter at 192.168.25.73.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409)
DEBUG:goodwe.protocol:Failed to receive response to READ 40 registers from 30001 (7f03753100280409) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409) - retry #1/3
DEBUG:goodwe.protocol:Received: aa557f0350000200c80001353032304b445454323334573031 3037475732304b542d445420ffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffff000000110011 003604840050000100007903
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 73 registers from 30100 (7f0375940049d5c2)
DEBUG:goodwe.protocol:Received: aa557f0392180a020e04361a1600771a160039ffffffffffff ffffffffffffffffffff0f7a0f890f8c08f508e5090800a800 a500a713861386138600002dcc000100000000000000000000 0000011d0000000003e7ffff01a9ffffffff009000002de000 0000f900020000000000000000ffffffffffffffffffffffff ffffffff02121ade0d8c000000040000048402120000000000 642df1
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea)
DEBUG:goodwe.protocol:Failed to receive response to READ register 30196 (7f0375f40001d5ea) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #1/3
DEBUG:goodwe.protocol:Failed to receive response to READ register 30196 (7f0375f40001d5ea) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #2/3
DEBUG:goodwe.protocol:Failed to receive response to READ register 30196 (7f0375f40001d5ea) in time (1s).
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ register 30196 (7f0375f40001d5ea) - retry #3/3
DEBUG:goodwe.modbus:Response CRC-16 checksum does not match.
DEBUG:goodwe.protocol:Received invalid response: aa557fc00182000241aa1503c3
DEBUG:goodwe.protocol:Max number of retries (3) reached, request READ register 30196 (7f0375f40001d5ea) failed.
INFO:goodwe.dt:Meter values not supported, disabling further attempts.
DEBUG:goodweetected DT family inverter GW20KT-DT, S/N:5020KDTT234W0107.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 73 registers from 30100 (7f0375940049d5c2) - retry #3/3
DEBUG:goodwe.protocol:Received: aa557f0392180a020e04391a32007e1a9a003bffffffffffff ffffffffffffffffffff0f7a0f8c0f8c08f508e6090800b400 af00b113861387138700002eca000100000000000000000000 0000011c0000000003e7ffff01a9ffffffff009000002de000 0000f900020000000000000000ffffffffffffffffffffffff ffffffff02121b1f0dac000000040000048402120000000000 64c430
{"timestamp": "2024-10-02 14:04:57", "vpv1": 670.6, "ipv1": 12.6, "ppv1": 8450, "vpv2": 681.0, "ipv2": 5.9, "ppv2": 4018, "ppv": 12468, "vline1": 396.2, "vline2": 398.0, "vline3": 398.0, "vgrid1": 229.3, "vgrid2": 227.8, "vgrid3": 231.2, "igrid1": 18.0, "igrid2": 17.5, "igrid3": 17.7, "fgrid1": 49.98, "fgrid2": 49.99, "fgrid3": 49.99, "pgrid1": 4127, "pgrid2": 3986, "pgrid3": 4092, "total_inverter_power": 11978, "work_mode": 1, "work_mode_label": "Normal", "error_codes": 0, "warning_code": 0, "apparent_power": 0, "reactive_power": 284, "power_factor": 0.999, "temperature": 42.5, "e_day": 14.4, "e_total": 1174.4, "h_total": 249, "safety_country": 2, "safety_country_label": "DE LV with PV", "funbit": 530, "vbus": 694.3, "vnbus": 350.0, "derating_mode": 4, "derating_mode_label": "Reactive power derating(PF/QU/FixQ)"}DEBUG:goodwe.protocol:Socket closed.
Verbindung OK!
er liefert auch Werte scheinbar jedoch bekomme ich auf dem MQTT Finder keine Werte....
Kann sich jemand dieses Verhalten erklären?
Hallo Munzi, ich betreibe zwei GoodWE WR im Netz und möchte beide per MQTT auslesen - funktioniert mit dem dzt. Plugin nicht - oder mache ich was falsch? - Danke, Guti
Ich habe einen Miniserver Gen1 und Loxberry v3.x. Läuft die Abfrage per MQTT nur auf den Gen2 Miniservern oder ist dies auch mit meinen Gen1 möglich? Danke Lg
Das Plugin hat damit nichts zu tun. Es wandelt nur Daten von Goodwe Wechselrichter in MQTT Daten um und stellt diese über den LoxBerry integrierten MQTT-Dienst zur verfügung. Wenn du also beim LoxBerry den MQTT Dienst abfragen kannst sollte alles klappen
Diese MQTT Daten werden dann von Loxberry als HTTP Requests zur Verfügung gestellt. Wie MQTT am Loxberry funktioniert entnimmst du am besten der offiziellen Dokumentation dazu. Ich selbst hab auch nur einen Gen1 und verwende es so
Hallo zusammen, ich habe leider aktuell ein Verbindungsproblem - bis dato hatte ich den WR (GW10K-ET) mit einem WLAN Modul verbunden und habe die Werte via MQTT abgefragt, hat auch alles einwandfrei geklappt. Nun habe ich ein Upgrade durchgeführt, da ich den WR mit direkt per Lan verbinden wollte - habe entsprechend das WIFI/LAN Kit 2.0 geordert und die Software des WR von GoodWe updaten lassen, sodass der WR mit dem Modul über die (SEMS APP) Werte liefert.
Leider bekomme ich aber seit dem keine Verbindung mehr zwischen Loxberry und WR.
14:09:24: Prüfe ob IP vorhanden ... <OK>
14:09:24: Scanne nach Wechselrichtern (optional) ... <Fehler> Fehler
Traceback (most recent call last):
File "/opt/loxberry/bin/plugins/goodwe2mqtt/tests/scanTest.py", line 15, in <module>
asyncio.run(get_runtime_data())
File "/usr/lib/python3.11/asyncio/runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/opt/loxberry/bin/plugins/goodwe2mqtt/tests/scanTest.py", line 8, in get_runtime_data
result = await goodwe.search_inverters()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/__init__.py", line 127, in search_inverters
result = await command.execute(UdpInverterProtocol("255.255.255.2 55", 48899, 1, 0))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 456, in execute
response_future = await protocol.send_request(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 182, in send_request
await self._connect()
File "/usr/local/lib/python3.11/dist-packages/goodwe/protocol.py", line 124, in _connect
self._transport, self.protocol = await asyncio.get_running_loop().create_datagram_endpoin t(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1386, in create_datagram_endpoint
raise exceptions[0]
File "/usr/lib/python3.11/asyncio/base_events.py", line 1373, in create_datagram_endpoint
await self.sock_connect(sock, remote_address)
File "/usr/lib/python3.11/asyncio/selector_events.py", line 634, in sock_connect
return await fut
^^^^^^^^^
File "/usr/lib/python3.11/asyncio/selector_events.py", line 642, in _sock_connect
sock.connect(address)
PermissionError: [Errno 13] Permission denied
AusgabeDEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Searching inverters by broadcast to port 48899
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
14:09:25: Versuche den Wechselrichter zu pingen (optional) ... <OK>
PING 192.168.188.104 (192.168.188.104) 56(84) bytes of data.
64 bytes from 192.168.188.104: icmp_seq=1 ttl=255 time=0.359 ms
--- 192.168.188.104 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.359/0.359/0.359/0.000 ms
14:09:25: Prüfe Verbindung zu Wechselrichter ... <Fehler> Fehler
Traceback (most recent call last):
File "/opt/loxberry/bin/plugins/goodwe2mqtt/tests/connectionTest.py", line 13, in <module>
asyncio.run(get_runtime_data())
File "/usr/lib/python3.11/asyncio/runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/opt/loxberry/bin/plugins/goodwe2mqtt/tests/connectionTest.py", line 8, in get_runtime_data
await goodwe.connect(ip_address)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/__init__.py", line 48, in connect
return await discover(host, port, timeout, retries)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/goodwe/__init__.py", line 111, in discover
raise InverterError(
goodwe.exceptions.InverterError: Unable to connect to the inverter at host=192.168.188.104, or your inverter is not supported yet.
Failures=[RequestFailedException("No valid response received to 'aa55c07f0102000241' request."), RequestFailedException("No valid response received to 'f70388b800213ac1' request.", 1), RequestFailedException("No valid response received to '7f03753100280409' request.", 1), RequestFailedException("No valid response received to 'aa55c07f0102000241' request.", 1)]
AusgabeDEBUG:asyncio:Using selector: EpollSelector
DEBUG:goodwe:Probing inverter at 192.168.188.104:8899.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241)
DEBUG:goodwe.protocol:Received error: [Errno 111] Connection refused
DEBUG:goodwe:Probing ET inverter at 192.168.188.104.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 33 registers from 35000 (f70388b800213ac1)
DEBUG:goodwe.protocol:Received error: [Errno 111] Connection refused
DEBUG:goodwe:Probing DT inverter at 192.168.188.104.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ 40 registers from 30001 (7f03753100280409)
DEBUG:goodwe.protocol:Received error: [Errno 111] Connection refused
DEBUG:goodwe:Probing ES inverter at 192.168.188.104.
DEBUG:goodwe.protocol:Creating lock instance for current event loop.
DEBUG:goodwe.protocol:Socket closed.
DEBUG:goodwe.protocol:Sending: READ device info (aa55c07f0102000241)
DEBUG:goodwe.protocol:Received error: [Errno 111] Connection refused
DEBUG:goodwe.protocol:Socket closed.
Verbindung fehlerhaft!
Jemand eine Idee wieso die Verbindung nicht zustande kommen könnte?
Du bekommst von der externen Bibliothek die ich verwende einen Fehler zurück das dein Wechselrichter nicht mehr unterstützt wird.
Unable to connect to the inverter at host=192.168.188.104, or your inverter is not supported yet
Kannst du dich mal auf deinen Loxberry im Terminal/SSH einloggen und folgendes Kommando versuchen:
Code:
sudo pip3 list | grep "goodwe"
Es sollte eine Zeile mit "goodwe x.x.x" erscheine wobei x.x.x für die installierte Versionsnummer steht. Aktuelle Version von der Bibliothek wäre 0.4.8
Falls abweichend, versuche ein Update der Bibliothek - vielleicht ist deine neue Software-Version dann bereits unterstützt.
Guten Abend zusammen,
ich habe einen GoodWe GW20K-ET Wechselrichter hier mit dem neuen WiFi / LAN Kit 2.0 am laufen.
Das neue LAN Kit 2.0 kann entsprechend auch Modbus TCP ins Netz schicken (erfolgreich im Betrieb).
Im Anhang ist die Modbus Register-Liste.
Ich bin so halb am Verzweifeln denn ich möchte gerne für die nächste
Du kannst, weil du ein fixes LAN Modul hast, direkt die offizielle Modbus-TCP Schnittstelle verwenden als alternative.
Danke für die schnelle Rückmeldung - ich habe "leider" schon die aktuelle Version - dann scheint es mit dem Software Update des WR zusammen zu hängen... Wundert mich eigentlich, da der Dongle vorher nicht mit dem WR funktioniert hat & erst durch das Update des Goodwe Supports Daten im SEMS Portal abrufbar waren.
Dann werde ich es mal über die Modbus-TCP Schnittstelle versuchen...
Merkwürdigerweise funktioniert das Plugin gerade wieder... - Keine Fehler mehr bei der Abfrage, ledigliche die automatische WR Suche hat keinen Erfolg...
Zuletzt geändert von fbkln; In den letzten 2 Wochen.
Grund: Update
Wir verarbeiten personenbezogene Daten über Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen, Werbung zu personalisieren und Websiteaktivitäten zu analysieren. Wir können bestimmte Informationen über unsere Nutzer mit unseren Werbe- und Analysepartnern teilen. Weitere Einzelheiten finden Sie in unserer Datenschutzrichtlinie.
Wenn Sie unten auf "Einverstanden" klicken, stimmen Sie unserer Datenschutzrichtlinie und unseren Datenverarbeitungs- und Cookie-Praktiken wie dort beschrieben zu. Sie erkennen außerdem an, dass dieses Forum möglicherweise außerhalb Ihres Landes gehostet wird und Sie der Erhebung, Speicherung und Verarbeitung Ihrer Daten in dem Land, in dem dieses Forum gehostet wird, zustimmen.
Kommentar