Справочник платы

ESP32-C3 Super Mini: распиновка, характеристики и прошивка

Плата размером с ноготь: Wi-Fi, Bluetooth LE и USB-C на квадратике 22,5 × 18 мм. Здесь распиновка с обеих сторон платы, пункт меню, от которого зависит, заработают ли монитор порта и светодиод, а ещё — почему вход A5 молчит, как оживить слабый Wi-Fi и как не сжечь плату питанием. Тексты ошибок и размеры программ взяты из настоящих сборок с пакетом ESP32 3.3.12.

Что это за плата

Одна из самых маленьких плат с ESP32

Super Mini выпускает не Espressif. Описание платы выкладывает китайская марка Nologo — отсюда её имя в пункте меню, а копии делают многие фабрики. Внутри стоит чип ESP32-C3 от Espressif: одно ядро RISC-V, Wi-Fi и Bluetooth LE. Программируется он на том же языке, что и Uno: setup(), loop(), digitalWrite(). Платы разных партий немного различаются мелочами, но раскладка выводов у них одна. Особняком стоит версия Super Mini Plus: по описаниям продавцов, у неё на выводе 8 цветной адресный светодиод и есть разъём для внешней антенны.

Характеристики ESP32-C3 Super Mini

ЧипESP32-C3 с флеш-памятью внутри корпуса (маркировка FN4 или FH4)
Процессородно ядро RISC-V, до 160 МГц
Оперативная память400 КБ в чипе; среда считает «динамической памятью» 320 КБ, а свободно ещё меньше — часть берут Wi-Fi и Bluetooth
Флеш-память4 МБ; под программу по умолчанию 1,25 МБ
Wi-Fi802.11 b/g/n, только 2,4 ГГц
BluetoothBluetooth 5 (LE); классического Bluetooth нет
Выводы13 GPIO на двух гребёнках по 8 контактов
Аналоговые входы5 (выводы 0–4), 12 бит, точно — до 2,5 В
ШИМ6 каналов, на любом выводе
Интерфейсы2 × UART, I²C, SPI
USBсделан самим чипом, разъём USB-C, драйвер не нужен
Логика3,3 В; на вход — не больше 3,6 В
Питание5 В по USB-C или стабилизированные 5 В на вывод 5V (не выше 6 В); 3,0–3,6 В на вывод 3V3. Только один источник за раз
СтабилизаторME6211 на 3,3 В, до 500 мА
КнопкиBOOT (вывод 9) и RST
Светодиодыкрасный — питание; синий — вывод 8, горит при LOW
Размер22,5 × 18 мм

По скорости одно ядро C3 на 160 МГц примерно равно одному ядру классической ESP32: Espressif даёт им 483 и 540 баллов в тесте CoreMark. Только у классической ядер два. Для датчика с отправкой показаний, реле по Wi-Fi или кнопки на Bluetooth этого хватает с запасом.

Главное, что нужно помнить с первой минуты: логика у платы 3,3-вольтовая. По паспорту чипа на вход можно подать не больше 3,6 В, поэтому сигнал от пятивольтовой Arduino или датчика подключают через делитель из двух резисторов или преобразователь уровней.

Распиновка ESP32-C3 Super Mini

У платы две гребёнки по восемь контактов. С одной стороны — питание и выводы 0–4, с другой — выводы 5–10, 20 и 21. Наведите на категорию в легенде, чтобы подсветить её выводы, и нажмите на неё, чтобы прочитать пояснение. Синий светодиод на схеме мигает так же, как в первом примере ниже.

Распиновка ESP32-C3 Super Mini — схема выводовUSB-CPWBOOT · 9RST · ENLED 83,3 ВESP32-C340 МГцантеннаMISO · 5MOSI · 6SS · 7SDA · LED · 8SCL · BOOT · 910RX · 20TX · 215VGND3V34 · A4 · SCK3 · A32 · A21 · A10 · A0

Плата лежит деталями вверх: кнопки и антенна видны, питание 5V, GND и 3V3 — справа. Наведите на категорию в легенде, чтобы увидеть её выводы.

Почему на картинках из интернета всё наоборот

