Zigbee2MQTT не запускается после обновления прошивки SLZB-06

После обновления прошивки координатора SMLIGHT SLZB-06 (это адаптер, который управляет всей Zigbee-сетью) Zigbee2MQTT может перестать запускаться - в логе появляется ошибка network commissioning timed out, а иногда служба стартует с пустым списком устройств. Чаще всего помогает откат прошивки координатора на более раннюю стабильную версию - 4 сообщения об успехе в 3 ветках форума. Второй по числу подтверждений прием - сменить Zigbee-канал на другой и вернуть исходный, это принесло 3 успешных сообщения в одной ветке.

Как выглядит проблема

Во всех ветках Zigbee2MQTT не проходит запуск. Варианты из обсуждений:

  • после обновления прошивки SLZB-06 Zigbee2MQTT сначала не запускается, а затем стартует без единого устройства;
  • после обновления dev-версии прошивки 3.3.3.dev1 (сборки для разработчиков) все Zigbee-устройства уходят в offline, и старт завершается ошибкой network commissioning timed out;
  • та же ошибка встречается после обновления прошивки координатора и даже после сбоя Ethernet-координатора SLZB-06 без всякого обновления.

Полный текст ошибки из лога:

Error: network commissioning timed out - most likely network with the same panId or extendedPanId already exists nearby (Error: AREQ - ZDO - stateChangeInd after 60000ms

Среди устройств в ветках упоминается Innr SP242. Если после потери связи с координатором Zigbee2MQTT не перезапускается сам, это отдельная история со своими решениями. Отдельная ситуация и ошибка версии протокола EZSP - она тоже возникает после смены прошивки, но текст у нее другой.

Причины

Точную причину в этих ветках никто не подтвердил, все три варианта ниже - предположения участников.

ПричинаКак проверитьЧто сделать
База database.db очищается при старте после обновления прошивкиZigbee2MQTT запускается, но устройств в нем нетСкопировать database.db из резервной копии поверх текущей
Канал или сетевые настройки в резервной копии Zigbee2MQTT не совпадают с координаторомКосвенный признак - смена канала на другой и обратно возвращает запускСменить Zigbee-канал и вернуть исходный
Рядом работает другая Zigbee-сеть с теми же panId или extendedPanId (идентификаторами сети)На это прямо указывает текст ошибкиСнять антенну SLZB-06 на время старта (результат неоднозначный)

Решения

Начинайте с отката прошивки координатора - у него больше всего подтверждений. Все эти способы - опыт пользователей форума, официальная документация Zigbee2MQTT их не описывает.

Откат прошивки координатора

Самый частый успешный вариант - вернуться с новой прошивки на более раннюю стабильную версию. Помогло в 3 ветках форума, где его пробовали: 4 сообщения об успехе и 1 о частичном результате. Ссылки из веток: список изменений (changelog) SLZB OS на сайте SMLIGHT и обсуждение в проекте Z-Stack-firmware на GitHub.

Смена канала туда и обратно

Смените настройку Zigbee-канала на другое значение, а затем верните исходное. Помогло в одной ветке: 3 сообщения об успехе и 1 о частичном результате.

Антенна на время старта

Открутите антенну SLZB-06, пока Zigbee2MQTT стартует, затем закрутите обратно. Результат неоднозначный: из двух веток 1 успех и 1 неудача. Прием появился в обсуждении, где причиной считали чужую Zigbee-сеть с тем же panId поблизости.

Способы с единичными подтверждениями

Эти приемы сработали по одному разу в разных ветках:

  • остановите Zigbee2MQTT, переименуйте его папку zigbee2mqtt в old, скопируйте на ее место последнюю рабочую папку zigbee2mqtt и перезагрузите Home Assistant;
  • скопируйте database.db из резервной копии поверх текущего файла;
  • комбинированный вариант - откат прошивки SLZB, смена канала на 20 и возврат на 11, восстановление прежнего Zigbee2MQTT и аппаратный сброс (hard reset) SLZB;
  • откат операционной системы адаптера SLZB-06 OS до версии 2.8.7.

Подробно о настройке - в гайде по установке и настройке Zigbee2MQTT в Home Assistant.

Если не помогло

Пользователи пробовали и такие приемы, но результата не было:

  • переименовать coordinator_backup.json и запустить Zigbee2MQTT;
  • изменить PAN ID и вернуть исходное значение;
  • обновить прошивку координатора до 20250325;
  • выключить и включить питание SLZB-06.

Остался один неподтвержденный путь - сделать резервную копию Zigbee2MQTT, удалить старые резервные копии и запустить Zigbee2MQTT с нуля. В одной ветке это дало лишь частичный результат, успешных повторов нет.

Частые вопросы

Поможет ли обновление прошивки до самой новой версии?

Судя по сообщениям, нет. В одной ветке пользователь обновил прошивку координатора до 20250325 - Zigbee2MQTT так и не запустился. Чаще всего помогал откат на более раннюю стабильную прошивку, а одному пользователю - откат самой SLZB-06 OS до 2.8.7.

Zigbee2MQTT запустился, но устройств нет. Это та же проблема?

Это тот же сценарий. В одной ветке после обновления dev-прошивки SLZB-06 Zigbee2MQTT сначала не стартовал, а потом стартовал с пустым списком устройств. Причину в ветке никто не подтвердил, предположение - база database.db очистилась при старте. Одному пользователю вернул устройства файл database.db из резервной копии, скопированный поверх текущего. Если же устройства есть в Zigbee2MQTT, но не появляются в Home Assistant, это другая ситуация.

Стоит ли менять PAN ID, как подсказывает текст ошибки?

Пользователи пробовали - не помогло. В одной ветке меняли PAN ID и возвращали исходное значение, запуск так и не восстановился. Строка про сеть с тем же panId или extendedPanId поблизости - лишь предположение, а не установленный диагноз. Другим помогало сменить Zigbee-канал на другой и вернуть обратно; открутить антенну SLZB-06 на время старта помогло не всем.

Поможет ли выключить и включить питание SLZB-06?

Нет, судя по опыту пользователей. Цикл питания пробовали в отдельной ветке - ошибка network commissioning timed out осталась. Начинать стоит с отката прошивки и смены канала - именно эти приемы приносили результат.

Чем отличается откат прошивки координатора от отката SLZB-06 OS?

Это разные вещи. Прошивка координатора - часть адаптера, которая управляет самой Zigbee-сетью, и ее откат помогал чаще всего: 4 успешных сообщения в 3 ветках. SLZB-06 OS - операционная система адаптера, ее откат до версии 2.8.7 сработал в одной ветке. Был и комбинированный случай: откат прошивки плюс смена канала на 20 и обратно на 11, восстановление прежнего Zigbee2MQTT и аппаратный сброс SLZB.

Андрей Ковалев, редактор. Собирает решения из веток форума Home Assistant и сверяет команды и настройки с официальной документацией.