Zigbee2MQTT выходит с ежемесячным ритмом: релиз 2.14.0 появился 1 сентября, а исправление 2.14.2 — 1 октября. Версии вроде бы «обычные», но в них есть несколько изменений, которые стоит заметить до обновления, а не после. Разбираю, что именно изменилось и как обновиться без сюрпризов.

Что нового в 2.14.0
Главная новая функция релиза — возможность сохранять конфигурацию устройства при его удалении из сети (PR #32765, в веб-интерфейсе windfront — #660). Это удобно, когда датчик пришлось переспарить: раньше его пользовательские настройки пропадали вместе с записью, теперь их можно сохранить.
Среди улучшений: настраиваемая синхронизация времени для устройств Tuya (#13004), поддержка внешнего датчика присутствия у Shelly BLU TRV (#12999), работа Schneider Electric CCTFR6400 без хаба (#13053) и дополнительные варианты роутеров SMLIGHT (#13001). В релизе заявлено 84 новых устройства.
Из исправлений полезны debounce для сообщений без payload (#32791), ограничение задержки пинга проверки доступности максимальным таймаутом (#32937) и правки маппинга обнаружения для Home Assistant (#32842).
Что важно проверить перед обновлением
Отдельного раздела breaking changes в релизе нет, но два пункта могут изменить поведение:
- Версия Node.js. Для serialport теперь требуется Node не выше 26.2 (#32975). Если вы ставите Zigbee2MQTT из исходников и недавно обновили Node до свежей ветки, обновление может не заработать. В zigbee-herdsman отдельно появился патч serialport для Node v26.3+ (#1856), но полагаться на него без проверки не стоит.
- Инверсия штор. Исправление #12707 изменило поведение
stateдля устройств с опциейinvert_cover: true. Если у вас на этом построены автоматизации, перепроверьте их после обновления.
Что добавил 2.14.2
Релиз от 1 октября — в основном исправления. Для тех, кто живёт на связке Home Assistant + MQTT, интересны три: повторная публикация retained-сообщений при переподключении к брокеру, исправления состояния штор при движении из полностью открытого или закрытого положения и поддержка большего числа событий действий. В релиз добавлена поддержка 83 новых устройств, среди них Philips Hue, Somfy и Shelly 1L Gen4.
Практика: безопасное обновление
Сначала посмотрим версию Node.js и состояние сервиса (команды для установки из исходников под systemd; у Docker и аддона Home Assistant порядок другой):
node -v
systemctl status zigbee2mqtt --no-pager
journalctl -u zigbee2mqtt -n 50 --no-pager
Затем сделаем резервную копию каталога данных — в нём лежат configuration.yaml, database.db и coordinator_backup.json:
sudo systemctl stop zigbee2mqtt
cp -a /opt/zigbee2mqtt/data /opt/zigbee2mqtt/data.bak-$(date +%F)
cd /opt/zigbee2mqtt && git pull && npm ci
sudo systemctl start zigbee2mqtt
После запуска проверим, что мост опубликовал состояние и устройства подтянулись. Подписка на служебные топики показывает это за несколько секунд:
mosquitto_sub -h localhost -t 'zigbee2mqtt/bridge/state' -t 'zigbee2mqtt/bridge/info' -v -C 2
Если используете Docker, достаточно заменить образ на нужный тег (например, koenkk/zigbee2mqtt:2.14.2) и пересоздать контейнер, предварительно скопировав каталог данных. Фиксировать конкретный тег полезнее, чем latest: так вы сами решаете, когда принимать изменения.
Что это значит на практике
Релизы Zigbee2MQTT в основном добавляют поддержку устройств, и это самая безобидная их часть. Реальные риски в этом цикле — версия Node.js и изменённая инверсия штор. Остальное — исправления, которые лучше получить. Разумный порядок: бэкап, обновление в удобное окно, проверка топиков моста и пары ключевых автоматизаций.
Выводы
2.14.x не требует срочного обновления, но и откладывать его без причины незачем: сохранение конфигурации при удалении устройства упрощает переспаривание, а исправления retained-публикации и Home Assistant discovery убирают мелкие шероховатости. Главное — заранее проверить Node.js и автоматизации со шторами.
Добавить комментарий