Прошивка платы по USB

Собранный образ уезжает в настоящую плату прямо из вкладки — без установки чего бы то ни было.

Как это делается

Кнопка «Прошить плату по USB» появляется в меню после первой удачной сборки. Браузер спросит, какой порт отдать, дальше всё идёт само: сброс в загрузчик, синхронизация, запись, перезапуск.

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

Нажатие «Запустить» отцепляет плату — два потока в одном окне читаются как один сбойный.

Что нужно

Браузер: Chrome, Edge или Opera на компьютере. Firefox, Safari и мобильные браузеры Web Serial не поддерживают — у них кнопка прячется, а причина пишется словами.

Адрес с https (или localhost): на обычном http браузер не отдаёт устройства вовсе.

Что кладётся во флеш-память

АдресЧтоОткуда
0x1000загрузчик второй ступени.boot из сборки
0x8000таблица разделов.part из сборки
0xE000отметка выбора образавосемь килобайт 0xFF
0x10000приложение.bin из сборки

Про 0xE000 стоит пояснить: там лежит otadata — запись о том, какой из образов OTA считать текущим. Стёртая otadata означает для загрузчика «бери первый образ» — ровно то, что нужно.

Ограничения, принятые сознательно

Загрузочная заглушка не грузится. Она ускоряет запись вчетверо, но это бинарный образ, который пришлось бы вкомпилировать в страницу и обновлять вслед за esptool. Без неё блок записи — килобайт, и мегабайтный образ на 921600 бодах уходит секунд за двадцать.

Сжатие не используется. ПЗУ ждёт поток zlib, а ошибка в его сборке выглядит как испорченная прошивка на плате.

Чип проверяется до записи. Прошивка под Xtensa, залитая в ESP32-C3, не запустится, а понять почему по молчащему светодиоду нельзя.

Плата не отзывается

Дело чаще всего в автосбросе. Он держится на двух транзисторах, разведённых на EN и GPIO0. У голого модуля с преобразователем на проводах этой обвязки нет, и сработать он не может физически.

Там прошивка делается руками: зажать BOOT, коротко нажать EN, отпустить BOOT — и только потом запускать запись.

Скачать прошивку файлом

Если прошивать хочется своими средствами, ссылка «Скачать прошивку .bin» в меню отдаёт тот же самый образ, который ушёл бы в плату.