Бэкап и восстановление сетевых параметров Zigbee: NVRAM, ключи и миграция координатора

Чтобы восстановить Zigbee-сеть без перепривязки устройств, нужно сохранить и вернуть NVRAM/flash координатора: прежде всего сетевой ключ (Network Key), PAN ID/Extended PAN ID, канал и (по возможности) IEEE/EUI64 координатора. Без этих данных сеть фактически создаётся заново, и устройства часто “не узнают” её.

Оглавление

Что именно нужно сохранить (NVRAM Zigbee)

В NVRAM координатора лежит “паспорт” вашей сети. Для восстановления критичны:

  • Network Key — ключ шифрования сети (потеряли → устройства не смогут нормально общаться).
  • PAN ID и Extended PAN ID — идентификаторы сети.
  • Channel / channel mask — канал Zigbee.
  • IEEE/EUI64 координатора — некоторые устройства ориентируются на него при повторном входе в сеть.
  • Security counters (frame counter и др.) — при некорректном восстановлении возможны ошибки расшифровки и “отвал” устройств.

Любой бэкап NVRAM/координатора содержит сетевой ключ. Храните его как пароль и не публикуйте в логах/скриншотах.

Коротко: какой способ выбрать

СценарийЛучше всегоПочему
Home Assistant + ZHAМастер миграции/бэкапы ZHAМинимум ручных действий, часто переносит “идентичность” сети
Zigbee2MQTTcoordinator_backup.json + database.dbСохраняется и сеть, и список устройств/метаданные
Диагностика/нестандартный случайCLI-инструменты стекаМожно проверить реальные PAN/канал/IEEE и точечно восстановить

Zigbee2MQTT: что бэкапить и как восстановить

Для надёжного восстановления в Zigbee2MQTT обычно нужны две части:

  1. Сеть координатора (NVRAM): coordinator_backup.json
  2. База устройств: database.db (плюс ваш конфиг)

Минимальный набор файлов для сохранения:

  • coordinator_backup.json
  • database.db
  • configuration.yaml (или ваш конфиг)
  • опционально: state.json

Как сделать корректный свежий бэкап:

  1. Дождитесь стабильной работы Zigbee2MQTT 1–2 минуты.
  2. Остановите Zigbee2MQTT штатно (важно, чтобы он успел записать состояние).
  3. Скопируйте перечисленные файлы в отдельное место.

Восстановление после прошивки/сброса (тот же координатор):

  1. Остановите Zigbee2MQTT.
  2. Верните в data-папку свои coordinator_backup.json и database.db.
  3. Проверьте порт/тип адаптера в конфиге.
  4. Запустите Zigbee2MQTT и дайте сети время: роутеры вернутся быстрее, батарейные — после “пробуждения”.

Миграция на новый координатор (важная оговорка): перенос бэкапа обычно работает предсказуемо внутри одного семейства/стека (условно “одинаковый тип адаптера/драйвера”). При смене семейства часто появляются ошибки “бэкап не для этого адаптера”, и тогда без перепривязки может не обойтись.

ZHA: бэкап и миграция адаптера

В ZHA (Home Assistant) обычно проще всего использовать встроенные механизмы:

  • ZHA хранит автобэкапы сети и позволяет запустить миграцию адаптера.
  • При миграции цель — перенести сетевые параметры так, чтобы устройства узнали сеть без нового спаривания.

Практика после миграции: сначала перезапитайте Zigbee-роутеры (розетки/лампы), затем “разбудите” батарейные датчики, и только потом делайте переподключение — часто оно не требуется.

Частые ошибки

  • Порт занят: бэкап/restore делается, пока ZHA/Zigbee2MQTT всё ещё держит адаптер → получаются “битые” данные. Решение: обеспечить эксклюзивный доступ к порту.
  • Поменялся IEEE координатора → часть устройств не возвращается автоматически. Решение: миграция с переносом идентичности (если поддерживается) или точечная перепривязка проблемных устройств.
  • Восстановили только database.db: список устройств может появиться, но сеть (ключи/PAN/канал) не совпадёт → устройства останутся офлайн. Решение: в первую очередь восстановить NVRAM/сетевые параметры.
  • Не поднимаются роутеры: end devices “не видят” маршрут. Решение: перезапитать роутеры и подождать 15–60 минут, затем будить батарейные.

FAQ

Можно ли восстановить Zigbee без перепривязки?
Да, если восстановлены Network Key + PAN/Extended PAN + канал, а в идеале ещё и IEEE координатора (или ZHA/Z2M корректно перенесли идентичность сети).

Если осталась только база database.db, сеть восстановится?
Обычно нет: база — это “список и метаданные”, а не ключи/параметры сети. Чаще всего придётся поднимать новую сеть и переподключать устройства.

Сколько ждать, пока устройства вернутся после восстановления?
Устройства на питании обычно возвращаются быстро, батарейные — после пробуждения. Нормальный интервал ожидания — от нескольких минут до часа, особенно если сеть большая.