Одна из самых распространённых картинок распиновки нарисована с обратной стороны платы — той, где напечатано «ESP32-C3 Super Mini». На ней 5V, GND и 3V3 слева. Но плату обычно держат деталями вверх, видя кнопки и антенну, и тогда питание оказывается справа. Отсюда классическая ошибка: провод уходит на соседний ряд, и плата не отзывается. Переключатель над схемой показывает обе стороны; надёжнее всего ориентироваться по подписям «5V», «G» и «3.3» у контактов.

Какие выводы можно занимать

ВыводыСтатусПочему
0, 1, 3, 4СвободноАналоговые входы A0, A1, A3, A4 и обычные выводы. 4 — ещё и SCK шины SPI по умолчанию
5, 6, 7, 10СвободноОбычные выводы. На 5 бывает напечатано A5, но аналоговое чтение на нём не работает. При включении на 6, 7 и 10 бывает импульс в доли микросекунды — это важно только для счётчиков и защёлок
2С осторожностьюПин запуска: формально на режим не влияет, но Espressif советует держать его при включении в HIGH — не подтягивайте его к земле
8С осторожностьюСиний светодиод и SDA шины I²C. При включении должен быть HIGH, иначе плата не войдёт в режим прошивки
9С осторожностьюКнопка BOOT и SCL шины I²C. LOW в момент включения — режим прошивки вместо программы
20, 21Лучше не заниматьUART0: на 21 при каждом включении выходят служебные строки загрузчика
18, 19НельзяЛинии USB, на гребёнку не выведены
11–17НельзяОбслуживают флеш-память внутри чипа, на гребёнку не выведены

Пины запуска опасны не сами по себе. Чип смотрит на выводы 2, 8 и 9 только в момент включения или сброса кнопкой RST, а потом ими можно пользоваться как обычными. Беда случается, если к ним подключено что-то, что в этот момент тянет вывод не туда: кнопка на землю, датчик с подтяжкой вниз, модуль, который при включении держит линию в нуле.

Шины по умолчанию

  • I²C — SDA на выводе 8, SCL на выводе 9. Оба вывода уже подтянуты к плюсу на плате, так что дисплей и датчики работают сразу. Синий светодиод при этом подмигивает в такт обмену — это нормально. Разбор шины — в статье про I²C.
  • SPI — SCK 4, MISO 5, MOSI 6, SS 7: для карт памяти и быстрых дисплеев.
  • UART — у C3 два аппаратных порта: UART0 на выводах 20 и 21 и UART1. Serial у Super Mini идёт через USB, а порт Serial1 можно вывести на любые свободные выводы: Serial1.begin(9600, SERIAL_8N1, 3, 4); — приём на 3, передача на 4. Подробнее — про UART.

Шины у C3 не привязаны к выводам намертво: если 8 и 9 заняты, назначьте I²C на другие свободные выводы командой Wire.begin(sda, scl). На заводской схеме платы I²C подписан на выводах 4 и 5 — если на 8 и 9 мешают светодиод и кнопка BOOT, подключайте шину туда: Wire.begin(4, 5).

Какую плату выбрать в Arduino IDE и Trema IDE

Это главный вопрос всей статьи. В пакете ESP32 подходящих пунктов несколько, и все они собирают программу без ошибок. Разница проявляется уже на плате: в одних вариантах монитор порта молчит, в других не мигает светодиод. Переключайте варианты на схеме:

Плата «Nologo ESP32C3 Super Mini»Куда идёт SerialВ USB: текст программы виден в мониторе портаЧто такое LED_BUILTIN8 — синий светодиод самой платыПример «Маячок»Мигает, но наоборот: HIGH гасит, LOW зажигаетЧто поправитьНичего: плата описана в пакете такой, какая она естьЛучший выбор для Super Mini
Плата одна и та же, меняется только строчка в меню. От неё зависит, куда пойдёт Serial и что программа считает встроенным светодиодом.

Правильный выбор — «Nologo ESP32C3 Super Mini» в семействе ESP32. В нём вывод в монитор порта через USB включён всегда, а LED_BUILTIN — это вывод 8, где и стоит синий светодиод. Этот пункт есть в пакете ESP32 3.x. В старом пакете 2.0.17 его ещё не было, и многие инструкции советуют «ESP32C3 Dev Module». С ним нужно сделать две вещи: включить параметр USB CDC On Boot и писать в скетчах номер 8 вместо LED_BUILTIN. В Arduino IDE параметр находится в меню «Инструменты», в Trema IDE — за кнопкой «Параметры платы» на верхней панели. Названия пунктов в обеих средах одинаковые: их задаёт сам пакет.

