Compare commits
12 Commits
13cb8f2c61
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 57efbc273f | |||
| 9a442a5ee9 | |||
| a1173d3a4f | |||
| b76d01d8c6 | |||
| b0c87c5443 | |||
| e196adf839 | |||
| 563614da00 | |||
| 40e85c10c0 | |||
| 81df14f119 | |||
| d37db0c59f | |||
| 9a9029d376 | |||
| a4e88c1fe5 |
+553
-460
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,108 @@
|
|||||||
|
blueprint:
|
||||||
|
name: Auto AC Control
|
||||||
|
description: Auto Turn on Air Conditioning
|
||||||
|
domain: automation
|
||||||
|
author: Tiziano Trabattoni
|
||||||
|
input:
|
||||||
|
temp_threshold:
|
||||||
|
name: Temperature Threshold to switch AC on
|
||||||
|
description: This threshold is the temperature above which AC must be switched on
|
||||||
|
default: 29.0
|
||||||
|
selector:
|
||||||
|
number:
|
||||||
|
min: 25.0
|
||||||
|
max: 40.0
|
||||||
|
step: 0.5
|
||||||
|
unit_of_measurement: celsius
|
||||||
|
|
||||||
|
temp_hist:
|
||||||
|
name: Temperature Histeresys from off to on
|
||||||
|
description: This gap is difference between on and off
|
||||||
|
default: 2.0
|
||||||
|
selector:
|
||||||
|
number:
|
||||||
|
min: 1.0
|
||||||
|
max: 4.0
|
||||||
|
step: 0.5
|
||||||
|
unit_of_measurement: celsius
|
||||||
|
|
||||||
|
climate_target:
|
||||||
|
name: Termostat Control
|
||||||
|
description: Identifies the AC climate to be controlled
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
filter:
|
||||||
|
- domain: climate
|
||||||
|
|
||||||
|
mode: restart
|
||||||
|
|
||||||
|
variables:
|
||||||
|
target_AC: !input climate_target
|
||||||
|
target_temp: !input temp_threshold
|
||||||
|
target_hist: !input temp_hist
|
||||||
|
|
||||||
|
triggers:
|
||||||
|
- trigger: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
attribute: current_temperature
|
||||||
|
|
||||||
|
conditions: []
|
||||||
|
|
||||||
|
actions:
|
||||||
|
- choose:
|
||||||
|
# CONDITION 1: Turn AC ON & Adjust Fan
|
||||||
|
- conditions:
|
||||||
|
- condition: template
|
||||||
|
value_template: "{{ state_attr(target_AC, 'current_temperature') | float(0) >= target_temp }}"
|
||||||
|
- condition: or
|
||||||
|
conditions:
|
||||||
|
- condition: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
state: "off"
|
||||||
|
- condition: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
state: "heat_cool"
|
||||||
|
- condition: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
state: "dry"
|
||||||
|
- condition: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
state: "fan_only"
|
||||||
|
sequence:
|
||||||
|
- action: climate.set_hvac_mode
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_target
|
||||||
|
data:
|
||||||
|
hvac_mode: cool
|
||||||
|
- action: climate.set_fan_mode
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_target
|
||||||
|
data:
|
||||||
|
fan_mode: >-
|
||||||
|
{% set curr_temp = state_attr(target_AC, 'current_temperature') | float(0) -%}
|
||||||
|
{% set targ_temp = state_attr(target_AC, 'temperature') | float(0) -%}
|
||||||
|
{% set diff_temp = curr_temp - targ_temp -%}
|
||||||
|
{% if diff_temp >= 4.0 -%}
|
||||||
|
5
|
||||||
|
{% elif diff_temp >= 3.5 and diff_temp < 4.0 -%}
|
||||||
|
4
|
||||||
|
{% elif diff_temp >= 3.0 and diff_temp < 3.5 -%}
|
||||||
|
3
|
||||||
|
{% elif diff_temp >= 1.5 and diff_temp < 3.0 -%}
|
||||||
|
2
|
||||||
|
{% else -%}
|
||||||
|
Auto
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
# CONDITION 2: Turn AC OFF (Hysteresis)
|
||||||
|
- conditions:
|
||||||
|
- condition: template
|
||||||
|
value_template: >-
|
||||||
|
{{ state_attr(target_AC, 'current_temperature') | float(0) <= (target_temp | float(0) - target_hist | float(0)) }}
|
||||||
|
- condition: state
|
||||||
|
entity_id: !input climate_target
|
||||||
|
state: "cool"
|
||||||
|
sequence:
|
||||||
|
- action: climate.turn_off
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_target
|
||||||
@@ -1,29 +1,30 @@
|
|||||||
blueprint:
|
blueprint:
|
||||||
name: timed_switch
|
name: timed_switch
|
||||||
domain: switch
|
domain: automation
|
||||||
description: Activate a switch for a cerrain timeation
|
description: Activate a switch for a certain time as action
|
||||||
author: Tiziano Trabattoni
|
author: Tiziano Trabattoni
|
||||||
input:
|
input:
|
||||||
button:
|
button:
|
||||||
name: bt
|
name: Button
|
||||||
|
description: Which button will activate the switch
|
||||||
selector:
|
selector:
|
||||||
target:
|
entity:
|
||||||
entity:
|
domain: input_button
|
||||||
domain: input_button
|
|
||||||
|
|
||||||
switch_target:
|
switch_target:
|
||||||
name: sw
|
name: Switch
|
||||||
|
description: Which switch will be activated
|
||||||
selector:
|
selector:
|
||||||
target:
|
entity:
|
||||||
entity:
|
domain: switch
|
||||||
domain: switch
|
|
||||||
time:
|
duration:
|
||||||
name: tim
|
name: Duration
|
||||||
|
description: How long the switch should remain on
|
||||||
|
default:
|
||||||
|
hours: 1
|
||||||
selector:
|
selector:
|
||||||
number:
|
duration: {}
|
||||||
min: 0
|
|
||||||
max: 300
|
|
||||||
unit_of_measurement: seconds
|
|
||||||
|
|
||||||
triggers:
|
triggers:
|
||||||
- trigger: state
|
- trigger: state
|
||||||
@@ -34,9 +35,11 @@ conditions: []
|
|||||||
|
|
||||||
actions:
|
actions:
|
||||||
- action: switch.turn_on
|
- action: switch.turn_on
|
||||||
entity_id: !input switch_target
|
target:
|
||||||
|
entity_id: !input switch_target
|
||||||
|
|
||||||
- delay: !input tim
|
- delay: !input duration
|
||||||
|
|
||||||
- action: switch.turn_off
|
- action: switch.turn_off
|
||||||
entity_id: !input switch_target
|
target:
|
||||||
|
entity_id: !input switch_target
|
||||||
|
|||||||
@@ -4,6 +4,24 @@ default_config:
|
|||||||
# packages directory
|
# packages directory
|
||||||
homeassistant:
|
homeassistant:
|
||||||
packages: !include_dir_named packages_dir
|
packages: !include_dir_named packages_dir
|
||||||
|
# customize temperature steps
|
||||||
|
customize:
|
||||||
|
climate.mansarda:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.matrimoniale:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.soggiorno_1:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.camera_est:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.camera_ovest:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.soggiorno:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.salotto:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
climate.studio_est:
|
||||||
|
target_temp_step: 0.5
|
||||||
|
|
||||||
# Load frontend themes from the themes folder
|
# Load frontend themes from the themes folder
|
||||||
frontend:
|
frontend:
|
||||||
|
|||||||
@@ -72,6 +72,32 @@
|
|||||||
state_topic: monitoring/se/values
|
state_topic: monitoring/se/values
|
||||||
value_template: >-
|
value_template: >-
|
||||||
{{ (value_json.hs_t | int) / 100 }}
|
{{ (value_json.hs_t | int) / 100 }}
|
||||||
|
- name: SE_status
|
||||||
|
unique_id: mon_se_status
|
||||||
|
state_topic: monitoring/se/values
|
||||||
|
value_template: >-
|
||||||
|
{{ (value_json.stat | int) }}
|
||||||
|
- name: SE_status_txt
|
||||||
|
unique_id: mon_se_status_txt
|
||||||
|
state_topic: monitoring/se/values
|
||||||
|
value_template: >-
|
||||||
|
{% if (states('sensor.se_status') | int) == 1 -%}
|
||||||
|
OFF
|
||||||
|
{% elif (states('sensor.se_status') | int) == 2 -%}
|
||||||
|
Sleep
|
||||||
|
{% elif (states('sensor.se_status') | int) == 3 -%}
|
||||||
|
Wake Up
|
||||||
|
{% elif (states('sensor.se_status') | int) == 4 -%}
|
||||||
|
Running
|
||||||
|
{% elif (states('sensor.se_status') | int) == 5 -%}
|
||||||
|
Throttled
|
||||||
|
{% elif (states('sensor.se_status') | int) == 6 -%}
|
||||||
|
Shutdown!
|
||||||
|
{% elif (states('sensor.se_status') | int) == 7 -%}
|
||||||
|
Faulty!
|
||||||
|
{% else -%}
|
||||||
|
Template Error
|
||||||
|
{% endif %}
|
||||||
- name: SE_Total_power
|
- name: SE_Total_power
|
||||||
unit_of_measurement: "MW"
|
unit_of_measurement: "MW"
|
||||||
unique_id: mon_se_tot_p
|
unique_id: mon_se_tot_p
|
||||||
|
|||||||
+7
-2
@@ -1,6 +1,4 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
# IMPORTANT NOTE: all sensors here having templates have been migrated/fixed to HERE from other as per Deprecation of platform: Template
|
# IMPORTANT NOTE: all sensors here having templates have been migrated/fixed to HERE from other as per Deprecation of platform: Template
|
||||||
|
|
||||||
# Storage for Bubble Card Modules
|
# Storage for Bubble Card Modules
|
||||||
@@ -69,3 +67,10 @@
|
|||||||
- default_entity_id: sensor.holiday
|
- default_entity_id: sensor.holiday
|
||||||
name: Holiday
|
name: Holiday
|
||||||
state: "{% if states.calendar.holidays_in_italy.state == 'on' %} {{ states.calendar.holidays_in_italy.attributes.message }} {% else %} none {% endif %}"
|
state: "{% if states.calendar.holidays_in_italy.state == 'on' %} {{ states.calendar.holidays_in_italy.attributes.message }} {% else %} none {% endif %}"
|
||||||
|
|
||||||
|
- sensor:
|
||||||
|
- unique_id: AC_total_power_kW
|
||||||
|
unit_of_measurement: kW
|
||||||
|
default_entity_id: sensor.ac_total_power_kW
|
||||||
|
name: AC Total Power
|
||||||
|
state: "{{ ((states('sensor.ac_power_monitoring_power_ab') | float(3)) / 1000) | round(3) }}"
|
||||||
|
|||||||
Reference in New Issue
Block a user