Aperçue de l’animation

Introduction
C’est surement rudimentaire pour beaucoup, mais j’avoue en être assez content vu mon niveau ![]()
Nous avons deux portes de garage non visibles depuis la maison. Le problème c’est que parfois, l’une (ou les deux) reste ouverte la nuit. Pour éviter les oublis, j’ai créé une carte qui affiche une alerte visuelle, sur notre tablette murale, après une certaine heure seulement si les portes ne sont pas fermées.
Ce système est adaptable à n’importe quel capteur de porte (fenêtre, portail, etc.), tant que Home Assistant peut en lire l’état (ON/OFF). Il pourrait aussi être déclenché, lorsque l’on part de chez soit en adaptant le code pour s’assurer que tout est fermé.
Matériel requis
- Capteurs de porte : Compatibles avec Home Assistant (Zigbee, Z-Wave, Wi-Fi, etc.).
Exemple : J’utilise des capteurs Zigbee 3.0 compatibles avec Zigbee2MQTT, mais tout capteur remontant un état (ON/OFF) convient. Lien vers les miens
Principe de fonctionnement
-
Une carte clignotante apparaît sur le dashboard après une heure définie, uniquement si une ou plusieurs portes sont ouvertes.
-
L’alerte permet de visualiser rapidement quel garage est concerné et incite à le fermer.
-
Je ne l’ai pas fait car dans le principe nous sommes là pour voir l’alerte, mais une notification sur le téléphone serait possible en cas d’ouverture anormale en cas d’absence, code à adapter pour ceux qui le souhaitent.
Mise en œuvre
1. Création du capteur d’alerte
Crée un fichier garage_alert.yaml dans /homeassistant/packages/ avec le code suivant :
(vous pouvez en mettre autant que vous voulez en ajoutant ‹ or › retour à la ligne et votre capteur suivant)
J’en profite pour demander aux pros, il serait probablement plus adapter de faire autrement, mais je ne sais pas trop comment faire avec les bonnes pratiques. Comme cela fonctionne, je n’ose toucher a rien
de peur de tout planter.
template:
- binary_sensor:
- name: "Alerte portes garage"
icon: mdi:garage-alert
state: >-
{% set porte_ouverte =
is_state('binary_sensor.Le_nom_de_votre_capteur1', 'on') or
is_state('binary_sensor.Le_nom_de_votre_capteur2', 'on')
%}
{% set heure = now().strftime('%H:%M') %}
{{ porte_ouverte and heure >= '21:00' }} # Remplacez par l’heure souhaitée
Voici le code à mettre dans la carte conditionnelle de votre dashboard
Code à adapter selon les noms de votre ou de vos capteurs :
type: conditional
conditions:
- entity: binary_sensor.alerte_portes_garage
state: "on"
card:
type: markdown
content: |
# 🚨 PORTE DE GARAGE OUVERTE 🚨
**FERMER IMMÉDIATEMENT**
{% if is_state('binary_sensor.Le_nom_de_votre_capteur1', 'on') %}
🔴 Garage 1 ouvert
{% endif %}
{% if is_state('binary_sensor.Le_nom_de_votre_capteur2', 'on') %}
🔴 Garage 2 ouvert
{% endif %}
card_mod:
style: |
ha-card {
background: #b00020;
color: white;
font-size: 15px;
text-align: center;
padding: 20px;
animation: blink 1s infinite;
}
@keyframes blink {
0% { opacity: 1; }
50% { opacity: 0.25; }
100% { opacity: 1; }
}
Normalement si c’est comme pour moi, à partir de l’horaire défini, si un capteur est ouvert vous aurez une carte qui clignote et qui vous donne le(s) nom(s) du/des capteur(s) qui devra/devront être fermé(s), si tout est OK rien n’apparait sur le dashboard… Ca en fait des () et des « s » à mettre… ![]()


