Перейти к содержанию

Какой драйвер нужен для ESP32?

Обновлено Редакция GAW

У ESP32 нет собственного USB: связь с компьютером идёт через последовательный порт UART. На отладочных платах между разъёмом USB и чипом стоит мост USB–UART, и именно ему нужен драйвер. По документации ESP-IDF на платах Espressif встречаются два вида мостов.

МостГде стоитДрайвер
CP210x (Silicon Labs), например CP2102NESP32-DevKitC и большинство плат EspressifCP210x USB to UART Bridge VCP
FTDIотдельные платы EspressifFTDI 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) и перелогиниться.

Источники

  1. 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
  2. Espressif. ESP32-DevKitC V4 Schematics, PCB Layout, Dimensions — мост USB–UART CP2102N между разъёмом Micro-USB и UART0 ESP32
  3. Espressif. ESP32-C3 Series Datasheet v2.4 — встроенный контроллер USB Serial/JTAG: прошивка и отладка по USB без внешнего моста

Нашли ошибку?