Пакет ставится один раз через менеджер плат. Как это сделать по шагам и что делать, если у Arduino IDE не скачивается список пакетов, — в инструкции «ESP32 в Trema IDE» и в статье про ошибку 403.

Первая прошивка: мигаем синим светодиодом

  1. Подключите плату кабелем USB-C. Кабель должен передавать данные: короткие шнурки «только для зарядки» плату питают, но порта не дают.
  2. Выберите плату «Nologo ESP32C3 Super Mini» и появившийся порт.
  3. Вставьте скетч и нажмите «Загрузить».
// Синий светодиод ESP32-C3 Super Mini подключён к выводу 8
// «наоборот»: горит, когда на выводе LOW, и гаснет от HIGH.
const int LED_PIN = 8;

void setup() {
  Serial.begin(115200);         // порт USB у этой платы: скорость ни на что не влияет
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_PIN, LOW);   // LOW — светодиод загорается
  Serial.println("Светодиод горит");
  delay(500);

  digitalWrite(LED_PIN, HIGH);  // HIGH — гаснет
  Serial.println("Светодиод погас");
  delay(500);
}

Обратите внимание на LOW и HIGH. На плате синий светодиод включён между плюсом и выводом 8, поэтому он загорается, когда вывод опускается в ноль. Если перепутать, программа будет работать «наоборот» — светодиод горит, когда должен гаснуть.

Драйвер ставить не нужно. На плате нет отдельной микросхемы USB вроде CH340 или CP2102: USB сделан самим чипом и представляется компьютеру стандартным последовательным портом. Для таких устройств Windows 10 и 11 ставят драйвер сами. Поэтому драйвер CH340, который часто советуют, здесь ничего не изменит. Если порт не появился, чаще всего дело в кабеле или разъёме — как это проверить. Если кабель точно передаёт данные, переведите плату в режим прошивки вручную, как описано ниже.

В Диспетчере устройств рядом с портом может появиться «USB JTAG/serial debug unit» с жёлтым значком. Это интерфейс отладки: для загрузки программ и монитора порта он не нужен, и драйвер для него ставить не обязательно.

Если загрузка не идёт: «Failed to connect to ESP32-C3»

Обычно среда сама переводит плату в режим прошивки по USB. Но если загруженная раньше программа уводит плату в сон, падает сразу после старта или занимает выводы USB, связаться с чипом не получится. Тогда в журнале загрузки будет:

A fatal error occurred: Failed to connect to ESP32-C3: No serial data received.

Лечится это ручным входом в режим прошивки. Пройдите шаги на схеме — кнопки нарисованы так же, как стоят на плате:

Кнопки не нажатыBOOTвывод 9RSTвывод ENВывод 9 сейчасHIGHВывод 8 сейчасHIGHЧто делает платаработает ваша программаВывод 9 подтянут к плюсу резистором на плате. В момент включения чип видит HIGH и запускаетпрограмму из флеш-памяти.
Ручной вход в режим прошивки нужен редко — когда программа уводит плату в сон или ломает USB. Кнопки BOOT и RST стоят прямо под разъёмом.

Другая частая ошибка — выбрана не та плата. Если в меню стоит обычная ESP32, а подключена C3, загрузчик скажет об этом прямо:

This chip is ESP32-C3, not ESP32. Wrong chip argument?

Значит, нужно выбрать плату на C3. Остальные причины неудачной загрузки общие для всех ESP32 и разобраны в статье «ESP32 не прошивается».

Монитор порта молчит

Программа загрузилась, а в мониторе порта пусто. Причин три.

  • Выбрана «ESP32C3 Dev Module» без USB CDC On Boot. Тогда Serial пишет не в USB, а в выводы 20 и 21. Включите параметр или выберите «Nologo ESP32C3 Super Mini».
  • Текст ушёл раньше, чем открылся монитор. После загрузки плата перезапускается, и компьютер заново подключает её порт. Строки, напечатанные в setup() в эти мгновения, могут не дойти до монитора. Добавьте в начало setup() задержку на полторы-две секунды или печатайте в loop().
  • Плата уснула или перезапускается. В глубоком сне USB отключается совсем, и порт пропадает у компьютера до пробуждения. Если же плата перезапускается по кругу, порт мелькает и исчезает. Тогда проверьте питание — подробности ниже.

