GoodWe Solar PV Generation Capture

Moderator: leecollings

CodeItAway
Posts: 27
Joined: Tuesday 11 February 2014 21:44
Target OS: Linux
Domoticz version:
Contact:

Re: GoodWe Solar inverter logger based on ESP8266

Post by CodeItAway »

free_nsc wrote: Monday 04 September 2017 0:48
CodeItAway wrote: Tuesday 04 July 2017 21:24 I've just finished a project to poll the GoodWe inverters using an ESP8266 using the RS485 connection (under the WIFI module). The ESP polls the inverter every second and uploads the data to Pvoutput (optional) and MQTT (optional). Using node-red I convert the MQTT messages and upload the data to Domoticz. This works stable for multiple weeks.
The connection to the GoodWe website is no longer needed. More information can be found on the Github page
Excellent work. I got the rs232->rs485 and flashed your Goodwe image. All seems to be set up and it appears that messages are read from the Inverter. See the log below, for some reason it looks like it is not confirming the address and so we are not requesting any info - is this normal?

Code: Select all

Sending discovery
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x0 0x0 CRC high/low: 0x2 0x29 .
MQTT send status: 1
Parsing incoming data with length: 0x17 . 0xAA 0x55 0x7F 0xAB 0x0 0x80 0x10 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x6 0x3D .
CRC received: 0x6 0x3D , calculated CRC: 0x6 0x3D .
CRC match.
New inverter found. Current # registrations: 1
SendAllocateRegisterAddress address: 1
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x1 0x11 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x1 CRC high/low: 0x5 0xC0 .
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 1.
MQTT send status: 1
I want to use these values to feed into devices in Domoticz, I know you used nodeRed, could you share your flow please?
I need to figure this part out myself but some guidance would be appreciated :shock:
I guess, also I could also change the code to publish into Domoticz using the http requests but I'd like to try the mqtt as I didnt have any previous experience of it before.
After sending the inverter an ID it has to respond with an acknowledge. Your inverter does not seem to do that. Is there any logging after this? Or does this keep repeating itself?
free_nsc
Posts: 36
Joined: Friday 19 December 2014 0:09
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: GoodWe Solar inverter logger based on ESP8266

Post by free_nsc »

CodeItAway wrote: Monday 18 September 2017 11:51
After sending the inverter an ID it has to respond with an acknowledge. Your inverter does not seem to do that. Is there any logging after this? Or does this keep repeating itself?
No there is nothing after that just loops around:

Code: Select all

Sending discovery
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x0 0x0 CRC high/low: 0x2 0x29 .
MQTT send status: 1
Parsing incoming data with length: 0x17 . 0xAA 0x55 0x7F 0xAB 0x0 0x80 0x10 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x6 0x3D .
CRC received: 0x6 0x3D , calculated CRC: 0x6 0x3D .
CRC match.
Already registered inverter reregistered with address: 1
SendAllocateRegisterAddress address: 1
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x1 0x11 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x1 CRC high/low: 0x5 0xC0 .
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Sending discovery
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x0 0x0 CRC high/low: 0x2 0x29 .
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Sending discovery
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x0 0x0 CRC high/low: 0x2 0x29 .
MQTT send status: 1
Parsing incoming data with length: 0x17 . 0xAA 0x55 0x7F 0xAB 0x0 0x80 0x10 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x6 0x3D .
CRC received: 0x6 0x3D , calculated CRC: 0x6 0x3D .
CRC match.
Already registered inverter reregistered with address: 1
SendAllocateRegisterAddress address: 1
Sending data to inverter(s): 0xAA 0x55 0xAB 0x7F 0x0 0x1 0x11 0x31 0x31 0x30 0x30 0x30 0x53 0x53 0x4E 0x31 0x35 0x37 0x30 0x30 0x30 0x38 0x39 0x1 CRC high/low: 0x5 0xC0 .
Not asking inverter with address: 1 for information. Addressconfirmed: 0, isOnline: 0.
MQTT send status: 1
Bochelork
Posts: 12
Joined: Sunday 26 November 2017 12:53
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by Bochelork »

Hi, I'm new with domoticz. Just adding my devices on my Pi Zero. Is the build in 'Goodwe solar inverter via Web API' still working?

