Fronius GEN24 Modbus Control - how to get it working?

I hope somebody can help me with this:

After installing this app on my Homey Pro 2023 I get no data and error:
“Modbus polling failed”.

I own a Fronius GEN24 12 inverter with 15.8 Reserva battery from Fronius.

I used the internal (static) ip-adres of my inverter.
I enabled the api
I made Fronius a TCP server for Modbus
Other values:
TCP port 502
Unit 1 (though i am not certain where to find this)
Poll interval: 10

What can I do to get it working?
Thanks, Willem

First of all which Fronius app, Willem?

Probably it’s this one:

but there’s no forum topic or active support by the developer.

Yes Peter,
That is the one.
No support, I saw that.

But, I was hoping some user could help me with it.

I would like to control my Inverter and battery with advanced flows in Homey.
With the other apps I do not get ‘and-’ and ‘then-’ cards.
I could miss something (which has happened before)
Thanks, Willem

Hi Willem,

Perhaps Ronny can show you some possibilities?
He uses his Modbus app to control stuff

The Solaredge + Growatt TCP Modbus app might do the job as well (it’s not limited to these 2 brands):

fronius is not so hard and Ronny has 1 I think and uses his app to control it

had many request for this but no 1 can provide me some vpn access , mostly in a few hours I have a working one. controlling requires more testing.

you can also do it yourself , not so hard and code is on github. any help is appreciated.

Thanks for the tip guys!
I will dive in. Experience learns that this kind of things often are very difficult for me. But who knows, maybe I’ll surprise myself.

The local Fronius API (REST API used by the other apps) is readonly access. It can only read realtime data.

In addition there is a Solarweb cloid API to get additional data.

I’m using the HomeAssistant Integration, because it combines both. Then I just import the data to Homey via HA community app.

I made and use the Modbus TCP app to control some special settings for my Gen24. You don’t have many possibilities, that’s why I just used basic Modbus instead of implementing an app.

I use Modbus for:

  • limit battety usage while car charging from grid
  • force battery charging from grid (winter at night based on price)
  • you can set minimum battery level
  • but not so much more.

See details if you want to try:

Check the examples on my blog

nowadays with chatgpt codex and these homey, HA github repos from me and others plus have the right modbus registers pdf , it should be easy to add new driver to the apps. or make a new 1 from scratch.

really impressive

Thanks Ronny,
Appreciate this.
I will look int it when I find some time for it.

I am very careful about this. My knowledge of mod-bus-stuff is zero.
My wife is quite ‘specific’ about taking risks with meddling with essential installations.
Spouse-acceptance’ for Homey is high, and I would’t want to risk that ;-).

I chose Fronius not only for the quality, but also because there were Homey-apps for it: not realising the limitations, so I am a bit disappointed about that.

But, again, thanks for your tips and I may dare to try it.

Maybe someone has a tip.
In the Fronius GEN24 Modbus Control app I get an error (Modbus polling failed) and it loses connection..
After restarting the inverter, Homey and restarting the app itself, it comes online for maybe a minute or so.
When I restart the app after that, it workes again for a shhort time.

In the time it works, I have acces to ‘and’ and ‘then’ cards.
This app seems to do what I want (as long as the connection fails again).
Could this be some generic failure that could be related to some Modbus setting or some timeoutsetting in de Homey-Fronius Gen24-app or something like that?

It is a long-shot, I know…

Hi Ronny, maybe you can give me a tip. I really appreciate your examples and help. Maybe you have a tip.
The examples are too risky for me. I do not understand almost every cards or terms used in it :-). But I am still hoping to get the app Fronius GEN24 Modbus Control working here (its a pity developer Andreas Kjörk does not offer support, but the app-page is clear about that and that must be respected).
So maybe you can help me with the settings of the Fronius inverter. The settings-page you show in your ‘Modbus: Anwendungsbeispiel’ are different from mine: I miss some settings.

. Do you think this is a problem? Is there some setting on the technicians page that should be changed maybe?
Is there something I could do about the ‘Polling-problem’ that I mentioned?
When I run a card in a flow i get error ‘Modbus client not connected’ so I guess some setting is not right.
Edit: are the RTU and Master and slave settings important? I do not have them in my webpage.

Hi,

that’s exactly what I see for my Gen24. Perhaps Fronius changed something during FW updates.

For the inserter as main device, you have to use port 502 and ID 1.
And you can use “keep connection” becauce in my experience Fronius does not drop connected clients.

Thanks!
The settingspage looks different here (in the Fronius Gen24 Modbus app in Homey). I do not see a setting that resembles ‘verbindungtyp’. There is a Poll interval and Enbling Polling on that location.


There is a setting ‘Modbus write display’ (between 100 - 2000) that reads 1200 ms, but that is something different I guess.

That are Fronus app settings. This app is reding data in intervals.

That’s different to my generic Modbus app where you can read/write with flows.

Dankeschön Ronny for trying to help me. Aber leider… i am afraid i will not get it to work with the Fronius GEN24 Modbus Control app. At least not now.

Hi. I’m so sorry. I have totaly missed this thread. I’m the developer of the app and been working on it for a while. How can I help?

Hi Willem — I’m the developer of this app. Peter was right that there was no way to reach me, and that’s on me. There is now.

I went back through your posts and I think I can explain what happened. None of it was your fault.

In the published version (1.3.41), three things work against you at once:

  • Pairing never asks for the inverter’s IP address and never tests the connection. It just creates a device. You then have to find the settings page and fill everything in yourself.
  • “Read values from the inverter” is off by default, so even a correctly configured device reads nothing.
  • Nothing anywhere tells you that Modbus has to be switched on in the inverter first, or that SunSpec Model Type has to be int + SF. Fronius ships with float, and the battery device reads a fixed set of addresses that only exist in int + SF. On float you get exactly “Modbus polling failed”.

Your “it connects for about a minute and then drops” is the app failing a poll, marking the device unavailable, reconnecting, and repeating.

There’s a test version that changes all of it:

  • Adding a device asks for the IP, tests the connection before creating anything, and reads model, serial number and power ratings out of the inverter itself.
  • The pairing screen now lists the exact settings to make in the inverter’s web interface first: Communication → Modbus, Mode TCP Server, SunSpec Model Type int + SF, port 502, Allow Control on.
  • Reading is on by default.
  • A GEN24 with a battery is added as two devices, a battery and a solar panel, so Homey Energy counts production and storage separately.
  • Symo and other SnapINverter models on a Datamanager 2.0 are supported too.

What I have not tested, so you know what you’re getting:

  • The zero-export loop has never run against real export. It needs actual surplus to test honestly and I haven’t had the conditions for it.
  • Your hardware specifically. Mine is a Symo GEN24 10.0 with a BYD battery; yours is a GEN24 12 with a Reserva. The register layout should be identical, but “should” isn’t “is”.
  • Primo is handled in the code but I’ve never seen a real one.

If you try it I’d genuinely like to hear how it goes — there’s a support address on the app page now. And if it still fails, the pairing screen tells you what the inverter actually answered, which is a good deal more to go on than “Modbus polling failed”.

Hi Andreas, thank you very much for your help!
This weekend I will give it a new try. I am exited already, I really hope it will work.
Il let you know.
And, in all cases: thanks for building this app!

The Fronius Control now have its own thread [APP][Pro] Fronius Control - Questions & Help - Homey Community Forum