Skip to content

Commit 5bb8177

Browse files
authored
Add initial support for USB MSC (#5466)
* Add initial support for USB MSC * Add Firmware Upload/Download With MSC Current running firmware is available as file inside the MSC Disk. To update the firmware on the ESP, just copy a regular firmware bin into the drive * Support overwriting of the firmware file Overwriting a file is done totally differently on MacOS, Windows and Linux. This change supports it on all of them. * Allow CDC, FirmwareMSC and DFU to be enabled on boot * Add example ESP32-S2 USB-ONLY board * Various device code optimizations Added `end()` methods to MSC classes Made begin() methods safe to be called multiple times Optimized CDC class * Fix CDC Connect/Disconnect detection in Arduino IDE on Windows * Rework cdc_write * Update ESP32-S2 board configs
1 parent be84c82 commit 5bb8177

28 files changed

+1871
-191
lines changed

Diff for: CMakeLists.txt

+4
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ set(CORE_SRCS
3434
cores/esp32/StreamString.cpp
3535
cores/esp32/USB.cpp
3636
cores/esp32/USBCDC.cpp
37+
cores/esp32/USBMSC.cpp
38+
cores/esp32/FirmwareMSC.cpp
39+
cores/esp32/firmware_msc_fat.c
3740
cores/esp32/wiring_pulse.c
3841
cores/esp32/wiring_shift.c
3942
cores/esp32/WMath.cpp
@@ -151,6 +154,7 @@ set(includedirs
151154
libraries/SPI/src
152155
libraries/Ticker/src
153156
libraries/Update/src
157+
libraries/USB/src
154158
libraries/WebServer/src
155159
libraries/WiFiClientSecure/src
156160
libraries/WiFi/src

Diff for: boards.txt

+255-48
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)