А вот кракозябр из-за скорости здесь не бывает. Число в Serial.begin() и в мониторе порта для USB этой платы ни на что не влияет: данные идут пакетами USB, а не по проводу с заданной скоростью. Скорость важна только для Serial1 и переходников на выводах 20 и 21.

Аналоговые входы: пять, а не шесть

На распиновках вывод 5 часто подписан A5, и в описании платы в пакете он тоже числится A5. Но работать аналоговым входом он не будет: на нём единственный канал второго аналого-цифрового преобразователя, а работу с этим преобразователем у ESP32-C3 пакет отключает. Документация Espressif объясняет: режим больше не поддерживается из-за аппаратных ограничений, результаты нестабильны. analogRead(5) вернёт ноль. Для аналоговых датчиков остаются выводы 0–4.

Второе отличие от Uno — диапазон. analogRead() возвращает число от 0 до 4095, а точно чип меряет напряжения только до 2,5 В. Это видно на простом опыте с потенциометром:

// Потенциометр на выводе 0 (он же A0). Крайние ножки потенциометра —
// на 3V3 и GND, средняя — на вывод 0. Аналоговые входы платы: 0, 1, 2, 3, 4.
const int POT_PIN = 0;

void setup() {
  Serial.begin(115200);
}

void loop() {
  int raw = analogRead(POT_PIN);           // число от 0 до 4095
  int mv = analogReadMilliVolts(POT_PIN);  // то же самое в милливольтах
  Serial.print(raw);
  Serial.print("  ");
  Serial.print(mv);
  Serial.println(" мВ");
  delay(300);
}
Напряжение на входе при повороте ручки от упора до упораanalogReadMilliVolts: 0…2,5 В, ±35 мВбез гарантий3,3 В0 В0,511,522,53На последней четверти хода напряжение выше 2,5 В, где Espressif точности не обещает. Апримерно с 2,8–2,9 В analogRead() упирается в 4095 и дальше не меняется: кусок хода ручкипропадает.
Ослабление по умолчанию у ESP32-C3 рассчитано на напряжения до 2,5 В, а не до 3,3. Один резистор возвращает потенциометру весь ход.

analogReadMilliVolts() сразу пересчитывает показания в милливольты по заводской калибровке чипа. Ею удобнее пользоваться, чем самому делить на 4095: зависимость у преобразователя не совсем прямая. Точность ±35 мВ из паспорта чипа — как раз про неё. Сырое число analogRead() у разных экземпляров чипа отличается заметнее.

Wi-Fi: если плата не подключается к сети

Сначала обычные причины. C3 работает только в диапазоне 2,4 ГГц, и к сети 5 ГГц не подключится никогда. Если у роутера одно имя на оба диапазона, иногда помогает развести их на два имени. Пароль чувствителен к регистру.

Дальше — особенность именно Super Mini. На форумах много сообщений о партиях, где плата видит сеть, но не может к ней подключиться или постоянно отваливается. Чаще всего винят разводку: керамическая антенна стоит слишком близко к кварцу. Обходной приём, который советуют чаще всего и который многим помогает, — снизить мощность передатчика до 8,5 dBm. Связь становится короче, зато устойчивее. Если и это не спасает, остаётся плата с внешней антенной.

#include <WiFi.h>

const char* WIFI_NAME = "имя_вашей_сети";   // только сеть 2,4 ГГц
const char* WIFI_PASS = "пароль";

