nu virker det
This commit is contained in:
@@ -6,7 +6,7 @@ sensors:
|
|||||||
{% set capacity = 75 %}
|
{% set capacity = 75 %}
|
||||||
{% set soc = states('sensor.snowywhite_battery') | float(0) %}
|
{% set soc = states('sensor.snowywhite_battery') | float(0) %}
|
||||||
{% set limit = states('number.snowywhite_charge_limit') | float(100) %}
|
{% set limit = states('number.snowywhite_charge_limit') | float(100) %}
|
||||||
{{ ((limit - soc)/100 * capacity)|round(2) }}
|
{{ [0, ((limit - soc)/100 * capacity)] | max | round(2) }}
|
||||||
|
|
||||||
tesla_charge_hours_needed:
|
tesla_charge_hours_needed:
|
||||||
friendly_name: "Tesla Charge Hours Needed"
|
friendly_name: "Tesla Charge Hours Needed"
|
||||||
@@ -16,6 +16,40 @@ sensors:
|
|||||||
{% set kwh = states('sensor.tesla_kwh_needed') | float(0) %}
|
{% set kwh = states('sensor.tesla_kwh_needed') | float(0) %}
|
||||||
{{ (kwh / power)|round(2) }}
|
{{ (kwh / power)|round(2) }}
|
||||||
|
|
||||||
|
tesla_charging_plan:
|
||||||
|
friendly_name: "Tesla Charging Plan"
|
||||||
|
value_template: >
|
||||||
|
{% set deadline_raw = states('input_datetime.tesla_charge_deadline') %}
|
||||||
|
{% set deadline_ts = as_timestamp(deadline_raw)
|
||||||
|
if deadline_raw not in ['unknown','unavailable',''] else none %}
|
||||||
|
|
||||||
|
{% set hours_needed = [1,
|
||||||
|
states('sensor.tesla_charge_hours_needed') | float(0) | round(0, 'ceil')
|
||||||
|
] | max %}
|
||||||
|
|
||||||
|
{% set prices = (state_attr('sensor.energidataservice','today') or [])
|
||||||
|
+ (state_attr('sensor.energidataservice','tomorrow') or []) %}
|
||||||
|
|
||||||
|
{% set valid = [] %}
|
||||||
|
{% for p in prices %}
|
||||||
|
{% if p.hour is defined and p.hour %}
|
||||||
|
{% set ts = as_timestamp(p.hour) %}
|
||||||
|
{% if not deadline_ts or ts <= deadline_ts %}
|
||||||
|
{% set valid = valid + [p] %}
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
{% set cheapest = (valid | sort(attribute='price'))[:hours_needed] %}
|
||||||
|
|
||||||
|
{% set times = cheapest
|
||||||
|
| map(attribute='hour')
|
||||||
|
| map('as_timestamp')
|
||||||
|
| map('timestamp_local')
|
||||||
|
| list %}
|
||||||
|
|
||||||
|
{{ times | join(', ') if times | count > 0 else 'none' }}
|
||||||
|
|
||||||
binary_sensors:
|
binary_sensors:
|
||||||
tesla_charge_now:
|
tesla_charge_now:
|
||||||
friendly_name: "Tesla Charge Now"
|
friendly_name: "Tesla Charge Now"
|
||||||
|
|||||||
Reference in New Issue
Block a user