Initial Home Assistant commit
This commit is contained in:
@@ -0,0 +1,212 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user