diff --git a/packages/energy/energy.yaml b/packages/energy/energy.yaml index 8d19c15..0e0dd95 100644 --- a/packages/energy/energy.yaml +++ b/packages/energy/energy.yaml @@ -1,7 +1,7 @@ # Energy Package # ----------------------------------------------------------------------------- -# Energy Integration Sensor +# Energy Integration Sensors sensor: - name: Envoy Total Energy platform: integration @@ -9,6 +9,18 @@ sensor: unit_prefix: k unit_time: h + - name: Total Energy From Grid + platform: integration + source: sensor.emporia_vue_net_power_from_grid + unit_prefix: k + unit_time: h + + - name: Total Energy To Grid + platform: integration + source: sensor.emporia_vue_net_power_to_grid + unit_prefix: k + unit_time: h + - name: Home Total Energy platform: integration source: sensor.home_power_consumption @@ -166,11 +178,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147113780')|float + states('sensor.envoy_202221032900_inverter_202147113780')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -180,11 +192,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147116830')|float + states('sensor.envoy_202221032900_inverter_202147116830')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -194,11 +206,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147117162')|float + states('sensor.envoy_202221032900_inverter_202147117162')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -208,11 +220,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147117631')|float + states('sensor.envoy_202221032900_inverter_202147117631')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -222,11 +234,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147122858')|float + states('sensor.envoy_202221032900_inverter_202147122858')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -236,11 +248,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147123517')|float + states('sensor.envoy_202221032900_inverter_202147123517')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -250,11 +262,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147125027')|float + states('sensor.envoy_202221032900_inverter_202147125027')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -264,11 +276,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147125590')|float + states('sensor.envoy_202221032900_inverter_202147125590')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -278,11 +290,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147125734')|float + states('sensor.envoy_202221032900_inverter_202147125734')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -292,11 +304,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147125902')|float + states('sensor.envoy_202221032900_inverter_202147125902')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -306,11 +318,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147126079')|float + states('sensor.envoy_202221032900_inverter_202147126079')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -320,11 +332,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147126357')|float + states('sensor.envoy_202221032900_inverter_202147126357')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -334,11 +346,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147126997')|float + states('sensor.envoy_202221032900_inverter_202147126997')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -348,11 +360,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147128369')|float + states('sensor.envoy_202221032900_inverter_202147128369')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -362,11 +374,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147129445')|float + states('sensor.envoy_202221032900_inverter_202147129445')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -376,11 +388,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147130152')|float + states('sensor.envoy_202221032900_inverter_202147130152')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} @@ -390,11 +402,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_202147130290')|float + states('sensor.envoy_202221032900_inverter_202147130290')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }} diff --git a/packages/energy/energy.yaml.j2 b/packages/energy/energy.yaml.j2 index 072dd87..d5c2a07 100644 --- a/packages/energy/energy.yaml.j2 +++ b/packages/energy/energy.yaml.j2 @@ -53,11 +53,11 @@ template: unit_of_measurement: "%" availability: "{{ states('sensor.envoy_inverter_average_power')|float > 5 }}" state: > - {% if states('sensor.envoy_inverter_average_power')|float == 0 %} + {% if states('sensor.envoy_inverter_average_power')|default(0)|float == 0 %} none {% else %} {{ (100 * - states('sensor.envoy_202221032900_inverter_[[sn]]')|float + states('sensor.envoy_202221032900_inverter_[[sn]]')|default(0)|float / states('sensor.envoy_inverter_average_power')|float ) | round(1) }}