Категории

Как настроить Sonoff Zigbee 3.0 USB Dongle Plus V2 с новой прошивкой (8.x.x) в Zigbee2MQTT

2025-09-11 11:39:59 | IOT умный дом
Как настроить Sonoff Zigbee Dongle Plus V2 (прошивка 8.x.x) с Zigbee2MQTT

Привет! Если у вас есть Sonoff Zigbee 3.0 USB Dongle Plus V2 и вы пытаетесь подключить его к Zigbee2MQTT, но получаете ошибки — эта статья для вас. Особенно если у вас новая прошивка 8.x.x (EZSP v14) — стандартные инструкции уже не работают!

Я сам потратил кучу времени, чтобы разобраться, и теперь делюсь с вами пошаговым гайдом. Без воды, только рабочие команды и объяснения.


📌 Почему старые инструкции не работают?

Раньше для Sonoff Dongle Plus использовался драйвер ezsp. Но начиная с прошивки 8.0.2 (EZSP v14) — этот драйвер больше не поддерживается!

Ошибка, которую вы видите:
Error: 'ezsp' driver is not compatible with firmware 8.x.x or above (EZSP v14+). Use 'ember' driver instead.

👉 Решение: нужно использовать adapter: ember, а не ezsp.


🔧 Шаг 1: Проверьте, какой у вас стик и прошивка

Подключите стик к Raspberry Pi или серверу и выполните в терминале:

ls /dev/serial/by-id/

Вы должны увидеть что-то вроде:

usb-Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_V2_XXXXXXXXXXXXXXXXXXXXXXXXXXXX-if00-port0

Также проверьте:

lsusb | grep -i "Silicon Labs"

Должно быть: CP210x UART Bridge — это нормально.


⚙️ Шаг 2: Настройте configuration.yaml

Откройте конфиг Zigbee2MQTT:

nano /opt/zigbee2mqtt/data/configuration.yaml

ИЛИ, если у вас установка в домашней директории:

nano ~/zigbee2mqtt/data/configuration.yaml

Найдите или добавьте секцию serial. Она должна выглядеть точно так:

serial:
  port: /dev/serial/by-id/usb-Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_V2_XXXXXXXXXXXXXXXXXXXXXXXXXXXX-if00-port0
  adapter: ember
  baudrate: 115200
  rtscts: false
Важно:
  • Замените XXXXXXXXXXXXXXXXXXXXXXXXXXXX на ваш реальный серийный номер из ls /dev/serial/by-id/.
  • adapter: ember — это ключевая строка! Без неё не заработает.
  • Не используйте /dev/ttyUSB0 — он может меняться. Используйте путь из /dev/serial/by-id/.

🔐 Шаг 3: Проверьте права доступа

Убедитесь, что пользователь, от которого запускается Zigbee2MQTT, имеет доступ к порту.

Проверьте группу:

groups $USER

Если нет группы dialout — добавьте себя:

sudo usermod -a -G dialout $USER

👉 Обязательно перезагрузите систему:

sudo reboot

📡 Шаг 4: Настройте MQTT (если нужно)

Если Zigbee2MQTT падает с ошибкой MQTT failed to connect, exiting... (Connection refused: Not authorized) — проблема в MQTT.

Проверьте секцию mqtt в том же configuration.yaml:

mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://localhost'
  user: ваш_пользователь
  password: ваш_пароль

Если вы используете Mosquitto с аутентификацией — создайте пользователя:

sudo mosquitto_passwd -c /etc/mosquitto/passwd ваш_пользователь

И перезапустите Mosquitto:

sudo systemctl restart mosquitto

✅ Шаг 5: Перезапустите Zigbee2MQTT и проверьте логи

sudo systemctl restart zigbee2mqtt
sudo journalctl -u zigbee2mqtt -f

Вы должны увидеть:

[INFO] Connected to adapter (channel 11, panId ...)
[INFO] Coordinator firmware version: '{"meta":{"build":397,"ezsp":14,"major":8,"minor":0,"patch":2 ...}'
[INFO] Currently 0 devices are joined.
[INFO] Connected to MQTT server
[INFO] Zigbee2MQTT started!

🎉 Поздравляю! Ваш стик работает!


➕ Шаг 6: Как добавить первое устройство

  1. Откройте веб-интерфейс: http://ВАШ_IP:8080
  2. Нажмите «Разрешить присоединение».
  3. Активируйте ваш датчик/лампочку (обычно — зажать кнопку 5-10 секунд).
  4. Ждите — устройство появится в списке.

💡 Частые ошибки и решения

❌ Ошибка: Cannot lock port

Значит, порт занят другим процессом. Проверьте:

sudo lsof /dev/ttyUSB0

Убейте мешающий процесс: sudo kill -9 PID.

❌ Ошибка: No such file or directory

Вы указали неверный путь к стику. Выполните ls /dev/serial/by-id/ и скопируйте актуальный путь.

❌ Zigbee2MQTT не запускается как сервис

Не запускайте npm start вручную, если сервис уже работает. Используйте только sudo systemctl restart zigbee2mqtt.


🎁 Бонус: Как обновить прошивку (если нужно)

Если у вас старая прошивка — обновите её до 8.0.2 для стабильности.

  1. Скачайте прошивку: Z-Stack СТОП,СТОП, нейросеть тупанула можно сделать все в сотню раз проще. Идете на сайт и нажимаете (CONNECT), он определяет вашу прошивку, если старая прошивка, он предложить прошиться на новую. в моем случае это 8 версия. И прошиваете прям на сайте без всяких программаторов и прошивальщиков. У меня прошились два стика без проблем. Ну а если хотите хардкор, то читайте дальше.
  2. Установите eflasher:
    wget https://raw.githubusercontent.com/electrolama/eflasher/master/eflasher.py
    chmod +x eflasher.py
  3. Остановите Zigbee2MQTT: sudo systemctl stop zigbee2mqtt
  4. Прошейте:
    python3 eflasher.py -p /dev/serial/by-id/ваш_путь -f имя_файла.ota
  5. Запустите Zigbee2MQTT обратно.

🔚 Заключение

Теперь вы знаете, как подружить Sonoff Zigbee Dongle Plus V2 с новой прошивкой и Zigbee2MQTT. Главное — используйте adapter: ember и правильный путь к устройству.

Комментарии

Пока нет комментариев. Будьте первым!

Оставить комментарий

← Назад к списку статей

Важно: Блог-эксперимент

Внимание: Cтатьи здесь сгенерированны через нейросеть, не правил ошибки, да и не до этого пока. Блог только запустил. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
НО!
Каждый кейс я делал минимум один раз. Сервера стоят, клиенты довольны, дата-центры не горят.

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

Посетителей сегодня: 0


© Digital Specialist | Не являемся сотрудниками Google, Яндекса и NASA
Кто я | HSH | Контакты и регион