SolarEdge production throttling from Domoticz
Moderator: leecollings
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
SolarEdge production throttling from Domoticz
I've been exploring ways to regulate the power production of my SolarEdge SE5000H with display using Modbus over TCP/IP. Until now, I've relied on "sunspec_ardexa" to retrieve data, but that functions purely as a background process.
Recently, I came across the Modbus TCP plugin developed by Addie: [GitHub Repository]( addiejanssen/domoticz-solaredge-modbustcp-plugin ). After discussing and troubleshooting a few issues, I found that it works well, which led me to consider integrating a Dimmer-type device. This device would display a 0-100% value corresponding to the Modbus registry key "active_power_limit" (F001), as outlined in the Power Control Protocol for SolarEdge Inverters Technical Note.
Since development on the original GitHub repository appears to have stalled, I started exploring similar implementations, like the simple slider used in Home Assistant. I then modified a copy of the original code to include an additional Dimmer device. This new feature displays the current "active_power_limit", and adjusting the dimmer level updates the SolarEdge inverter with the new limit.
The Power limitation is test and working as expected. The battery selectorswitches needs testing by somebody that has this installed and would like to get feedback on that.
There are currently 3 Branches available on my cloned github repository:
Original Master (v1.1.1) updated with the active_power_limit Dimmer&Sync (v1.2.3) option:
https://github.com/jvanderzande/domotic ... tcp-plugin
Original METERS (v2.0.4) updated with the active_power_limit Dimmer&Sync (v2.0.4.2) option:
https://github.com/jvanderzande/domotic ... ree/meters
Development (v2.0.5.1) based on my meters branch using the latest solaredge_modbus and Selector Switches for Battery modes:
https://github.com/jvanderzande/domotic ... /MetersDev
The 2 extra Selector switches which still need to be tested by somebody that has the battery setup:
Recently, I came across the Modbus TCP plugin developed by Addie: [GitHub Repository]( addiejanssen/domoticz-solaredge-modbustcp-plugin ). After discussing and troubleshooting a few issues, I found that it works well, which led me to consider integrating a Dimmer-type device. This device would display a 0-100% value corresponding to the Modbus registry key "active_power_limit" (F001), as outlined in the Power Control Protocol for SolarEdge Inverters Technical Note.
Since development on the original GitHub repository appears to have stalled, I started exploring similar implementations, like the simple slider used in Home Assistant. I then modified a copy of the original code to include an additional Dimmer device. This new feature displays the current "active_power_limit", and adjusting the dimmer level updates the SolarEdge inverter with the new limit.
The Power limitation is test and working as expected. The battery selectorswitches needs testing by somebody that has this installed and would like to get feedback on that.
There are currently 3 Branches available on my cloned github repository:
Original Master (v1.1.1) updated with the active_power_limit Dimmer&Sync (v1.2.3) option:
https://github.com/jvanderzande/domotic ... tcp-plugin
Original METERS (v2.0.4) updated with the active_power_limit Dimmer&Sync (v2.0.4.2) option:
https://github.com/jvanderzande/domotic ... ree/meters
Development (v2.0.5.1) based on my meters branch using the latest solaredge_modbus and Selector Switches for Battery modes:
https://github.com/jvanderzande/domotic ... /MetersDev
The 2 extra Selector switches which still need to be tested by somebody that has the battery setup:
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
- waltervl
- Posts: 5842
- Joined: Monday 28 January 2019 18:48
- Target OS: Linux
- Domoticz version: 2024.7
- Location: NL
- Contact:
Re: SolarEdge production limitation from Domoticz
Make use of a dimmer or perhaps better to use a custom setpoint device? As a setpoint device is now far more flexible to setup and use.
https://wiki.domoticz.com/Dummy_for_vir ... t_Setpoint
I do not have a SolarEdge or an inverter I can set the max ouput rate for so cannot help to test....
https://wiki.domoticz.com/Dummy_for_vir ... t_Setpoint
I do not have a SolarEdge or an inverter I can set the max ouput rate for so cannot help to test....
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
-
- Posts: 335
- Joined: Wednesday 04 July 2018 7:48
- Target OS: Raspberry Pi / ODroid
- Domoticz version: Beta
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
Nice to see someone working on that modbus tcp again.
I am using it and would sure like to have some posibility to limit production and so would like to test if possible
I am using it and would sure like to have some posibility to limit production and so would like to test if possible
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
Feeding ADSB https://adsb.im/home
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
I will make it available soon in my forked version in a separate branch.
Which versions are you running?
pymodbus==3.6.9
solaredge_modbus==0.8.0
-or-
pymodbus==2.5.3
solaredge_modbus==0.7.0
I am currently running the newest set, but regularly see that not all modbus values are returned by the se5000h and was wondering if the old set would be running better?
Which versions are you running?
pymodbus==3.6.9
solaredge_modbus==0.8.0
-or-
pymodbus==2.5.3
solaredge_modbus==0.7.0
I am currently running the newest set, but regularly see that not all modbus values are returned by the se5000h and was wondering if the old set would be running better?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
-
- Posts: 335
- Joined: Wednesday 04 July 2018 7:48
- Target OS: Raspberry Pi / ODroid
- Domoticz version: Beta
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
How can I find those version numbers ?
I installed it a couple of years ago and it worked fine.
running latest possible domoticz beta on my rpi4 on my old buster install
in progress trying to get everything working on a new rpi5 with docker ...
I installed it a couple of years ago and it worked fine.
running latest possible domoticz beta on my rpi4 on my old buster install
in progress trying to get everything working on a new rpi5 with docker ...
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
Feeding ADSB https://adsb.im/home
-
- Posts: 139
- Joined: Saturday 14 March 2020 13:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2025.1
- Location: Germany
- Contact:
Re: SolarEdge production limitation from Domoticz
Plugin:
cd ~/domoticz/plugins/domoticz-solaredge-modbustcp-plugin
git log -1
solaredge_modbus:
pip3 show solaredge_modbus
(Not my knowledge - ChatGPT helped me earlier today so I could recycle it here
cd ~/domoticz/plugins/domoticz-solaredge-modbustcp-plugin
git log -1
solaredge_modbus:
pip3 show solaredge_modbus
(Not my knowledge - ChatGPT helped me earlier today so I could recycle it here

-
- Posts: 335
- Joined: Wednesday 04 July 2018 7:48
- Target OS: Raspberry Pi / ODroid
- Domoticz version: Beta
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
$ git log -1
commit 126d018d87e95045e581dc03273e17babbef376d (HEAD -> master, origin/master, origin/HEAD)
Author: Addie Janssen <[email protected]>
Date: Sun Oct 2 17:31:23 2022 +0200
$ pip3 show solaredge-modbus
Name: solaredge-modbus
Version: 0.7.0
$ pip3 show pymodbus
Name: pymodbus
Version: 2.4.0
commit 126d018d87e95045e581dc03273e17babbef376d (HEAD -> master, origin/master, origin/HEAD)
Author: Addie Janssen <[email protected]>
Date: Sun Oct 2 17:31:23 2022 +0200
$ pip3 show solaredge-modbus
Name: solaredge-modbus
Version: 0.7.0
$ pip3 show pymodbus
Name: pymodbus
Version: 2.4.0
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
Feeding ADSB https://adsb.im/home
- gizmocuz
- Posts: 2536
- Joined: Thursday 11 July 2013 18:59
- Target OS: Raspberry Pi / ODroid
- Domoticz version: beta
- Location: Top of the world
- Contact:
Re: SolarEdge production limitation from Domoticz
Can you actually set a limit like 500 Watt, or 0 Watt? Or is it a percentage? (0-100) in SolarEdge?
Quality outlives Quantity!
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
It is the actual max power production that can be set to anything between 0-100%.
EG: I have a se5000h so when I set the dimmer to 20% it maximizes the production to 1000W.
Just made my changes available for those that like to test it in this branch: https://github.com/jvanderzande/domotic ... ower_limit
I am using it currently with the requirements.txt:
For those that like to work with version 0.8.0 there is an requirements080.txt that can be used.
EG: I have a se5000h so when I set the dimmer to 20% it maximizes the production to 1000W.
Just made my changes available for those that like to test it in this branch: https://github.com/jvanderzande/domotic ... ower_limit
I am using it currently with the requirements.txt:
Code: Select all
pymodbus==2.5.3
solaredge_modbus==0.7.0
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
- gizmocuz
- Posts: 2536
- Joined: Thursday 11 July 2013 18:59
- Target OS: Raspberry Pi / ODroid
- Domoticz version: beta
- Location: Top of the world
- Contact:
Re: SolarEdge production limitation from Domoticz
Then it makes sense to use a dimmer slider... If you could somehow set the actual Watt limit (which would be awesome as you know how many Watts your house need... and not percentage), you could use a Setpoint device (with parameters for Unit (Watt), min=0, max=5000h)
Great work on the plugin!
Great work on the plugin!
Quality outlives Quantity!
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
I do not see any register variable in the used ""solaredge_modbus" library that returns the max power for the inverter, but honestly think that one could easily make a dummy Selector device with fixed levels or a customized SetPoint as you suggest, and then let a script calculate and set the proper percentage level for the "Solaredge - PowerControl" Dimmer. 
Curious to hear from others if things are working for them too.
I have changed the average calculation from 30 to 10 "last values" as I didn't want the power device to drop too slow in Domoticz when setting the DImmer. I might even remove the Average() calculation totally for Power.

Curious to hear from others if things are working for them too.
I have changed the average calculation from 30 to 10 "last values" as I didn't want the power device to drop too slow in Domoticz when setting the DImmer. I might even remove the Average() calculation totally for Power.
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
Nobody tried yet or is it all working? 
I have been playing a bit more with the plugin and build in an option to "sync" the update of the SolarEdge Data with the existing IDX of another (p1) Device.
This makes the Energy Dashboard showing more accurate information as they update at more or less at the same time.
Is that something we feel is a nice feature to permanently include?

I have been playing a bit more with the plugin and build in an option to "sync" the update of the SolarEdge Data with the existing IDX of another (p1) Device.
This makes the Energy Dashboard showing more accurate information as they update at more or less at the same time.
Is that something we feel is a nice feature to permanently include?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
-
- Posts: 139
- Joined: Saturday 14 March 2020 13:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2025.1
- Location: Germany
- Contact:
Re: SolarEdge production limitation from Domoticz
This is definitely a nice feature to permanently include!
As I don't have a domoticz device showing the Batterie charging / discharging, I get cumulative figures when I include the "solar edge total energy" to the top the dashboard. Charging is subtracted, discharging is added and the the power of my little "balcony power plant", which runs in parallel to the big solaredge plant on the roof, is also added (but the "hidden" power that feeds into the house from the balcony plant seems to be subtracted).
My P1 is a virtual one fed by an infrared reading head ("Hichi" with Tasmoa).
Any idea how to the get the battery in without installing an extra power meter between the battery and the inverter?
As I don't have a domoticz device showing the Batterie charging / discharging, I get cumulative figures when I include the "solar edge total energy" to the top the dashboard. Charging is subtracted, discharging is added and the the power of my little "balcony power plant", which runs in parallel to the big solaredge plant on the roof, is also added (but the "hidden" power that feeds into the house from the balcony plant seems to be subtracted).
My P1 is a virtual one fed by an infrared reading head ("Hichi" with Tasmoa).
Any idea how to the get the battery in without installing an extra power meter between the battery and the inverter?
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
Thanks for the feedback.imautohuttraeger wrote: ↑Saturday 07 June 2025 15:47 This is definitely a nice feature to permanently include!
This isn't really in scope for this thread, but guess you first have to supply some details on your battery setup. I know of some solutions using modbus via ESP to feed Domoticz.imautohuttraeger wrote: ↑Saturday 07 June 2025 15:47 Any idea how to the get the battery in without installing an extra power meter between the battery and the inverter?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
-
- Posts: 139
- Joined: Saturday 14 March 2020 13:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2025.1
- Location: Germany
- Contact:
Re: SolarEdge production limitation from Domoticz
It is a "Solaredge Home Battery". A stack of 3 x 4.6 kWh = 13.8 kWh. Linked to a Solaredge inverter "SE 10K".
If this off topic issue deviates from the scope of this thread I could of course outsource it to a separate thread.
If this off topic issue deviates from the scope of this thread I could of course outsource it to a separate thread.
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
Ah ok, so you like this plugin to also retrieve the battery information. Should be a nice option and should be doable, but I don't have any connected so would be hard for me to code/&test.
In this file on github you can find the registry options currently used in this plugin and it needs to be figured out what is required for the Battery info.
This project for HASS, which also has the powerlimit option I added, has it build in to check for the Battery option.
In this file on github you can find the registry options currently used in this plugin and it needs to be figured out what is required for the Battery info.
This project for HASS, which also has the powerlimit option I added, has it build in to check for the Battery option.
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production limitation from Domoticz
Updated github with the sync option.
https://github.com/jvanderzande/domotic ... ower_limit
It has a fixed setting for http://127.0.0.1:8080 to get the p1 device info as that is the only way I found to retrieve information of an device that beling to another hardware.
In case it can't retrieve the info, it will fallback to the define update timing.
https://github.com/jvanderzande/domotic ... ower_limit
It has a fixed setting for http://127.0.0.1:8080 to get the p1 device info as that is the only way I found to retrieve information of an device that beling to another hardware.
In case it can't retrieve the info, it will fallback to the define update timing.
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
-
- Posts: 139
- Joined: Saturday 14 March 2020 13:40
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 2025.1
- Location: Germany
- Contact:
Re: SolarEdge production limitation from Domoticz
Well I would say everything including the string "*battery*" (28 x) is interestingjvdz wrote: ↑Saturday 07 June 2025 17:09 Ah ok, so you like this plugin to also retrieve the battery information. Should be a nice option and should be doable, but I don't have any connected so would be hard for me to code/&test.
In this file on github you can find the registry options currently used in this plugin and it needs to be figured out what is required for the Battery info.
This project for HASS, which also has the powerlimit option I added, has it build in to check for the Battery option.
Seriously: As a non-coding guy who is just "copying - pasting - not knowing - hoping" I can`t really be helpful. Simple user-testing could be an option. But I should establish a testing environment with a septate Raspi at first and can`t always guarantee timely feedback. And it could be quite cumbersome to always provide "step-by-step" instructions for me.
-
- Posts: 335
- Joined: Wednesday 04 July 2018 7:48
- Target OS: Raspberry Pi / ODroid
- Domoticz version: Beta
- Location: Netherlands
- Contact:
Re: SolarEdge production throttling from Domoticz
hi @jvdz
I would like to use your version of this plugin.
how do I git clone this one ?
If I use the URL under CODE I get the original plugin ...
I would like to use your version of this plugin.
how do I git clone this one ?
If I use the URL under CODE I get the original plugin ...
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
Feeding ADSB https://adsb.im/home
- jvdz
- Posts: 2328
- Joined: Tuesday 30 December 2014 19:25
- Target OS: Raspberry Pi / ODroid
- Domoticz version: 4.107
- Location: Netherlands
- Contact:
Re: SolarEdge production throttling from Domoticz
UPDATE: See first page of repository
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
Who is online
Users browsing this forum: Bing [Bot] and 0 guests