zigbee_vert_ai_331

Configura Zigbee en Hassio 2

Configura Zigbee en Hassio

Este proyecto que se encuentra en GitHub le permite finalmente deshacerse de todos los HUB o GATEWAY´S oficiales que dispone en su hogar para controlar sus sensores, lámparas y todos los dispositivos que se comunican a través del protocolo ZigBee, con un único GATEWAY podrá controlar todos sus zigbee´s. Ya no será necesario comprar esos costosos dispositivos de control para cada marca (Xiaomi / TRADFRI / Hue).
El cc2531 ZigBee le permite controlar los diversos dispositivos compatibles a través de MQTT (por lo tanto, zigbee2mqtt en hassio).

Para este paso será necesario instalar un firmware especial utilizando un depurador y un adaptador. Insertarlo en el puerto USB de la Raspberry actuará como un puente entre Home Assistant y los dispositivos ZigBee, esta será la clave del coordinador , si desea más cobertura puede agregar un enrutador  en las que se instalará un firmware diferente, y será suficiente para alimentarlo con una fuente de alimentación USB común para que funcione.

Toda la información que encontrará en la guía oficial en inglés  https://github.com/Koenkk/zigbee2mqtt

Veamos cómo proceder para que cc2531 se configure en zigbee2mqtt en hassio

PROGRAMAR EL CC2531 COMO COORDINADOR

CONFIGURA ZIGBEE EN HASSIO

1.   INSTALACIÓN DEL ADDON DE MOSQUITTO BROKER MQTT 

Instale el complemento MQTT BROKER ya presente en los repositorios estándar de Hassio, ingresando la configuración de usuario y contraseña que quiera darle al broker que manejará toda la comunicación en Mqtt.

{
  "logins": [
    {
      "username": "User Mqtt",
      "password": "Password Mqtt"
    }
  ],
  "anonymous": false,
  "customize": {
    "active": false,
    "folder": "mosquitto"
  },
  "certfile": "fullchain.pem",
  "keyfile": "privkey.pem"
}

Ahora podrá reiniciar.
Desde el menú de Hassio, vaya a configuración / addons / MQTT y presione configuración .
Establezca la IP de la Raspberry o NUC, el puerto estándar es el 1883, el Usuario y la Contraseña que configuró en el complemento anteriormente, finalmente marque Habilitar Discovery.
Reinicie nuevamente y Home Assistant estará listo para recibir las nuevas entidades que proporcionará el usb ZigBee.

2. INSTALACIÓN ADDON PARA HASSIO

Conecte el usb cc2531 coordinadora «A» a un puerto USB de la Raspberry o Nuc, si dispone de un  enrutador «B»  enciedalo  y colóquelo cerca de la Raspberry / Nuc.

  • Configure de la siguiente manera y luego inicie el complemento presionando inicio
{
  "data_path": "/share/zigbee2mqtt",
  "homeassistant": true,
  "permit_join": false,
  "mqtt_base_topic": "zigbee2mqtt",
  "mqtt_server": "mqtt://homeassistant",
  "serial_port": "/dev/ttyACM0",
  "devices": [],
  "network_key": [],
  "mqtt_user": "mqtt user",
  "mqtt_pass": "mqtt password"
}

mqtt_user   será el nombre de usuario que está usando para mosquitto MQTT
mqtt_pass  será la contraseña de usuario que está usando para mosquitto MQTT
Si más tarde desea deshabilitar el LED verde que siempre está encendido en el usb, agregue en la configuración final la línea.
  » disable_led «: true

ADVERTENCIA: no copie y pegue toda la configuración, algunas líneas pueden dar errores.

Verifique los registros en busca de errores.
Verifique que haya creado el archivo configuration.yaml , lo encontrará en:
HASSIO share zigbee2mqtt configuration.yaml

En el interior encontrarás esto:

devices:
homeassistant: true
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://homeassistant
permit_join: false
serial:
  port: /dev/ttyACM0

3. CREACIÓN Y CONFIGURACION DE LOS YALM.

Ahora inserte esta líneas en los archivos YALM que corresponda.

mqtt:
  broker: core-mosquitto # Qui inserite il vostro broker
  discovery: true
homeassistant:
  customize:
    script.update_mappa_zigbee:
      icon: mdi:graphql
input_boolean:
  zigbee_permit_join:
    name: Allow devices to join
    initial: off
    icon: mdi:cellphone-wireless
input_text:
 remove_sensor:
   name: "Sensore da Rimuovere"
   initial: "-"
   icon: mdi:textbox
timer:
  zigbee_permit_join:
    name: Time remaining
    duration: 600 # Updated this to the number of seconds you wish
