Привет! Если у вас есть 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: Как добавить первое устройство
- Откройте веб-интерфейс:
http://ВАШ_IP:8080 - Нажмите «Разрешить присоединение».
- Активируйте ваш датчик/лампочку (обычно — зажать кнопку 5-10 секунд).
- Ждите — устройство появится в списке.
💡 Частые ошибки и решения
❌ Ошибка: 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 для стабильности.
- Скачайте прошивку: Z-Stack СТОП,СТОП, нейросеть тупанула можно сделать все в сотню раз проще. Идете на сайт и нажимаете (CONNECT), он определяет вашу прошивку, если старая прошивка, он предложить прошиться на новую. в моем случае это 8 версия. И прошиваете прям на сайте без всяких программаторов и прошивальщиков. У меня прошились два стика без проблем. Ну а если хотите хардкор, то читайте дальше.
- Установите eflasher:
wget https://raw.githubusercontent.com/electrolama/eflasher/master/eflasher.py chmod +x eflasher.py - Остановите Zigbee2MQTT:
sudo systemctl stop zigbee2mqtt - Прошейте:
python3 eflasher.py -p /dev/serial/by-id/ваш_путь -f имя_файла.ota - Запустите Zigbee2MQTT обратно.
🔚 Заключение
Теперь вы знаете, как подружить Sonoff Zigbee Dongle Plus V2 с новой прошивкой и Zigbee2MQTT. Главное — используйте adapter: ember и правильный путь к устройству.
Комментарии
Пока нет комментариев. Будьте первым!