Accueil » Guide Technique Z-Wave » Intégrer Z-Wave avec Home Assistant : tutoriel complet » 7. Créer des automatisations Z-Wave dans Home Assistant

7. Créer des automatisations Z-Wave dans Home Assistant

L’intégration Z-Wave dans Home Assistant expose toutes les fonctionnalités de vos appareils comme des entités standard (switch, light, sensor, binary_sensor, lock…). Vous pouvez créer des automatisations via l’éditeur graphique de HA ou en YAML. Ce chapitre couvre les cas d’usage Z-Wave les plus courants.

Automatisations basiques via l’éditeur graphique

Exemple 1 : Allumer la lumière quand le détecteur de mouvement se déclenche

Déclencheur : binary_sensor.detecteur_mouvement_entree change sur ‘on’

Condition : sun.sun état = ‘below_horizon’ (nuit)

Action : light.lumiere_entree → turn_on (luminosité 60 %)

# YAML équivalent
alias: 'Lumière entrée sur détection mouvement (nuit)'
trigger:
  - platform: state
    entity_id: binary_sensor.detecteur_mouvement_entree
    to: 'on'
condition:
  - condition: sun
    after: sunset
    before: sunrise
action:
  - service: light.turn_on
    target:
      entity_id: light.lumiere_entree
    data:
      brightness_pct: 60
      color_temp: 3000
mode: single

Exemple 2 : Éteindre la lumière 3 minutes après la fin du mouvement

alias: 'Éteindre lumière entrée après mouvement'
trigger:
  - platform: state
    entity_id: binary_sensor.detecteur_mouvement_entree
    to: 'off'
    for:
      minutes: 3
condition: []
action:
  - service: light.turn_off
    target:
      entity_id: light.lumiere_entree
mode: restart   # Repart si mouvement reprend puis s'arrête

Événements Z-Wave : les scènes et boutons

Les télécommandes et interrupteurs Z-Wave (comme le Fibaro Button ou le Zooz ZEN34) envoient des événements Central Scene (appui simple, double, long…). Ces événements se déclenchent dans HA via zwave_js_value_notification.

Écouter les événements d’un bouton Z-Wave

# Dans Developer Tools > Events, écoutez : zwave_js_value_notification
# Appuyez sur votre bouton Z-Wave et observez l'événement reçu :


event_type: zwave_js_value_notification
data:
  domain: zwave_js
  node_id: 12
  home_id: '0x12345678'
  endpoint: 0
  device_id: abc123def456
  command_class: 91           # Central Scene
  command_class_name: 'Central Scene'
  label: 'Scene 001'
  property: scene
  property_name: scene
  property_key: '001'
  value: 'KeyPressed'         # Appui simple
  # Autres valeurs : KeyPressed2x, KeyPressed3x, KeyHeldDown, KeyReleased

Automatisation avec événement Z-Wave

alias: 'Bouton Z-Wave double appui → scène cinéma'
trigger:
  - platform: event
    event_type: zwave_js_value_notification
    event_data:
      node_id: 12
      property_key: '001'
      value: KeyPressed2x
condition: []
action:
  - service: scene.turn_on
    target:
      entity_id: scene.cinema
mode: single

Contrôler une serrure Z-Wave

Les serrures Z-Wave (Schlage, Yale, Danalock, Danapad…) exposent une entité ‘lock’ dans Home Assistant. Voici les automatisations les plus utiles :

# Verrouiller automatiquement à 23h00
alias: 'Verrouillage automatique nocturne'
trigger:
  - platform: time
    at: '23:00:00'
action:
  - service: lock.lock
    target:
      entity_id: lock.serrure_porte_principale
---
# Notifier si la porte reste déverrouillée > 5 min
alias: 'Alerte porte déverrouillée longtemps'
trigger:
  - platform: state
    entity_id: lock.serrure_porte_principale
    to: 'unlocked'
    for:
      minutes: 5
action:
  - service: notify.mobile_app_mon_iphone
    data:
      message: 'La porte principale est déverrouillée depuis 5 minutes !'
      title: '🔓 Alerte serrure'

Utiliser les données de consommation Z-Wave

Les prises Z-Wave avec mesure de consommation (Fibaro Wall Plug, Qubino Flush 1D, Aeotec Smart Switch) exposent des capteurs d’énergie (puissance en W et consommation en kWh). Vous pouvez les intégrer dans le tableau de bord Énergie de Home Assistant.

# Ajouter au tableau de bord Énergie HA :
# Paramètres > Tableau de bord Énergie > Appareils individuels
# Ajoutez sensor.prise_salon_energy_kwh


# Automatisation : alerte de surconsommation
alias: 'Alerte surconsommation lave-linge'
trigger:
  - platform: numeric_state
    entity_id: sensor.prise_lave_linge_power
    above: 2500   # > 2500 W
    for:
      minutes: 1
action:
  - service: notify.mobile_app_mon_iphone
    data:
      message: 'Le lave-linge consomme {{ states("sensor.prise_lave_linge_power") }} W'

Scénarios avancés : combiner Z-Wave et autres protocoles

La puissance de Home Assistant réside dans sa capacité à combiner Z-Wave avec d’autres protocoles. Voici un scénario complet qui combine Z-Wave, Wi-Fi et géolocalisation :

# Scénario 'Arrivée à la maison'
# Déclencheur : smartphone détecté sur le réseau Wi-Fi local
# Action : déverrouiller serrure Z-Wave + allumer lumières + thermostat


alias: 'Arrivée maison — activation complète'
trigger:
  - platform: state
    entity_id: person.alice
    to: home
condition:
  - condition: state
    entity_id: alarm_control_panel.alarme_maison
    state: 'armed_away'
action:
  - service: lock.unlock
    target:
      entity_id: lock.serrure_porte_principale
  - service: light.turn_on
    target:
      entity_id:
        - light.entree
        - light.salon
    data:
      brightness_pct: 70
  - service: climate.set_temperature
    target:
      entity_id: climate.thermostat_salon
    data:
      temperature: 20
  - service: alarm_control_panel.alarm_disarm
    target:
      entity_id: alarm_control_panel.alarme_maison
    data:
      code: !secret alarm_code