Выбор прошивки для Zigbee‑координатора без лишних проблем
Для новой Zigbee‑сети чаще выбирают Sonoff ZBDongle‑P (CC2652P) + прошивку Z‑Stack (ZNP); для Sonoff ZBDongle‑E (EFR32MG21) нужна EmberZNet NCP, а в Zigbee2MQTT обычно переходят на драйвер ember. Дальше — как выбрать под ваш сценарий и обновиться без сюрпризов.
Оглавление
Какие “семейства” прошивок бывают и почему это важно
Вы выбираете не просто “прошивку”, а связку чип → стек → драйвер в Z2M/ZHA:
- TI CC2652/CC1352 → Z‑Stack / ZNP. Координатор работает как Zigbee Network Processor, а система общается с ним через “zstack/znp”.
- Silicon Labs EFR32 → EmberZNet NCP / EZSP. Координатор — NCP, протокол общения — EZSP; в Zigbee2MQTT актуальная ветка чаще завязана на драйвер
ember. - Thread RCP / MultiPAN — это уже другая роль устройства (Thread/Matter over Thread), не Zigbee‑координатор.
Главное правило: ZBDongle‑P (TI) и ZBDongle‑E (Silabs) несовместимы по прошивкам. Нельзя “поставить Z‑Stack” на EFR32 и наоборот.
Короткое сравнение для выбора
| Что сравниваем | CC2652 (ZBDongle‑P) | EFR32 (ZBDongle‑E) |
|---|---|---|
| Стек координатора | Z‑Stack (ZNP) | EmberZNet (NCP/EZSP) |
| Обновления и “типовой путь” | Обычно проще и предсказуемее | Важно не путать EZSP/ember и версии NCP |
| Лучший вариант “только Zigbee” | Часто да | Часто “нормально, но с нюансами” |
| Интерес к Thread | Обычно не про это | Чаще встречаются альтернативные Thread‑прошивки |
Что ставить на ZBDongle‑P (CC2652P)
ZBDongle‑P построен на CC2652P (вариант с усилителем мощности). Для него практически стандарт де‑факто:
- Координаторная прошивка Z‑Stack (ZNP) под CC2652.
- В Zigbee2MQTT:
adapter: zstack. - В ZHA: радио‑бэкенд на базе ZNP (обычно определяется автоматически при выборе порта).
Когда это лучший выбор:
- строите сеть “с нуля” и хотите максимум предсказуемости;
- важна простая миграция и обслуживание;
- не планируете превращать донгл в Thread‑RCP.
Что ставить на ZBDongle‑E (EFR32MG21)
ZBDongle‑E — это EFR32MG21, ему нужна EmberZNet NCP‑прошивка (координатор).
Рекомендованная логика для Zigbee2MQTT:
- прошиваете NCP (EmberZNet) актуальной ветки;
- в конфиге указываете
adapter: ember(если вы обновились до современных NCP и Z2M предлагает перейти).
Когда ZBDongle‑E — хороший вариант:
- донгл уже куплен и вы хотите просто довести конфигурацию до актуальной;
- вы рассматриваете сценарии, где позже понадобится Thread, и готовы к переключению роли прошивкой.
Если после обновления Z2M ругается на “устаревший EZSP/драйвер”, это обычно лечится не “переподключением всех датчиков”, а переходом на adapter: ember и корректную NCP‑прошивку.
Как обновляться и удерживать сеть стабильной
- Сделайте бэкап (в Zigbee2MQTT — бэкап координатора/сети, если доступен для вашего стека).
- Остановите Zigbee2MQTT/ZHA перед прошивкой, чтобы освободить serial‑порт.
- Проверьте, что шьёте coordinator firmware, а не router/end device.
- После прошивки сверьте минимум:
- правильный порт вида
/dev/serial/by-id/...; - правильный драйвер (
zstackдля CC2652,emberдля EFR32).
- правильный порт вида
- Уберите помехи: координатор лучше подключать через USB‑удлинитель подальше от USB 3.0, Wi‑Fi роутера и металлических поверхностей.
Частые ошибки
- Прошить не то семейство (TI ↔ Silabs) и пытаться “починить настройками”.
- Прошить router‑прошивку вместо coordinator и потерять роль координатора.
- Обновить NCP на EFR32, но оставить старый драйвер (или наоборот) — получаются отваливающиеся устройства и таймауты.
- Держать донгл в порту рядом с USB 3.0/хабом без удлинителя и списывать проблемы на “плохую прошивку”.
- Пытаться лечить слабую сеть мощностью координатора вместо добавления сетевых роутеров Zigbee (питание от сети) и нормальной топологии mesh.
FAQ
Что выбрать в целом: CC2652 или EFR32?
Если координатор нужен только для Zigbee, чаще проще жить с CC2652 (Z‑Stack/ZNP). Если важен потенциал под Thread/эксперименты, логичнее EFR32, но следите за соответствием прошивки и драйвера.
Нужно ли перепривязывать устройства после обновления прошивки?
Обычно нет, если вы обновляетесь в рамках того же стека и того же координатора. Риск выше при смене координатора/типа стека или при потере данных сети (поэтому бэкап — первый шаг).
“P” в CC2652P — это реально важно?
Это усилитель мощности. На практике стабильность чаще дают размещение координатора + роутеры в сети, но CC2652P — хороший вариант “с запасом” для сложных условий.