void setup() {
  Serial.begin(115200);
  delay(1500);                     // время открыть монитор порта

  WiFi.STA.begin();                // включаем Wi-Fi, но пока не подключаемся
  // Мощность меняется только у включённого Wi-Fi: до STA.begin()
  // или до WiFi.begin() команда вернёт false и ничего не сделает.
  if (WiFi.setTxPower(WIFI_POWER_8_5dBm)) {
    Serial.println("Мощность передатчика снижена до 8,5 dBm");
  }
  WiFi.begin(WIFI_NAME, WIFI_PASS);

  Serial.print("Подключаюсь");
  unsigned long start = millis();
  while (WiFi.status() != WL_CONNECTED && millis() - start < 20000) {
    delay(500);
    Serial.print(".");
  }
  Serial.println();

  if (WiFi.status() == WL_CONNECTED) {
    Serial.print("Готово, адрес платы: ");
    Serial.println(WiFi.localIP());
    Serial.print("Мощность, четверти dBm: ");
    Serial.println(WiFi.getTxPower());   // 34 = 8,5 dBm: снижение сработало
  } else {
    Serial.println("Не подключилась: проверьте имя сети и пароль");
  }
}

void loop() {
  if (WiFi.status() == WL_CONNECTED) {
    Serial.print("Сигнал: ");
    Serial.print(WiFi.RSSI());     // чем ближе к нулю, тем лучше
    Serial.println(" dBm");
  }
  delay(5000);
}

Важна последовательность. Мощность можно поменять только у уже включённого Wi-Fi. Если вызвать WiFi.setTxPower() до WiFi.STA.begin() или WiFi.begin(), команда вернёт false и ничего не сделает. Поэтому в скетче Wi-Fi сначала включается, потом снижается мощность, и только после этого плата подключается к сети. Строка «Мощность» в мониторе порта показывает, что снижение сработало: число там в четвертях децибела, и 34 — это 8,5 dBm. Число RSSI показывает уровень сигнала: −50 dBm — отлично, −80 — на грани.

Если не помогло — попробуйте другой источник питания. На пике передачи чип берёт до 335 мА, и слабый USB-порт или длинный тонкий кабель проседают именно в этот момент. Что делать с подключённой платой дальше — в серии про Wi-Fi: веб-страница на плате, умный дом через MQTT, прошивка по воздуху.

Питание: USB, вывод 5V, 3V3 и аккумулятор

По опубликованной схеме платы всё просто: пять вольт с разъёма проходят через диод на стабилизатор ME6211, тот делает 3,3 В для чипа. Но есть одна особенность разводки, о которой стоит знать до того, как подключать внешний блок. Выберите способ питания:

USB-C5 В с компьютеравывод 5V5 В, не выше 6диодPWгоритME6211, 3,3 Вдо 500 мАESP32-C3пик Wi-Fi: 335 мАвывод 3V3≈100 мА постоянноПять вольт от компьютера идут через диод на стабилизатор, тот отдаёт чипу 3,3 В. С вывода5V при этом можно взять пять вольт для модулей — сколько разрешит порт компьютера.Обычный режим, ничего делать не нужно
Синим — где есть напряжение. Главная особенность платы: вывод 5V подключён к разъёму USB напрямую, до защитного диода, поэтому внешний блок и кабель от компьютера вместе — плохая пара.

Бюджет тока такой. Стабилизатор отдаёт до 500 мА, из них на пиках передачи до 335 мА забирает сам чип. На датчики и модули с вывода 3V3 остаётся около 150 мА в пике, а постоянно лучше брать не больше 100 мА: крошечный стабилизатор заметно греется. Сервопривод, светодиодную ленту или мотор от 3V3 не питайте: им нужен свой источник, общий с платой только по земле.

Для работы от батарей есть ещё одна деталь. Сам чип в глубоком сне потребляет около 5 мкА, но на плате всегда горит красный светодиод питания и работает стабилизатор. Один светодиод берёт около половины миллиампера — примерно в сто раз больше, чем спящий чип. Для долгой работы от батареек светодиод питания выпаивают или берут плату без него. Подробнее о вариантах питания — в статье про питание.

Место под программу: Wi-Fi занимает почти всё

Флеш-памяти у платы 4 МБ, но под программу по умолчанию отведено 1,25 МБ. Остальное занимают запасное место для обновления по воздуху и файловая система. Wi-Fi и Bluetooth тянут за собой много кода, и это место заканчивается быстрее, чем кажется:

