Подготовка: Arduino IDE и драйвер
Ставим ядро ESP32, драйвер CH340 и загружаем первый скетч.
Плату программируют в Arduino IDE 2.x. В отличие от ESP32-C3, у классической ESP32 нет своего USB: на плате стоит отдельная микросхема-переходник CH340C, которая превращает USB в последовательный порт. Для неё может понадобиться драйвер.
1. Ядро ESP32
- Откройте Файл → Параметры и в поле «Дополнительные ссылки для менеджера плат» вставьте:
https://espressif.github.io/arduino-esp32/package_esp32_index.json - Откройте Инструменты → Плата → Менеджер плат, найдите esp32 от Espressif Systems и установите версию 3.x.
2. Драйвер CH340
- Windows 10/11 обычно ставит драйвер сам. Если в «Диспетчере устройств» плата видна как неизвестное устройство, скачайте драйвер CH340 для Windows (проверен на Windows), распакуйте архив, откройте папку
CH340/ch341ser_windows, нажмите правой кнопкой на файлCH341SER.INFи выберите «Установить». После этого переподключите плату — в «Диспетчере устройств» появится USB-SERIAL CH340 (COMx). - Linux: драйвер встроен в ядро, порт появится как
/dev/ttyUSB0. В Ubuntu порт иногда сразу пропадает — его забирает программа для шрифта Брайля. Лечится так:sudo apt remove brltty. - macOS: свежие версии системы видят CH340 без драйвера, порт называется
/dev/cu.usbserial-….
3. Настройки платы
- Плата: ESP32 Dev Module
- Flash Size: 4MB (32Mb)
- Upload Speed: 921600; если загрузка сбоит — 115200
- Порт:
COMxв Windows,/dev/ttyUSB0в Linux
4. Проверка
Загрузите пустой скетч кнопкой «Загрузка». Если в конце видно Hard resetting via RTS pin... — всё работает.
void setup() {
}
void loop() {
}Висит надпись Connecting........? Зажмите на плате кнопку BOOT и держите, пока не побегут проценты загрузки, затем отпустите. Если так приходится делать каждый раз, проблема обычно в кабеле или в том, что к GPIO0, GPIO2 или GPIO12 что-то подключено.
Много кабелей USB-C годятся только для зарядки — в них нет проводов для данных. Если компьютер вообще не видит плату, первым делом попробуйте другой кабель.
В Linux, если нет доступа к порту, добавьте себя в группу dialout: sudo usermod -aG dialout $USER и перезайдите в систему.