Jump to content

Goodwe 5048ES Protocol reverse engineering


gbyleveldt

Recommended Posts

On 2021/04/23 at 1:45 AM, PowerVan said:

That is something that the battery supplier and inverter supplier must sort out between themselves to provide a solution. You have to get the 2 parties to talk to each other. There is very little that you as client (or third party) can do. 

Yes i have tried that.

No luck there!

Thanks though! 

Link to comment
Share on other sites

  • 3 months later...
  • 3 weeks later...
On 2021/02/05 at 9:23 PM, PowerVan said:

Awesome work people! Seems there are various working solutions to read data from the inverter. 

 

How about writing data/settings to the inverter? - 

Using PV Master app, a user is able to change inverter modes and "advanced settings". Has anyone been able to reverse-engineer a way to write/change settings on the inverter without using the app? 

Reason I'm asking is, scheduling functions in the app are rudimentary. I would dearly like to change modes and SOC requirements based on a schedule or time.  

@PowerVan I am just working through this at the moment with the GoodWe SBP-Series of AC inverters.

It is daunting at first but a couple of pointers i can give you

1) Wireshark is your friend - i havea cisco switch at home so can port mirror rather than trying to capture on a phone - but the same concept.

2)Have a read of this forum thread page-6

3) Use Node Red which one of the users on that thread does and he posts the information to change the charge/discharge rate etc (unfortunately this does not work for my inverters so still working through that)

4) Have a read of this document which explains the AA55 protocol that GoodWe use - is appears to be quite old and not complete but it will give you a lot more info on what is happening Microsoft Word - Inverter.VS.EzFamily_PROTOCOL_V1.2.1_Customer.doc (yamasun.com.tw)

5) Essentially Goodwe have a front end protocol that uses these byte strings of aa55 and then the next two bytes are a source (you) and destination (inverter) identifier (you assign both of these) and when the inverter responds it sends back with its destination address as the sender and your source as the destnation i.e. flips the sender and receiver.

6) The initial comms with the inverter is a query to ask it for model number, serial number, version etc. (described in the linked document above)

 

After this you get into Modbus and are essentially asking the inverter to send you a series of modbus registers.

This is well described here 

GitHub - MiG-41/Modbus-GoodWe-DT: Protocol description for modbus Goodwe DT inwerters

(Although that is Modbus RTU (RS485) )

Once you undrstand these sorts of commands then using the DOc that i linked above you want to look for 

0x03 in the debug of the PV Master app - this is the command to execute/write data to the inverter

I am just working through all of this at the moment

 

Craig

 

Link to comment
Share on other sites

On 2021/04/08 at 7:31 PM, GC62 said:

Hi guys.

i was amassed to find people that actually do what you do!!

I was Googling for this inverter communication protocol when i saw your forum and now i have a hope that i might can get some help.

I convinced my son to buy the Goodwe 5048ES     because of the 5Kw backup capacity it has.

I ordered from China a LiFePo4 batterie bank in the form of Four 10Kh batteries From Felicity Solar. (Model 48200)

I installed them in parallel and i have a 40Kh bank at48v nominal.

The problem is that the inverter is not recognize the  BMS of the batteries and there is no communication happening.

When i go to the App i self define the battery but the discharge depth is 60% Max. That means the 40% is been never used and the inverter is turning to the grid starts importing power.

I contacted the supplier to find a solution to this only to find out that they need to have the communication protocol the inverter is using.

Goodwe is not willing to hand out any info when i called them.

I hope that someone here can help. My knowledge in electronics is nil. 

20210212_192228.thumb.jpg.71920ac4fe7a2ac7bf64d1337dd6988d.jpg

 

Have a look at this forum post https://secondlifestorage.com/index.php?threads/high-voltage-hybrid-inverter-gw6000-eh-with-ev-battery-chevy-volt.10300/page-6

Essentially the Inverter talks over a CANBus intrface to the batteries - these guys have worked out how to reverse engineer this to make the inverter think it is talking to a supported battery type.

If you email the author directly i am sure he will help out with some code etc

Craig

 

 

Link to comment
Share on other sites

  • 5 months later...
On 2021/02/13 at 9:52 AM, Pandarojo said:

I need to get live data from the inverter and send it to an Allen Bradley plc via RS232. I thought I could get it using an esp8266 or similar. My programming knowledge is very limited, but I think a friend of mine could help me adapt your code if you could share it. Would you like to share your code? I just need to get the inverter data, then I prepare it and send it to the plc.

 

