Перевод ZBDongle‑E в bootloader для прошивки: быстрый и надёжный способ
Чтобы перевести Sonoff ZBDongle‑E в режим загрузчика для прошивки, откройте его COM/TTY на 115200 8N1 без управления потоком, затем удерживайте BOOT, коротко нажмите RST, дождитесь текстового меню bootloader и отпустите BOOT.
Оглавление
Что подготовить
- USB‑удлинитель: удобнее нажимать кнопки, не нагружая разъём USB на плате.
- Доступ к плате: на многих ревизиях кнопки BOOT/RST находятся под корпусом, его нужно аккуратно снять.
- Терминальная программа (любой serial terminal): чтобы увидеть меню загрузчика и при необходимости запустить приём прошивки.
- Если донгл с внешней антенной — подключите антенну перед подачей питания.
Не путайте ZBDongle‑E и ZBDongle‑P: у них разная платформа и разные прошивки/методы прошивки. Инструкция ниже — только для ZBDongle‑E.
Настройки COM/TTY и как найти порт
Параметры порта
Для входа в меню загрузчика обычно подходят такие настройки:
| Параметр | Значение |
|---|---|
| Скорость (baud rate) | **115200** |
| Формат | **8N1** (8 бит, без чётности, 1 стоп‑бит) |
| Flow control | **Off** (ни RTS/CTS, ни XON/XOFF) |
Если включён flow control, меню часто не появляется или отображается «мусором». Первое, что стоит проверить — отключить управление потоком.
Как определить нужный порт
- Windows: «Диспетчер устройств» → «Порты (COM и LPT)» → запомните COM, который появляется при подключении донгла.
- Linux: чаще всего
/dev/ttyACM0или/dev/ttyUSB0. - macOS: обычно
/dev/tty.usbmodem…или/dev/tty.usbserial….
Вход в bootloader кнопками BOOT + RST
- Подключите донгл к USB (желательно через удлинитель).
- Откройте правильный COM/TTY в терминале с параметрами 115200 8N1, flow control Off.
- Найдите на плате кнопки BOOT и RST (Reset).
- Нажмите и удерживайте BOOT.
- Коротко нажмите RST, BOOT продолжайте удерживать.
- Подождите 1–3 секунды, пока в терминале не появится меню загрузчика, затем отпустите BOOT.
Если терминал был открыт заранее и порт выбран верно, меню появляется сразу после перезагрузки через RST.
Как убедиться, что вы в загрузчике
Признаки, что это именно bootloader (а не случайный вывод):
- в терминале отображается текстовое меню с пунктами (часто — запуск приёма прошивки и выход/перезагрузка);
- при выборе пункта приёма прошивки загрузчик может начать выводить повторяющиеся символы (часто
C) — это ожидание передачи по протоколу XMODEM.
Повторяющиеся C в терминале — типичный признак, что донгл уже ждёт файл прошивки и находится в правильном режиме.
Альтернатива без кнопок (RTS/DTR)
Некоторые утилиты прошивки умеют переводить донгл в bootloader автоматически, управляя линиями RTS/DTR (сбрасывают устройство и «поднимают» нужный режим без нажатия BOOT/RST).
Автоперевод через RTS/DTR зависит от драйвера, прав доступа к порту и того, как именно реализован USB‑UART. Если не сработало — используйте способ BOOT + RST, он самый универсальный.
Частые ошибки
- Открыт не тот порт. Особенно часто, если подключены другие USB‑Serial устройства.
- Неверная скорость. Поставьте ровно 115200.
- Включён flow control. Выключите RTS/CTS и XON/XOFF.
- Неправильная последовательность кнопок. Правильно: удерживать BOOT → нажать RST → дождаться меню → отпустить BOOT.
- Порт занят другой программой. Закройте всё, что может держать COM/TTY (мониторы порта, сервисы, автоматические прошивальщики).
- Не успеваете начать передачу файла. В некоторых загрузчиках ожидание ограничено: подготовьте файл и окно «Send via XMODEM» заранее.
FAQ
Можно ли просто удерживать BOOT при подключении USB?
Иногда да, но самый воспроизводимый вариант — удерживать BOOT и нажать RST.
Что делать после входа в bootloader?
Обычно выбирают пункт приёма прошивки, отправляют файл прошивки по XMODEM, затем выходят из загрузчика (пункт выхода/перезагрузка) или перетыкают донгл.
Если меню не появляется вообще, с чего начать?
С трёх проверок: порт, 115200, flow control Off. Затем повторите последовательность BOOT → RST с открытым терминалом.