Что умеет
| Функция | Свойство | Значения | Управление |
|---|---|---|---|
| Дым | smoke | — | только чтение |
| Carbon monoxide | carbon_monoxide | — | только чтение |
| Вскрытие корпуса | tamper | — | только чтение |
| Батарея разряжена | battery_low | — | только чтение |
| Test | test | — | только чтение |
| Mains power connected | mains_power_connected | — | только чтение |
| Halo alert state | halo_alert_state | safe, pre_smoke, smoke, carbon_monoxide, weather, interconnect_smoke, interconnect_carbon_monoxide, silenced … | только чтение |
| Room | room | none, basement, bedroom, den, dining_room, downstairs, entryway, family_room … | можно менять |
| Halo test result | halo_test_result | idle, running, success, fail_ion, fail_photo, fail_co, fail_temperature, fail_weather … | только чтение |
| Test in progress | test_in_progress | — | только чтение |
| Halo hush state | halo_hush_state | ready, success, timeout, disabled | только чтение |
| Hush active | hush_active | — | только чтение |
| Hush | hush | start, stop | можно менять |
| Test cycle | test_cycle | start, cancel | можно менять |
| Co ppm | co_ppm | ppm | только чтение |
| Light (light) | state, brightness, color_hs | вкл / выкл, яркость, цвет (тон/насыщенность) | можно менять |
| Заряд батареи | battery | % · 0…100 | только чтение |
| Напряжение | voltage | mV | только чтение |
| Температура | temperature | °C | только чтение |
| Влажность | humidity | % | только чтение |
| Давление | pressure | hPa | только чтение |
MQTT: состояние и команды
Zigbee2MQTT публикует состояние устройства в топик zigbee2mqtt/my_device (вместо my_device — имя, которое вы дали устройству). Пример сообщения:
{
"smoke": false,
"carbon_monoxide": false,
"tamper": false,
"battery_low": false,
"test": false,
"mains_power_connected": false,
"halo_alert_state": "safe",
"room": "none",
"halo_test_result": "idle",
"test_in_progress": false,
"halo_hush_state": "ready",
"hush_active": false,
"hush": "start",
"test_cycle": "start",
"state_light": "ON",
"brightness_light": 180,
"linkquality": 120
}
Команды отправляют в zigbee2mqtt/my_device/set:
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state_light":"ON","brightness_light":180}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"color":{"hex":"#ff8800"}}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state_light":"OFF","transition":2}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"room":"basement"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"hush":"stop"}'
Проверить топики и сообщения прямо из браузера — 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-стика.