Загрузка в ESP32-C3 не удалась
Я создал собственную печатную плату, используя модуль ESP32-C3-MINI-1-H4 (таблица данных).
Вот схема:
У меня есть линии GND, Tx и Rx, подключенные к Arduino Uno без Atmega. 3V3 питается от внешнего источника питания.
Я успешно перевел чип в режим загрузки (как показано на последовательном выводе ниже).
ESP-ROM:esp32c3-api1-20210207
Сборка: 7 февраля 2021 г.
первый: 0x1 (POWERON), загрузочный: 0x5 (ЗАГРУЗИТЬ (USB/UART0/1))
ожидание загрузки
Я попытался загрузить пример скетча, используя следующие настройки (Arduino IDE).
Я удерживал кнопку сброса (S4), пока индикатор Rx на uno не начал мигать.
Это работает примерно в 5% случаев, но в 95% случаев это заканчивается следующим образом:
Произошла фатальная ошибка: не удалось подключиться к ESP32-C3: последовательные данные не получены.
Я не уверен, как это возможно, поскольку последовательные данные отображаются на осциллографе, и он явно находится в режиме загрузки, как показано на последовательном выходе.
Я пробовал убрать делитель напряжения с линии RX, но это не помогло. Есть ли способ сделать загрузку более последовательной?
@jb0, 👍3
Обсуждение2 ответа
Лучший ответ:
Проблема была в использовании arduino в качестве преобразователя USB в UART. Покупка преобразователя CP2102 решила проблему.
Вы должны находиться в режиме флэш-памяти DIO и наблюдать за сообщением «USB CDC при загрузке». который должен быть включен, если вы используете собственный USB-накопитель C3, и выключен, если вы используете внешний преобразователь USB-последовательный порт.
Вы можете загрузить ОК в режиме QIO, но программа не запускается, это ИМЕННО то, что просит ОП.
Добро пожаловать в Arduino:SE. Пожалуйста, найдите время, чтобы прочитать Stack Exchange [Ожидаемое поведение](https://arduino.stackexchange.com/help/behavior), @sempaiscuba
Это звучит как неофициальное свидетельство. Есть ли у вас какие-либо источники, подтверждающие это?, @StarCat
- ESP32 в Arduino-IDE с FS.h и SPIFFS
- Программаторы для этой платы отсутствуют - Программирование ESP32 Cam с помощью Ardunio IDE
- Установка значения float до двух знаков после запятой
- ESP32-CAM первый: 0x8 TG1WDT_SYS_RESET загрузочный цикл
- esp32 Stack canary watchpoint срабатывает
- Проверка размера во флэш-памяти Esp32
- Ошибка Cast from 'char*' to 'uint8_t {aka unsigned char}' loses precision [-fpermissive]
- Ошибка A fatal error occurred: Failed to connect to ESP32: Wrong boot mode detected (0x13)! The chip needs to be in download mode. [upload] Error 2
«Я удерживал кнопку сброса (S4) до тех пор, пока индикатор Rx на uno не начал мигать». Правильная последовательность перевода устройства в режим вспышки — нажать и удерживать кнопку FLASH (io9), а затем один раз нажать RESET (EN), затем отпустите (или удерживайте) кнопку FLASH. Кстати, прочитайте рисунок 7 в таблице данных эталонного проекта и примечание под схемой: вам нужен 1 мкФ параллельно вашему переключателю RESET, иначе ваш переключатель будет подпрыгивать во время сброса., @hcheung
// ESP32C3 ИСПОЛЬЗУЙТЕ режим вспышки DIO, иначе он не будет работать!!!, @Pepe The Frog