1,25 МБ под программу, второе такое же место — под обновление по воздуху: 1 310 720 байтМигание светодиодом20%274 250 байтПоиск Bluetooth LE-устройств45%597 029 байтПоиск сетей Wi-Fi71%930 967 байтWi-Fi и Bluetooth LE вместе90%1 192 559 байтWi-Fi, BLE, веб-сервер и HTTPS104%1 368 457 байт — не помещается
Даже простой поиск сетей Wi-Fi уже занимает почти три четверти стандартного места.

Когда программа не помещается, сборка останавливается с сообщением:

Скетч использует 1368457 байт (104%) памяти устройства. Всего доступно 1310720 байт.
Скетч слишком большой; прочитайте https://support.arduino.cc/hc/en-us/articles/360013825179
Ошибка во время сборки: секция текста превышает доступное пространство на плате

Выход — другая разметка памяти. В параметре Partition Scheme выберите «Huge APP (3MB No OTA/1MB SPIFFS)»: под программу будет 3 МБ. Цена — обновлять программу по Wi-Fi станет нельзя, только по кабелю. Если обновление по воздуху нужно, ищите, какую библиотеку можно выбросить. В Trema IDE на эту ошибку выходит карточка «Программа не помещается в память платы» с тем же советом.

Чего у ESP32-C3 нет

C3 — упрощённый родственник классической ESP32, и часть привычных примеров на ней не соберётся. Сборка под ESP32-C3 отвечает так:

Что в скетчеЧто пишет компиляторЧто это значит
Классический Bluetooth: BluetoothSerial.h'BluetoothSerial' does not name a typeУ C3 только Bluetooth LE. Телефонные «терминалы» для модуля HC-05 с ней не работают
Аналоговый выход: dacWrite()'dacWrite' was not declared in this scopeЦАП у C3 нет. Плавное напряжение получают ШИМом с RC-фильтром
Сенсорные входы: touchRead()'touchRead' was not declared in this scopeСенсорных входов у C3 нет. Нужно касание — берите классическую ESP32 или ESP32-S3

Если проекту нужно что-то из этого списка, берите классическую ESP32. Сенсорные входы, а ещё PSRAM и родной USB для клавиатуры есть у ESP32-S3. А связаться с телефоном по Bluetooth LE C3 умеет: для этого есть библиотека BLE, встроенная в пакет. Классический модуль HC-05 и его отличия от BLE разобраны в статье про Bluetooth.

Super Mini, XIAO ESP32-C3 или обычная ESP32

C3 Super MiniXIAO ESP32-C3ESP32 DevKit
ЧипESP32-C3, 1 ядроESP32-C3, 1 ядроESP32, 2 ядра
Размер22,5 × 18 мм21 × 17,8 ммпримерно втрое больше
Выводы на гребёнке1311до 25
Антеннакерамическая на платевнешняя, в комплектена модуле
Зарядка аккумуляторанетестьнет
Свой светодиодсиний, вывод 8нету большинства клонов — синий, вывод 2
USBсамим чипомсамим чипоммикросхемой CP2102 или CH340
Классический Bluetoothнетнетесть
Пункт в менюNologo ESP32C3 Super MiniXIAO_ESP32C3ESP32 Dev Module

Super Mini берут за размер и цену. XIAO ESP32-C3 от Seeed Studio того же размера, но с зарядкой литиевого аккумулятора и внешней антенной в комплекте — для носимых устройств и датчиков на батарее это заметно удобнее. У XIAO другие подписи выводов (D0–D10), и в меню для неё есть свой пункт «XIAO_ESP32C3». В магазине iarduino XIAO ESP32-C3 есть в наличии: 960 ₽, артикул 1792. Когда нужны память, камера или USB-клавиатура, берут ESP32-S3, а камеру дешевле всего поставить на ESP32-CAM. Для Zigbee и Wi-Fi 6 есть ESP32-C6, и её Super Mini внешне почти не отличить от C3. Когда выводов или классического Bluetooth не хватает, остаётся обычная ESP32 — справочник ESP32 DevKit. А если ESP32 ещё рано и нужно сначала научиться основам, удобнее начать с Arduino Uno и уроков для начинающих.

Чем программировать

ESP32-C3 Super Mini в Trema IDE