sensor:
  - platform: mqtt
    name: Bridge state
    state_topic: "zigbee2mqtt/bridge/state"
    icon: mdi:router-wireless
group:
  zigbee_group:
    name: Zigbee
    entities:
      - input_boolean.zigbee_permit_join
      - timer.zigbee_permit_join
      - sensor.bridge_state
      - input_text.remove_sensor
      - script.zigbee_remove
automation:
  - id: enable_zigbee_join
    alias: Enable Zigbee joining
    hide_entity: true
    initial_state: true
    trigger:
      platform: state
      entity_id: input_boolean.zigbee_permit_join
      to: 'on'
    action:
    - service: mqtt.publish
      data:
        topic: zigbee2mqtt/bridge/config/permit_join
        payload: 'true'
    - service: timer.start
      data:
        entity_id: timer.zigbee_permit_join
        
  - id: disable_zigbee_join
    hide_entity: true
    initial_state: true
    alias: Disable Zigbee joining
    trigger:
    - entity_id: input_boolean.zigbee_permit_join
      platform: state
      to: 'off'
    action:
    - data:
        payload: 'false'
        topic: zigbee2mqtt/bridge/config/permit_join
      service: mqtt.publish
    - data:
        entity_id: timer.zigbee_permit_join
      service: timer.cancel

  - id: disable_zigbee_join_timer
    alias: Disable Zigbee joining by timer
    hide_entity: true
    initial_state: true
    trigger:
    - platform: event
      event_type: timer.finished
      event_data:
        entity_id: timer.zigbee_permit_join
    action:
    - service: mqtt.publish
      data:
        topic: zigbee2mqtt/bridge/config/permit_join
        payload: 'false'
    - service: input_boolean.turn_off
      data:
        entity_id: input_boolean.zigbee_permit_join
        
        

  - alias: "ZigBee restart"
    hide_entity: true
    initial_state: true
    trigger:
      platform: homeassistant
      event: start
    action:
      - delay: '00:02:30'
      - service: hassio.addon_restart
        data:
          addon: "7ad98f9c_zigbee2mqtt"
script:
  update_mappa_zigbee:
    alias: Actualización Mapa Zigbee
    sequence:
    - service: zigbee2mqtt_networkmap.update


zigbee_remove:
  alias: Borrar sensor Zigbee
  sequence:
  - service: mqtt.publish
    data_template:
      topic: "zigbee2mqtt/bridge/config/remove"
      payload: "{{ states('input_text.remove_sensor') }}"

Después de haberlo guardado, verifique la configuración con VERIFICAR LA CONFIGURACIÓN y reinicie HA.
Encontrarás este nuevo grupo en pantalla

3. 1 CONFIGURACIÓN DE LOVELACE

Este es el código para crear la tarjeta en Lovelace

- type: entities
  title: ZigBee
  show_header_toggle: false
  entities:
    - entity: input_boolean.zigbee_permit_join
    - entity: timer.zigbee_permit_join
    - entity: sensor.bridge_state
    - entity: script.update_mappa_zigbee
    - type: divider
    - entity: input_text.remove_sensor
    - entity: script.zigbee_remove

PARING NUEVO DISPOSITIVO

Presione el interruptor Allow device to join , luego vaya al addon zigbee2mqtt y lea los registros presionando el botón Actualizar de vez en cuando a medida que avanza el emparejamiento.

El siguiente proceso puede variar en función de la marca del dispositivo que queremos emparejar.

Presione el botón de reinicio durante 5 segundos, esto parpadeará 3 veces, luego suelte el botón de reinicio, espere 2 o 3 parpadeos más (aproximadamente 1/3 segundos) y presione y suelte inmediatamente el botón de reinicio, el dispositivo hará un breve parpadeo y luego repita la presión breve, repita esta última fase: la presión de espera parpadea unas diez veces. Mientras tanto, presione el botón Actualizar en el complemento para verificar si el dispositivo se ha emparejado de lo contrario, repita la operación.
Cada marca tendrá un procedimiento ligeramente diferente para el emparejamiento.

Consulte la guía oficial para obtener más detalles
https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices

2 Comments

  1. El punto 3 pone: «Ahora inserte esta líneas en los archivos YALM que corresponda.».
    Ya que están separados, para los que somos novatos sería bueno (o más bien imprescindible) saber los archivos YALM a los que se refiere cada uno de los apartados.
    Ya se que se puede «dividir» el archivo config.yalm en varios, pero, ¿podéis poner una indicación de que archivo utilizar si no se hace una configuración personal?

    1. Saludos, si te fijas en cada apartado, al inicio del mismo se indica a que pertenece, sensor, timer, group, en caso de tenerlos por grupos eso indica el archivo YAML al que pertenece.

Deja un comentario

A %d blogueros les gusta esto: