finalgene.zigbee2mqtt

Ansible 角色 zigbee2mqtt

描述

这个角色允许在运行标准 Raspbian Lite 或完整版本的 Raspberry Pi 上安装和配置 zigbee2mqtt。也应该能够在其他 Debian 发行版上工作。

它提供一个脚本 /usr/local/bin/zigbee2mqtt-backup 用于备份和恢复配置和设备数据库。

该角色基于 igami.zigbee2mqtt

要求

具有启用 SSH 和 CC2531 USB 监听器的 Raspberry Pi。

如果在全新的 “无头” Raspberry Pi 服务器上安装,请在 SD 卡的引导目录中添加一个名为 'ssh' 的空文件以启用远程 SSH 访问。

角色变量

变量 类型 默认值 备注
zigbee_user 字符串 zigbee 运行 zigbee2mqtt 的用户。
zigbee_user_groups 字符串 tty,dialout zigbee 用户访问串口所需的组。
zigbee_user_append 布尔值 false 如果为 true,则将用户添加到 zigbee_user_groups 中指定的组。
如果为 false,则用户将仅被添加到 zigbee_user_groups 中指定的组,并从其他所有组中删除。
zigbee_dir 字符串 /opt/zigbee2mqtt zigbee2mqtt 的安装目录。
zigbee_repository 字符串 https://github.com/Koenkk/zigbee2mqtt.git 用于安装的 zigbee2mqtt git 仓库的 URL。
zigbee_version 字符串 HEAD 要安装的版本(应为提交哈希、分支或标签名)。
zigbee_permit_join 布尔值 false 允许新设备加入。
zigbee_mqtt 对象 MQTT 设置(请参见 zigbee_mqtt)。
zigbee_advanced 对象 高级 zigbee2mqtt 设置以配置适配器和其他内容(见 zigbee_advanced)。
zigbee_serial 对象 串口设置(见 zigbee_serial)。
zigbee_frontend 对象/布尔值 如果为 false,则禁用前端。一个对象将配置前端设置(见 zigbee_frontend)。
zigbee_ota 对象 OTA 设备固件更新设置(见 zigbee_ota)。
zigbee_device_options 对象 设备选项设置(参见 设备和组配置指南)。
zigbee_blocklist 对象 设备黑名单(见 设备黑名单/白名单配置指南)。
zigbee_passlist 对象 设备白名单(见 设备黑名单/白名单配置指南)。
zigbee_external_converters 对象列表 外部转换器设置(见 外部转换器)。
zigbee_map_options 对象 网络地图设置(见 网络地图配置指南)。
zigbee_availability 对象 设备可用性功能设置(见 设备可用性配置指南)。
如果未定义,则设备可用性功能将被禁用。
zigbee_homeassistant 对象 Home Assistant 集成设置(见 Home Assistant 集成配置指南)。
如果未定义,Home Assistant 集成将被禁用。
zigbee_generate_new_network_key 布尔值 false 如果为 true,则强制生成新的网络密钥(仅在 zigbee_advanced.network_key 中未指定网络密钥时)。

zigbee_mqtt

所有设置的详细信息可以在 MQTT 配置指南 中找到。

变量 类型 默认值 备注
base_topic 字符串 zigbee2mqtt zigbee2mqtt 的 MQTT 消息基本主题。
server 字符串 mqtt://localhost 连接到 MQTT 服务器的 URL。
user 字符串 连接到 MQTT 服务器的用户名。
password 字符串 连接到 MQTT 服务器的密码。

zigbee_advanced

所有设置的详细信息可以在:

变量 类型 默认值 备注
pan_id 十六进制 0x1a62 ZigBee pan ID。
ext_pan_id 数组 [0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD] Zigbee 扩展 pan ID。
channel 整数 11 ZigBee 通道(注意:使用 ZLL 通道:11、15、20 或 25 以避免问题)。
注意:更改时需要重新配对所有设备。
network_key 字符串 '!network_key network_key' 网络加密密钥,将提高安全性。
注意:更改时需要重新配对所有设备。

zigbee_serial

所有设置的详细信息可以在 适配器设置配置指南 中找到。

变量 类型 默认值 备注
port 字符串 /dev/ttyACM0 Zigbee USB 适配器的位置。
baudrate 整数 115200 串口的波特率。
rtscts 布尔值 false 串口的 RTS / CTS 硬件流控制。

zigbee_frontend

所有前端设置的详细信息可以在 前端配置指南 中找到。

变量 类型 默认值 备注
port 整数 8080 前端监听的端口。

zigbee_ota

所有设置的详细信息可以在 OTA 设备固件更新配置指南 中找到。

变量 类型 默认值 备注
ikea_ota_use_test_url 布尔值 false 使用 IKEA TRADFRI OTA 测试服务器,请参见 OTA 更新文档。
update_check_interval 整数 1440 OTA 更新检查之间的最小时间。
disable_automatic_update_check 布尔值 false 禁用自动更新检查。

zigbee_external_converters

外部转换器的配置。

变量 类型 默认值 备注
name 字符串 外部转换器的名称。
script 字符串 外部转换器脚本。
state 字符串 present present 将创建或更新外部转换器。
absent 将删除现有的外部转换器。

依赖

  • git
  • npm >=5.8
  • nodejs >=10

示例剧本

要使用默认串口安装 zigbee2mqtt:

- name:  Raspbian 上安装 zigbee2mqtt
  hosts: rpi  ip 地址
  become: true

  roles:
  - finalgene.zigbee2mqtt

要使用自定义串口安装 zigbee2mqtt:

- name:  Raspbian 上安装 zigbee2mqtt
  hosts: rpi  ip 地址
  become: true

  roles:
  - role: finalgene.zigbee2mqtt
    vars: 
      zigbee_serial:
        port: /dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018ED3DDF-if00

要使用默认串口并进行 MQTT 身份验证安装 zigbee2mqtt:

- name:  Raspbian 上安装 zigbee2mqtt
  hosts: rpi  ip 地址
  become: true

  roles:
  - role: finalgene.zigbee2mqtt
    vars:
      zigbee_mqtt:
        user: mqtt_user
        password: mqtt_password

许可证

BSD

作者信息

安装
ansible-galaxy install finalgene.zigbee2mqtt
许可证
Unknown
下载
421
拥有者
Software Development