Что умеет
| Функция | Свойство | Значения | Управление |
|---|---|---|---|
| Control mode | control_mode | ext_switch, remote, both | можно менять |
| Тип настенного выключателя | switch_type | unknown, toggle, momentary, rotary, auto_config | можно менять |
| Switch status | switch_status | -10000…10000 | только чтение |
| Load detection mode | load_detection_mode | none, first_power_on, every_power_on | можно менять |
| Load type | load_type | unknown, resistive_capacitive, unknown, detecting | только чтение |
| Load dimmable | load_dimmable | unknown, dimmable, not_dimmable | только чтение |
| Power supply mode | power_supply_mode | unknown, no_neutral, with_neutral | только чтение |
| Light | state, brightness | вкл / выкл, яркость | можно менять |
| Эффект | effect | blink, breathe, okay, channel_change, finish_effect, stop_effect | можно менять |
| После отключения питания | power_on_behavior | off, on, toggle, previous | можно менять |
| Действие (нажатие кнопки) | action | on, off, brightness_move_down, brightness_move_up, brightness_stop | только чтение |
MQTT: состояние и команды
Zigbee2MQTT публикует состояние устройства в топик zigbee2mqtt/my_device (вместо my_device — имя, которое вы дали устройству). Пример сообщения:
{
"control_mode": "ext_switch",
"switch_type": "unknown",
"switch_status": 0,
"load_detection_mode": "none",
"load_type": "unknown",
"load_dimmable": "unknown",
"power_supply_mode": "unknown",
"state": "ON",
"brightness": 180,
"power_on_behavior": "off",
"linkquality": 120
}
Команды отправляют в zigbee2mqtt/my_device/set:
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state":"ON","brightness":180}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state":"OFF","transition":2}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"control_mode":"remote"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"switch_type":"toggle"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"load_detection_mode":"first_power_on"}'
Проверить топики и сообщения прямо из браузера — MQTT-клиент.
Пример автоматизации Home Assistant
Zigbee2MQTT создаёт объекты Home Assistant по имени устройства. Если назвать его my_device, автоматизация в automations.yaml может выглядеть так:
- alias: "Свет на закате"
mode: single
triggers:
- trigger: sun
event: sunset
offset: "-00:15:00"
actions:
- action: light.turn_on
target:
entity_id: light.my_device
data:
brightness_pct: 70
Проверить YAML на ошибки — проверка YAML.
Как подключить
- В Zigbee2MQTT нажмите «Разрешить подключение» (Permit join).
- Переведите устройство в режим сопряжения: обычно — долгое нажатие кнопки сброса (5–10 секунд) до мигания индикатора; лампы — включить и выключить питание 5–6 раз подряд.
- Держите устройство рядом с координатором или ретранслятором, пока идёт сопряжение.
- Дайте устройству понятное имя — от него зависят топики MQTT и объекты в Home Assistant.
Точная процедура и особенности модели — страница устройства в документации Zigbee2MQTT. Нет координатора — подбор Zigbee-стика.