home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
72.98k stars 30.53k forks source link

adding goodwe to homeassistant breaks SEMS portal #101817

Open rflx18 opened 1 year ago

rflx18 commented 1 year ago

The problem

hi, once i add the goodwe inverter do the homeassistant it breaks the SEMS portal, it stops updating SEMS portal, i tried to update interval in only 2 minutes but even like this it breaks, as soon as i add the homeassistant integration SEMS stop working. any workaround or im the only one facing this problem?

What version of Home Assistant Core has the issue?

2023.10.1

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant Container

Integration causing the issue

Goodwe

Link to integration documentation on our website

No response

Diagnostics information

if i remove Goodwe integration, SEMS start working.

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

mletenay commented 6 months ago

I do not want to raise false hopes yet, but here https://github.com/home-assistant/core/issues/114173#issuecomment-2049127070 we realized the new wifi/lan dongle now supports modbus-TCP, which in theory could be more stable then the UDP and might? solve the SEMS update problems some of you are experiencing. (But I first need to buy myself that module and implement necessary code changes to prove this hypothesis.)

TomasApeltauer commented 6 months ago

MODBUS is often used in CZ for GoodWe inverters using for example this stuff: https://www.aliexpress.com/item/1005005196021830.html

Ventusfahrer commented 6 months ago

MODBUS is often used in CZ for GoodWe inverters using for example this stuff: https://www.aliexpress.com/item/1005005196021830.html

mmh, I could not find any information, that the goodwe inverters discussed here have an Modbus RTU interface. So the mentioned hardware is not usable at all.

The comment of mletenay mentioned Modbus-TCP. In this case the communication is performed using the WLAN interface an your mentioned Modbus-RTU/Modbus-TCP converter is not needed.

RalfWinter commented 6 months ago

I could not find any information, that the goodwe inverters discussed here have an Modbus RTU interface.

Depending on model they actually have 2 (called EMS/PAR). Here is the page from the user's manual of my GW-ET15: rs485-if

MODBUS is often used in CZ for GoodWe inverters

Thanks for the hint, @tomasapeltauer , I just ordered an RS485-to-Ethernet-box from Ali. I will let you (and all others) know, whether I could get it to work. I use Home Assistant and the "Goodwe Inverter"-integration. I hope it is just "plug and play" (I mean, that I just change the IP-address in the "Goodwe Inverter"-integration), but I guess this is too optimistic :-)

TomasApeltauer commented 6 months ago

This solution is recommended by the manufacturer of the CZ specific interface for GoodWe inverters. BTW very popular software in CZ https://www.sundaygate.cz/, it is an interface based on PROMOTIC https://www.promotic.eu/en/pmdoc/PriceList/PmFree.htm. The manufacturer has tested it, praises the communication without lost packets, for the GW 15-30k ET inverters there is also no conflict with SEMS. Which is our common issue here.

I also have a GW 15k ET. So you are a few steps ahead of me. If you get it working and post some detailed procedure here @RalfWinter, it will probably save a lot of time for other users, including me :-)

RalfWinter commented 5 months ago

Update: I opened a ticket with Goodwe back on April 2nd, 2024. The ticket was routed to 2nd level and handled there. They escalated it to R&D and 3 days ago I got the information that the problem can be solved using the "Wi-Fi LAN KIT-20", they will provide me one. However, this new adapter needs also a firmware update, I should talk back to them as soon as I received it to apply the firmware update. Meanwhile I also received the RS485 to WiFi-box. When I find time over the weekend I will install it.

I'll keep you posted.

tuomasva commented 5 months ago

Update: I opened a ticket with Goodwe back on April 2nd, 2024. The ticket was routed to 2nd level and handled there. They escalated it to R&D and 3 days ago I got the information that the problem can be solved using the "Wi-Fi LAN KIT-20", they will provide me one. However, this new adapter needs also a firmware update, I should talk back to them as soon as I received it to apply the firmware update. Meanwhile I also received the RS485 to WiFi-box. When I find time over the weekend I will install it.

I'll keep you posted.

So a more permanent workaround is to replace the current wi-fi module (dongle) with their Wi-Fi LAN KIT-20?

I think I'm ok polling the device every 3min instead.

mletenay commented 5 months ago

Just be aware the Wifi/LAN kit 2.0 is compatible only with ET >=15K and ES G2 inverters. See https://github.com/home-assistant/core/issues/114173#issuecomment-2061106559 And it does not support the UDP protocol, but standard Modbus/TCP to which I added support just few days ago and still needs some testing.

RalfWinter commented 5 months ago

Yes, @mletenay, I know, thanks for the heads-up, but I own an ET 15 inverter. And I am looking forward to the modbus/tcp implementation you are currently doing. When I have time I will still test the RS485-to-Ethernet-box which sits on my desk waiting to get hooked up 😀

mletenay commented 5 months ago

As just mentioned in https://github.com/home-assistant/core/issues/114173, if you have Wifi/LAN kit 20, or any direct RS-485 to Modbus/TCP adapters, the v0.9.9.18 version of HACS version of this integration now includes support for Modbus/TCP. If testing there will not reveal any problems, it will be ported to core HA version of the integration soon.

RalfWinter commented 5 months ago

Thanks for the update. I just installed v0.9.9.18 but no connection possible. I use Elfin EW11 Modbus/RTU to Modbus/TCP converter. Which port do you assume when selecting TCP?

By the way, as proposed earlier in this thread I integrated the Elfin EW11 converter to my HA and it works! Here is the section in configuration.yaml (quick and dirty to check functionality):

  - name: "EW11"
    type: tcp
    host: 192.168.1.78
    port: 502
    sensors:
        - name: GWET15_Rated_Power
          address: 35001
          device_address: 247
          unit_of_measurement: W
          scan_interval: 10
        - name: GWET15_Total_Power_Load
          address: 35172
          device_address: 247
          unit_of_measurement: W
          scan_interval: 10
        - name: GWET15_PV1_Power
          address: 35105
          device_address: 247
          unit_of_measurement: W
          data_type: uint32
          scan_interval: 10
        - name: GWET15_PV2_Power
          address: 35109
          device_address: 247
          unit_of_measurement: W
          data_type: uint32
          scan_interval: 10
        - name: GWET15_PV3_Power
          address: 35113
          device_address: 247
          unit_of_measurement: W
          data_type: uint32
          scan_interval: 10
        - name: GWET15_PV4_Power
          address: 35117

In HA: grafik

mletenay commented 5 months ago

UDP uses port 8899, TCP is port 502

RalfWinter commented 5 months ago

OK, my converter is configured to listen on port 502 (see the configuration.yaml I posted before).

Do I need to delete the the already discovered inverter listening on UDP before I can proceed to add the Modbus/TCP converter?

mletenay commented 5 months ago

Yes, there is now new toggle UDP vs TCP when adding inverter integration. So remove the integration and add it back again, selecting TCP

RalfWinter commented 5 months ago

No luck: Screenshot_20240505_214913_Home Assistant After I hit "send": Screenshot_20240505_214926_Home Assistant

My assumption: the converter behaves different as compared to the 2.0-dongle..... If you review my configuration.yaml I read the Modbus values from device ID 247 which is the default on the Modbus/RTU side of the Goodwe inverter. May be you need to add a configuration variable for that (besides UDP and TCP)?

mletenay commented 5 months ago

Hmmm, in Modbus/TCP the device ID shoud be ignored, but anyway, goodwe is using 247 too. Is there anything relevant in log files ?

RalfWinter commented 5 months ago

No entry in home-assistant.log. The error comes instantly.

mletenay commented 5 months ago

Aaaaaaargh ! I made a mistake in the setup code. Could you please try to reload Beta/master version ?

RalfWinter commented 5 months ago

Same, no change....

mletenay commented 5 months ago

Once again please I made 2 mistakes ....

RalfWinter commented 5 months ago

I tried it multiple times (remove integration in HACS, restart HA, add integration in HACS, restart HA, configuration in Settings-->Integrations), no luck: grafik

Connection failed: grafik

RalfWinter commented 5 months ago

How can I check that I have the correct code on my HA-instance?

lordjson commented 5 months ago

I'm having the same problem, fail to connect with TCP.

RalfWinter commented 5 months ago

@mletenay : here I have some log entries:

2024-05-06 10:48:18.716 DEBUG (MainThread) [goodwe] Probing inverter at ew11:8899.
2024-05-06 10:48:18.716 DEBUG (MainThread) [goodwe.protocol] Creating lock instance for current event loop.
2024-05-06 10:48:18.721 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-05-06 10:48:18.724 DEBUG (MainThread) [goodwe.protocol] Received error: [Errno 111] Connection refused
2024-05-06 10:48:18.725 DEBUG (MainThread) [goodwe] Probing ET inverter at ew11.
2024-05-06 10:48:18.726 DEBUG (MainThread) [goodwe.protocol] Creating lock instance for current event loop.
2024-05-06 10:48:18.726 DEBUG (MainThread) [goodwe.protocol] Socket closed.
2024-05-06 10:48:18.732 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (f70388b800213ac1)
2024-05-06 10:48:18.735 DEBUG (MainThread) [goodwe.protocol] Received error: [Errno 111] Connection refused
2024-05-06 10:48:18.737 DEBUG (MainThread) [goodwe] Probing DT inverter at ew11.
2024-05-06 10:48:18.737 DEBUG (MainThread) [goodwe.protocol] Creating lock instance for current event loop.
2024-05-06 10:48:18.738 DEBUG (MainThread) [goodwe.protocol] Socket closed.
2024-05-06 10:48:18.744 DEBUG (MainThread) [goodwe.protocol] Sending: READ 40 registers from 30001 (7f03753100280409)
2024-05-06 10:48:18.748 DEBUG (MainThread) [goodwe.protocol] Received error: [Errno 111] Connection refused
2024-05-06 10:48:18.749 DEBUG (MainThread) [goodwe] Probing ES inverter at ew11.
2024-05-06 10:48:18.750 DEBUG (MainThread) [goodwe.protocol] Creating lock instance for current event loop.
2024-05-06 10:48:18.752 DEBUG (MainThread) [goodwe.protocol] Socket closed.
2024-05-06 10:48:18.759 DEBUG (MainThread) [goodwe.protocol] Sending: aa55c07f0102000241
2024-05-06 10:48:18.762 DEBUG (MainThread) [goodwe.protocol] Received error: [Errno 111] Connection refused
2024-05-06 10:48:18.767 DEBUG (MainThread) [goodwe.protocol] Socket closed.

I guess you are probing the wrong port at one stage.....

mletenay commented 5 months ago

I have messed the setup code, so v0.9.9.18 does not work properly. But the code in master should work, I was able to add it against mock server. There is potential problem with timeout waiting for connection (windows is 10s, but linux 5m), that will be fixed in next release.

Dwayneohara commented 5 months ago

I have a GW25-ET and when i use the integration my sems portal stops, Im very keen on a solution and willing to offer a monetary reward to the main folks that get a solution where I can use Home assistant with the graphs etc and Sems Portal , i need to manage what device in my house get used based on export amount / Excess PV, and being 3 Phase its complicated , most devices i have looked into are for single phase , Keeping fingers crossed for a breakthru

RalfWinter commented 5 months ago

Hello @Dwayneohara , we take all the money you can spare :-))) Just kidding....did you try to extend the polling interval to 180 seconds? In my case this helped a lot. You do that by going into settings-->integrations-->Goodwe Inverter-->configure, following window pops up: grafik Change the scan interval to 180.

mletenay commented 5 months ago

Trouble with the SEMS portal outages is that we do not have an explanation for that and it does not happen to everyone. For example, on my ET-10K (fw 1023) I have polling interval 5s and SEMS portal works just fine for the last 3 years.

Problem is that we do not know the specifics of the affected users. It might help if we collect inverter model, firmware version, WIFI module type and its firmware and local network params. Maybe we could identify some correlations then ?

Dwayneohara commented 5 months ago

Yes i tried a variety of polling intervals and it just kept breaking the Sems portal

Hello @Dwayneohara , we take all the money you can spare :-))) Just kidding....did you try to extend the polling interval to 180 seconds? In my case this helped a lot. You do that by going into settings-->integrations-->Goodwe Inverter-->configure,

RalfWinter commented 5 months ago

Yeah, good idea, @mletenay , but first we need to agree, what firmware version we report, I see multiple values (ET15k) depending where I look:

SolarGo app: grafik

Via Browser: grafik

Home Assistant: grafik

None of them correlates to your 4-digit FW-version.

Dwayneohara commented 5 months ago

GoodWe Support just upgraded me when i logged a ticket so now im on ....

GW25K-ET DSP FW .07.7068 from 6017
ARM FW 08.401 from 07.353 Dongle FW V1.2.1.18(Boot:V1.1.4)

Im not using the original Dongle which only had WI-FI, i replaced with the one that has an ethernet Cable Connection hoping it would solve the problem but it didn't. Goodwe WiFi/LAN Kit (GA10081-69-00P)

mletenay commented 5 months ago

I have created a Wiki page here https://github.com/mletenay/home-assistant-goodwe-inverter/wiki
Feel free to add you working and not working setups. Feel free to add new columns if any additional info might be handful.

Regarding appreciations, speaking for myself, I did the integration for my own needs and now doing it mostly for fun. So no motivation is needed. But if someone insists, here https://www.buymeacoffee.com/mletenay ;-)

RalfWinter commented 5 months ago

Very kind @Dwayneohara , but I benefit myself from the work of @mletenay , I will rather buy him a coffee ;-)

Dwayneohara commented 5 months ago

Very kind @Dwayneohara , but I benefit myself from the work of @mletenay , I will rather buy him a coffee ;-)

OK i bought him 10 Coffees from you and 5 from me

RalfWinter commented 5 months ago

But the code in master should work, I was able to add it against mock server.

I can't load master, I see master in the list, but when I select master in the drop-down menu the current version v0.9.9.18 goes grey for 3 seconds and appears again. Is there a manual way? Just drop the code into the custom-directory? grafik

mletenay commented 5 months ago

v0.9.9.19 was just released and it fixes the TCP setup, so it now works properly.

RalfWinter commented 5 months ago

Just installed v0.9.9.19: tcp is fixed, the integration is now connecting to port 502 to my Elfin EW11 Modbus/RTU to Modbus/TCP converter, however, all values are "Unavailable". I assume the structure to read the values is different between the original WIFI-dongles and the Elfin EW11. Here is the debug log, I am not sure if it sheds some light into the problem:

2024-05-09 09:15:49.218 DEBUG (MainThread) [goodwe] Connecting to none family inverter at 192.168.1.78:502.
2024-05-09 09:15:49.218 DEBUG (MainThread) [goodwe.protocol] Creating lock instance for current event loop.
2024-05-09 09:15:49.218 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.222 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.223 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021)
2024-05-09 09:15:49.224 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.225 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.226 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.226 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.230 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.230 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #1/10
2024-05-09 09:15:49.232 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.233 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.234 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.234 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.237 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.238 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #2/10
2024-05-09 09:15:49.239 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.240 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.240 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.241 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.244 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.244 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #3/10
2024-05-09 09:15:49.246 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.246 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.247 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.247 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.250 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.250 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #4/10
2024-05-09 09:15:49.255 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.255 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.255 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.255 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.259 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.259 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #5/10
2024-05-09 09:15:49.260 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.261 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.261 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.261 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.264 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.265 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #6/10
2024-05-09 09:15:49.267 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.268 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.268 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.268 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.271 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.272 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #7/10
2024-05-09 09:15:49.274 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.274 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.275 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.275 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.279 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.279 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #8/10
2024-05-09 09:15:49.281 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.281 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.281 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.281 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.286 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.286 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #9/10
2024-05-09 09:15:49.288 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.289 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.289 DEBUG (MainThread) [goodwe.protocol] Connection broken error.
2024-05-09 09:15:49.289 DEBUG (MainThread) [goodwe.protocol] Opening connection.
2024-05-09 09:15:49.293 DEBUG (MainThread) [goodwe.protocol] Connection opened.
2024-05-09 09:15:49.295 DEBUG (MainThread) [goodwe.protocol] Sending: READ 33 registers from 35000 (000100000006f70388b80021) - retry #10/10
2024-05-09 09:15:49.296 DEBUG (MainThread) [goodwe.protocol] EOF received.
2024-05-09 09:15:49.297 DEBUG (MainThread) [goodwe.protocol] Connection closed.
2024-05-09 09:15:49.298 DEBUG (MainThread) [goodwe.protocol] Max number of retries (10) reached, request READ 33 registers from 35000 (000100000006f70388b80021) failed.

It would be nice to get the Elfin EW11 to work, however, I will receive the 2.0 WIFI dongle shortly. I am happy to test more in case you want to put the effort into your code for fixing. By the way, the Elfin EW11 seems not to fix the broken SEMS-portal connection: when I connect the EW11, the communication LED on my GW-ET-15k starts to flash. So, in my mind the EW11 is a "one-way-road". Previous statement might be wrong: today my inverter's COM LED flashes even when there is no traffic from Home Assistant at all.

mletenay commented 5 months ago

Not directly related, but while investigating the SEMS problems I stumbled upon this very interesting page: https://smlx.dev/posts/goodwe-sems-protocol-teardown/

mletenay commented 5 months ago

Yes, it can take few hours to populate energy monitor. The stock HA integration does not allow polling time selection, you can use timer automation - see the docs or you can install the experimental version of the integration which exposes poll interval explicitly - https://github.com/mletenay/home-assistant-goodwe-inverter

mletenay commented 5 months ago

I have extended the diagnostic data of the inverter with couple of registers related to modbus and wifi dongle setup. It's a shoot from the hip, but maybe we can find some differences between environments where SEMS does work and where does not. So, please, update to latest HACS version, go to inverter's device, click on those 3 vertical dots and click on "Download diagnostics". It should download JSON file. I'm not interested in most of it, only the section at the end which looks like this is relevant:

    "inverter": {
      "model_name": "GW10K-ET",
      "rated_power": 10000,
      "firmware": "04029-10-S11",
      "arm_firmware": "02041-23-S00",
      "dsp1_version": 10,
      "dsp2_version": 10,
      "dsp_svn_version": 167,
      "arm_version": 23,
      "arm_svn_version": 237,
      "modbus_address": 247,
      "modbus_baudrate": 0,
      "log_data_enable": 0,
      "data_send_interval": 12,
      "wifi_or_lan": 4,
      "modbus_tcp_wo_internet": 1,
      "wifi_modbus_tcp_enable": 0,
      "api_remote_timeout_enable": null,
      "api_remote_timeout": null
    }
Dwayneohara commented 5 months ago

I have a GW25KW-ET

"inverter": { "model_name": "", "rated_power": 25000, "firmware": "04062-07-S00", "arm_firmware": "02020-08-S01", "dsp1_version": 0, "dsp2_version": 0, "dsp_svn_version": 7068, "arm_version": 0, "arm_svn_version": 401, "modbus_address": 247, "modbus_baudrate": 0, "log_data_enable": 1, "data_send_interval": 12, "wifi_or_lan": 5, "modbus_tcp_wo_internet": 0, "wifi_modbus_tcp_enable": 0, "api_remote_timeout_enable": null, "api_remote_timeout": null } } }

Dwayneohara commented 5 months ago

TCP doesn't work for me

JoshC1994 commented 5 months ago

Heres some data from my 2 inverters.

SEMS doesnt seem to update frequently, is there a better way to confirm SEMS data polling?

I have the default 5sec intervals set.

