Battery Health - Missing Information

Post Reply
Viktor
Posts: 1
Joined: Wed Apr 16, 2025 7:54 am

Hello everybody!

I've a problem with the app: in the Info section, at "Battery Health", some information are missing, and what I can see is only "---".

Image

Is there a way to resolve this issue?
Dave Foster
Posts: 1802
Joined: Thu Oct 13, 2022 7:21 pm

It's not an issue, only some of the latest V2 batteries provide this information, I have V1's and get the same as you
WyndStryke
Posts: 69
Joined: Mon Nov 18, 2024 9:16 pm

I believe I have a V2 battery (EC4300-H4, serial number starts 60KS432..., plus KH7, the box shows V2.0 and A), and it shows the same information for me (SOH 100% and Remaining Power Capacity 72Ah, everything else blank).

Interestingly, the 'Expected life' tab was mostly showing blank until a few days ago, and it now has data.

* Charge energy throughput 1838kWh
* Discharge energy throughput 1716.4kWh
* Charge capacity throughput 7566.3Ah
* Discharge capacity throughput 7340.1Ah
* Number of full equivalent charge-discharge cycles 110
* Number of deep discharge event (blank)
* Time spent in extreme temp (blank)
* Time spent charging in extreme temp (blank)

It started showing up when full cycles was at 100. So I'm not sure if that was co-incidence, or whether it was because it happened to be the threshold at which it will be displayed.

Curiously the data does not exactly match what the MODBUS integration shows, it is similar but not the same. I wrote this markup card to show me the data directly from the inverter.
Warranty years 12, started 2025-01-09, ending 2037-01-08. Warranty period consumed 2.37%

Warranty cycles 6000, full cycles consumed 108.1 (1.8%), remaining 5891.9 (98.2%), total battery charge 1772.7kWh, total battery discharge 1810.8kWh

Battery SoH (inverter) 100.0%, original capacity 16.59kWh, remaining 16.58kWh (99.94%)
Note that total battery charge (sensor.battery_charge_total) is 1772.7kWh but 1838kWh in the app, and total battery discharge (sensor.battery_discharge_total) is 1810.8kWh from MODBUS but 1716.4kWh in the app.

Battery discharge is consistently a little higher than battery charge, I think because it seems to silently charge up at about 60W when there is solar generation and the systems is in Feed-in First mode. This mystery 60W does not appear in the battery charge data, but the SoC goes up by 1% every few hours during sunlight.

My calculation for full cycles consumed is similarly close but not identical - 108.1 versus 110.

I used the formula

Code: Select all

{% set full_cycles_consumed = ((battery_discharge_total+ battery_charge_total) / (remaining_battery_nominal_capacity * 2)) | round(1) %}
Which was basically a guess. Not sure if it is correct.

Code: Select all

{% set warranty_cycle_limit = 6000 %} 
{% set warranty_years = 12 %} 
{% set warranty_days = warranty_years * 365.25 - 1 %}
{% set original_battery_nominal_capacity = 16.590 %} 
{% set warranty_start = (strptime('2025-01-09', "%Y-%m-%d")|as_datetime).date() %}
{% set warranty_end = (warranty_start+timedelta(days= warranty_days)) %}
{% set warranty_days = (warranty_end - warranty_start) %} {# Not sure why this is needed, can I just use warrnaty_days without reassigning it #}
{% set days_since_warranty_start = (now().date() - warranty_start) %}
{% set perc_days_consumed = ((days_since_warranty_start / warranty_days) * 100) | round(2) %}
{% set remaining_battery_nominal_capacity = (states('sensor.bms_kwh_remaining') | float)%}
{% set battery_discharge_total = states('sensor.battery_discharge_total') | float %}
{% set battery_charge_total = states('sensor.battery_charge_total') | float %}
{% set full_cycles_consumed = ((battery_discharge_total+ battery_charge_total) / (remaining_battery_nominal_capacity * 2)) | round(1) %}
{% set cycles_perc_consumed = (( full_cycles_consumed / warranty_cycle_limit) * 100) | round(1) %}
{% set battery_SoH_inverter = (states('sensor.battery_soh') | float)%}
Warranty years **{{ warranty_years }}**, started {{warranty_start}}, ending {{ warranty_end }}.  Warranty period consumed **{{ perc_days_consumed }}**%

Warranty cycles **{{warranty_cycle_limit}}**, full cycles consumed **{{ full_cycles_consumed }}** (**{{cycles_perc_consumed }}**%),  remaining **{{ warranty_cycle_limit - full_cycles_consumed }}** (**{{ 100.0 - cycles_perc_consumed}}**%), total battery charge **{{battery_charge_total}}**kWh, total battery discharge **{{battery_discharge_total}}**kWh

Battery SoH (inverter) **{{battery_SoH_inverter}}**%, original capacity **{{original_battery_nominal_capacity}}**kWh, remaining **{{remaining_battery_nominal_capacity}}**kWh (**{{((remaining_battery_nominal_capacity/original_battery_nominal_capacity)*100)|round(2)}}**%)

Not sure of the exact relationship between 'Charge capacity throughput' and 'Charge energy throughput' either. The nominal voltage of the H4 is 230.4v, and applying that to the charge capacity and discharge capacity gives similar-but-not-exact results. Perhaps it is reflective of the actual voltage at the time of charging rather than the nominal voltage (in which case it would be 242.9v and 233.8v respectively)?
Post Reply