Trema IDE — русская среда, совместимая с Arduino IDE: те же скетчи .ino, тот же пакет ESP32 и те же пункты меню. Пакет ставится из менеджера плат с российского зеркала, без ручных ссылок и VPN. Параметры платы, включая USB CDC On Boot и Partition Scheme, открываются кнопкой на верхней панели. После первой удачной загрузки программа запоминает, какая плата была на этом USB, и в следующий раз предложит её сама. Ошибки сборки объясняются по-русски, с переходом к нужной строке.

  • Пакет ESP32 3.3.12 ставится с российского зеркала
  • «Параметры платы» — одной кнопкой на верхней панели
  • После первой загрузки плата узнаётся при подключении
  • Ошибки сборки объясняются по-русски карточками

Вопросы

Частые вопросы про ESP32-C3 Super Mini

Не нашли ответа? Спросите нас

Какую плату выбрать для ESP32-C3 Super Mini в Arduino IDE?

«Nologo ESP32C3 Super Mini» в семействе ESP32 (пакет ESP32 версии 3.x). У неё вывод в монитор порта через USB включён всегда, а встроенный светодиод — вывод 8. Если выбрать «ESP32C3 Dev Module», включите параметр USB CDC On Boot и пишите в скетчах номер 8 вместо LED_BUILTIN: иначе монитор порта будет пуст, а светодиод не замигает.

Нужен ли драйвер для ESP32-C3 Super Mini?

Нет. Микросхемы CH340 или CP2102 на плате нет: USB сделан самим чипом и выглядит для компьютера как стандартный последовательный порт, драйвер для которого Windows 10 и 11 ставят сами. Если порт не появляется, проверьте кабель: многие кабели USB-C только заряжают и данных не передают.

Почему монитор порта ESP32-C3 ничего не показывает?

Чаще всего выбрана «ESP32C3 Dev Module» с выключенным USB CDC On Boot — тогда Serial пишет в выводы 20 и 21, а не в USB. Ещё бывает, что строки из setup() печатаются раньше, чем компьютер заново подключил порт после загрузки: добавьте задержку в начале setup(). Скорость в мониторе для этой платы значения не имеет.

Почему не мигает встроенный светодиод ESP32-C3 Super Mini?

Синий светодиод подключён к выводу 8 наоборот: он горит при LOW и гаснет при HIGH. А если в меню выбрана «ESP32C3 Dev Module», LED_BUILTIN для неё — это цветной адресный светодиод: команда уходит особой посылкой, и обычный синий просто горит. Пишите digitalWrite(8, LOW) или выберите «Nologo ESP32C3 Super Mini».

Сколько аналоговых входов у ESP32-C3 Super Mini?

Пять: выводы 0–4. Вывод 5 часто подписан A5, но он подключён ко второму преобразователю, работу с которым пакет для ESP32-C3 отключает, и analogRead(5) вернёт ноль. Точный диапазон измерения — от 0 до 2,5 В; для потенциометра на 10 кОм поставьте между ним и 3V3 резистор 4,7 кОм.

Как прошить ESP32-C3, если пишет Failed to connect?

Переведите плату в режим прошивки вручную: зажмите кнопку BOOT, нажмите и отпустите RST, отпустите BOOT и нажмите «Загрузить». После загрузки, если программа не запустилась сама, нажмите RST. Это нужно, когда прежняя программа уводит плату в сон или падает сразу после старта.

Можно ли подать 5 В на выводы ESP32-C3?

Нет: по паспорту чипа на вход допускается не больше 3,6 В. Пятивольтовый сигнал подключают через делитель из двух резисторов или преобразователь уровней. Питание 5 В подаётся только на вывод 5V — стабилизированные 5 В, не выше 6 В и не одновременно с кабелем от компьютера: этот вывод соединён с разъёмом USB напрямую.

Есть ли у ESP32-C3 Bluetooth?

Только Bluetooth LE (версия 5). Классического Bluetooth нет, поэтому библиотека BluetoothSerial не соберётся, а телефонные приложения-терминалы для модуля HC-05 с платой не работают. Для них нужна классическая ESP32.

Маленькая плата, которой хватает на умный дом

Скачайте Trema IDE, поставьте пакет ESP32 с российского зеркала, выберите «Nologo ESP32C3 Super Mini» — и через десять минут синий светодиод замигает. Дома — бесплатно навсегда.