Page 1 of 1

如何通过ESP32S3的USB进行固件升级

Posted: Mon Nov 07, 2022 11:08 am
by jinhongdu2008
如果通过USB口,在不需要按IO0的情况下,进行升级。目前测试ESP-BOX的固件可以进行升级,通过VCS的IDF创建的测试用例,也可以自动完成升级,但是通过micropython的固件,确无法完成。
请问哪个大神有解决方案。
通过原生USB,不需要IO0,能够升级,那就简单可靠了。

Re: 如何通过ESP32S3的USB进行固件升级

Posted: Mon Nov 14, 2022 1:58 am
by Li Junru
不知道是不是micropython中没有初始化USB JATG这部分功能

Re: 如何通过ESP32S3的USB进行固件升级

Posted: Mon Nov 14, 2022 6:30 am
by ESP_Bob
ESP32S3 USB 包含 USB-OTG 和 USB-Serial-JTAG 两个外设,两者共用一个内部 USB-PHY。USB-OTG 支持 USB-Host,USB-Device 等通用功能,USB-Serial-JTAG 仅支持固件下载和 JTAG 调试。

默认情况下,内部的 USB-PHY 连接到 USB-Serial-Jtag 外设上,所以无论在 download 模式还是用户程序运行模式,都能触发进入下载。

但是如果用户程序初始化了 USB-OTG 外设(例如使用了 USB Host Driver),就会导致内部 USB-PHY 转到 USB-OTG 外设上,USB-Serial-JTAG 的下载功能在运行时不再可用(仅手动进入 download 模式可用)
esp32s3_usb.png
esp32s3_usb.png (24.69 KiB) Viewed 3330 times