[APP][Pro] SolarEdge + Growatt TCP modbus

My 6 year old inverter of SolarEdge (with display) is recently updated by SolarEdge on my request so I can use modbus over WiFi.


Hi Everyone,

This week my new solaredge se7-RWS with 1 battery and a wireless solaredge inline meter is installed :slight_smile: I have also connect it to my homey pro 2023.

Now I am looking for a manual witch explanes what all the functions are of the Storage Controle Modes, Storage charge/discharge modes are?

I want to make a flow that’s make me use off my Dynamic (ANWB) prices. For examble charge the battery from AC if the price is below price x and or charge from PV.

Also I was wondering is you can make schedules for charging or decharge and if someone as some example advanced flows for inspiration :slightly_smiling_face:

Thanks in advanced


Check out the power by the hour forum section.


here we go , from page 15 https://www.photovoltaikforum.com/core/attachment/88445-power-control-open-protocol-for-solaredge-inverters-pdf/

1 Like

Hi Henk,

Getting there is not difficult but it takes time. The way I automated the system;

You need to connect the MODbus with a bridge that will process data from and to the inverter (app), without, there is no way to use the HP23 or flows. You also need (I did) advanced flows active on the HP23.

That being said, with batteries and everything what you’re gonna build with the flows to operate, you need to split the flows (modular build) depending on their purpose. Putting all functions in one flow helps loosing the overview. The flows itself ‘talk’ through the variables or the functionality of the apps you are using. Sometimes variables are easier to work with.

Another thing is to keep record (write a log) with the things you do, change, especially the variables. Using HP insights data is cool and handy, but only when the variables are correct and recognisable.

The flows I have (and after months still finetuning them);

Heartbeat flow;
This flow controls and checks the functionality of 1. overcapacity (calculated per 15min) 2. If there is AC power, the status of the batteries and the status reports send to the system telegram channel.

The inject flow;
Takes care of the injection to the grid, depending on 2 triggers (the % of injection variable, set in the capacity flow and the actual switch variable 0,1 or 9 to stop, start or override manually the actual injection)

