Custom Component: Generic SunSpec modbus TCP monitoring (inverter, meter etc)


I dont have realy not so much Solar capacity. A total of 22 solar panels. APSystems, is a microinverter technology. A number of panels share an inverter which is placed behind the panels. So no string where 1 large inverter is used.
I send you the link with the details which I found on the internet, for example YC600 (2 panel inverter), I have also 5 QS1 (4 panel inverters), al reachable via a unique modbus address.
Example of the ECU:


Would anyone here happen to have tried getting this workig with a Fox ESS Inverter? I am trying all sorts of ways at the moment. the inverter has SunSpec MODUS, on either TCP or RS485. I can see port 502 open on the IP on my LAN but having no joy at all.

Same issue, do you have already a solution?

@CJNE I’m having this issue when I try to add a ‘Read model’ from the dropdown. Worked fine on setup (with 160), but when I back to add anything else (or change the Scan interval), I get:
User input malformed: 160 is not a valid option for dictionary value @ data['models_enabled']

I note that I actually can’t ‘unselect’ 160… even when unticked in the dropdown, it still appears in the list (though I do want to keep it).

Loving this component… has made it very easy to get string (MTPP) level data from my Fronius inverters! Thanks @CJNE !

Is anyone else using with Fronius? I’m getting everything I need at the inverter level (I have two Fronius Primo 5.0 inverters), using slave ID 1 and 2 (first and second inverters), but can’t seem to access the “system-wide” data (e.g. import/export to grid etc.). I tried slave ID 0 (just times out) and 200 (does nothing) based on reading up on MODBUS, but no luck. Any ideas?

After having a dig through the Fronius Modbus specs, I found my Fronius Smartmeter at slave ID 245.

1 Like

I do note that I can work around this issue by deleted the component and then re-adding with the same name (and revised setting)… but would be nice to get fixed for easier on-the-fly changes.

I have one Symo inverter and two SmartMeter → ID 240 and 241

1 Like

Hi there, thanks for your great work!
I use a fronius symo gen24 inverter. Using model 160 I have a strange behaviour with MPPT 2 and 3. They represent the battery. Fronius documents, hat while charging or discharging the other data is set to 0. This leads in invalidating the data in HA. Can that be changed, so the data stays valid in HA?
Maybe someone else has the same issue?

The other issue, not being able to reconfigure the integration is already discussed. Maybe that’s a quick one?


1 Like

I used the integration to add a Kostal Smart Energy Meter to Home Assistant but the KSEM reports bad values for TotWhExp.
The Value is 4286198653 Wh and decreases when power is send to the Net.

Does this info help?: APSystems Wechselrichter mit Modbus auslesen und beschreiben. YC600, QS1 DS3 usw - Wechselrichter - Photovoltaikforum

Dynamic energy prices went negative last week and I am looking for a way to shut down my fronius inverter. Actually, register 40233 seems to be the one I would like to write to.

Any chance of adding write support please?


Would be very nice to have the ability to write!

What settings did you use for the Kaco powador?

I integrated my sungrow inverter with the following config In homeassistant because i could not find any integration for it and did not know about the SunSpec standard.

I would like to use the SunSpec integration but don’t know what will happen to my recorded energy dashboard data. Ist it possible to migrate to the new entities without loosing the previous recorded energy data?

I do have the same problem.