# Loads default set of integrations. Do not remove. default_config: # Load frontend themes from the themes folder frontend: themes: !include_dir_merge_named themes automation: !include automations.yaml script: !include scripts.yaml scene: !include scenes.yaml panel_custom: - name: developer-tools sidebar_title: Developer Tools sidebar_icon: mdi:hammer-wrench url_path: developer-tools/yaml embed_iframe: true require_admin: true # Combined Template Section template: # Nest Camera Event Trigger - trigger: - platform: event event_type: nest_event event_data: type: camera_motion binary_sensor: - name: "Nest Camera Motion" state: "true" auto_off: 10 device_class: motion # Time-Pattern Trigger (Forces calculation updates every minute) - trigger: - platform: time_pattern minutes: "/1" sensor: - name: "Hydro Quebec Active Rate" unique_id: hydro_quebec_active_rate unit_of_measurement: "CAD/kWh" state: > {% set daily_consumption = states('sensor.meter00_daily_grid_energy') | float(0) %} {% set low_rate = states('sensor.hilo_rate_low') | float(0.07065) %} {% set medium_rate = states('sensor.hilo_rate_medium') | float(0.11142) %} {% if daily_consumption < 40.0 %} {{ low_rate }} {% else %} {{ medium_rate }} {% endif %} - name: "HVAC Real-Time Power Draw" unique_id: hvac_real_time_power_draw unit_of_measurement: "kW" device_class: power state_class: measurement state: > {% if is_state_attr('climate.living_room', 'hvac_action', 'idle') or is_state('climate.living_room', 'off') %} 0 {% elif is_state_attr('climate.living_room', 'hvac_action', 'cooling') %} 2.8 {% elif is_state_attr('climate.living_room', 'hvac_action', 'heating') %} {% if is_state_attr('climate.living_room', 'is_aux_heat', true) %} 20.5 {% else %} 2.8 {% endif %} {% else %} 0 {% endif %} - name: "Pool Pump Estimated Power Draw" unique_id: pool_pump_estimated_power_draw unit_of_measurement: "kW" device_class: power state_class: measurement state: > {% if is_state('input_boolean.pool_pump_in_use', 'on') %} 1.50 {% else %} 0 {% endif %} # FIXED SENSOR: Pulls true variable watts from sensor.basement_power and converts to kW - name: "Basement Heater Power Draw" unique_id: basement_heater_power_draw unit_of_measurement: "kW" device_class: power state_class: measurement state: > {% set raw_watts = states('sensor.basement_power') | float(0) %} {{ (raw_watts / 1000) | round(2) }} # WATER HEATER SENSOR: Pulls hardware power from Hilo water heater switch and converts W to kW - name: "Water Heater Power Draw" unique_id: water_heater_power_draw unit_of_measurement: "kW" device_class: power state_class: measurement state: > {% set raw_watts = states('sensor.water_heater_power') | float(0) %} {{ (raw_watts / 1000) | round(2) }} - name: "Pool Pump Live Running Cost" unique_id: pool_pump_live_running_cost unit_of_measurement: "CAD/hr" icon: mdi:cash-clock state: > {{ (states('sensor.pool_pump_estimated_power_draw') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} - name: "Pool Pump Total Cost Today" unique_id: pool_pump_total_cost_today unit_of_measurement: "CAD" device_class: monetary state_class: total_increasing icon: mdi:cash-marker state: > {{ (states('sensor.pool_pump_total_energy') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} - name: "HVAC Live Running Cost" unique_id: hvac_live_running_cost unit_of_measurement: "CAD/hr" icon: mdi:cash-clock state: > {{ (states('sensor.hvac_real_time_power_draw') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} - name: "HVAC Total Cost Today" unique_id: hvac_total_cost_today unit_of_measurement: "CAD" device_class: monetary state_class: total_increasing icon: mdi:cash-marker state: > {{ (states('sensor.hvac_total_energy') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} # Basement live running hourly cost - name: "Basement Live Running Cost" unique_id: basement_live_running_cost unit_of_measurement: "CAD/hr" icon: mdi:cash-clock state: > {{ (states('sensor.basement_heater_power_draw') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} # FIXED BASEMENT TOTAL: Uses Riemann Integral with a mathematically isolated daily tracking loop - name: "Basement Total Cost Today" unique_id: basement_total_cost_today unit_of_measurement: "CAD" device_class: monetary state_class: total_increasing icon: mdi:cash-marker state: > {{ (states('sensor.basement_total_energy') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} # Water Heater live running hourly cost - name: "Water Heater Live Running Cost" unique_id: water_heater_live_running_cost unit_of_measurement: "CAD/hr" icon: mdi:cash-clock state: > {{ (states('sensor.water_heater_power_draw') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} # FIXED WATER HEATER TOTAL: Points to the energy helper sensor to match Daily tracking parameters - name: "Water Heater Total Cost Today" unique_id: water_heater_total_cost_today unit_of_measurement: "CAD" device_class: monetary state_class: total_increasing icon: mdi:cash-marker state: > {{ (states('sensor.water_heater_total_energy') | float(0) * states('sensor.hydro_quebec_active_rate') | float(0)) | round(2) }} # HTTP Proxy Configuration http: use_x_forwarded_for: true trusted_proxies: - 192.168.122.1 - 192.168.1.130 - 192.168.1.125 - 192.168.1.135 # Torque OBD2 Configuration sensor: - platform: torque email: torque-car@asuscomm.com name: MyCar - platform: history_stats name: Nest Heating Time entity_id: climate.living_room state: "heat" type: time start: "{{ now().replace(hour=0, minute=0, second=0, microsecond=0) }}" end: "{{ now() }}" - platform: history_stats name: Nest Cooling Time entity_id: climate.living_room state: "cool" type: time start: "{{ now().replace(hour=0, minute=0, second=0, microsecond=0) }}" end: "{{ now() }}" emulated_hue: host_ip: 192.168.1.140 advertise_ip: 192.168.1.140 listen_port: 80 expose_by_default: false entities: input_boolean.cync_motion_bridge: name: "Cync Motion Bridge" hidden: false