Universal Solar Inverter over Modbus RS485 / TCP custom_component (Growatt, Sofar, SolaX, Solis)

Good day.

Thank you, you were right. Error in WS settings.

Kudos to your work.

Yes was able to increase to 35A on the retrofit, but reduced it to 30A as that is more than sufficient with a 400V battery. Possible a future firmware update could change it.
I had a red screen of death on the windows system so will take a while to sort it out. Possibly a memory problem, I used 20 second updating but there are a whole lot of measurements I need to switch most off I thing as only a few are relevant.Does HA fail gracefully if its disc gets full?

My DB files for Home Assistant is under 2.5GB so you shouldnā€™t run out of storage?

Hi community, first of all many thanks for this Modbus add-on. I managed to get readings form X3-Hybrid 10.0-D G4 (firmware 3.001.02) using Pocket WiFi, by connecting Rpi 4 to the inverter AP. Seems to work fine calling 5.8.8.8/502. However by calling inverterā€™s IP/502 I had lost connection in the morning and the data were nonsense.
But there is a problem. Updates stops while inverter losses connection with router=internet. Any idea why?
Also can you make a checkbox preventing any EPROM writes by this add-on? Since the documentation on G4 is unclear I am afraid of changing something and losing warranty/ shortening inverterā€™s lifespan.

Iā€™m not sure if you are getting this Integration mixed up with the official SolaX Power - Home Assistant one?

My Modbus Integration / custom_component doesnā€™t connect via the Pocket Lan / WiFi. The Pocket Lan / WiFi does not expose Modbus. If your Inverter is a Gen4 you can only connect to it via an RS485 - USB adaptor or a Waveshare type device.

There is no need for a checkbox, the Modbus Integration wont make any changes to your Inverter unless you make a change yourself.

please, what is the difference between solar energy and solar yield?

Todayā€™s Yield includes the battery, so it could include any energy stored from yesterday or from Grid charging during the night.

Solar Energy is just what your PV Generated today.

1 Like

OK. Recovered from crash ( possible overheated cpu) and updated const and init files.
now most sensors say unavailable, not sure why yet.
I think i know why I got 0deg from hybrid, it looks like it outputs this while idling or waiting.
Also I added two integrations of solax_modbus one for each inverter, and renamed them, but I think they both send data to the same sensor id in database? do I need to remame each sensor id or is there a better way to do this?
both inverters share the same rs485>ethernet waveshare converter with different addresses.(3, 4)
I polled one at 29 secs and one at 31 secs to minimise clashes on the bus.
I will check more in the morning when the inverters wake up.

Both inverters should have different identities in the database. The name you give to the inverter initially should be different. I am not sure if a later rename will work. If the problem persists, I can try to simulate this by declaring my inverter twice.

So add extra integration, and rename before configure? I will try that. Eureka that did it! rename as you create it. Also probably did not help as I did not originally use underline instead of spaces in name.

One other remark: our Wiki page says:

  • In the unlikely case you have multiple inverters connected to one RS485 adapter, you may need to modify the waveshare multi-host flag (untested). The system will increase the gap between messages, which will slow down the communication throughput. Make sure your polling interval is long enough (the act led should not light up all the time).

Indeed, choose a new unique name in the first popup dialogue when creating a new instance of the integration. Renaming later has never been tested afaik.

Yes i did see that and had it set, all seems to be working now, can see both inverters.
@wills106 had a reply from solax.com and my retrofit is actually Gen2 the hybrid is Gen4, rather annoyed as they are not compatible for running as master/slave. Both supplied in August so must have been old stock.

The retrofit is actually configured as a Gen3 within the Integration. On some models they have funny naming. Some Gen3 X3 identify as a X3-Hybrid-G1/G2 in the cloud but are in fact Gen3 Inverters.

Thatā€™s a bit rubbish if you got them at the same time, couldnā€™t you ask for the Retrofit to be swapped out?

@arwooldridge
The Retrofit donā€™t have any PV input do they? They are just an AC coupled battery Inverter?

I guess the developement is incremental and the line between Gen2 and 3 is blurred, but the ā€˜Solax.comā€™ man did say mine was Gen2.
I canā€™t believe they did not make the new ones backward compatible though re master/slave connectivity. its the one thing you might want to do is add a further inverter/storage in future.
Looking at the sensors all seems ok in the retrofit except no diagnosics apart from inverter and battery temp. in the hybrid all looks ok except inverter import power today reports 35kw vs 0kw reported via LCD.
it should be zero as I am awaiting batteries for it and its just running as PV inverter. Also diagnosics are not available except temperatures. others show ā€œthis entity is unavailableā€
There is an unlock button on the hybrid integration but not on the retro one, should I unlock this to see more diagnostics?

There is a different amount of entities between the two different Generations.

Can you share a screen shot?

The Unlock button is to allow you to write to the Inverter if you havenā€™t used the cloud portal.


applies to all diagnostic entities except temperature in both integrations. these windows pop up when you press the eye icon next to the unavailable sensors.

Most of them are disabled by default.

Did you press on the +x entities not shown first?
If you want to see any of them you can go into Advanced settings and turn them on. They take about 30s for the data to start to come through.

On my Gen3 Hybrid I have about 43 ā€œSensorsā€ disabled by default in addition to 16 Diagnostic entities disabled by default.

I am really receiving data using this Modbus addon with G4 pocket WiFi via TCP. Perhaps this addon is intercepting data sending to Solax web. When the data stop updating in addon I have to restart router and HA. I am new to HA, bud should I share some data, to help improve this project?