Hello you have already written the protocol via RS232 for Allen Bradley, I wrote the protocol, asci protocol for PLC Micrologix 1400, I communicate multiplexed by 1 RS232 port with three Easun 5kW converters. Vlastik

Link to comment
Share on other sites

Just want to add a short update on the goodwe home assistant integration.

Later today Home Assistant 2022.02 will be released which now have the official goodwe integration included with Home Assistant by default!!

Also a month or 2 ago, the following support was added:

1. Setting inverter mode, so can change between general and backup mode directly from Home Assistant

2. Basic eco modes were added as well so you can force discharge or charge batteries to specific SoC %s which is really awesome for those countries where you have different rates on the grid and also payback.

Link to comment
Share on other sites

  • 5 months later...
On 2022/02/02 at 9:19 AM, Tinuva said:

Just want to add a short update on the goodwe home assistant integration.

Later today Home Assistant 2022.02 will be released which now have the official goodwe integration included with Home Assistant by default!!

Also a month or 2 ago, the following support was added:

1. Setting inverter mode, so can change between general and backup mode directly from Home Assistant

2. Basic eco modes were added as well so you can force discharge or charge batteries to specific SoC %s which is really awesome for those countries where you have different rates on the grid and also payback.

Hi @Tinuva

I revisited this thread after a long time, because I am finding, for various reasons, a greater need to monitor my system, or certain parameters of the system.

But I may have stumbled on more than I wanted here. Does Home Assistant give me the ability to control the inverter mode, and especially the Eco Mode settings, remotely?

And does it only report the inverter data, or does it write the data way so that I can I build up something like a CSV per day? This is what I really need, so if it can't do that, I am going to have to use one of the methods described above as a starting point.

One thing that puzzles me in all of this discussion is that ISTR that the Goodwe only allows a small number of wi-fi connections at a time. SEMS will take up one, PV Master another (and that does not seem to persist, which may be a "feature" in the app). If I wanted to continually monitor my inverter, that implies 3 consecutive connections.

I had been led to believe that Goodwe inverters in general were an impenetrable mystery. This thread went some way to debunking that. The final nail in the coffin was getting Freedom Won batteries which are able to write settings away in the Goodwe to ensure they get EXACTLY what they want. It doesn't need to be a case of put it into self-define mode and very carefully enter the parameters (and forgo comms). The FW does it all, and I am wondering why other battery manufacturers haven't gone this route instead of leaning on self-define or taking the built in settings that are closest.

 

Link to comment
Share on other sites

On 2022/07/28 at 7:37 AM, Bobster. said:

Hi @Tinuva

I revisited this thread after a long time, because I am finding, for various reasons, a greater need to monitor my system, or certain parameters of the system.

But I may have stumbled on more than I wanted here. Does Home Assistant give me the ability to control the inverter mode, and especially the Eco Mode settings, remotely?

And does it only report the inverter data, or does it write the data way so that I can I build up something like a CSV per day? This is what I really need, so if it can't do that, I am going to have to use one of the methods described above as a starting point.

One thing that puzzles me in all of this discussion is that ISTR that the Goodwe only allows a small number of wi-fi connections at a time. SEMS will take up one, PV Master another (and that does not seem to persist, which may be a "feature" in the app). If I wanted to continually monitor my inverter, that implies 3 consecutive connections.

I had been led to believe that Goodwe inverters in general were an impenetrable mystery. This thread went some way to debunking that. The final nail in the coffin was getting Freedom Won batteries which are able to write settings away in the Goodwe to ensure they get EXACTLY what they want. It doesn't need to be a case of put it into self-define mode and very carefully enter the parameters (and forgo comms). The FW does it all, and I am wondering why other battery manufacturers haven't gone this route instead of leaning on self-define or taking the built in settings that are closest.

 

The built-in integration can change between all modes except eco-mode. For that you need the custom integration and can install it using HACS.

As for CSV output...well not sure to be honest. I'd say easiest is then to let home assistant write the metrics to influxdb and use Grafana to show you the per day data in whichever way you prefer. Just more work.

Link to comment
Share on other sites

  • 9 months later...
On 2022/07/31 at 9:30 AM, Tinuva said:

The built-in integration can change between all modes except eco-mode. For that you need the custom integration and can install it using HACS.

As for CSV output...well not sure to be honest. I'd say easiest is then to let home assistant write the metrics to influxdb and use Grafana to show you the per day data in whichever way you prefer. Just more work.

@Tinuva you wrote that the built-in integration can change between all modes. Are you saying I can use this to stop and start my converter from collecting solar power when energy prices are negative? 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...