Обновление прошивки ESP32 с другого ESP32 через USB, аналогично тому, как работает esptool.py
Есть ли способ обновить прошивку на одном ESP32 с другого ESP32 через USB, аналогично тому, как прошивку можно обновить с помощью esptool.py?
По сути, это было бы похоже на порт какой-то магии esptool.py использует USB для обновления ESP32, но вместо запуска через Python это будет скетч Arduino C++, и он будет считывать прошивку для записи на другой ESP32 из SPIFFS.
@Dan, 👍0
Обсуждение3 ответа
esp32 может обновляться самостоятельно. Для хранения и применения двоичного файла обновленного скетча используется библиотека обновлений, входящая в комплект поставки пакета поддержки плат ESP32 для Arduino.
Затем существуют библиотеки для различных способов передачи двоичного файла по сети:
- ArduinoOTA для загрузки из среды Arduino IDE
- HTTPUpdate для загрузки двоичного файла с веб-сервера
- HTTPUpdateServer для загрузки двоичного файла в ESP32 через веб-страницу
Ключевое слово "обновление OTA" означает "обновление по воздуху", даже если обновление можно перенести и по кабелю.
У Espressif есть официальная библиотека. Вот ссылка:
https://github.com/espressif/esp-serial-flasher
Лично я рекомендую этот репозиторий GitHub под названием «FlashBox - Esp32 serial flasher» от Machiel80. Вот ссылка:
https://github.com/Machiel80/esp32-serial-flasher
У него есть хорошая документация и даже видео на YouTube, объясняющее, как это делается.
Наконец, у проекта flipperZero также есть проект последовательного прошивальщика на Github, "flipperzero-esp-flasher". Вот ссылка:
https://github.com/0xchocolate/flipperzero-esp-flasher
- esp32, platformio A fatal error occurred: Packet content transfer stopped (received 8 bytes) *** [upload] Error 2
- Как выбрать альтернативные контакты I2C на ESP32?
- Драйверы для чипа последовательного порта CH9102X
- Как преобразовать форматированный оператор print в строковую переменную?
- ESP32 - "Детектор Браунаута был активирован" при запуске Wi-Fi
- Питание esp32cam от аккумулятора
- Контакты RX и TX на esp32
- ESP32: отключить детектор отключения питания
поскольку в ESP32 нет USB-периферийного устройства на чипе, лучшей идеей было бы сделать это через UART. вы провели исследование, прежде чем спросить? ты что-нибудь нашел? ты что-нибудь пробовал?, @Juraj
Спасибо, что поделились своим мнением, @Juraj. Тем не менее, все ESP32, с которыми я работаю, включают в себя USB CP2102 для моста UART., @Dan
может ли CP2102 выступать в качестве USB-хоста? нет., @Juraj
Это отличный момент, @Juraj, @Dan
вы знаете, что можете использовать загрузку OTA?, @Juraj