Какой драйвер нужен для ESP32?
Обновлено Редакция GAW
У ESP32 нет собственного USB: связь с компьютером идёт через последовательный порт UART. На отладочных платах между разъёмом USB и чипом стоит мост USB–UART, и именно ему нужен драйвер. По документации ESP-IDF на платах Espressif встречаются два вида мостов.
| Мост | Где стоит | Драйвер |
|---|---|---|
| CP210x (Silicon Labs), например CP2102N | ESP32-DevKitC и большинство плат Espressif | CP210x USB to UART Bridge VCP |
| FTDI | отдельные платы Espressif | FTDI Virtual COM Port |
| Встроенный USB Serial/JTAG | платы ESP32-C3 и ESP32-S3 без внешнего моста | отдельный мост не нужен |
Обычно драйвер входит в операционную систему и ставится сам при первом подключении. Если этого не произошло, Espressif советует посмотреть микросхему моста в руководстве своей платы и поставить драйвер её производителя.
Как найти порт
- Windows — диспетчер устройств: отключите плату и подключите снова, посмотрите, какой COM-порт пропадает и появляется.
- Linux — выполните
ls /dev/tty*без платы и с платой; новый порт — ваш. Пользователя добавьте в группу dialout. - macOS — то же с
ls /dev/cu.*; если порта нет, проверьте, не нужно ли разрешить драйвер Silicon Labs или FTDI в настройках безопасности.
Выбранный порт указывают в Arduino IDE — как подключить ядро ESP32, разбирает ответ «Как подключить ESP32 к Arduino IDE?». Мост и кнопки отладочной платы описаны на странице ESP32-DevKitC, встроенный USB новых чипов — в термине «USB Serial/JTAG». Если порт виден, а прошивка не идёт, помогут разборы ошибок на странице «Прошивка ESP32».
Похожие вопросы
Почему ESP32 не появляется в списке COM-портов?
Обычно не установлен драйвер моста USB–UART или кабель неисправен. Espressif советует отключить и снова подключить плату и посмотреть, какой порт пропадает и появляется в диспетчере устройств. Если ни один, найдите микросхему моста на плате и поставьте её драйвер.
Нужен ли драйвер для ESP32-C3 и ESP32-S3?
У этих чипов есть встроенный контроллер USB Serial/JTAG, и платы, где USB подключён прямо к чипу, обходятся без внешнего моста. Если же на плате стоит мост вроде CP210x, нужен его драйвер, как у обычного ESP32.
Что делать в Linux, если порт есть, но прошивка не идёт?
Проверить права: по документации Espressif пользователя нужно добавить в группу dialout командой sudo usermod -a -G dialout $USER (в Arch Linux — в группу uucp) и перелогиниться.
Источники
- Espressif. ESP-IDF Programming Guide (stable), ESP32: Establish Serial Connection with ESP32 — соединение через мост USB–UART на плате или внешний; если драйвер не установился сам, определить микросхему моста и установить её драйвер; на платах Espressif — CP210x (CP210x USB to UART Bridge VCP Drivers) и FTDI (Virtual COM Port Drivers), обычно драйверы входят в ОС и ставятся автоматически; порт в Windows — в диспетчере устройств, отключив и подключив плату; в Linux — ls /dev/tty* до и после подключения и добавление пользователя в группу dialout (в Arch — uucp); в macOS — ls /dev/cu.* и разрешение драйвера Silicon Labs или FTDI в настройках безопасности; ручной вход в загрузку — держать BOOT и нажать RESET
- Espressif. ESP32-DevKitC V4 Schematics, PCB Layout, Dimensions — мост USB–UART CP2102N между разъёмом Micro-USB и UART0 ESP32
- Espressif. ESP32-C3 Series Datasheet v2.4 — встроенный контроллер USB Serial/JTAG: прошивка и отладка по USB без внешнего моста
Нашли ошибку?
Смотрите также
- ESP32-DevKitC V438 контактов, АЦП, сенсоры, обвязка загрузки, питание, прошивка
- Как подключить ESP32 к Arduino IDE?Ссылка в настройках, платформа esp32, плата, порт и кнопка BOOT
- USB Serial/JTAGВстроенный в ESP32 контроллер USB: COM-порт и JTAG без внешних микросхем
- Прошивка ESP32Загрузчик ПЗУ, GPIO0 и автосброс, write-flash и адреса, ошибки esptool и питание