Custom Component: SolarEdge Modbus TCP

OK @erikarenhill , thanks a lot!!!, I’ll open the issue in a minute.

Hi to all, when the script run, in home assistant get this error:

2020-02-25 14:30:05 ERROR (MainThread) [custom_components.solaredge_modbus.sensor] error 4

I have the same issue and the lovelace is unresponsive.
With extra meter=true lovevlace does not even start.
could you please cross check?

Hi @Giorgio_Anastasi and @ds1707 please make sure the IP/port is correct and that modbus tcp is working with another modbus tcp client. Also make sure you have the latest firmware in your inverter. Please also specify firmware version and model of the inverter. I had success using an app called “Poll modbus free” at Google play/Android to verify it was working before enabling this component.

This is just a hobby project so my time is very limited, but of course I want to help you get it running.

I know this is just a hobby project, and an awesome one, hope we can get this solved.

I have the SE15K with CPU:3.2468 which is connected via lan cable to my switch.
With mentioned Android app i can get a connection but this reconnects from time to time. Dont know which exact setting i should choose.
Any other option i could test the connection (i saw an old excel from another german forum, but this does not work with my excel version)…

But for the moment dont waste your time, i need to verify the modbus tcp of my inverter and then will check your component, sorry for the confusion.

Happy to help when time allows. Just keep it coming! :slight_smile:

I have the SE8K (EU, 3 phase) with CPU 4.8.19, also using Ethernet/cable.

From Solar Edge docs:

“All SolarEdge inverters with SetApp configuration are SunSpec-supported.
SolarEdge inverters with the LCD that have Firmware version 3.xxxx and above only are SunSpec-supported.”

From:

Upgrade instructions if you need to upgrade fiwmare:

Hi, regarding the values from meter1 (import and export energy) not being adequate to be used as an utility meter, I created the issue at github following @erikarenhill indications.
https://github.com/erikarenhill/solaredge-modbus-hass/issues/6

This modbus TCP custom component is great, and I really much appreciate all the efforts @erikarenhill has done and I fully understand that he has very little time. So, my question is did someone (@awulf, for examle) find a workaround for that issue? Are you able to use values from meter1 via modbusTCP as utility meters without having their utility meter values spoiled almost every single day??

Ive just had my solaredge system comissioned — slightly left field question but i dont suppose anyone has any hints as to how to identify it on my network ?

Neither my router nor unifi show anything obvious.

Hi @sh00t2kill , are you running wifi or ethernet?

On ethernet at least the device vendor show up as “IEEE Registration Authority” in your client list in the router.

If you connect to the router by using the P / hotspot mode (use mySolarEdge app and connect to the inverters programming mode, then exit app and open 172.16.0.1 in a browser while still being connected to the routers wifi hotspot) you can also set a static IP address if you prefer that. Maybe you can see the router ip there as well, I don’t remember if the hotspot disables the built in wifi (using the same chip/antenna) or not…

It’s connected via WiFi. The installer set it all up. It’s definitely online as it’s reporting to solar Edge cloud.

You can still use this method even if it is connected and reporting, to access the settings in the inverter.

If you can’t find the device in your router and don’t want to connect to the inverter with the previous method (you still might have to do that to enable modbus tcp), one way is just try and turn off the inverter, wait a moment and then turn it on again, this way you would see which device that connects/disconnects to the wifi.

I was SUPER confused, until i realised thats a different app – it all clicked and made sense!
I still wasnt able how to identify its mac address, but a quick ping to 172.16.0.1 revealed it and ive since found it on my network.

You were also right – i had to enable modbus.

Thanks!

1 Like

Please note that this IP is only available for like 20 minutes or so from the moment the programming switch has been toggled, you still have to find the real ip on the normal wifi/network to connect to modbus

Sorry i probably wasnt clear
I pinged 172.16.0.1, did an arp table lookup, grabbed the MAC address of 172.16.0.1, and found that entry in my DHCP server, which got me the address on my WiFi network.

I am up and running this this modbus component!

1 Like

Great to hear! :slight_smile:

Hi!

My installer is telling me that a “modbus meter” needs to be added in order to measure consumption. Do you know if that means the data is there, just this component isnt grabbing it out ?

Or is there some actual hardware “thing” required.

Thanks.

Thats a hardware thing. It’s a clamp (or 3 if you use 3 phase) with meter that you put around the main wires in to your house that measure the electric field to get the amount of current flowing in the cable and direction. This connects to your inverter using rs485 cable to let it calculate difference between solar production and import/export in total.

This home assistant module can also pull all that extra data you get from adding that meter!

1 Like

Ive got an IotaWatt, i just havent connected it to the mains yet as i forgot to order the extra CTs. They arrived yesterday, so in this case ill probably just use that instead.

Thanks again!

1 Like

Yeah you can do the same calculations yourself in Home Assistant if you got another smart meter! I don’t have the official Solaredge modbus meter either, but another one called Watty (Swedish product).

Here is a sample of my Grafana dashboard fetching the data from this component and the smart meter, combining them into one overview. Home assistant store the data to influxdb so the performance is incredibly good.

3 Likes

Erik, tack for the awesome work! I have anew solaredge SE5000hw invereter as long as a solaredge meter, which is connected via RS485 cable with the inverter, whilst the latter is connected to my LAN via ethernet.
I am still waiting from the installer to check and enable TCP modbus function, for the time being I see all the new sensors in my lovelace but I see no values (for instance: AC Total Current : NONE).
From the other hand, homeassistance notifies me an invalid config error:
“The following integrations and platforms could not be set up:
solaredge_modbus
Please check your config”
Maybe it’s because the TCP is not enabled yet?
The IP address is correct, for that I’m sure, but the port is always 1502 as in your example yaml file?
Thank you