In my logs I only see: GoodweAPI Worker started.

During the night it seems to have added a device, but it was always offline this day (Inverter is working fine).

If I use my browser to see http://www.goodwe-power.com/Mobile/GetM ... rterSerial I get the correct data, but my dashboard just shows the last update from around 2 a.m. and the header blinks red as it's offline...

Edit: It was the sunset/sunrise. After reinstalling domoticz I didn't set my location. So it only captured data between midnight and 2 a.m.
Ralfie
Posts: 2
Joined: Sunday 03 June 2018 2:50
Target OS: Raspberry Pi / ODroid
Domoticz version: 2023.2
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by Ralfie »

About 6 months ago I added my GoodWe inverter as a device in Domoticz using the Goodwe solar inverter via Web API.
This has been working fine until June 2nd 2018.
On June 2nd no data visible in Domoticz. In Domoticz log every 5 minutes Error: GoodweAPI: Invalid user data received!
It has probably something to do with the move to the European server https://eu.goodwe-power.com/
In Domoticz, in the device menu, the only parameter I can change is the Goodwe-power username. But that hasn't change.
Is there a solution for this problem?

Domoticz V3.8153 (stable) is running on a Raspberry Pi 2b. Raspberry Pi has Linux raspberrypi 4.14.43-v7+ #1115 SMP Fri May 25 14:27:48 BST 2018 armv7l GNU/Linux
pinhead
Posts: 6
Joined: Thursday 18 July 2013 13:24
Target OS: -
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by pinhead »

Exact the same issue here to. Since June 2nd the Domoticz Goodwe webapi is not working anymore.
I also think the reason is that they added a European server and made some changes to the login procedure.
So probably more (European) domotics users who has goodwe inverter and is is using the webapi will have the same problem.

Hopes this will help to solve the problem soon.
Marcjeok
Posts: 37
Joined: Wednesday 01 November 2017 19:12
Target OS: -
Domoticz version:
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by Marcjeok »

Same Problem here :cry:. Is there an update coming to solve this issue?
jenske
Posts: 1
Joined: Sunday 03 June 2018 15:57
Target OS: -
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by jenske »

Have the same,what is the solution Help :oops:
jjbstolk
Posts: 7
Joined: Monday 09 December 2013 22:23
Target OS: Linux
Domoticz version: Beta's
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by jjbstolk »