The capacity flow;
Settings and calculations are made:

  • Total available capacity, bases on ‘basis capacity minimum’ the capacity always available when sunny + season extra (sun angle dependent extra, f.i. summer + 2000w, winter +800w. Every setup is different in this.

It will calculate the actual overcapacity, based on total available capacity minus house load, and use an average calculation each 30 min to set the % of injection. Full injection is limited to 75% and only available if the battery is above 90%.

The overcapacity is set to 0 and and injection switch set to 0 when time is not between (sunrise +60m) and (goldenhour+1m) making it impossible to inject to the grid when the sun is gone.

I do not wish to give samples of flows for quick usage without helping you to understand the true power of the solar app and HP advanced flow. Jus start with a advanced flow and use the app parameters to simply build a yes / no flow, % setting etc.


Hi Phil,

I can see you have experience with setting up advanced flows with variables. I have just a little :wink: That’s why I did ask for some example flows for inspiration. It’s then visual for me and I can adopt that more easily.

And from that point start creating my own flows.


You need to connect the MODbus with a bridge that will process data from and to the inverter (app), without, there is no way to use the HP23 or flows.

Not sure I understand you right, but current Solaredge inverters usually support Modbus/TCP so you don’t need anything to connect Homey to the inverter, just the SolarEdge + Growatt TCP modbus app. I have Homey connected directly to my Solaredge SE8K-RWS and control the battery charging/discharging modes based on the current electricity prices. This works like a charm.

In order to activate Modbus/TCP on the inverter you need the Setapp from Solaredge. And you need to connect Homey to the inverter within a few minutes, otherwise the Modbus/TCP will be deactivated automatically again.

I have connect my Homey to the SolarEdge MODBus and thats works fine. I am looking for example flows icm with solaredge functionallity to learn froman Inspiration.

I want to make a flow that’s make me use off my Dynamic (ANWB) prices. For examble charge the battery from AC if the price is below price x and or charge from PV. And I think I found a Way to do that uinig PBH if the price is below 0,20 then Set storage controle to “Remote Control” Wait 10 sec. and set Storage charge/discharge to Charge from PV+AC
This is a start but there are a lot of more possibilities and I am look for inspiration and experience form fellow Homey users with SolarEdge and batterys :slight_smile:

Here is my current flow, which is quite extensive.

First part: Triggers and general decision on battery mode based on current prices. The variable “Ladeleistung Steuerung aussetzen” is true if the car charges at full speed, i.e. not following PV yield. “PV Batterie Gesamtentnamekosten” are the costs for electricity from the battery, in my case I use 0.10€ plus the feed-in tariff (“PV Einspeisetarif”).

Second part: Override the mode in special cases. “PV Batterie Laden vermeiden” will be true if I want to prevent battery charging, i.e. usually in summer when I want to reserve some space in the battery to charge PV yield over the maximum inverter power. “PV Eigenverbrauch vermeiden” will be true if I want to avoid self consumption, i.e. usually in winter, when I want to charge the battery with all the PV yield I can get during times of cheap electricity prices, so I can use the battery when electricity prices are high. And last but not least I don’t want to discharge the battery below 10%.

Third part: Actually setting the battery mode. I also have a “special” battery mode (1.5), which prioritizes self consumption and only charges the battery with excess PV yield, but never discharges the battery. I simulate that by using “Maximize self consumption” and limiting the battery discharging power to 10W (my inverters doesn’t accept lower values).

Enough inspiration? :wink:


OooYeah thats inspiration indeed Yes!!! Thanks!!

1 Like

nice, how much do you think you saved do this automatically instead of doing it by hand? at least save your time to check it all.

I am waiting for when “salderen” will be removed, now the grid is my battery for the winter. if so waiting for the solaredge V2G to see how that can work with the car big battery and power by the hour.

1 Like


Sorry for the incorrect info regarding the MODbus bridge, for sure you are correct, I was talking from a Growatt point of view, which is my reference.


nice, how much do you think you saved do this automatically instead of doing it by hand? at least save your time to check it all.

That’s really hard to say but I doubt it’s much, especially during summer. In winter it might be more, but even if I assume saving 0.20€/kWh on a full battery cycle each day - which is very optimistic - that’s only 1.60€ a day. Half of it might be more realistic, so we are talking about a few tens of Euros during winter month. More than nothing, but not much either.

Biggest potential in summer might be getting otherwise clipper power, e.g. getting 9kW from an 8kW inverter:

Preventing to use the battery while charging the car during times with cheap electricity quite certainly also saves a bit:

And here an example most useful in winter: charge the battery with full PV yield and use solely the grid for consumption. The battery then can be used while electricity is expensive.

Most of this was quite easy to achieve. How much it will really save, I can not answer. It will save something and it will relieve the power grid a bit. I see the biggest potential in implementing something like this directly in the inverter and release it to the wide public; this could really make a difference for the grid IMO.

Oh, and while I have your attention @Edwin_Biemond : I could remove the polling of the charge/discharge mode, if we would have a trigger card for the mode :wink:

1 Like

yes will do that this week.


Thank you for your great support!

Good morning, after a grid outage, the inverter, although set to maximize self-consumption, uses the photovoltaic to charge the battery and the grid for home consumption without using the energy present in the battery to optimize self-consumption . What parameters should I use on your app to get the above behavior? Thank you

Hi there!

Allow me to explain why I think you sketch a very unlogical situation. Why would you even think about discharge your valuable batteries when there is power from the solar panels?

Battery lifespan will reduce when using them (basic theory) so charging them (when needed) and allow the batteries to be ready when the solar panels are out (bad weather/at night) is the only logical way of doing things.

There are plenty of options with the app to manage and avoid anything you want, but to use batteries when the panels are producing is something I would never intent or support.


Not sure if I understand you correctly. Do you want the battery to be charged first and only when it’s full you want to use the PV yield for self consumption? For that case use the charge/discharge mode “Charge from PV 1st, before producing to AC”.

Or do you want to use the PV yield for self consumption and use excess yield for battery charging, but never discharge the battery for self consumption, i.e. use the grid instead if the PV yield is insufficient? For that case use the mode “Maximize self-consumption” and set the battery discharge power to the lowest value your inverter accepts.

Thank you so much. I have used hours trouble shooting my Elfin Ew11 modbus to wifi converter. Changed a million settings to no avail, and then it was just the wiring that was wrong. It now works with wire 4 and 5 as you wrote on Sph3600.

Would it be possible to change the battery temperature reported for growatt batteries? I have the sph3600 with growatt battery attached. It reports temperature as 2.4 degrees. It should be 24.