Editor de código con configuración YAML de Home Assistant y una placa de desarrollo sobre la mesa

Plantillas YAML para Home Assistant, ESPHome y Zigbee2MQTT

Última revisión: 08/10/2026

Todo lo que ves aquí lo he probado en una instalación local. Cada bloque se copia con el botón y se adapta en lo marcado. Nada llega por correo: la página se actualiza con los YAML que van saliendo probados.

Automatización con wait_for_trigger y timeout

Enciende la luz cuando detecta movimiento y la apaga si la puerta no se abre en cinco minutos. El enfoque completo, en la guía de repeat y wait_for_trigger.

automation:
  - alias: Luz pasillo con espera
    trigger:
      - platform: state
        entity_id: binary_sensor.movimiento_pasillo
        to: 'on'
    action:
      - service: light.turn_on
        target:
          entity_id: light.pasillo
      - wait_for_trigger:
          - platform: state
            entity_id: binary_sensor.puerta_entrada
            to: 'on'
        timeout: '00:05:00'
      - service: light.turn_off
        target:
          entity_id: light.pasillo

Sensor con plantilla para dos estados opuestos

Otro ejemplo del patrón condicional, explicado en condition template vs choose.

template:
  - sensor:
      - name: Habitacion ocupada real
        state: >-
          {% if is_state('binary_sensor.movimiento', 'on') %}
            ocupada
          {% else %}
            libre
          {% endif %}

Sensor ESPHome con filtro de debounce

Para un sensor de puerta que no quieres que active la automatización con cada rebote. El resto de la lógica, en la guía de falsos positivos.

binary_sensor:
  - platform: gpio
    pin: GPIO13
    name: Puerta terraza
    filters:
      - delayed_on: 300ms
      - delayed_off: 300ms

Zigbee2MQTT: availability y timeout

Evita que Home Assistant dé por muerto un sensor que solo reporta una vez por hora. El detalle, en la guía de availability.

devices:
  '0x00158d0001234567':
    friendly_name: sensor_temperatura_salon
    availability:
      timeout: 600

El domingo llega uno nuevo, ya probado

Cada domingo envío un YAML que he probado esa semana y el aviso cuando una integración local se rompe tras actualizar. Sin PDFs ni promesas de acceso: el archivo es lo que copio yo, tal cual.