Что умеет
| Функция | Свойство | Значения | Управление |
|---|---|---|---|
| Действие (нажатие кнопки) | action | input_1_on, input_1_off, input_1_toggle, input_1_single, input_1_double, input_1_triple, input_1_hold, input_2_on … | только чтение |
| Switch type (sw1) | switch_type_sw1 | toggle, momentary | можно менять |
| Switch type (sw2) | switch_type_sw2 | toggle, momentary | можно менять |
| Switch type (sw3) | switch_type_sw3 | toggle, momentary | можно менять |
| Switch type (sw4) | switch_type_sw4 | toggle, momentary | можно менять |
| Momentary toggle binding (sw1) | momentary_toggle_binding_sw1 | — | можно менять |
| Momentary toggle binding (sw2) | momentary_toggle_binding_sw2 | — | можно менять |
| Momentary toggle binding (sw3) | momentary_toggle_binding_sw3 | — | можно менять |
| Momentary toggle binding (sw4) | momentary_toggle_binding_sw4 | — | можно менять |
| Wi-Fi status | wifi_status | — | только чтение |
| IP address | ip_address | — | только чтение |
| DHCP enabled | dhcp_enabled | — | только чтение |
| Wi-Fi Configuration | wifi_config | — | только чтение |
| Опознать (мигнуть) | identify | identify | можно менять |
MQTT: состояние и команды
Zigbee2MQTT публикует состояние устройства в топик zigbee2mqtt/my_device (вместо my_device — имя, которое вы дали устройству). Пример сообщения:
{
"switch_type_sw1": "toggle",
"switch_type_sw2": "toggle",
"switch_type_sw3": "toggle",
"switch_type_sw4": "toggle",
"momentary_toggle_binding_sw1": false,
"momentary_toggle_binding_sw2": false,
"momentary_toggle_binding_sw3": false,
"momentary_toggle_binding_sw4": false,
"dhcp_enabled": false,
"linkquality": 120
}
Команды отправляют в zigbee2mqtt/my_device/set:
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"switch_type_sw1":"momentary"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"switch_type_sw2":"momentary"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"switch_type_sw3":"momentary"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"switch_type_sw4":"momentary"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"momentary_toggle_binding_sw1":true}'
Проверить топики и сообщения прямо из браузера — MQTT-клиент.
Пример автоматизации Home Assistant
Zigbee2MQTT создаёт объекты Home Assistant по имени устройства. Если назвать его my_device, автоматизация в automations.yaml может выглядеть так:
- alias: "Кнопка"
mode: single
triggers:
- trigger: mqtt
topic: zigbee2mqtt/my_device
value_template: "{{ value_json.action }}"
payload: "input_1_on"
actions:
- action: light.toggle
target:
entity_id: light.living_room
Проверить YAML на ошибки — проверка YAML.
Как подключить
- В Zigbee2MQTT нажмите «Разрешить подключение» (Permit join).
- Переведите устройство в режим сопряжения: обычно — долгое нажатие кнопки сброса (5–10 секунд) до мигания индикатора; лампы — включить и выключить питание 5–6 раз подряд.
- Держите устройство рядом с координатором или ретранслятором, пока идёт сопряжение.
- Дайте устройству понятное имя — от него зависят топики MQTT и объекты в Home Assistant.
Точная процедура и особенности модели — страница устройства в документации Zigbee2MQTT. Нет координатора — подбор Zigbee-стика.