INV001 "inverter": { "model_name": "GW5048D-ES", "rated_power": 0, "firmware": "2424J", "arm_firmware": null, "dsp1_version": 24, "dsp2_version": 24, "dsp_svn_version": null, "arm_version": 19, "arm_svn_version": null, "modbus_address": null, "modbus_baudrate": 0, "log_data_enable": null, "data_send_interval": 12, "wifi_or_lan": 4, "modbus_tcp_wo_internet": 0, "wifi_modbus_tcp_enable": 3, "api_remote_timeout_enable": null, "api_remote_timeout": nul

INV002 "inverter": { "model_name": "GW5048D-ES", "rated_power": 0, "firmware": "2525I", "arm_firmware": null, "dsp1_version": 25, "dsp2_version": 25, "dsp_svn_version": null, "arm_version": 18, "arm_svn_version": null, "modbus_address": null, "modbus_baudrate": 0, "log_data_enable": null, "data_send_interval": 12, "wifi_or_lan": 4, "modbus_tcp_wo_internet": 0, "wifi_modbus_tcp_enable": 3, "api_remote_timeout_enable": null, "api_remote_timeout":

GIJOE-SA commented 5 months ago

@mletenay Thank you very much for still looking into this. This is my config which is not working currently. I have an automation which updates the inverter values ever 10 seconds and another automation which disables the automation for 3 minutes every hour (57 minutes past the hour to the new hour) which then allows the updates to SEMS cloud to go through.

"inverter": {
  "model_name": "GW6000ES20",
  "rated_power": 6050,
  "firmware": "04048-06-S06",
  "arm_firmware": "02020-08-S01",
  "dsp1_version": 6,
  "dsp2_version": 6,
  "dsp_svn_version": 6606,
  "arm_version": 8,
  "arm_svn_version": 362,
  "modbus_address": 247,
  "modbus_baudrate": 0,
  "log_data_enable": 1,
  "data_send_interval": 12,
  "wifi_or_lan": 4,
  "modbus_tcp_wo_internet": 0,
  "wifi_modbus_tcp_enable": 0,
  "api_remote_timeout_enable": null,
  "api_remote_timeout": null
}
mletenay commented 5 months ago

It's a complete wild guess, but the only relevant difference seems to be the "log_data_enable" register. On problematic environments it seems to be set to 1, e.g. on mine it is 0 and SEMS works for me.

If you dare, let's try to change it to 0 and observe. (I believe it should be harmless operation.) You can set it e.g. via this kind of script (use your inverter device id)

alias: Set reg 47005
sequence:
  - service: goodwe.set_parameter
    metadata: {}
    data:
      device_id: ---your---device---id
      parameter: modbus-47005
      value: 0
mode: single

If the experiment will yield nothing, set it back to 1 just to be sure ...

GIJOE-SA commented 5 months ago

@mletenay Unfortunately still having the same issue after changing it to 0 on my side.

roboco6 commented 5 months ago

Hello @RalfWinter,

I cannot find settings-->integrations-->Goodwe Inverter-->configure.

What am I doing wrong?

Bildschirmfoto 2024-05-29 um 23 47 51 Bildschirmfoto 2024-05-29 um 23 13 18

Thank you in advance!

Rasmus

Hello @Dwayneohara , we take all the money you can spare :-))) Just kidding....did you try to extend the polling interval to 180 seconds? In my case this helped a lot. You do that by going into settings-->integrations-->Goodwe Inverter-->configure, following window pops up:

Dwayneohara commented 5 months ago

Got mine working, and the Magic 127second Polling interval suggested on some of the forums is stable for me , Just like @roboco6 screen shots above i'm connected but sadly the import / export values never work, is there a trick to getting them to work ?

garv3 commented 5 months ago

@roboco6 Not sure, but maybe this is only available with the experimental version of the integration. Which one did you install?

5erv3 commented 5 months ago

@garv3 There is another bug for this issue, still unresolved unfortunately: https://github.com/home-assistant/core/issues/105061