ok many thanks, I think as below maybe work ok (in backup mode or grid connected I think battery discharge will be the same ):
####################### Battery Time Left Till End Discharge ######################################
template:
- sensor:
- name: "Battery Power Left"
unique_id: battery_power_left
unit_of_measurement: "kW"
state: >-
{% set inpower = states('sensor.charge_discharge_power')|float(2) %}
{% if inpower < 0 %}
{{ (inpower * -1) / 1000 }}
{% else %}
{{ '%.2f' | format(states('sensor.average_kw_discharged_from_battery_last_24_hour') | float / 1000 ) }}
{% endif %}
- sensor:
- name: "Luna2000 Time Left To End Disc."
unique_id: battery_time_left
state: >-
{% set percent = states('sensor.battery_state_of_capacity') | float(1) /100 %}
{% set energy = 20.0 %}
{% set reserve = 0.1 %}
{% set charge = (percent - reserve) * energy %}
{% set current_power = states('sensor.battery_power_left') | float(0) %}
{% set decimal_hours = charge / current_power %}
{% set minutes = (decimal_hours % 1 * 60) | round(0) %}
{{ decimal_hours | int(0) ~ 'h ' ~ minutes ~ 'min' }}
# average of discharge in last 24h
sensor:
- platform: statistics
name: "Average kW discharged from Battery Last 24 Hour"
entity_id: sensor.power_batt_disch_kwp
state_characteristic: mean
max_age:
hours: 24
sampling_size: 7200
precision: 3