Compare commits
3 Commits
563614da00
...
b76d01d8c6
| Author | SHA1 | Date | |
|---|---|---|---|
| b76d01d8c6 | |||
| b0c87c5443 | |||
| e196adf839 |
+28
-77
@@ -514,8 +514,8 @@
|
|||||||
target: '{{ recipient_persiane_list_gmail[''target''] }}'
|
target: '{{ recipient_persiane_list_gmail[''target''] }}'
|
||||||
message: 'Ricordati di ordinare il materiale pwr il terzo lotto incluse serramenti
|
message: 'Ricordati di ordinare il materiale pwr il terzo lotto incluse serramenti
|
||||||
e scorrevoli della porta finestra discussa con Mario. '
|
e scorrevoli della porta finestra discussa con Mario. '
|
||||||
title: Il 26 Giugno ti aspetto a montare le persiane che hai gia fatto. Ricordati
|
title: l'8 luglio Mercoledi prossimo ti aspetto a montare le persiane che hai
|
||||||
di ordinare il materiale (vedi mail qui sotto)
|
gia fatto. Ricordati di ordinare il materiale (vedi mail qui sotto)
|
||||||
mode: single
|
mode: single
|
||||||
variables:
|
variables:
|
||||||
_cafe_metadata:
|
_cafe_metadata:
|
||||||
@@ -630,28 +630,6 @@
|
|||||||
entity_id: switch.smart_plug_11
|
entity_id: switch.smart_plug_11
|
||||||
data: {}
|
data: {}
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1780877974485'
|
|
||||||
alias: Antizanzare 1 ora
|
|
||||||
description: ''
|
|
||||||
triggers: []
|
|
||||||
conditions: []
|
|
||||||
actions:
|
|
||||||
- action: light.turn_on
|
|
||||||
metadata: {}
|
|
||||||
target:
|
|
||||||
entity_id: light.presa_smart_11
|
|
||||||
data: {}
|
|
||||||
- delay:
|
|
||||||
hours: 1
|
|
||||||
minutes: 0
|
|
||||||
seconds: 0
|
|
||||||
milliseconds: 0
|
|
||||||
- action: light.turn_off
|
|
||||||
metadata: {}
|
|
||||||
target:
|
|
||||||
entity_id: light.presa_smart_11
|
|
||||||
data: {}
|
|
||||||
mode: single
|
|
||||||
- id: '1781556554445'
|
- id: '1781556554445'
|
||||||
alias: Start Antizanzare (SmartPlug 11) per 1 ora
|
alias: Start Antizanzare (SmartPlug 11) per 1 ora
|
||||||
description: ''
|
description: ''
|
||||||
@@ -674,72 +652,45 @@
|
|||||||
id: Garage_door_open
|
id: Garage_door_open
|
||||||
for:
|
for:
|
||||||
hours: 0
|
hours: 0
|
||||||
minutes: 30
|
minutes: 3
|
||||||
|
seconds: 0
|
||||||
|
- trigger: state
|
||||||
|
entity_id:
|
||||||
|
- binary_sensor.garage_porta_tagliafuoco_contact
|
||||||
|
from:
|
||||||
|
- 'on'
|
||||||
|
to:
|
||||||
|
- 'off'
|
||||||
|
id: Garage_door_close
|
||||||
|
for:
|
||||||
|
hours: 0
|
||||||
|
minutes: 3
|
||||||
seconds: 0
|
seconds: 0
|
||||||
conditions: []
|
conditions: []
|
||||||
actions:
|
actions:
|
||||||
- action: notify.mobile_app_tiziano_iphone15pro
|
|
||||||
metadata: {}
|
|
||||||
data:
|
|
||||||
title: Porta Tagliafuoco Rimasta Aperta
|
|
||||||
mode: single
|
|
||||||
- id: '1782034930892'
|
|
||||||
alias: Mansarda_auto_AC_test
|
|
||||||
description: ''
|
|
||||||
triggers:
|
|
||||||
- trigger: numeric_state
|
|
||||||
entity_id:
|
|
||||||
- sensor.mansarda_inside_temperature
|
|
||||||
above: 29
|
|
||||||
id: Mansarda_AC_on
|
|
||||||
- trigger: numeric_state
|
|
||||||
entity_id:
|
|
||||||
- sensor.mansarda_temperature
|
|
||||||
below: 27
|
|
||||||
id: Mansarda_AC_off
|
|
||||||
conditions: []
|
|
||||||
actions:
|
|
||||||
- action: climate.set_hvac_mode
|
|
||||||
metadata: {}
|
|
||||||
target:
|
|
||||||
entity_id: climate.mansarda
|
|
||||||
data:
|
|
||||||
hvac_mode: cool
|
|
||||||
- choose:
|
- choose:
|
||||||
- conditions:
|
- conditions:
|
||||||
- condition: trigger
|
- condition: trigger
|
||||||
id:
|
id:
|
||||||
- Mansarda_AC_on
|
- Garage_door_open
|
||||||
sequence:
|
sequence:
|
||||||
- action: climate.set_hvac_mode
|
- action: notify.mobile_app_tiziano_iphone15pro
|
||||||
metadata: {}
|
metadata: {}
|
||||||
target:
|
|
||||||
entity_id: climate.mansarda
|
|
||||||
data:
|
data:
|
||||||
hvac_mode: cool
|
title: Porta Tagliafuoco Rimasta Aperta
|
||||||
- action: climate.set_fan_mode
|
target: notify.my_device
|
||||||
metadata: {}
|
message: ''
|
||||||
target:
|
|
||||||
entity_id: climate.mansarda
|
|
||||||
data:
|
|
||||||
fan_mode: Auto
|
|
||||||
- conditions:
|
- conditions:
|
||||||
- condition: trigger
|
- condition: trigger
|
||||||
id:
|
id:
|
||||||
- Mansarda_AC_off
|
- Garage_door_close
|
||||||
sequence:
|
sequence:
|
||||||
- action: climate.set_hvac_mode
|
- action: notify.mobile_app_tiziano_iphone15pro
|
||||||
metadata: {}
|
metadata: {}
|
||||||
target:
|
|
||||||
entity_id: climate.mansarda
|
|
||||||
data:
|
data:
|
||||||
hvac_mode: 'off'
|
title: Porta Tagliafuoco e' stata chiusa
|
||||||
- action: climate.set_fan_mode
|
target: notify.my_device
|
||||||
metadata: {}
|
message: ''
|
||||||
target:
|
|
||||||
entity_id: climate.mansarda
|
|
||||||
data:
|
|
||||||
fan_mode: Auto
|
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1782056620495'
|
- id: '1782056620495'
|
||||||
alias: Auto_AC_SoggiornoP1
|
alias: Auto_AC_SoggiornoP1
|
||||||
@@ -756,7 +707,7 @@
|
|||||||
use_blueprint:
|
use_blueprint:
|
||||||
path: homeassistant/auto_ac_control.yaml
|
path: homeassistant/auto_ac_control.yaml
|
||||||
input:
|
input:
|
||||||
temp_threshold: 27
|
temp_threshold: 26
|
||||||
climate_target: climate.soggiorno
|
climate_target: climate.soggiorno
|
||||||
temp_hist: 1
|
temp_hist: 1
|
||||||
- id: '1782579138023'
|
- id: '1782579138023'
|
||||||
@@ -765,8 +716,8 @@
|
|||||||
use_blueprint:
|
use_blueprint:
|
||||||
path: homeassistant/auto_ac_control.yaml
|
path: homeassistant/auto_ac_control.yaml
|
||||||
input:
|
input:
|
||||||
temp_threshold: 30
|
temp_threshold: 26
|
||||||
temp_hist: 1
|
temp_hist: 2
|
||||||
climate_target: climate.mansarda
|
climate_target: climate.mansarda
|
||||||
- id: '1782579247001'
|
- id: '1782579247001'
|
||||||
alias: Auto_AC_Matrimoniale
|
alias: Auto_AC_Matrimoniale
|
||||||
|
|||||||
@@ -32,22 +32,37 @@ blueprint:
|
|||||||
filter:
|
filter:
|
||||||
- domain: climate
|
- domain: climate
|
||||||
|
|
||||||
mode: single
|
mode: restart
|
||||||
|
|
||||||
# Definiamo l'input come variabile per usarlo dentro i template dei trigger
|
# Calcoliamo matematicamente i valori statici qui per i trigger nativi
|
||||||
trigger_variables:
|
trigger_variables:
|
||||||
target_temp: !input temp_threshold
|
target_temp: !input temp_threshold
|
||||||
target_hist: !input temp_hist
|
target_hist: !input temp_hist
|
||||||
sensor_entity: !input climate_target
|
# Calcolo automatico della soglia di spegnimento (es. 29 - 2 = 27)
|
||||||
|
soglia_off: "{{ ( ( target_temp | float(0) ) - ( target_hist | float(0) ) ) | default(27.0) }}"
|
||||||
|
|
||||||
|
# Questa variabile serve SOLO per semplificare il codice dentro le azioni (actions)
|
||||||
|
variables:
|
||||||
|
target_AC: !input climate_target
|
||||||
|
|
||||||
triggers:
|
triggers:
|
||||||
# Si attiva quando la temperatura attuale del clima sale SOPRA la soglia impostata
|
# Si attiva IMMEDIATAMENTE se la temperatura sale sopra la soglia (o se abbassi la soglia sotto la temperatura attuale)
|
||||||
- trigger: template
|
- trigger: numeric_state
|
||||||
value_template: "{{ state_attr(sensor_entity, 'current_temperature') | float(0) >= target_temp | float(0) }}"
|
entity_id: !input climate_target
|
||||||
|
attribute: current_temperature
|
||||||
|
above: !input temp_threshold
|
||||||
id: AC_on
|
id: AC_on
|
||||||
# Si attiva quando la temperatura attuale del clima scende SOTTO la soglia meno 2 gradi
|
|
||||||
|
# Si attiva IMMEDIATAMENTE se la temperatura scende sotto la soglia meno l'isteresi
|
||||||
|
# AC_off: Risolve il problema del "none" calcolando l'isteresi con valori di ripiego sicuri per il reload YAML.
|
||||||
- trigger: template
|
- trigger: template
|
||||||
value_template: "{{ state_attr(sensor_entity, 'current_temperature') | float(0) < (target_temp | float(0) - temp_hist ) }}"
|
value_template: >-
|
||||||
|
{% set entity = '!input climate_target' %}
|
||||||
|
{% set current = state_attr(entity, 'current_temperature') | float(0) %}
|
||||||
|
{% set t_temp = target_temp | float(29.0) %}
|
||||||
|
{% set t_hist = target_hist | float(2.0) %}
|
||||||
|
{% set calcolo_soglia_off = t_temp - t_hist %}
|
||||||
|
{{ current < calcolo_soglia_off and current > 0 }}
|
||||||
id: AC_off
|
id: AC_off
|
||||||
|
|
||||||
conditions: []
|
conditions: []
|
||||||
@@ -68,7 +83,19 @@ actions:
|
|||||||
target:
|
target:
|
||||||
entity_id: !input climate_target
|
entity_id: !input climate_target
|
||||||
data:
|
data:
|
||||||
fan_mode: Auto
|
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 -%}
|
||||||
|
5
|
||||||
|
{% elif diff_temp >= 3 and diff_temp < 4 -%}
|
||||||
|
4
|
||||||
|
{% elif diff_temp >= 2 and diff_temp < 3 -%}
|
||||||
|
3
|
||||||
|
{% else -%}
|
||||||
|
Auto
|
||||||
|
{% endif %}
|
||||||
- conditions:
|
- conditions:
|
||||||
- condition: trigger
|
- condition: trigger
|
||||||
id:
|
id:
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
Reference in New Issue
Block a user