Same here, no more GoodWe logging :-(

I noticed that the GoodWe to PVOut script is already updated: gw2pvo
Domoticz on RPI3
RFXCom 433 USB
klaaspiet
Posts: 34
Joined: Tuesday 09 January 2018 8:29
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Harlingen
Contact:

Re: GoodWe Solar PV Generation Capture

Post by klaaspiet »

Have the same problem,does anyone have a solution.
louisL
Posts: 6
Joined: Thursday 11 August 2016 23:14
Target OS: Linux
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by louisL »

Ralfie wrote: Sunday 03 June 2018 3:03 About 6 months ago I added my GoodWe inverter as a device in Domoticz using the Goodwe solar inverter via Web API.
This has been working fine until June 2nd 2018.
On June 2nd no data visible in Domoticz. In Domoticz log every 5 minutes Error: GoodweAPI: Invalid user data received!
It has probably something to do with the move to the European server https://eu.goodwe-power.com/
In Domoticz, in the device menu, the only parameter I can change is the Goodwe-power username. But that hasn't change.
Is there a solution for this problem?
Not yet, I will have to update the code to support the new server setup (I wrote the existing code). I am not sure when I will get to it though. The changes seem to be pretty sumple and obvious: we need a new input for the region (EU, AU, global) on the hardware menu and most likely change transport from http to https. I need to check if more is required, probably not as the manual calls to the API still work with these changes. It may be worth checking to see how the app finds the region (it may be possible to do that automatically).
BR, louis
jjbstolk
Posts: 7
Joined: Monday 09 December 2013 22:23
Target OS: Linux
Domoticz version: Beta's
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by jjbstolk »

As a workaround (thanks to my colleague) I have nog used gw2pv to upload my goodwe stats to PVOutput.org. Then I used the PVOutput.org (input) plugin to download the data into Domoticz. The I now have total PV information, not hourly based but at least I have some info in Domoticz.

Thanks for your response louisL, hope you can fix this in the near future.
Domoticz on RPI3
RFXCom 433 USB
Hcroij
Posts: 24
Joined: Sunday 27 November 2016 16:36
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by Hcroij »

Dear Stolk
Could you explain your workaround a bit more?

If poss. A step by step manual? I use domoticz but thats all my knowledge about it.

By the way. My goodwe inverter is connected through wifi.
Regards
HENK
jjbstolk
Posts: 7
Joined: Monday 09 December 2013 22:23
Target OS: Linux
Domoticz version: Beta's
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by jjbstolk »

@hcroij have you read the info on the gw2pv on githb? How to use the native pvoutput plugin is described here on the domoticz website.
Domoticz on RPI3
RFXCom 433 USB
Hcroij
Posts: 24
Joined: Sunday 27 November 2016 16:36
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by Hcroij »

Thx I will take a look at it
Henk
wanegedoe
Posts: 2
Joined: Tuesday 12 June 2018 21:50
Target OS: Linux
Domoticz version:
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by wanegedoe »

Hi,

I am new to this forum; although not to Domoticz.
The JSON data can be retreived though https://eu.goodwe-power.com/Mobile/
By browsing the classes2.dex file in the .apk of the mobile app you can find much more functions that are used by the mobile app.

The following url will give PV voltage and current, net voltage, frequency, etc. in JSON format.
https://eu.goodwe-power.com/Mobile/GetM ... stationId=

I added it to my local LUA script. Nice to have it in Domoticz. :D
ricvee
Posts: 24
Joined: Wednesday 13 May 2015 9:05
Target OS: Linux
Domoticz version: latest
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by ricvee »

Hi wanegedoe,

Will you please share that local LUA-script with us, and explain how it works?

Thnx
louisL
Posts: 6
Joined: Thursday 11 August 2016 23:14
Target OS: Linux
Domoticz version:
Contact:

Re: GoodWe Solar PV Generation Capture

Post by louisL »

louisL wrote: Wednesday 06 June 2018 20:26
Ralfie wrote: Sunday 03 June 2018 3:03 About 6 months ago I added my GoodWe inverter as a device in Domoticz using the Goodwe solar inverter via Web API.
This has been working fine until June 2nd 2018.
On June 2nd no data visible in Domoticz. In Domoticz log every 5 minutes Error: GoodweAPI: Invalid user data received!
It has probably something to do with the move to the European server https://eu.goodwe-power.com/
In Domoticz, in the device menu, the only parameter I can change is the Goodwe-power username. But that hasn't change.
Is there a solution for this problem?
Not yet, I will have to update the code to support the new server setup (I wrote the existing code). I am not sure when I will get to it though. The changes seem to be pretty sumple and obvious: we need a new input for the region (EU, AU, global) on the hardware menu and most likely change transport from http to https. I need to check if more is required, probably not as the manual calls to the API still work with these changes. It may be worth checking to see how the app finds the region (it may be possible to do that automatically).
BR, louis
The GoodweAPI code is now updated in GIT (development branch). So my Goodwe code in Domoticz works again. Please note that you will have to update the settings for the converter to set the location (Europe, Oceania or global for people not served by a specific region). This will help those that can compile Domoticz.

When I have some more time I will implement the new API to get the new "current" data like voltages of strings etc. Thanks for the hint for the new API. I have been interested in adding temperature and string details for some time. To be continued....
klaaspiet
Posts: 34
Joined: Tuesday 09 January 2018 8:29
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Harlingen
Contact:

Re: GoodWe Solar PV Generation Capture

Post by klaaspiet »

Thanks louisl it works great again :D :D
ricvee
Posts: 24
Joined: Wednesday 13 May 2015 9:05
Target OS: Linux
Domoticz version: latest
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by ricvee »

Hi louisL,

can you explain the steps to update?

Thnx
ricvee
Posts: 24
Joined: Wednesday 13 May 2015 9:05
Target OS: Linux
Domoticz version: latest
Location: Netherlands
Contact:

Re: GoodWe Solar PV Generation Capture

Post by ricvee »

I have updated the files /hardware/GoodweAPI.cpp and /hardware/GoodweAPI.h
What is the next step?
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest