Skip to content
Seth edited this page Jan 18, 2025 · 37 revisions

Timeouts with Keep Modbus Connection Open Option

Using the "Keep Modbus Connection Open" option may cause timeout errors with the inverter over time.

The default for this option is disabled.

Inverter Stops Responding During Startup or Setup

Disable the option "Auto-Detect Additional Entities".

SolarEdge has changed something in recent firmware that causes the inverter to hang with no response when requesting registers that it doesn't support. The old behavior would return an modbus error that we could detect.

SolarEdge Inverters Only Support One Connection

SolarEdge inverters only support one Modbus/TCP connection at a time. Additional attempts to connect to the inverter will fail until the last connection is closed.

Other users have reported using proxies as a workaround, but this integration is not tested with proxies.

Strings Only Support 32 Characters

Most string values only support up to a maximum of 32 characters (modbus limitation). This can sometimes cause the full string to be shortened, which is commonly seen on battery firmware versions.

Incorrect or Missing Battery Values

If you are seeing incorrect values for battery data or sensors that were previously working started to show as unavailable, you may need to power cycle your battery and inverter to re-sync or reestablish communications with the battery.

Meters connected with EnergyNet

Meters connected wireless with "SolarEdge Energy Net" or "SolarEdge Home Network" may not appear with modbus. Wired connection is always the most reliable, but wireless EnergyNet or Home Network meter connections may be supported on newer firmware versions.

For more information see Discussion #686 and Issue #252.

Missing data on Meters with EnergyNet or Home Network

Meters may be detected with zero or unavailable sensor data.

Try restarting the inverter(s):

  1. Turn P/1/0 switch to 0 and wait until green LED starts blinking
  2. AC off
  3. Check that LEDs are off
  4. AC on
  5. P/1/0 switch back to 1

See Discussion #686 for more information.

Not All Inverters Support Battery Data or Controls over Modbus

Not all inverters support battery data over modbus even if you have batteries attached and recognized in SetApp. Battery data over modbus is a function that can be enabled or disabled by SolarEdge support. Some inverters have it enabled, some have it disabled. There is no known pattern which will be which. This also includes all site limit and storage control options, which are part of the same data set as batteries.

If you turn on battery auto-detection and the integration doesn't show any batteries, then unfortunately you are one of the unlucky ones with an inverter that does not support battery data over modbus. When you turn on debug logging you will see IllegalAddress responses to Inverter X battery Y probes. Anytime you see an IllegalAddress response this means the inverter is saying it doesn't support the request. This is not a bug: it is a valid response from an inverter.

Some people have been successful in convincing SolarEdge to enable this functionality for them: Discussion #63 (comment)

Others have not had success with SolarEdge: Discussion #63 (comment)

For more information see Discussion #63: Battery integration

Dual Function Meters

Meters configured for dual function in SetApp (such as Production + E/I) will only report one of the meter functions over modbus. The meter function will be shown in the integration Device Info under "Hardware". Only values for the that function will be reported by the inverter over modbus. This is not a bug: this is how SolarEdge has chosen to implement dual function meters at this time.

Reference: Discussion #298

Battery Energy

The energy counters for battery energy import (charging) and export (discharging) will reset to zero when used with LG or BYD batteries, which can cause unreliable data collection or lost statistics. These data points are documented as "Lifetime Import/Export Energy Counter" which means they should never reset to zero, however LG and BYD batteries do not provide lifetime charge/discharge data. SolarEdge Energy Bank batteries have been reported to use lifetime counters correctly.

Batteries may also return unreliable energy data that is not a constantly increasing energy value. SolarEdge Home Battery 48V are known to have this problem (at least until firmware version DCDC 3.3.9). However, this can happen with any inverter and any battery, and is not limited to the batteries named here.

There is no fix for this issue since it is a hardware (battery controller) issue or inverter firmware issue that SolarEdge needs to fix.

Starting with Release v2.2.7 (PR #177) an option was added to allow battery energy counters to reset to zero. The default is disabled which assumes the proper behavior for a lifetime energy counter. Enabling this option may be required if you are using a battery system or inverter firmware version with unreliable energy values. Release v2.3.4 added a new option to only allow energy to reset (or go backwards) after N number of polling cycles.

Users have reported using an Integration helper (Riemann sum integral sensor) to approximate battery energy from unreliable data.

References:

More Than Three Batteries

UPDATE: Battery 3 is known to work on inverter firmware version 4.17.218. Support for B3 was added in Release v2.4.9 and newer. (Pull Request #508)

The modbus interface defines two batteries per inverter. The third battery register is undocumented but demonstrated to work.

Integrating additional batteries with modbus will require SolarEdge to extend their modbus support.

Service Calls with pyscript Custom Integration

Add the optional parameter blocking=True to service calls for proper function.

See: https://hacs-pyscript.readthedocs.io/en/latest/reference.html#calling-services