
Zigbee2MQTT — это программа-посредник между Zigbee-сетью и MQTT. Датчик разговаривает по Zigbee с координатором, Zigbee2MQTT переводит его сообщение в понятные данные, а MQTT-брокер доставляет их GrowerHub, Home Assistant или другому сервису. В обратную сторону команда реле проходит тот же путь.
Система по слоям
| Слой | Что делает | Пример |
|---|---|---|
| Zigbee-устройство | измеряет или выполняет команду | датчик температуры, розетка, реле |
| координатор | создаёт одну Zigbee-сеть | USB-адаптер с поддерживаемой прошивкой |
| Zigbee2MQTT | опрашивает устройства и преобразует сообщения | температура превращается в JSON-поле |
| MQTT-брокер | доставляет сообщения подписчикам | Mosquitto |
| приложение | показывает данные и применяет правила | GrowerHub или Home Assistant |
Если пропал датчик, неисправность может быть на любом слое. Поэтому фраза «не работает Zigbee2MQTT» слишком общая: сначала нужно понять, видит ли адаптер сеть, завершён ли pairing, опубликовано ли MQTT-сообщение и прочитал ли его потребитель.
Что Zigbee2MQTT не заменяет
- Координатор — это физический радиомодуль, а Zigbee2MQTT работает с ним как программа.
- MQTT-брокер принимает и доставляет сообщения; Zigbee2MQTT подключается к нему как клиент.
- Home Assistant или GrowerHub показывают данные и применяют пользовательские правила.
- Интернет не нужен самой локальной Zigbee-сети. Он нужен, если MQTT-брокер или интерфейс находятся вне вашего компьютера, как при прямом подключении к GrowerHub.
Поэтому установка обычно состоит минимум из USB-координатора, Zigbee2MQTT, MQTT-брокера и приложения. В GrowerHub MQTT-брокер и кабинет уже доступны: пользователь настраивает координатор и Zigbee2MQTT.
Координатор, роутер и конечное устройство
Координатор в сети один. Питающиеся от сети устройства часто работают роутерами и пересылают сообщения. Батарейные датчики обычно спят и являются конечными устройствами. Они экономят заряд, но не усиливают сеть.
Для теплицы это означает, что дальний батарейный датчик нельзя «усилить» вторым батарейным датчиком. Нужен подходящий роутер между ним и координатором. Металл, влажные конструкции и оборудование 2,4 ГГц дополнительно влияют на связь. Практические рекомендации есть в официальной инструкции Improve network range and stability.
Что происходит при подключении
- Zigbee2MQTT временно разрешает новым устройствам входить в сеть.
- Устройство переводят в pairing или выполняют заводской reset.
- Оно присоединяется к сети и проходит interview.
- Zigbee2MQTT определяет модель и её возможности.
- Состояния начинают публиковаться в MQTT.
Официальный процесс и подключение через конкретный роутер описаны в Allowing devices to join. Если interview не заканчивается, переходите к пошаговой диагностике Zigbee-устройства.
Топики без лишней теории
MQTT-топик похож на адрес сообщения. Устройство публикует своё состояние в топик с friendly name, а команда обычно отправляется в связанный топик /set. Служебные операции идут через bridge/request и bridge/response.
Точные имена зависят от настроенного base topic. Не привязывайте бизнес-логику к случайному имени вроде 0xa4...: дайте устройству стабильный friendly name, а аппаратный адрес храните как технический атрибут.
Что такое exposes
Exposes — перечень свойств и действий, которые Zigbee2MQTT знает для конкретной модели: температура, влажность, заряд, состояние реле, яркость и другие возможности. Наличие Zigbee-логотипа не гарантирует нужного поля. До покупки проверяйте точную модель в каталоге поддерживаемых устройств.
Для GrowerHub важно и направление свойства: одно значение можно только читать, другим разрешено управлять. Команда насосу или свету должна отправляться только для явно поддерживаемого управляемого свойства.
Availability и свежесть данных
Availability показывает, считает ли Zigbee2MQTT устройство доступным. Активные и спящие устройства проверяются с разными таймаутами. Подробности и MQTT-топик описаны в Device Availability.
Однако online не означает, что конкретное измерение свежее. Для управления храните время последнего значения. Если влажность почвы не обновлялась дольше допустимого интервала, новый полив должен блокироваться или переходить в ручную проверку.
Как GrowerHub использует этот слой
GrowerHub получает через MQTT состояния и команды, связывает устройство с зоной и показывает его рядом с боксом, растениями и сценарием. Пользователю не нужно каждый день работать с техническими топиками, но при диагностике путь сообщения остаётся прозрачным.
Пример такого представления есть на странице автоматизации мини-фермы: отдельно видны зона, свежесть показаний и условия управления.
Ограничения
- Zigbee2MQTT не делает бытовой датчик влагозащищённым.
- Поддерживаемая модель может иметь другую аппаратную ревизию.
- Хороший
linkqualityв один момент не гарантирует стабильность за сутки. - MQTT доставляет команду, но не подтверждает физический результат насоса или вентилятора без обратной связи.
- Для опасной нагрузки нужны независимые ограничения и безопасный монтаж.
Что проверить после установки
- координатор находится вдали от источников помех;
- сеть имеет питающиеся роутеры;
- pairing завершён и модель распознана;
- нужные exposes реально обновляются;
- availability включена осознанно;
- friendly names понятны;
- GrowerHub блокирует действие по устаревшим данным.
Так Zigbee2MQTT становится не «ещё одним хабом», а понятным транспортным слоем между устройствами и системой управления.
GrowerHub выдаёт изолированное пространство MQTT и готовую конфигурацию после входа. Выберите координатор, затем пройдите короткое подключение; существующий локальный MQTT можно сохранить через локальный мост.
Для первого стенда на обычном компьютере используйте отдельную инструкцию по установке Zigbee2MQTT на Windows.