Bonjour à tous,
J’aurais une nouvelle fois besoin de vos lumières
Je possède une climatisation dans mon salon, et je souhaite qu’elle s’éteigne automatiquement lorsque mes ouvrants sont ouverts (via capteur), et qu’elle se rallume automatiquement dans son mode précédent une fois les ouvrants refermés.
J’ai essayé de mettre ça en place avec des input_text
, input_number
et automations
, mais cela ne fonctionne pas comme prévu.
Objectif :
- Éteindre la clim (
climate.salon
) après 2 minutes si un ouvrant est ouvert (binary_sensor.capteurs_d_ouverture_bas
). - Rétablir la clim avec ses réglages précédents une fois les ouvrants refermés.
Mais peu importe qu’elle ait été arrêtée manuellement avant, elle redémarre toujours à la fermeture des ouvrants.
Je pense que le souci vient d’un test ou d’un value_template
mal formulé, mais je ne parviens pas à le corriger.
Extrait de configuration configuration.yaml
# Chargement des thèmes
frontend:
themes: !include_dir_merge_named themes
# Inclusions standard
script: !include scripts.yaml
scene: !include scenes.yaml
group: !include group.yaml
automation: !include automations.yaml
# Helpers personnalisés répartis entre fichiers
input_text: !include_dir_merge_named input_texts
# --- Vos Helpers (Input Select, Number, Boolean) ---
input_select:
ac_leelou_hvac_mode:
name: 'Mode HVAC de Leelou'
options: [ 'off', 'heat', 'cool', 'heat_cool', 'dry', 'fan_only' ]
ac_leelou_fan_mode:
name: 'Mode du ventilateur de Leelou'
options: [ 'auto', '1', '2', '3', '4', '5' ]
initial: 'auto'
ac_parent_hvac_mode:
name: 'Mode HVAC de Parent'
options: [ 'off', 'heat', 'cool', 'heat_cool', 'dry', 'fan_only' ]
ac_parent_fan_mode:
name: 'Mode du ventilateur de Parent'
options: [ 'auto', '1', '2', '3', '4', '5' ]
initial: 'auto'
input_number:
ac_leelou_temperature:
name: 'Température de Leelou'
min: 10
max: 31
step: 0.5
unit_of_measurement: '°C'
initial: 16
ac_parent_temperature:
name: 'Température de Parent'
min: 10
max: 31
step: 0.5
unit_of_measurement: '°C'
initial: 16
clim_salon_temp_avant_arret:
name: Température avant arrêt
min: 10
max: 31
step: 0.5
unit_of_measurement: "°C"
input_boolean:
suspend_climate_automation:
name: Suspendre l'automatisation climatisation
initial: off
# --- Capteurs personnalisés ---
template:
- sensor:
- name: "Salon Température Utilisée"
unique_id: salon_temperature_utilisee
unit_of_measurement: "°C"
state: "{{ states('sensor.temperature_bas') }}"
availability: "{{ states('sensor.temperature_bas') not in ['unavailable', 'unknown', 'none'] }}"
# --- Switchs (WoL + template switch) ---
switch:
- platform: wake_on_lan
name:
mac:
host:
- platform: template
switches:
ordi_tv_controle_complet:
friendly_name: "Contrôle ORDI-TV"
unique_id: ordi_tv_controle_complet
value_template: "{{ is_state('switch.ordi_tv', 'on') }}"
turn_on:
service: switch.turn_on
target:
entity_id: switch.ordi_tv
turn_off:
service: button.press
target:
entity_id: button.ordi_tv_eteindre_2
icon_template: >
{% if is_state('switch.ordi_tv', 'on') %}
mdi:desktop-tower-monitor
{% else %}
mdi:desktop-tower-off
{% endif %}
---
Helpers utilisés
input_text:
clim_salon_etat_avant_arret:
name: Mode HVAC avant arrêt
clim_salon_fan_mode_avant_arret:
name: Mode ventilateur avant arrêt
input_number:
clim_salon_temp_avant_arret:
name: Température avant arrêt
min: 10
max: 31
step: 0.5
unit_of_measurement: "°C"
Automatisations
- alias: Éteindre clim salon après 2 min d'ouverture
trigger:
- platform: state
entity_id: binary_sensor.capteurs_d_ouverture_bas
to: "on"
for: "00:02:00"
condition:
- condition: not
conditions:
- condition: state
entity_id: climate.salon
state: "off"
action:
- service: input_text.set_value
data:
entity_id: input_text.clim_salon_etat_avant_arret
value: "{{ state_attr('climate.salon', 'hvac_mode') }}"
- service: input_number.set_value
data:
entity_id: input_number.clim_salon_temp_avant_arret
value: "{{ state_attr('climate.salon', 'temperature') }}"
- service: input_text.set_value
data:
entity_id: input_text.clim_salon_fan_mode_avant_arret
value: "{{ state_attr('climate.salon', 'fan_mode') }}"
- service: climate.turn_off
target:
entity_id: climate.salon
- alias: Rétablir clim salon après fermeture
trigger:
- platform: state
entity_id: binary_sensor.capteurs_d_ouverture_bas
to: "off"
condition:
- condition: template
value_template: "{{ states('input_text.clim_salon_etat_avant_arret') != 'off' }}"
action:
- service: climate.set_hvac_mode
data:
entity_id: climate.salon
hvac_mode: "{{ states('input_text.clim_salon_etat_avant_arret') }}"
- service: climate.set_temperature
data:
entity_id: climate.salon
temperature: "{{ states('input_number.clim_salon_temp_avant_arret') | float }}"
- service: climate.set_fan_mode
data:
entity_id: climate.salon
fan_mode: "{{ states('input_text.clim_salon_fan_mode_avant_arret') }}"
- service: input_text.set_value
data:
entity_id: input_text.clim_salon_etat_avant_arret
value: "off"
Problème :
L’arrêt automatique fonctionne bien.
Mais même si la clim était déjà à l’arrêt manuellement avant l’ouverture, elle se rallume toujours à la fermeture.
Merci beaucoup à ceux qui prendront le temps de m’aider
Si vous avez une idée de condition ou une meilleure approche, je suis preneur !