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

Can you share a screenshot of how you have set the configuration page when loading the Integration?

It might be easier if you raise an issue on my GitHub, it’s a little bit difficult keeping track of the conversation on here as there are other people’s conversations in between the posts.

This part of the code has not yet been prepared for the AC model
Should be simple,
In the most recent git change, I initialized invertertype to 0, so this crash would not occur anymore

I don’t normally share Pre-releases on here, but I thought the following might be of Interest!
If installing through HACS you will need to enable the Beta option.

As it’s Pre-release things might not work exactly how they should, so be prepared to go back to a previous version!

0.5.0b6 Pre-release

Pre-release:

First attempt at complete setup other than EPS modes based off the Serial Number. (Thanks for everyone who submitted serial Numbers and Charge/Discharge Values over at #26)

I would recommend removing the Integration from the Integration page before updating.
If you rename it the same after re-adding it, your sensor names should not be affected.

On first try do not set any of the tick boxes for Machine type.
ie Gen2 X1 or Gen3 X3 etc, leave them all blank.

Charge / Discharge rate now set based on Serial.
So SK-SU & SK-TL no longer share 50A the SK-TL should now self configure to 100A

“Total Solar Energy” for the Gen2 is on by Default other than for the earlier U50EC which is removed from the Integration.
“Total Solar Energy” Can now be used for the Energy Dashboard on the Gen2

Gen2 Users should now have a complete set of sensors for the Energy Dashboard other than the U50EC

X1-AC has been setup the same as a normal Gen3 X1 for now. All the PV related sensors will either show 0 or Unknown. This will be later cleaned up.

If the Integration fails to load with the following error in your log “unrecognized inverter type - serial number : {your_serial_number_here}”
Please see #26 providing the details asked for.

Massive thanks to @infradom for helping in achieving my goal of moving away from Tick Boxes on Integration Setup.
I really appreciate all the help you have provided :1st_place_medal:

I’m working now for 3 days with this 0.4.13a
many many thanks, this is a really great work

the system gives me this report:
2022-04-11 18:54:37 WARNING (MainThread) [homeassistant.util.async_] Detected blocking call to sleep inside the event loop. This is causing stability issues. Please report issue to the custom component author for solax_modbus doing blocking calls at custom_components/solax_modbus/init.py, line 242: return self._client.read_input_registers(address, count, **kwargs)
but I see no problem…

only one thing : the “number.solax_export_control_user_limit” retourns 900, but it is correct set to 9.000
the dimension here is (10W), not (W)
no problem, its cosmetic…

That’s a known issue. I am guessing you are using a RS485 - USB adaptor?
It only affects the Modbus Serial. If you switched to a RS485 - Ethernet adaptor it would go away.

Edit: Other than filling your log at the moment, I believe it’s only cosmetic. We need to relook into that issue.

What Inverter are you using? If your scaling is not correct?

it’s a Solax X3-Hybrid-10.0-D G4
when I key in the inverter display, there are 6 digitis, so it is 009000
when I open settings the solax-andoid app, i see 9000
when i open settings in the solax-cloud web browser, I see : user setting (10W) …900
and the same we get via modbus
and yes, Im using a RS485Modbus-USB stick

Strange, I also have a hybrid X3 gen4 and my export control user limit shows a correct number
I am using the latest 0.5 beta version

ha, thats really strange…
in earlier years we said, electricity is magic…:slightly_smiling_face:

I take it your Inverter Serial number starts H34T you don’t need to share the full thing.

I just want to make sure we don’t have a new Variant of the Gen4 X3

All known Gen4 X3’s so far start like:
H34T08H - Hybrid G4 8kW 3phase
H34T10H - Hybrid G4 10kW 3phase
H34T15H - Hybrid G4 15kW 3phase

it is H34T10H

Just checked the code between 0.4.13a and 0.5.0b6 and they are the same for the factor correction on export_control_user_limit

When you setup the Integration on 0.4.13a you did select the Gen4 X3 Tick Box?

shure, i did, and all other things are fine (so far I see…)

tried now to set 9000 (developer tools)
then I get in the inverter 90.000

@mudshurko : If I understand it right, even the SolaxCloud website shows the export-control-user-limit also in a faulty way.
Maybe your inverter needs a software upgrade ? What are your software version numbers (on the display as well as those shown in HA)

hmmmm
where is this ? cannot see on display ?
in HA I see the Firmware Version Inverter Master, this is 15
but is this the software version ?
sorry

I did not express myself clearly. My inverter shows:

On the device display:
ARM: 2.03
DSP: 2.07

In HomeAssistant, the hidden fields show:

Firmware version inverter master : 10
Firmware version manager: 3
Firmware modbus TCP Major: 0
Firmware modbus TCP Minor: 6

Another owner @stringkillersa reported
Firmware Version Inverter Master: 6
Firmware Version Manager: 7
Firmware Version Modbus TCP Major: 0
Firmware Version Modbus TCP Minor: 6

this is my configuration:
Firmware Version Inverter Master: 15
Firmware Version Manager: 14
Firmware Version Modbus TCP Major: 0
Firmware Version Modbus TCP Minor: 6
ARM: 2.03
DSP: 2.07

Thanks, seems to be a more recent version.
We checked the Gen4 protocol manual, and there seem to be no changes for that parameter.
Can you confirm that the solaxcloud website also shows the wrong scaling?
In the HA user interface: do both the slider to modify the export_control_user_limit as the sensor value behave badly

see the screenshot of the cloud website configuration


you see: user setting (10W), and the number is 900

I tried yesterday to use the slider in the export_control_user_limit
there are 500 W jumps
900 is so not possible
when I tried 9000, I got 30.000 (maybe this is the maximum)
the 30000 then are also shown in http://homeassistant:8123/config/devices - Solax
when I changed this on the inverter display back to 009000, I saw again 900 in HA

yes, this is very strange
but it is no problem- for me
but I understand, that you will clarify this mysterium

Thanks,
For better follow-up, I have created an issue #58 on Github

PS: I may not be able to spend much time on the solax integration this week

Hi Will / Mark

I opened an issue X1-AC - Unknown · Issue #59 · wills106/homsassistant-solax-modbus · GitHub I think it will be easier to follow/help there.

Apologies if this isn’t the best way