espressif / esp-idf

Espressif IoT Development Framework. Official development framework for Espressif SoCs.
Apache License 2.0
13.87k stars 7.32k forks source link

USB Host MSC: USB thumb drive cannot be initialized (IDFGH-13412) #14319

Closed rikaiot closed 1 month ago

rikaiot commented 3 months ago

Answers checklist.

IDF version.

V5.3

Espressif SoC revision.

ESP32-S3 (QFN56) (revision v0.1)

Operating System used.

Windows

How did you build your project?

VS Code IDE

If you are using Windows, please specify command line type.

CMD

Development Kit.

ESP32-S3-DEVKITC-1-N32R8V

Power Supply used.

USB

What is the expected behavior?

When running examples\peripherals\usb\host\main\msc_example_main.c a the example is waiting for an USB thumb drive to be connected and after connecting some tests are performed on the thumb drive.

What is the actual behavior?

Some USB thumb drives cannot be initialized and generate an error and force the example to reboot:

I (367) example: Waiting for USB flash drive to be connected
I (8247) example: MSC device connected
E (12087) USB_MSC: msc_host_install_device(503):
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42009fb8
0x42009fb8: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)

The example is only working, when the USB thumb drive is already connected at startup of the example or when pressing the Reset button while the USB thumb drive is already connected.

Steps to reproduce.

  1. Build and Flash the examples\peripherals\usb\host\msc\ project to an ESP32-S3-DEVKITC-1-N32R8V
  2. Short the Diode D7 to provide 5V on the USB-Port and start the ESP32-S3-DEVKITC-1-N32R8V
  3. Connect an specific USB thumb drive (some do work some do not) to the USB-Port via USB micro-B to USB Typ A adapter (OTG cable)
  4. The drive is detected as connected but an error and reboot occurs:
    I (8247) example: MSC device connected
    E (12087) USB_MSC: msc_host_install_device(503):
    ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42009fb8
    0x42009fb8: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)

Debug Logs.

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
Octal Flash Mode Enabled
For OPI Flash, Use Default Flash Boot Mode
mode:SLOW_RD, clock div:1
load:0x3fce2810,len:0x178c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xcb8
load:0x403cb700,len:0x2db0
entry 0x403c8914
I (33) boot: ESP-IDF v5.3-dirty 2nd stage bootloader
I (33) boot: compile time Aug  6 2024 10:06:48
I (33) boot: Multicore bootloader
I (37) boot: chip revision: v0.1
I (40) boot.esp32s3: Boot SPI Speed : 80MHz
I (45) boot.esp32s3: SPI Mode       : SLOW READ
I (50) boot.esp32s3: SPI Flash Size : 2MB
I (55) boot: Enabling RNG early entropy source...
I (61) boot: Partition Table:
I (64) boot: ## Label            Usage          Type ST Offset   Length
I (71) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (79) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (86) boot:  2 factory          factory app      00 00 00010000 00100000
I (94) boot: End of partition table
I (98) esp_image: segment 0: paddr=00010020 vaddr=3c040020 size=0df2ch ( 57132) map
I (120) esp_image: segment 1: paddr=0001df54 vaddr=3fc92b00 size=020c4h (  8388) load
I (123) esp_image: segment 2: paddr=00020020 vaddr=42000020 size=31bfch (203772) map
I (174) esp_image: segment 3: paddr=00051c24 vaddr=3fc94bc4 size=00a20h (  2592) load
I (175) esp_image: segment 4: paddr=0005264c vaddr=40374000 size=0eacch ( 60108) load
I (203) boot: Loaded app from partition at offset 0x10000
I (203) boot: Disabling RNG early entropy source...
I (214) cpu_start: Multicore app
I (224) cpu_start: Pro cpu start user code
I (224) cpu_start: cpu freq: 160000000 Hz
I (225) app_init: Application information:
I (227) app_init: Project name:     usb-msc
I (232) app_init: App version:      1
I (237) app_init: Compile time:     Aug  6 2024 10:05:49
I (243) app_init: ELF file SHA256:  5f86a368b...
I (248) app_init: ESP-IDF:          v5.3-dirty
I (253) efuse_init: Min chip rev:     v0.0
I (258) efuse_init: Max chip rev:     v0.99
I (263) efuse_init: Chip rev:         v0.1
I (268) heap_init: Initializing. RAM available for dynamic allocation:
I (275) heap_init: At 3FC95F08 len 00053808 (334 KiB): RAM
I (281) heap_init: At 3FCE9710 len 00005724 (21 KiB): RAM
I (287) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
I (293) heap_init: At 600FE100 len 00001EE8 (7 KiB): RTCRAM
W (300) spi_flash: Octal flash chip is using but dio mode is selected, will automatically swich to Octal mode
I (310) spi_flash: detected chip: mxic (opi)
I (315) spi_flash: flash io: opi_str
W (319) spi_flash: Detected size(32768k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
I (332) sleep: Configure to isolate all GPIO pins in sleep state
I (339) sleep: Enable automatic switching of GPIO sleep configuration
I (347) main_task: Started on CPU0
I (357) main_task: Calling app_main()
I (357) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2
I (367) example: Waiting for USB flash drive to be connected
I (8247) example: MSC device connected
E (12087) USB_MSC: msc_host_install_device(503):
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42009fb8
0x42009fb8: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)

file: "../../../main/msc_example_main.c" line 278
func: app_main
expression: msc_host_install_device(msg.data.new_dev_address, &msc_device)

abort() was called at PC 0x4037a15f on core 0
0x4037a15f: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49

Backtrace: 0x40375a9e:0x3fc987c0 0x4037a169:0x3fc987e0 0x403809c1:0x3fc98800 0x4037a15f:0x3fc98870 0x42009fb8:0x3fc988a0 0x42031373:0x3fc989e0 0x4037abfd:0x3fc98a10
0x40375a9e: panic_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/panic.c:463
0x4037a169: esp_system_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/esp_system_chip.c:92
0x403809c1: abort at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/abort.c:38
0x4037a15f: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49
0x42009fb8: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)
0x42031373: main_task at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/app_startup.c:208
0x4037abfd: vPortTaskWrapper at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c:134

ELF file SHA256: 5f86a368b

Rebooting...
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x403759d8

More Information.

Further investigations showed that the example is hanging in msc_host.c in function msc_host_install_device on the location: MSC_GOTO_ON_ERROR( msc_wait_for_ready_state(msc_device, WAIT_FOR_READY_TIMEOUT_MS) );

It seems that the thumb drive never gets into ready state. Increasing WAIT_FOR_READY_TIMEOUT_MS to a very long time does not help.

Interestingly it is working without error, when the USB thumb drive is connected at startup, so after the reboot the example is working. Only "hot-plugging" the thumb drive generates the error.

The issue also only occurs with some specific thumb drives other drives are working without problem.

Unfortunately we have a lot of these USB thumb drives in the field, as they were bundled with our products.

We could provide you examples of the affected USB thumb drives to solve the issue at anytime.

Here is the the device information outputed by the example when the thumb drive is connected at startup:

*** Device descriptor ***
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0x0
bDeviceSubClass 0x0
bDeviceProtocol 0x0
bMaxPacketSize0 64
idVendor 0x13fe
idProduct 0x4200
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerialNumber 3
bNumConfigurations 1
*** Configuration descriptor ***
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
bMaxPower 100mA
        *** Interface descriptor ***
        bLength 9
        bDescriptorType 4
        bInterfaceNumber 0
        bAlternateSetting 0
        bNumEndpoints 2
        bInterfaceClass 0x8
        bInterfaceSubClass 0x6
        bInterfaceProtocol 0x50
        iInterface 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x81   EP 1 IN
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x2    EP 2 OUT
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
Device info:
         Capacity: 3823 MB
         Sector size: 512
         Sector count: 7831551
         PID: 0x4200
         VID: 0x13FE
         iProduct: USB DISK 2.0
         iManufacturer:
         iSerialNumber: 0701767BB12A0C22
roma-jam commented 3 months ago

Hi @rikaiot,

Is that possible to change the verbosity level to Verbose via menuconfig and share the log during the device connection?

image

rikaiot commented 3 months ago

Hi @roma-jam,

here is the verbose log output, when starting the example and plugging in the USB thumb drive:

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
Octal Flash Mode Enabled
For OPI Flash, Use Default Flash Boot Mode
mode:SLOW_RD, clock div:1
load:0x3fce2810,len:0x178c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xcb8
load:0x403cb700,len:0x2db0
entry 0x403c8914
I (33) boot: ESP-IDF v5.3-dirty 2nd stage bootloader
I (33) boot: compile time Aug  7 2024 09:59:19
I (33) boot: Multicore bootloader
I (37) boot: chip revision: v0.1
I (40) boot.esp32s3: Boot SPI Speed : 80MHz
I (45) boot.esp32s3: SPI Mode       : SLOW READ
I (50) boot.esp32s3: SPI Flash Size : 2MB
I (55) boot: Enabling RNG early entropy source...
I (61) boot: Partition Table:
I (64) boot: ## Label            Usage          Type ST Offset   Length
I (71) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (79) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (86) boot:  2 factory          factory app      00 00 00010000 00100000
I (94) boot: End of partition table
I (98) esp_image: segment 0: paddr=00010020 vaddr=3c040020 size=0ed44h ( 60740) map
I (121) esp_image: segment 1: paddr=0001ed6c vaddr=3fc92d00 size=012ach (  4780) load
I (123) esp_image: segment 2: paddr=00020020 vaddr=42000020 size=32a98h (207512) map
I (176) esp_image: segment 3: paddr=00052ac0 vaddr=3fc93fac size=019d8h (  6616) load
I (178) esp_image: segment 4: paddr=000544a0 vaddr=40374000 size=0ec90h ( 60560) load
I (205) boot: Loaded app from partition at offset 0x10000
I (205) boot: Disabling RNG early entropy source...
V (216) mmap: after coalescing, 1 regions are left
I (217) cpu_start: Multicore app
D (217) cpu_start: Pro cpu up
D (217) cpu_start: Starting app cpu, entry point is 0x403752fc
0x403752fc: call_start_cpu1 at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/cpu_start.c:195

D (0) cpu_start: App cpu up
V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
2 CACHE_ERR: corD 12ac)ess error intr _Clr &alena mask ial: : x1210
V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
V CACHE_ERR: core 0 access error intr clr & ena mask is: 0x1f
D (249) cpu_start: calling init function: 0x4200229c on core: 0
0x4200229c: __esp_system_init_fn_init_efuse_check at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:31

D (254) cpu_start: calling init function: 0x42002528 on core: 0
0x42002528: __esp_system_init_fn_init_show_cpu_freq at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:58

I (260) cpu_start: Pro cpu start user code
I (264) cpu_start: cpu freq: 160000000 Hz
D (269) cpu_start: calling init function: 0x420021cc on core: 0
0x420021cc: __esp_system_init_fn_init_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_app_format/esp_app_desc.c:104

I (275) app_init: Application information:
I (280) app_init: Project name:     usb-msc
I (285) app_init: App version:      1
I (289) app_init: Compile time:     Aug  7 2024 09:59:00
I (295) app_init: ELF file SHA256:  05db7289e...
I (300) app_init: ESP-IDF:          v5.3-dirty
D (305) cpu_start: calling init function: 0x420022b0 on core: 0
0x420022b0: __esp_system_init_fn_init_efuse_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:41

I (311) efuse_init: Min chip rev:     v0.0
I (316) efuse_init: Max chip rev:     v0.99
I (321) efuse_init: Chip rev:         v0.1
D (326) cpu_start: calling init function: 0x42003f8c on core: 0
0x42003f8c: __esp_system_init_fn_init_heap at C:/SysGCC/esp32/esp-idf/v5.3/components/heap/heap_caps_init.c:25

V (332) memory_layout: reserved range is 0x3c04ec9c - 0x3c04ecc4
D (338) memory_layout: Checking 6 reserved memory ranges:
D (343) memory_layout: Reserved memory range 0x3fc84000 - 0x3fc92d00
D (350) memory_layout: Reserved memory range 0x3fc92d00 - 0x3fc962a8
D (356) memory_layout: Reserved memory range 0x3fceee34 - 0x3fcf0000
D (363) memory_layout: Reserved memory range 0x40374000 - 0x40382d00
0x40374000: _WindowOverflow4 at C:/SysGCC/esp32/esp-idf/v5.3/components/xtensa/xtensa_vectors.S:2027

D (369) memory_layout: Reserved memory range 0x600fe000 - 0x600fe100
D (376) memory_layout: Reserved memory range 0x600fffe8 - 0x60100000
D (382) memory_layout: Building list of available memory regions:
V (388) memory_layout: Examining memory region 0x3fc88000 - 0x3fc90000
V (395) memory_layout: Region 0x3fc88000 - 0x3fc90000 inside of reserved 0x3fc84000 - 0x3fc92d00
V (404) memory_layout: Examining memory region 0x3fc90000 - 0x3fca0000
V (410) memory_layout: Start of region 0x3fc90000 - 0x3fca0000 overlaps reserved 0x3fc84000 - 0x3fc92d00
V (420) memory_layout: Start of region 0x3fc92d00 - 0x3fca0000 overlaps reserved 0x3fc92d00 - 0x3fc962a8
D (429) memory_layout: Available memory region 0x3fc962a8 - 0x3fca0000
V (436) memory_layout: Examining memory region 0x3fca0000 - 0x3fcb0000
D (442) memory_layout: Available memory region 0x3fca0000 - 0x3fcb0000
V (449) memory_layout: Examining memory region 0x3fcb0000 - 0x3fcc0000
D (456) memory_layout: Available memory region 0x3fcb0000 - 0x3fcc0000
V (462) memory_layout: Examining memory region 0x3fcc0000 - 0x3fcd0000
D (469) memory_layout: Available memory region 0x3fcc0000 - 0x3fcd0000
V (475) memory_layout: Examining memory region 0x3fcd0000 - 0x3fce0000
D (482) memory_layout: Available memory region 0x3fcd0000 - 0x3fce0000
V (489) memory_layout: Examining memory region 0x3fce0000 - 0x3fce9710
D (495) memory_layout: Available memory region 0x3fce0000 - 0x3fce9710
V (502) memory_layout: Examining memory region 0x3fce9710 - 0x3fcf0000
V (508) memory_layout: End of region 0x3fce9710 - 0x3fcf0000 overlaps reserved 0x3fceee34 - 0x3fcf0000
D (518) memory_layout: Available memory region 0x3fce9710 - 0x3fceee34
V (524) memory_layout: Examining memory region 0x3fcf0000 - 0x3fcf8000
D (531) memory_layout: Available memory region 0x3fcf0000 - 0x3fcf8000
V (538) memory_layout: Examining memory region 0x600fe000 - 0x60100000
V (544) memory_layout: Start of region 0x600fe000 - 0x60100000 overlaps reserved 0x600fe000 - 0x600fe100
V (554) memory_layout: End of region 0x600fe100 - 0x60100000 overlaps reserved 0x600fffe8 - 0x60100000
D (563) memory_layout: Available memory region 0x600fe100 - 0x600fffe8
I (570) heap_init: Initializing. RAM available for dynamic allocation:
D (577) heap_init: New heap initialised at 0x3fc962a8
I (582) heap_init: At 3FC962A8 len 00053468 (333 KiB): RAM
I (588) heap_init: At 3FCE9710 len 00005724 (21 KiB): RAM
D (594) heap_init: New heap initialised at 0x3fcf0000
I (599) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
D (606) heap_init: New heap initialised at 0x600fe100
I (611) heap_init: At 600FE100 len 00001EE8 (7 KiB): RTCRAM
D (617) cpu_start: calling init function: 0x42002000 on core: 0
0x42002000: __esp_system_init_fn_esp_timer_init_nonos at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_timer/src/esp_timer_init.c:28

D (623) cpu_start: calling init function: 0x42006f78 on core: 0
0x42006f78: __esp_system_init_fn_init_newlib at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:162

D (629) cpu_start: calling init function: 0x42002574 on core: 0
0x42002574: __esp_system_init_fn_init_brownout at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:67

V (635) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (641) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (650) intr_alloc: Connected src 39 to int 0 (cpu 0)
D (655) cpu_start: calling init function: 0x42002580 on core: 0
0x42002580: __esp_system_init_fn_init_newlib_time at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:81

D (661) cpu_start: calling init function: 0x42008378 on core: 0
0x42008378: __esp_system_init_fn_init_vfs_uart at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_uart/src/uart_vfs.c:1080

D (667) cpu_start: calling init function: 0x42009064 on core: 0
0x42009064: __esp_system_init_fn_init_vfs_usj_sec at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_vfs.c:404

D (673) cpu_start: calling init function: 0x4200922c on core: 0
0x4200922c: __esp_system_init_fn_init_vfs_console at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_vfs_console/vfs_console.c:222

D (679) cpu_start: calling init function: 0x42006fe0 on core: 0
0x42006fe0: __esp_system_init_fn_init_newlib_stdio at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:207

D (685) cpu_start: calling init function: 0x4200736c on core: 0
0x4200736c: __esp_system_init_fn_init_pthread at C:/SysGCC/esp32/esp-idf/v5.3/components/pthread/pthread.c:76

D (690) cpu_start: calling init function: 0x4200258c on core: 0
0x4200258c: __esp_system_init_fn_init_flash at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:88

W (696) spi_flash: Octal flash chip is using but dio mode is selected, will automatically swich to Octal mode
D (707) spi_flash: trying chip: issi
D (711) spi_flash: trying chip: gd
D (714) spi_flash: trying chip: mxic
D (718) spi_flash: trying chip: winbond
D (722) spi_flash: trying chip: boya
D (725) spi_flash: trying chip: th
D (729) spi_flash: trying chip: mxic (opi)
I (733) spi_flash: detected chip: mxic (opi)
I (738) spi_flash: flash io: opi_str
W (742) spi_flash: Detected size(32768k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
D (755) cpu_start: calling init function: 0x4200234c on core: 0
0x4200234c: __esp_system_init_fn_init_efuse at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:137

D (761) cpu_start: calling init function: 0x40379ba0
0x40379ba0: enable_timer_group0_for_calibration at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/port/esp32s3/rtc_time.c:199

D (767) cpu_start: calling init function: 0x420037d4
0x420037d4: esp_ipc_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_ipc.c:113

D (772) cpu_start: calling init function: 0x42002b1c
0x42002b1c: esp_reset_reason_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/soc/esp32s3/reset_reason.c:63

D (777) cpu_start: calling init function: 0x42004fd8 on core: 0
0x42004fd8: __esp_system_init_fn_esp_sleep_startup_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/sleep_gpio.c:185

I (782) sleep: Configure to isolate all GPIO pins in sleep state
I (789) sleep: Enable automatic switching of GPIO sleep configuration
D (796) cpu_start: calling init function: 0x420025b4 on core: 0
0x420025b4: __esp_system_init_fn_init_apb_dma at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:125

D (802) cpu_start: calling init function: 0x42008c74 on core: 0
0x42008c74: __esp_system_init_fn_usb_serial_jtag_conn_status_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_connection_monitor.c:75

D (808) cpu_start: calling init function: 0x420025c0 on core: 0
0x420025c0: __esp_system_init_fn_init_disable_rtc_wdt at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:143

V (814) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (821) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (829) intr_alloc: Connected src 79 to int 1 (cpu 0)
D (834) app_start: Starting scheduler on CPU0
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x402
D (838) intr_alloc: Connected src 57 to int 2 (cpu 0)
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (848) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x40E
D (848) intr_alloc: Connected src 80 to int 1 (cpu 1)
D (858) app_start: Starting scheduler on CPU1
V (858) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (868) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x402
D (878) intr_alloc: Connected src 58 to int 2 (cpu 1)
I (838) main_task: Started on CPU0
D (888) heap_init: New heap initialised at 0x3fce9710
V (888) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (898) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0xE
D (908) intr_alloc: Connected src 52 to int 3 (cpu 0)
I (908) main_task: Calling app_main()
V (918) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (918) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x802
D (928) intr_alloc: Connected src 38 to int 5 (cpu 0)
I (938) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2
V (948) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (948) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x2
D (958) intr_alloc: Connected src 16 to int 8 (cpu 0)
I (958) example: Waiting for USB flash drive to be connected
D (968) USB_MSC: USB HID handling start
V (978) USB_MSC: USB MSC handling
D (12438) HUB: Root port reset
D (12438) HUB: Stage done: START
D (12438) HUB: Stage done: GET_SHORT_DEV_DESC
D (12438) HUB: Stage done: CHECK_SHORT_DEV_DESC
D (12498) HUB: Stage done: SECOND_RESET
D (12498) HUB: Stage done: SET_ADDR
D (12498) HUB: Stage done: CHECK_ADDR
D (12508) HUB: Stage done: SET_ADDR_RECOVERY
D (12508) HUB: Stage done: GET_FULL_DEV_DESC
D (12508) HUB: Stage done: CHECK_FULL_DEV_DESC
D (12508) HUB: Stage done: GET_SHORT_CONFIG_DESC
D (12508) HUB: Stage done: CHECK_SHORT_CONFIG_DESC
D (12518) HUB: Stage done: GET_FULL_CONFIG_DESC
D (12518) HUB: Stage done: CHECK_FULL_CONFIG_DESC
D (12528) HUB: Stage done: SET_CONFIG
D (12528) HUB: Stage done: CHECK_CONFIG
D (12538) HUB: Stage done: GET_SHORT_LANGID_TABLE
D (12538) HUB: Stage done: CHECK_SHORT_LANGID_TABLE
D (12538) HUB: Stage done: GET_FULL_LANGID_TABLE
D (12548) HUB: Stage done: CHECK_FULL_LANGID_TABLE
D (12548) HUB: Stage done: GET_SHORT_MANU_STR_DESC
D (12558) HUB: Stage done: CHECK_SHORT_MANU_STR_DESC
D (12558) HUB: Stage done: GET_FULL_MANU_STR_DESC
D (12568) HUB: Stage done: CHECK_FULL_MANU_STR_DESC
D (12568) HUB: Stage done: GET_SHORT_PROD_STR_DESC
D (12578) HUB: Stage done: CHECK_SHORT_PROD_STR_DESC
D (12578) HUB: Stage done: GET_FULL_PROD_STR_DESC
D (12588) HUB: Stage done: CHECK_FULL_PROD_STR_DESC
D (12588) HUB: Stage done: GET_SHORT_SER_STR_DESC
D (12598) HUB: Stage done: CHECK_SHORT_SER_STR_DESC
D (12598) HUB: Stage done: GET_FULL_SER_STR_DESC
D (12608) HUB: Stage done: CHECK_FULL_SER_STR_DESC
D (12608) HUB: Stage done: CLEANUP
D (12618) USBH: Processing actions 0x40
D (12618) USBH: New device 1
I (12618) example: MSC device connected
V (12628) USB_MSC: USB MSC handling
V (12628) USB_MSC: USB MSC handling
V (12628) USB_MSC: USB MSC handling
V (12638) USB_MSC: USB MSC handling
V (12638) USB_MSC: USB MSC handling
V (12648) USB_MSC: USB MSC handling
D (12648) USB_MSC_SCSI: CSW failed: status 1
V (12748) USB_MSC: USB MSC handling
V (12748) USB_MSC: USB MSC handling
D (12748) USB_MSC_SCSI: CSW failed: status 1
V (12848) USB_MSC: USB MSC handling
V (12848) USB_MSC: USB MSC handling
D (12848) USB_MSC_SCSI: CSW failed: status 1
V (12948) USB_MSC: USB MSC handling
V (12948) USB_MSC: USB MSC handling
D (12948) USB_MSC_SCSI: CSW failed: status 1
V (13048) USB_MSC: USB MSC handling
V (13048) USB_MSC: USB MSC handling
D (13048) USB_MSC_SCSI: CSW failed: status 1
V (13148) USB_MSC: USB MSC handling
V (13148) USB_MSC: USB MSC handling
D (13148) USB_MSC_SCSI: CSW failed: status 1
V (13248) USB_MSC: USB MSC handling
V (13248) USB_MSC: USB MSC handling
D (13248) USB_MSC_SCSI: CSW failed: status 1
V (13348) USB_MSC: USB MSC handling
V (13348) USB_MSC: USB MSC handling
D (13348) USB_MSC_SCSI: CSW failed: status 1
V (13448) USB_MSC: USB MSC handling
V (13448) USB_MSC: USB MSC handling
D (13448) USB_MSC_SCSI: CSW failed: status 1
V (13548) USB_MSC: USB MSC handling
V (13548) USB_MSC: USB MSC handling
D (13548) USB_MSC_SCSI: CSW failed: status 1
V (13648) USB_MSC: USB MSC handling
V (13648) USB_MSC: USB MSC handling
D (13648) USB_MSC_SCSI: CSW failed: status 1
V (13748) USB_MSC: USB MSC handling
V (13748) USB_MSC: USB MSC handling
D (13748) USB_MSC_SCSI: CSW failed: status 1
V (13848) USB_MSC: USB MSC handling
V (13848) USB_MSC: USB MSC handling
D (13848) USB_MSC_SCSI: CSW failed: status 1
V (13948) USB_MSC: USB MSC handling
V (13948) USB_MSC: USB MSC handling
D (13948) USB_MSC_SCSI: CSW failed: status 1
V (14048) USB_MSC: USB MSC handling
V (14048) USB_MSC: USB MSC handling
D (14048) USB_MSC_SCSI: CSW failed: status 1
V (14148) USB_MSC: USB MSC handling
V (14148) USB_MSC: USB MSC handling
D (14148) USB_MSC_SCSI: CSW failed: status 1
V (14248) USB_MSC: USB MSC handling
V (14248) USB_MSC: USB MSC handling
D (14248) USB_MSC_SCSI: CSW failed: status 1
V (14348) USB_MSC: USB MSC handling
V (14348) USB_MSC: USB MSC handling
D (14348) USB_MSC_SCSI: CSW failed: status 1
V (14448) USB_MSC: USB MSC handling
V (14448) USB_MSC: USB MSC handling
D (14448) USB_MSC_SCSI: CSW failed: status 1
V (14548) USB_MSC: USB MSC handling
V (14548) USB_MSC: USB MSC handling
D (14548) USB_MSC_SCSI: CSW failed: status 1
V (14648) USB_MSC: USB MSC handling
V (14648) USB_MSC: USB MSC handling
D (14648) USB_MSC_SCSI: CSW failed: status 1
V (14748) USB_MSC: USB MSC handling
V (14748) USB_MSC: USB MSC handling
D (14748) USB_MSC_SCSI: CSW failed: status 1
V (14848) USB_MSC: USB MSC handling
V (14848) USB_MSC: USB MSC handling
D (14848) USB_MSC_SCSI: CSW failed: status 1
V (14948) USB_MSC: USB MSC handling
V (14948) USB_MSC: USB MSC handling
D (14948) USB_MSC_SCSI: CSW failed: status 1
V (15048) USB_MSC: USB MSC handling
V (15048) USB_MSC: USB MSC handling
D (15048) USB_MSC_SCSI: CSW failed: status 1
V (15148) USB_MSC: USB MSC handling
V (15148) USB_MSC: USB MSC handling
D (15148) USB_MSC_SCSI: CSW failed: status 1
V (15248) USB_MSC: USB MSC handling
V (15248) USB_MSC: USB MSC handling
D (15248) USB_MSC_SCSI: CSW failed: status 1
V (15348) USB_MSC: USB MSC handling
V (15348) USB_MSC: USB MSC handling
D (15348) USB_MSC_SCSI: CSW failed: status 1
V (15448) USB_MSC: USB MSC handling
V (15448) USB_MSC: USB MSC handling
D (15448) USB_MSC_SCSI: CSW failed: status 1
V (15548) USB_MSC: USB MSC handling
V (15548) USB_MSC: USB MSC handling
D (15548) USB_MSC_SCSI: CSW failed: status 1
V (15648) USB_MSC: USB MSC handling
V (15648) USB_MSC: USB MSC handling
D (15648) USB_MSC_SCSI: CSW failed: status 1
V (15748) USB_MSC: USB MSC handling
V (16478) USB_MSC: USB MSC handling
V (16478) USB_MSC: USB MSC handling
D (16478) USB_MSC_SCSI: sense_key: 0x06, code: 0x28, qualifier: 0x00
E (16488) USB_MSC: msc_host_install_device(503):
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x4200a500
0x4200a500: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)

file: "../../../main/msc_example_main.c" line 278
func: app_main
expression: msc_host_install_device(msg.data.new_dev_address, &msc_device)

abort() was called at PC 0x4037a227 on core 0
0x4037a227: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49

Backtrace: 0x40375b0a:0x3fc98bc0 0x4037a231:0x3fc98be0 0x40380a89:0x3fc98c00 0x4037a227:0x3fc98c70 0x4200a500:0x3fc98ca0 0x420321cf:0x3fc98de0 0x4037acc5:0x3fc98e10
0x40375b0a: panic_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/panic.c:463
0x4037a231: esp_system_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/esp_system_chip.c:92
0x40380a89: abort at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/abort.c:38
0x4037a227: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49
0x4200a500: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)
0x420321cf: main_task at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/app_startup.c:208
0x4037acc5: vPortTaskWrapper at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c:134

ELF file SHA256: 05db7289e

Rebooting...
roma-jam commented 3 months ago

@rikaiot thanks for the additional information.

Which port do you use to power the dev kit with attachable USB drive? There might be not enough power to support both devices. Could you try to use an external Hub with external power supply to power the dev kit?

rikaiot commented 3 months ago

@roma-jam we tried powering the dev kit via a hub with external power supply without any difference.

We additionally also tried directly powering the USB thumb drive with an separate 5V power supply unit but the error persists.

The interesting thing is, that the example is working when the thumb drive is already plugged in at startup.

roma-jam commented 3 months ago

@rikaiot , Thanks for the reply.

Could you please share the same log but for the case when device is present in the port while dev kit is powering up?

Also, do you know how to use Wireshark and how to log USB traffic with it? To get the log of attaching USB Drive to the PC Host also will be helpfull.

rikaiot commented 3 months ago

@roma-jam, Thanks for your help!

Here is the log of a run with the thumb drive connected while powering up the kit. It seems that the very first run after power up also fails and triggers a reboot. After the reboot the devices is recognized successfully. Also pressing the reset button, with the device connected works without any error. Summarizing it up:

  1. Power-Up with thumb drive connected: Device cannot be initialized
  2. Reboot/Reset with thumb drive connected: Success
  3. Hot-Plug of thumb drive: Device cannot be initialized

We are not familiar with capturing USB traffic with Wireshark but could try to figure it out.

But we would also be glad to send you 5 pieces of the affected thumb drives to allow you to reproduce and investigate the issue directly.

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
Octal Flash Mode Enabled
For OPI Flash, Use Default Flash Boot Mode
mode:SLOW_RD, clock div:1
load:0x3fce2810,len:0x178c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xcb8
load:0x403cb700,len:0x2db0
entry 0x403c8914
I (33) boot: ESP-IDF v5.3-dirty 2nd stage bootloader
I (33) boot: compile time Aug  7 2024 09:59:19
I (33) boot: Multicore bootloader
I (37) boot: chip revision: v0.1
I (40) boot.esp32s3: Boot SPI Speed : 80MHz
I (45) boot.esp32s3: SPI Mode       : SLOW READ
I (50) boot.esp32s3: SPI Flash Size : 2MB
I (55) boot: Enabling RNG early entropy source...
I (61) boot: Partition Table:
I (64) boot: ## Label            Usage          Type ST Offset   Length
I (71) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (79) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (86) boot:  2 factory          factory app      00 00 00010000 00100000
I (94) boot: End of partition table
I (98) esp_image: segment 0: paddr=00010020 vaddr=3c040020 size=0ed44h ( 60740) map
I (121) esp_image: segment 1: paddr=0001ed6c vaddr=3fc92d00 size=012ach (  4780) load
I (123) esp_image: segment 2: paddr=00020020 vaddr=42000020 size=32a98h (207512) map
I (176) esp_image: segment 3: paddr=00052ac0 vaddr=3fc93fac size=019d8h (  6616) load
I (178) esp_image: segment 4: paddr=000544a0 vaddr=40374000 size=0ec90h ( 60560) load
I (205) boot: Loaded app from partition at offset 0x10000
I (205) boot: Disabling RNG early entropy source...
V (216) mmap: after coalescing, 1 regions are left
I (217) cpu_start: Multicore app
D (217) cpu_start: Pro cpu up
D (217) cpu_start: Starting app cpu, entry point is 0x403752fc
0x403752fc: call_start_cpu1 at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/cpu_start.c:195

D (0) cpu_start: App cpu up
V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
V CACHE_ERD:(2core 1 a: eTCs error intca clr & enavamask 4s:410xf

V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
V CACHE_ERR: core 0 access error intr clr & ena mask is: 0x1f
D (249) cpu_start: calling init function: 0x4200229c on core: 0
0x4200229c: __esp_system_init_fn_init_efuse_check at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:31

D (253) cpu_start: calling init function: 0x42002528 on core: 0
0x42002528: __esp_system_init_fn_init_show_cpu_freq at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:58

I (259) cpu_start: Pro cpu start user code
I (264) cpu_start: cpu freq: 160000000 Hz
D (269) cpu_start: calling init function: 0x420021cc on core: 0
0x420021cc: __esp_system_init_fn_init_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_app_format/esp_app_desc.c:104

I (275) app_init: Application information:
I (279) app_init: Project name:     usb-msc
I (284) app_init: App version:      1
I (289) app_init: Compile time:     Aug  7 2024 09:59:00
I (295) app_init: ELF file SHA256:  05db7289e...
I (300) app_init: ESP-IDF:          v5.3-dirty
D (305) cpu_start: calling init function: 0x420022b0 on core: 0
0x420022b0: __esp_system_init_fn_init_efuse_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:41

I (311) efuse_init: Min chip rev:     v0.0
I (316) efuse_init: Max chip rev:     v0.99
I (321) efuse_init: Chip rev:         v0.1
D (325) cpu_start: calling init function: 0x42003f8c on core: 0
0x42003f8c: __esp_system_init_fn_init_heap at C:/SysGCC/esp32/esp-idf/v5.3/components/heap/heap_caps_init.c:25

V (332) memory_layout: reserved range is 0x3c04ec9c - 0x3c04ecc4
D (338) memory_layout: Checking 6 reserved memory ranges:
D (343) memory_layout: Reserved memory range 0x3fc84000 - 0x3fc92d00
D (349) memory_layout: Reserved memory range 0x3fc92d00 - 0x3fc962a8
D (356) memory_layout: Reserved memory range 0x3fceee34 - 0x3fcf0000
D (362) memory_layout: Reserved memory range 0x40374000 - 0x40382d00
0x40374000: _WindowOverflow4 at C:/SysGCC/esp32/esp-idf/v5.3/components/xtensa/xtensa_vectors.S:2027

D (369) memory_layout: Reserved memory range 0x600fe000 - 0x600fe100
D (375) memory_layout: Reserved memory range 0x600fffe8 - 0x60100000
D (382) memory_layout: Building list of available memory regions:
V (388) memory_layout: Examining memory region 0x3fc88000 - 0x3fc90000
V (394) memory_layout: Region 0x3fc88000 - 0x3fc90000 inside of reserved 0x3fc84000 - 0x3fc92d00
V (403) memory_layout: Examining memory region 0x3fc90000 - 0x3fca0000
V (410) memory_layout: Start of region 0x3fc90000 - 0x3fca0000 overlaps reserved 0x3fc84000 - 0x3fc92d00
V (419) memory_layout: Start of region 0x3fc92d00 - 0x3fca0000 overlaps reserved 0x3fc92d00 - 0x3fc962a8
D (429) memory_layout: Available memory region 0x3fc962a8 - 0x3fca0000
V (435) memory_layout: Examining memory region 0x3fca0000 - 0x3fcb0000
D (442) memory_layout: Available memory region 0x3fca0000 - 0x3fcb0000
V (449) memory_layout: Examining memory region 0x3fcb0000 - 0x3fcc0000
D (455) memory_layout: Available memory region 0x3fcb0000 - 0x3fcc0000
V (462) memory_layout: Examining memory region 0x3fcc0000 - 0x3fcd0000
D (468) memory_layout: Available memory region 0x3fcc0000 - 0x3fcd0000
V (475) memory_layout: Examining memory region 0x3fcd0000 - 0x3fce0000
D (482) memory_layout: Available memory region 0x3fcd0000 - 0x3fce0000
V (488) memory_layout: Examining memory region 0x3fce0000 - 0x3fce9710
D (495) memory_layout: Available memory region 0x3fce0000 - 0x3fce9710
V (501) memory_layout: Examining memory region 0x3fce9710 - 0x3fcf0000
V (508) memory_layout: End of region 0x3fce9710 - 0x3fcf0000 overlaps reserved 0x3fceee34 - 0x3fcf0000
D (517) memory_layout: Available memory region 0x3fce9710 - 0x3fceee34
V (524) memory_layout: Examining memory region 0x3fcf0000 - 0x3fcf8000
D (531) memory_layout: Available memory region 0x3fcf0000 - 0x3fcf8000
V (537) memory_layout: Examining memory region 0x600fe000 - 0x60100000
V (544) memory_layout: Start of region 0x600fe000 - 0x60100000 overlaps reserved 0x600fe000 - 0x600fe100
V (553) memory_layout: End of region 0x600fe100 - 0x60100000 overlaps reserved 0x600fffe8 - 0x60100000
D (563) memory_layout: Available memory region 0x600fe100 - 0x600fffe8
I (569) heap_init: Initializing. RAM available for dynamic allocation:
D (577) heap_init: New heap initialised at 0x3fc962a8
I (582) heap_init: At 3FC962A8 len 00053468 (333 KiB): RAM
I (588) heap_init: At 3FCE9710 len 00005724 (21 KiB): RAM
D (594) heap_init: New heap initialised at 0x3fcf0000
I (599) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
D (605) heap_init: New heap initialised at 0x600fe100
I (610) heap_init: At 600FE100 len 00001EE8 (7 KiB): RTCRAM
D (617) cpu_start: calling init function: 0x42002000 on core: 0
0x42002000: __esp_system_init_fn_esp_timer_init_nonos at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_timer/src/esp_timer_init.c:28

D (623) cpu_start: calling init function: 0x42006f78 on core: 0
0x42006f78: __esp_system_init_fn_init_newlib at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:162

D (629) cpu_start: calling init function: 0x42002574 on core: 0
0x42002574: __esp_system_init_fn_init_brownout at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:67

V (635) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (641) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (649) intr_alloc: Connected src 39 to int 0 (cpu 0)
D (654) cpu_start: calling init function: 0x42002580 on core: 0
0x42002580: __esp_system_init_fn_init_newlib_time at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:81

D (660) cpu_start: calling init function: 0x42008378 on core: 0
0x42008378: __esp_system_init_fn_init_vfs_uart at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_uart/src/uart_vfs.c:1080

D (666) cpu_start: calling init function: 0x42009064 on core: 0
0x42009064: __esp_system_init_fn_init_vfs_usj_sec at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_vfs.c:404

D (672) cpu_start: calling init function: 0x4200922c on core: 0
0x4200922c: __esp_system_init_fn_init_vfs_console at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_vfs_console/vfs_console.c:222

D (678) cpu_start: calling init function: 0x42006fe0 on core: 0
0x42006fe0: __esp_system_init_fn_init_newlib_stdio at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:207

D (684) cpu_start: calling init function: 0x4200736c on core: 0
0x4200736c: __esp_system_init_fn_init_pthread at C:/SysGCC/esp32/esp-idf/v5.3/components/pthread/pthread.c:76

D (690) cpu_start: calling init function: 0x4200258c on core: 0
0x4200258c: __esp_system_init_fn_init_flash at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:88

W (696) spi_flash: Octal flash chip is using but dio mode is selected, will automatically swich to Octal mode
D (707) spi_flash: trying chip: issi
D (710) spi_flash: trying chip: gd
D (714) spi_flash: trying chip: mxic
D (717) spi_flash: trying chip: winbond
D (721) spi_flash: trying chip: boya
D (725) spi_flash: trying chip: th
D (728) spi_flash: trying chip: mxic (opi)
I (733) spi_flash: detected chip: mxic (opi)
I (738) spi_flash: flash io: opi_str
W (742) spi_flash: Detected size(32768k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
D (755) cpu_start: calling init function: 0x4200234c on core: 0
0x4200234c: __esp_system_init_fn_init_efuse at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:137

D (761) cpu_start: calling init function: 0x40379ba0
0x40379ba0: enable_timer_group0_for_calibration at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/port/esp32s3/rtc_time.c:199

D (766) cpu_start: calling init function: 0x420037d4
0x420037d4: esp_ipc_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_ipc.c:113

D (771) cpu_start: calling init function: 0x42002b1c
0x42002b1c: esp_reset_reason_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/soc/esp32s3/reset_reason.c:63

D (776) cpu_start: calling init function: 0x42004fd8 on core: 0
0x42004fd8: __esp_system_init_fn_esp_sleep_startup_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/sleep_gpio.c:185

I (782) sleep: Configure to isolate all GPIO pins in sleep state
I (789) sleep: Enable automatic switching of GPIO sleep configuration
D (796) cpu_start: calling init function: 0x420025b4 on core: 0
0x420025b4: __esp_system_init_fn_init_apb_dma at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:125

D (802) cpu_start: calling init function: 0x42008c74 on core: 0
0x42008c74: __esp_system_init_fn_usb_serial_jtag_conn_status_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_connection_monitor.c:75

D (808) cpu_start: calling init function: 0x420025c0 on core: 0
0x420025c0: __esp_system_init_fn_init_disable_rtc_wdt at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:143

V (814) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (820) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (828) intr_alloc: Connected src 79 to int 1 (cpu 0)
D (833) app_start: Starting scheduler on CPU0
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x402
D (838) intr_alloc: Connected src 57 to int 2 (cpu 0)
V (838) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (848) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x40E
D (848) intr_alloc: Connected src 80 to int 1 (cpu 1)
D (858) app_start: Starting scheduler on CPU1
V (858) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (868) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x402
D (878) intr_alloc: Connected src 58 to int 2 (cpu 1)
I (838) main_task: Started on CPU0
D (888) heap_init: New heap initialised at 0x3fce9710
V (888) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (898) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0xE
D (908) intr_alloc: Connected src 52 to int 3 (cpu 0)
I (908) main_task: Calling app_main()
V (918) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (918) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x802
D (928) intr_alloc: Connected src 38 to int 5 (cpu 0)
I (938) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2
V (948) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (948) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x2
D (958) intr_alloc: Connected src 16 to int 8 (cpu 0)
I (958) example: Waiting for USB flash drive to be connected
D (968) USB_MSC: USB HID handling start
V (978) USB_MSC: USB MSC handling
D (1278) HUB: Root port reset
D (1278) HUB: Stage done: START
D (1278) HUB: Stage done: GET_SHORT_DEV_DESC
D (1278) HUB: Stage done: CHECK_SHORT_DEV_DESC
D (1338) HUB: Stage done: SECOND_RESET
D (1338) HUB: Stage done: SET_ADDR
D (1338) HUB: Stage done: CHECK_ADDR
D (1348) HUB: Stage done: SET_ADDR_RECOVERY
D (1348) HUB: Stage done: GET_FULL_DEV_DESC
D (1348) HUB: Stage done: CHECK_FULL_DEV_DESC
D (1348) HUB: Stage done: GET_SHORT_CONFIG_DESC
D (1348) HUB: Stage done: CHECK_SHORT_CONFIG_DESC
D (1358) HUB: Stage done: GET_FULL_CONFIG_DESC
D (1358) HUB: Stage done: CHECK_FULL_CONFIG_DESC
D (1368) HUB: Stage done: SET_CONFIG
D (1368) HUB: Stage done: CHECK_CONFIG
D (1368) HUB: Stage done: GET_SHORT_LANGID_TABLE
D (1378) HUB: Stage done: CHECK_SHORT_LANGID_TABLE
D (1378) HUB: Stage done: GET_FULL_LANGID_TABLE
D (1388) HUB: Stage done: CHECK_FULL_LANGID_TABLE
D (1388) HUB: Stage done: GET_SHORT_MANU_STR_DESC
D (1398) HUB: Stage done: CHECK_SHORT_MANU_STR_DESC
D (1398) HUB: Stage done: GET_FULL_MANU_STR_DESC
D (1408) HUB: Stage done: CHECK_FULL_MANU_STR_DESC
D (1408) HUB: Stage done: GET_SHORT_PROD_STR_DESC
D (1418) HUB: Stage done: CHECK_SHORT_PROD_STR_DESC
D (1418) HUB: Stage done: GET_FULL_PROD_STR_DESC
D (1428) HUB: Stage done: CHECK_FULL_PROD_STR_DESC
D (1428) HUB: Stage done: GET_SHORT_SER_STR_DESC
D (1438) HUB: Stage done: CHECK_SHORT_SER_STR_DESC
D (1438) HUB: Stage done: GET_FULL_SER_STR_DESC
D (1448) HUB: Stage done: CHECK_FULL_SER_STR_DESC
D (1448) HUB: Stage done: CLEANUP
D (1448) USBH: Processing actions 0x40
D (1458) USBH: New device 1
I (1458) example: MSC device connected
V (1458) USB_MSC: USB MSC handling
V (1468) USB_MSC: USB MSC handling
V (1468) USB_MSC: USB MSC handling
V (1478) USB_MSC: USB MSC handling
V (1478) USB_MSC: USB MSC handling
V (1478) USB_MSC: USB MSC handling
D (1488) USB_MSC_SCSI: CSW failed: status 1
V (1588) USB_MSC: USB MSC handling
V (1588) USB_MSC: USB MSC handling
D (1588) USB_MSC_SCSI: CSW failed: status 1
V (1688) USB_MSC: USB MSC handling
V (1688) USB_MSC: USB MSC handling
D (1688) USB_MSC_SCSI: CSW failed: status 1
V (1788) USB_MSC: USB MSC handling
V (1788) USB_MSC: USB MSC handling
D (1788) USB_MSC_SCSI: CSW failed: status 1
V (1888) USB_MSC: USB MSC handling
V (1888) USB_MSC: USB MSC handling
D (1888) USB_MSC_SCSI: CSW failed: status 1
V (1988) USB_MSC: USB MSC handling
V (1988) USB_MSC: USB MSC handling
D (1988) USB_MSC_SCSI: CSW failed: status 1
V (2088) USB_MSC: USB MSC handling
V (2088) USB_MSC: USB MSC handling
D (2088) USB_MSC_SCSI: CSW failed: status 1
V (2188) USB_MSC: USB MSC handling
V (2188) USB_MSC: USB MSC handling
D (2188) USB_MSC_SCSI: CSW failed: status 1
V (2288) USB_MSC: USB MSC handling
V (2288) USB_MSC: USB MSC handling
D (2288) USB_MSC_SCSI: CSW failed: status 1
V (2388) USB_MSC: USB MSC handling
V (2388) USB_MSC: USB MSC handling
D (2388) USB_MSC_SCSI: CSW failed: status 1
V (2488) USB_MSC: USB MSC handling
V (2488) USB_MSC: USB MSC handling
D (2488) USB_MSC_SCSI: CSW failed: status 1
V (2588) USB_MSC: USB MSC handling
V (2588) USB_MSC: USB MSC handling
D (2588) USB_MSC_SCSI: CSW failed: status 1
V (2688) USB_MSC: USB MSC handling
V (2688) USB_MSC: USB MSC handling
D (2688) USB_MSC_SCSI: CSW failed: status 1
V (2788) USB_MSC: USB MSC handling
V (2788) USB_MSC: USB MSC handling
D (2788) USB_MSC_SCSI: CSW failed: status 1
V (2888) USB_MSC: USB MSC handling
V (2888) USB_MSC: USB MSC handling
D (2888) USB_MSC_SCSI: CSW failed: status 1
V (2988) USB_MSC: USB MSC handling
V (2988) USB_MSC: USB MSC handling
D (2988) USB_MSC_SCSI: CSW failed: status 1
V (3088) USB_MSC: USB MSC handling
V (3088) USB_MSC: USB MSC handling
D (3088) USB_MSC_SCSI: CSW failed: status 1
V (3188) USB_MSC: USB MSC handling
V (3188) USB_MSC: USB MSC handling
D (3188) USB_MSC_SCSI: CSW failed: status 1
V (3288) USB_MSC: USB MSC handling
V (3288) USB_MSC: USB MSC handling
D (3288) USB_MSC_SCSI: CSW failed: status 1
V (3388) USB_MSC: USB MSC handling
V (3388) USB_MSC: USB MSC handling
D (3388) USB_MSC_SCSI: CSW failed: status 1
V (3488) USB_MSC: USB MSC handling
V (3488) USB_MSC: USB MSC handling
D (3488) USB_MSC_SCSI: CSW failed: status 1
V (3588) USB_MSC: USB MSC handling
V (3588) USB_MSC: USB MSC handling
D (3588) USB_MSC_SCSI: CSW failed: status 1
V (3688) USB_MSC: USB MSC handling
V (3688) USB_MSC: USB MSC handling
D (3688) USB_MSC_SCSI: CSW failed: status 1
V (3788) USB_MSC: USB MSC handling
V (3788) USB_MSC: USB MSC handling
D (3788) USB_MSC_SCSI: CSW failed: status 1
V (3888) USB_MSC: USB MSC handling
V (3888) USB_MSC: USB MSC handling
D (3888) USB_MSC_SCSI: CSW failed: status 1
V (3988) USB_MSC: USB MSC handling
V (3988) USB_MSC: USB MSC handling
D (3988) USB_MSC_SCSI: CSW failed: status 1
V (4088) USB_MSC: USB MSC handling
V (4088) USB_MSC: USB MSC handling
D (4088) USB_MSC_SCSI: CSW failed: status 1
V (4188) USB_MSC: USB MSC handling
V (4188) USB_MSC: USB MSC handling
D (4188) USB_MSC_SCSI: CSW failed: status 1
V (4288) USB_MSC: USB MSC handling
V (4288) USB_MSC: USB MSC handling
D (4288) USB_MSC_SCSI: CSW failed: status 1
V (4388) USB_MSC: USB MSC handling
V (4388) USB_MSC: USB MSC handling
D (4388) USB_MSC_SCSI: CSW failed: status 1
V (4488) USB_MSC: USB MSC handling
V (4488) USB_MSC: USB MSC handling
D (4488) USB_MSC_SCSI: CSW failed: status 1
V (4588) USB_MSC: USB MSC handling
V (5318) USB_MSC: USB MSC handling
V (5318) USB_MSC: USB MSC handling
D (5318) USB_MSC_SCSI: sense_key: 0x06, code: 0x28, qualifier: 0x00
E (5328) USB_MSC: msc_host_install_device(503):
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x4200a500
0x4200a500: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)

file: "../../../main/msc_example_main.c" line 278
func: app_main
expression: msc_host_install_device(msg.data.new_dev_address, &msc_device)

abort() was called at PC 0x4037a227 on core 0
0x4037a227: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49

Backtrace: 0x40375b0a:0x3fc98bc0 0x4037a231:0x3fc98be0 0x40380a89:0x3fc98c00 0x4037a227:0x3fc98c70 0x4200a500:0x3fc98ca0 0x420321cf:0x3fc98de0 0x4037acc5:0x3fc98e10
0x40375b0a: panic_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/panic.c:463
0x4037a231: esp_system_abort at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/esp_system_chip.c:92
0x40380a89: abort at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/abort.c:38
0x4037a227: _esp_error_check_failed at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_err.c:49
0x4200a500: app_main at ../../../main/msc_example_main.c:278 (discriminator 1)
0x420321cf: main_task at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/app_startup.c:208
0x4037acc5: vPortTaskWrapper at C:/SysGCC/esp32/esp-idf/v5.3/components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c:134

ELF file SHA256: 05db7289e

Rebooting...
���ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x40375a44
0x40375a44: esp_restart_noos at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/soc/esp32s3/system_internal.c:158

SPIWP:0xee
Octal Flash Mode Enabled
For OPI Flash, Use Default Flash Boot Mode
mode:SLOW_RD, clock div:1
load:0x3fce2810,len:0x178c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xcb8
load:0x403cb700,len:0x2db0
entry 0x403c8914
I (37) boot: ESP-IDF v5.3-dirty 2nd stage bootloader
I (38) boot: compile time Aug  7 2024 09:59:19
I (38) boot: Multicore bootloader
I (41) boot: chip revision: v0.1
I (45) boot.esp32s3: Boot SPI Speed : 80MHz
I (50) boot.esp32s3: SPI Mode       : SLOW READ
I (55) boot.esp32s3: SPI Flash Size : 2MB
I (60) boot: Enabling RNG early entropy source...
I (65) boot: Partition Table:
I (69) boot: ## Label            Usage          Type ST Offset   Length
I (76) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (83) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (91) boot:  2 factory          factory app      00 00 00010000 00100000
I (98) boot: End of partition table
I (103) esp_image: segment 0: paddr=00010020 vaddr=3c040020 size=0ed44h ( 60740) map
I (125) esp_image: segment 1: paddr=0001ed6c vaddr=3fc92d00 size=012ach (  4780) load
I (127) esp_image: segment 2: paddr=00020020 vaddr=42000020 size=32a98h (207512) map
I (181) esp_image: segment 3: paddr=00052ac0 vaddr=3fc93fac size=019d8h (  6616) load
I (183) esp_image: segment 4: paddr=000544a0 vaddr=40374000 size=0ec90h ( 60560) load
I (209) boot: Loaded app from partition at offset 0x10000
I (209) boot: Disabling RNG early entropy source...
V (221) mmap: after coalescing, 1 regions are left
I (221) cpu_start: Multicore app
D (221) cpu_start: Pro cpu up
D (221) cpu_start: Starting app cpu, entry point is 0x403752fc
0x403752fc: call_start_cpu1 at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/cpu_start.c:195

D (199) cpu_start: App cpu up
V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
V CACHE_ERR( co6)e 1k:access errCLr inlir clio &vaena  4as57 i1f
V CACHE_ERR: illegal error intr clr & ena mask is: 0x3f
V CACHE_ERR: core 0 access error intr clr & ena mask is: 0x1f
D (253) cpu_start: calling init function: 0x4200229c on core: 0
0x4200229c: __esp_system_init_fn_init_efuse_check at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:31

D (258) cpu_start: calling init function: 0x42002528 on core: 0
0x42002528: __esp_system_init_fn_init_show_cpu_freq at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:58

I (264) cpu_start: Pro cpu start user code
I (269) cpu_start: cpu freq: 160000000 Hz
D (273) cpu_start: calling init function: 0x420021cc on core: 0
0x420021cc: __esp_system_init_fn_init_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_app_format/esp_app_desc.c:104

I (279) app_init: Application information:
I (284) app_init: Project name:     usb-msc
I (289) app_init: App version:      1
I (293) app_init: Compile time:     Aug  7 2024 09:59:00
I (299) app_init: ELF file SHA256:  05db7289e...
I (305) app_init: ESP-IDF:          v5.3-dirty
D (310) cpu_start: calling init function: 0x420022b0 on core: 0
0x420022b0: __esp_system_init_fn_init_efuse_show_app_info at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:41

I (316) efuse_init: Min chip rev:     v0.0
I (321) efuse_init: Max chip rev:     v0.99
I (325) efuse_init: Chip rev:         v0.1
D (330) cpu_start: calling init function: 0x42003f8c on core: 0
0x42003f8c: __esp_system_init_fn_init_heap at C:/SysGCC/esp32/esp-idf/v5.3/components/heap/heap_caps_init.c:25

V (336) memory_layout: reserved range is 0x3c04ec9c - 0x3c04ecc4
D (342) memory_layout: Checking 6 reserved memory ranges:
D (348) memory_layout: Reserved memory range 0x3fc84000 - 0x3fc92d00
D (354) memory_layout: Reserved memory range 0x3fc92d00 - 0x3fc962a8
D (361) memory_layout: Reserved memory range 0x3fceee34 - 0x3fcf0000
D (367) memory_layout: Reserved memory range 0x40374000 - 0x40382d00
0x40374000: _WindowOverflow4 at C:/SysGCC/esp32/esp-idf/v5.3/components/xtensa/xtensa_vectors.S:2027

D (373) memory_layout: Reserved memory range 0x600fe000 - 0x600fe100
D (380) memory_layout: Reserved memory range 0x600fffe8 - 0x60100000
D (386) memory_layout: Building list of available memory regions:
V (392) memory_layout: Examining memory region 0x3fc88000 - 0x3fc90000
V (399) memory_layout: Region 0x3fc88000 - 0x3fc90000 inside of reserved 0x3fc84000 - 0x3fc92d00
V (408) memory_layout: Examining memory region 0x3fc90000 - 0x3fca0000
V (415) memory_layout: Start of region 0x3fc90000 - 0x3fca0000 overlaps reserved 0x3fc84000 - 0x3fc92d00
V (424) memory_layout: Start of region 0x3fc92d00 - 0x3fca0000 overlaps reserved 0x3fc92d00 - 0x3fc962a8
D (434) memory_layout: Available memory region 0x3fc962a8 - 0x3fca0000
V (440) memory_layout: Examining memory region 0x3fca0000 - 0x3fcb0000
D (447) memory_layout: Available memory region 0x3fca0000 - 0x3fcb0000
V (453) memory_layout: Examining memory region 0x3fcb0000 - 0x3fcc0000
D (460) memory_layout: Available memory region 0x3fcb0000 - 0x3fcc0000
V (467) memory_layout: Examining memory region 0x3fcc0000 - 0x3fcd0000
D (473) memory_layout: Available memory region 0x3fcc0000 - 0x3fcd0000
V (480) memory_layout: Examining memory region 0x3fcd0000 - 0x3fce0000
D (486) memory_layout: Available memory region 0x3fcd0000 - 0x3fce0000
V (493) memory_layout: Examining memory region 0x3fce0000 - 0x3fce9710
D (500) memory_layout: Available memory region 0x3fce0000 - 0x3fce9710
V (506) memory_layout: Examining memory region 0x3fce9710 - 0x3fcf0000
V (513) memory_layout: End of region 0x3fce9710 - 0x3fcf0000 overlaps reserved 0x3fceee34 - 0x3fcf0000
D (522) memory_layout: Available memory region 0x3fce9710 - 0x3fceee34
V (529) memory_layout: Examining memory region 0x3fcf0000 - 0x3fcf8000
D (535) memory_layout: Available memory region 0x3fcf0000 - 0x3fcf8000
V (542) memory_layout: Examining memory region 0x600fe000 - 0x60100000
V (549) memory_layout: Start of region 0x600fe000 - 0x60100000 overlaps reserved 0x600fe000 - 0x600fe100
V (558) memory_layout: End of region 0x600fe100 - 0x60100000 overlaps reserved 0x600fffe8 - 0x60100000
D (567) memory_layout: Available memory region 0x600fe100 - 0x600fffe8
I (574) heap_init: Initializing. RAM available for dynamic allocation:
D (581) heap_init: New heap initialised at 0x3fc962a8
I (586) heap_init: At 3FC962A8 len 00053468 (333 KiB): RAM
I (593) heap_init: At 3FCE9710 len 00005724 (21 KiB): RAM
D (599) heap_init: New heap initialised at 0x3fcf0000
I (604) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
D (610) heap_init: New heap initialised at 0x600fe100
I (615) heap_init: At 600FE100 len 00001EE8 (7 KiB): RTCRAM
D (621) cpu_start: calling init function: 0x42002000 on core: 0
0x42002000: __esp_system_init_fn_esp_timer_init_nonos at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_timer/src/esp_timer_init.c:28

D (627) cpu_start: calling init function: 0x42006f78 on core: 0
0x42006f78: __esp_system_init_fn_init_newlib at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:162

D (633) cpu_start: calling init function: 0x42002574 on core: 0
0x42002574: __esp_system_init_fn_init_brownout at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:67

V (639) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (646) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (654) intr_alloc: Connected src 39 to int 0 (cpu 0)
D (659) cpu_start: calling init function: 0x42002580 on core: 0
0x42002580: __esp_system_init_fn_init_newlib_time at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:81

D (665) cpu_start: calling init function: 0x42008378 on core: 0
0x42008378: __esp_system_init_fn_init_vfs_uart at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_uart/src/uart_vfs.c:1080

D (671) cpu_start: calling init function: 0x42009064 on core: 0
0x42009064: __esp_system_init_fn_init_vfs_usj_sec at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_vfs.c:404

D (677) cpu_start: calling init function: 0x4200922c on core: 0
0x4200922c: __esp_system_init_fn_init_vfs_console at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_vfs_console/vfs_console.c:222

D (683) cpu_start: calling init function: 0x42006fe0 on core: 0
0x42006fe0: __esp_system_init_fn_init_newlib_stdio at C:/SysGCC/esp32/esp-idf/v5.3/components/newlib/newlib_init.c:207

D (689) cpu_start: calling init function: 0x4200736c on core: 0
0x4200736c: __esp_system_init_fn_init_pthread at C:/SysGCC/esp32/esp-idf/v5.3/components/pthread/pthread.c:76

D (695) cpu_start: calling init function: 0x4200258c on core: 0
0x4200258c: __esp_system_init_fn_init_flash at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:88

W (701) spi_flash: Octal flash chip is using but dio mode is selected, will automatically swich to Octal mode
D (711) spi_flash: trying chip: issi
D (715) spi_flash: trying chip: gd
D (719) spi_flash: trying chip: mxic
D (722) spi_flash: trying chip: winbond
D (726) spi_flash: trying chip: boya
D (730) spi_flash: trying chip: th
D (733) spi_flash: trying chip: mxic (opi)
I (737) spi_flash: detected chip: mxic (opi)
I (742) spi_flash: flash io: opi_str
W (747) spi_flash: Detected size(32768k) larger than the size in the binary image header(2048k). Using the size in the binary image header.
D (760) cpu_start: calling init function: 0x4200234c on core: 0
0x4200234c: __esp_system_init_fn_init_efuse at C:/SysGCC/esp32/esp-idf/v5.3/components/efuse/src/esp_efuse_startup.c:137

D (766) cpu_start: calling init function: 0x40379ba0
0x40379ba0: enable_timer_group0_for_calibration at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/port/esp32s3/rtc_time.c:199

D (771) cpu_start: calling init function: 0x420037d4
0x420037d4: esp_ipc_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/esp_ipc.c:113

D (776) cpu_start: calling init function: 0x42002b1c
0x42002b1c: esp_reset_reason_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/port/soc/esp32s3/reset_reason.c:63

D (781) cpu_start: calling init function: 0x42004fd8 on core: 0
0x42004fd8: __esp_system_init_fn_esp_sleep_startup_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_hw_support/sleep_gpio.c:185

I (787) sleep: Configure to isolate all GPIO pins in sleep state
I (794) sleep: Enable automatic switching of GPIO sleep configuration
D (801) cpu_start: calling init function: 0x420025b4 on core: 0
0x420025b4: __esp_system_init_fn_init_apb_dma at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:125

D (807) cpu_start: calling init function: 0x42008c74 on core: 0
0x42008c74: __esp_system_init_fn_usb_serial_jtag_conn_status_init at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_driver_usb_serial_jtag/src/usb_serial_jtag_connection_monitor.c:75

D (813) cpu_start: calling init function: 0x420025c0 on core: 0
0x420025c0: __esp_system_init_fn_init_disable_rtc_wdt at C:/SysGCC/esp32/esp-idf/v5.3/components/esp_system/startup_funcs.c:143

V (819) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (825) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x40E
D (833) intr_alloc: Connected src 79 to int 1 (cpu 0)
D (838) app_start: Starting scheduler on CPU0
V (843) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (843) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x402
D (843) intr_alloc: Connected src 57 to int 2 (cpu 0)
V (843) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (853) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x40E
D (853) intr_alloc: Connected src 80 to int 1 (cpu 1)
D (863) app_start: Starting scheduler on CPU1
V (863) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): checking args
V (873) intr_alloc: esp_intr_alloc_intrstatus (cpu 1): Args okay. Resulting flags 0x402
D (883) intr_alloc: Connected src 58 to int 2 (cpu 1)
I (843) main_task: Started on CPU0
D (893) heap_init: New heap initialised at 0x3fce9710
V (893) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (903) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0xE
D (913) intr_alloc: Connected src 52 to int 3 (cpu 0)
I (913) main_task: Calling app_main()
V (923) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (923) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x802
D (933) intr_alloc: Connected src 38 to int 5 (cpu 0)
I (943) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:2
V (953) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): checking args
V (953) intr_alloc: esp_intr_alloc_intrstatus (cpu 0): Args okay. Resulting flags 0x2
D (963) intr_alloc: Connected src 16 to int 8 (cpu 0)
I (963) example: Waiting for USB flash drive to be connected
D (973) USB_MSC: USB HID handling start
V (983) USB_MSC: USB MSC handling
D (1283) HUB: Root port reset
D (1283) HUB: Stage done: START
D (1283) HUB: Stage done: GET_SHORT_DEV_DESC
D (1283) HUB: Stage done: CHECK_SHORT_DEV_DESC
D (1343) HUB: Stage done: SECOND_RESET
D (1343) HUB: Stage done: SET_ADDR
D (1343) HUB: Stage done: CHECK_ADDR
D (1353) HUB: Stage done: SET_ADDR_RECOVERY
D (1353) HUB: Stage done: GET_FULL_DEV_DESC
D (1353) HUB: Stage done: CHECK_FULL_DEV_DESC
D (1353) HUB: Stage done: GET_SHORT_CONFIG_DESC
D (1353) HUB: Stage done: CHECK_SHORT_CONFIG_DESC
D (1363) HUB: Stage done: GET_FULL_CONFIG_DESC
D (1363) HUB: Stage done: CHECK_FULL_CONFIG_DESC
D (1373) HUB: Stage done: SET_CONFIG
D (1373) HUB: Stage done: CHECK_CONFIG
D (1373) HUB: Stage done: GET_SHORT_LANGID_TABLE
D (1383) HUB: Stage done: CHECK_SHORT_LANGID_TABLE
D (1383) HUB: Stage done: GET_FULL_LANGID_TABLE
D (1393) HUB: Stage done: CHECK_FULL_LANGID_TABLE
D (1393) HUB: Stage done: GET_SHORT_MANU_STR_DESC
D (1403) HUB: Stage done: CHECK_SHORT_MANU_STR_DESC
D (1403) HUB: Stage done: GET_FULL_MANU_STR_DESC
D (1413) HUB: Stage done: CHECK_FULL_MANU_STR_DESC
D (1413) HUB: Stage done: GET_SHORT_PROD_STR_DESC
D (1423) HUB: Stage done: CHECK_SHORT_PROD_STR_DESC
D (1423) HUB: Stage done: GET_FULL_PROD_STR_DESC
D (1433) HUB: Stage done: CHECK_FULL_PROD_STR_DESC
D (1433) HUB: Stage done: GET_SHORT_SER_STR_DESC
D (1443) HUB: Stage done: CHECK_SHORT_SER_STR_DESC
D (1443) HUB: Stage done: GET_FULL_SER_STR_DESC
D (1453) HUB: Stage done: CHECK_FULL_SER_STR_DESC
D (1453) HUB: Stage done: CLEANUP
D (1453) USBH: Processing actions 0x40
D (1463) USBH: New device 1
I (1463) example: MSC device connected
V (1463) USB_MSC: USB MSC handling
V (1473) USB_MSC: USB MSC handling
V (1473) USB_MSC: USB MSC handling
V (1483) USB_MSC: USB MSC handling
V (1483) USB_MSC: USB MSC handling
V (1483) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1593) USB_MSC: USB MSC handling
V (1603) USB_MSC: USB MSC handling
V (1603) USB_MSC: USB MSC handling
V (1603) USB_MSC: USB MSC handling
V (1613) USB_MSC: USB MSC handling
V (1613) USB_MSC: USB MSC handling
V (1613) USB_MSC: USB MSC handling
*** Device descriptor ***
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0x0
bDeviceSubClass 0x0
bDeviceProtocol 0x0
bMaxPacketSize0 64
idVendor 0x13fe
idProduct 0x4200
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerialNumber 3
bNumConfigurations 1
*** Configuration descriptor ***
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
bMaxPower 100mA
        *** Interface descriptor ***
        bLength 9
        bDescriptorType 4
        bInterfaceNumber 0
        bAlternateSetting 0
        bNumEndpoints 2
        bInterfaceClass 0x8
        bInterfaceSubClass 0x6
        bInterfaceProtocol 0x50
        iInterface 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x81   EP 1 IN
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x2    EP 2 OUT
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
Device info:
         Capacity: 3823 MB
         Sector size: 512
         Sector count: 7831551
         PID: 0x4200
         VID: 0x13FE
         iProduct: USB DISK 2.0
         iManufacturer:
         iSerialNumber: 0701767BB12A0C22
I (1733) example: ls command output:
V (1733) USB_MSC: USB MSC handling
V (1743) USB_MSC: USB MSC handling
V (1743) USB_MSC: USB MSC handling
TESTFILE.TXT
ESP
V (1743) USB_MSC: USB MSC handling
V (1753) USB_MSC: USB MSC handling
V (1753) USB_MSC: USB MSC handling
SYSTEM~1
V (1763) USB_MSC: USB MSC handling
V (1763) USB_MSC: USB MSC handling
V (1763) USB_MSC: USB MSC handling
V (1773) USB_MSC: USB MSC handling
V (1773) USB_MSC: USB MSC handling
V (1773) USB_MSC: USB MSC handling
V (1783) USB_MSC: USB MSC handling
V (1783) USB_MSC: USB MSC handling
V (1783) USB_MSC: USB MSC handling
UPDATE.FW
V (1793) USB_MSC: USB MSC handling
V (1793) USB_MSC: USB MSC handling
V (1793) USB_MSC: USB MSC handling
V (1803) USB_MSC: USB MSC handling
V (1803) USB_MSC: USB MSC handling
V (1803) USB_MSC: USB MSC handling
I (1813) example: Reading file
V (1813) vfs_fat: vfs_fat_open: path="/esp/test.txt", flags=0, mode=1b6
V (1823) USB_MSC: USB MSC handling
V (1823) USB_MSC: USB MSC handling
V (1833) USB_MSC: USB MSC handling
V (1833) USB_MSC: USB MSC handling
V (1833) USB_MSC: USB MSC handling
V (1843) USB_MSC: USB MSC handling
V (1843) USB_MSC: USB MSC handling
V (1843) USB_MSC: USB MSC handling
V (1853) USB_MSC: USB MSC handling
I (1853) example: Read from file '/usb/esp/test.txt': 'Hello World!'
V (1863) vfs_fat: vfs_fat_open: path="/esp/dummy", flags=602, mode=1b6
V (1863) USB_MSC: USB MSC handling
V (1873) USB_MSC: USB MSC handling
V (1873) USB_MSC: USB MSC handling
V (1873) USB_MSC: USB MSC handling
V (1883) USB_MSC: USB MSC handling
V (1883) USB_MSC: USB MSC handling
V (1883) USB_MSC: USB MSC handling
V (1893) USB_MSC: USB MSC handling
V (1893) USB_MSC: USB MSC handling
V (1893) USB_MSC: USB MSC handling
V (1903) USB_MSC: USB MSC handling
V (1903) USB_MSC: USB MSC handling
V (1913) USB_MSC: USB MSC handling
V (1913) USB_MSC: USB MSC handling
V (1913) USB_MSC: USB MSC handling
V (1923) USB_MSC: USB MSC handling
V (1923) USB_MSC: USB MSC handling
V (1923) USB_MSC: USB MSC handling
V (1933) USB_MSC: USB MSC handling
V (1933) USB_MSC: USB MSC handling
V (1933) USB_MSC: USB MSC handling
V (1943) USB_MSC: USB MSC handling
V (1943) USB_MSC: USB MSC handling
V (1943) USB_MSC: USB MSC handling
V (1953) USB_MSC: USB MSC handling
V (1963) USB_MSC: USB MSC handling
V (1963) USB_MSC: USB MSC handling
V (1963) USB_MSC: USB MSC handling
V (1963) USB_MSC: USB MSC handling
V (1973) USB_MSC: USB MSC handling
V (1973) USB_MSC: USB MSC handling
V (1973) USB_MSC: USB MSC handling
V (1973) USB_MSC: USB MSC handling
V (1983) USB_MSC: USB MSC handling
V (1993) USB_MSC: USB MSC handling
V (1993) USB_MSC: USB MSC handling
V (1993) USB_MSC: USB MSC handling
V (2003) USB_MSC: USB MSC handling
V (2003) USB_MSC: USB MSC handling
I (2003) example: Writing to file /usb/esp/dummy
V (2003) USB_MSC: USB MSC handling
V (2013) USB_MSC: USB MSC handling
V (2013) USB_MSC: USB MSC handling
V (2013) USB_MSC: USB MSC handling
V (2023) USB_MSC: USB MSC handling
V (2023) USB_MSC: USB MSC handling
V (2033) USB_MSC: USB MSC handling
V (2033) USB_MSC: USB MSC handling
V (2033) USB_MSC: USB MSC handling
V (2043) USB_MSC: USB MSC handling
V (2043) USB_MSC: USB MSC handling
V (2043) USB_MSC: USB MSC handling
V (2053) USB_MSC: USB MSC handling
V (2053) USB_MSC: USB MSC handling
V (2053) USB_MSC: USB MSC handling
V (2063) USB_MSC: USB MSC handling
V (2063) USB_MSC: USB MSC handling
V (2073) USB_MSC: USB MSC handling
V (2073) USB_MSC: USB MSC handling
V (2073) USB_MSC: USB MSC handling
V (2073) USB_MSC: USB MSC handling
V (2083) USB_MSC: USB MSC handling
V (2083) USB_MSC: USB MSC handling
V (2093) USB_MSC: USB MSC handling
V (2093) USB_MSC: USB MSC handling
V (2093) USB_MSC: USB MSC handling
V (2103) USB_MSC: USB MSC handling
V (2103) USB_MSC: USB MSC handling
V (2103) USB_MSC: USB MSC handling
V (2113) USB_MSC: USB MSC handling
V (2113) USB_MSC: USB MSC handling
V (2123) USB_MSC: USB MSC handling
V (2123) USB_MSC: USB MSC handling
V (2123) USB_MSC: USB MSC handling
V (2133) USB_MSC: USB MSC handling
V (2133) USB_MSC: USB MSC handling
V (2133) USB_MSC: USB MSC handling
V (2143) USB_MSC: USB MSC handling
V (2143) USB_MSC: USB MSC handling
V (2143) USB_MSC: USB MSC handling
V (2153) USB_MSC: USB MSC handling
V (2153) USB_MSC: USB MSC handling
V (2153) USB_MSC: USB MSC handling
V (2163) USB_MSC: USB MSC handling
V (2163) USB_MSC: USB MSC handling
V (2163) USB_MSC: USB MSC handling
V (2173) USB_MSC: USB MSC handling
V (2173) USB_MSC: USB MSC handling
V (2173) USB_MSC: USB MSC handling
V (2183) USB_MSC: USB MSC handling
V (2183) USB_MSC: USB MSC handling
V (2183) USB_MSC: USB MSC handling
V (2193) USB_MSC: USB MSC handling
V (2193) USB_MSC: USB MSC handling
V (2193) USB_MSC: USB MSC handling
V (2203) USB_MSC: USB MSC handling
V (2203) USB_MSC: USB MSC handling
V (2203) USB_MSC: USB MSC handling
V (2213) USB_MSC: USB MSC handling
V (2213) USB_MSC: USB MSC handling
V (2213) USB_MSC: USB MSC handling
V (2223) USB_MSC: USB MSC handling
V (2223) USB_MSC: USB MSC handling
V (2223) USB_MSC: USB MSC handling
V (2233) USB_MSC: USB MSC handling
V (2233) USB_MSC: USB MSC handling
V (2233) USB_MSC: USB MSC handling
V (2243) USB_MSC: USB MSC handling
V (2243) USB_MSC: USB MSC handling
V (2243) USB_MSC: USB MSC handling
V (2253) USB_MSC: USB MSC handling
V (2253) USB_MSC: USB MSC handling
V (2253) USB_MSC: USB MSC handling
V (2263) USB_MSC: USB MSC handling
V (2263) USB_MSC: USB MSC handling
V (2263) USB_MSC: USB MSC handling
V (2273) USB_MSC: USB MSC handling
V (2273) USB_MSC: USB MSC handling
V (2283) USB_MSC: USB MSC handling
V (2283) USB_MSC: USB MSC handling
V (2283) USB_MSC: USB MSC handling
V (2293) USB_MSC: USB MSC handling
V (2293) USB_MSC: USB MSC handling
V (2293) USB_MSC: USB MSC handling
V (2303) USB_MSC: USB MSC handling
V (2303) USB_MSC: USB MSC handling
V (2303) USB_MSC: USB MSC handling
V (2313) USB_MSC: USB MSC handling
V (2313) USB_MSC: USB MSC handling
V (2323) USB_MSC: USB MSC handling
V (2323) USB_MSC: USB MSC handling
V (2323) USB_MSC: USB MSC handling
V (2323) USB_MSC: USB MSC handling
V (2333) USB_MSC: USB MSC handling
V (2333) USB_MSC: USB MSC handling
V (2343) USB_MSC: USB MSC handling
V (2343) USB_MSC: USB MSC handling
V (2343) USB_MSC: USB MSC handling
V (2353) USB_MSC: USB MSC handling
V (2353) USB_MSC: USB MSC handling
V (2353) USB_MSC: USB MSC handling
V (2363) USB_MSC: USB MSC handling
V (2363) USB_MSC: USB MSC handling
V (2373) USB_MSC: USB MSC handling
V (2373) USB_MSC: USB MSC handling
V (2373) USB_MSC: USB MSC handling
V (2383) USB_MSC: USB MSC handling
V (2383) USB_MSC: USB MSC handling
V (2383) USB_MSC: USB MSC handling
V (2393) USB_MSC: USB MSC handling
V (2393) USB_MSC: USB MSC handling
V (2393) USB_MSC: USB MSC handling
V (2403) USB_MSC: USB MSC handling
V (2403) USB_MSC: USB MSC handling
V (2403) USB_MSC: USB MSC handling
V (2413) USB_MSC: USB MSC handling
V (2413) USB_MSC: USB MSC handling
V (2413) USB_MSC: USB MSC handling
V (2423) USB_MSC: USB MSC handling
V (2423) USB_MSC: USB MSC handling
V (2423) USB_MSC: USB MSC handling
V (2433) USB_MSC: USB MSC handling
V (2433) USB_MSC: USB MSC handling
V (2433) USB_MSC: USB MSC handling
V (2443) USB_MSC: USB MSC handling
V (2443) USB_MSC: USB MSC handling
V (2443) USB_MSC: USB MSC handling
V (2453) USB_MSC: USB MSC handling
V (2453) USB_MSC: USB MSC handling
V (2453) USB_MSC: USB MSC handling
V (2463) USB_MSC: USB MSC handling
V (2463) USB_MSC: USB MSC handling
V (2463) USB_MSC: USB MSC handling
V (2473) USB_MSC: USB MSC handling
V (2473) USB_MSC: USB MSC handling
V (2473) USB_MSC: USB MSC handling
V (2483) USB_MSC: USB MSC handling
V (2483) USB_MSC: USB MSC handling
V (2483) USB_MSC: USB MSC handling
V (2493) USB_MSC: USB MSC handling
V (2493) USB_MSC: USB MSC handling
V (2493) USB_MSC: USB MSC handling
V (2503) USB_MSC: USB MSC handling
V (2503) USB_MSC: USB MSC handling
V (2503) USB_MSC: USB MSC handling
V (2513) USB_MSC: USB MSC handling
V (2513) USB_MSC: USB MSC handling
V (2513) USB_MSC: USB MSC handling
V (2523) USB_MSC: USB MSC handling
V (2523) USB_MSC: USB MSC handling
V (2533) USB_MSC: USB MSC handling
V (2533) USB_MSC: USB MSC handling
V (2533) USB_MSC: USB MSC handling
V (2543) USB_MSC: USB MSC handling
V (2543) USB_MSC: USB MSC handling
V (2543) USB_MSC: USB MSC handling
V (2553) USB_MSC: USB MSC handling
V (2553) USB_MSC: USB MSC handling
V (2553) USB_MSC: USB MSC handling
V (2563) USB_MSC: USB MSC handling
V (2563) USB_MSC: USB MSC handling
V (2573) USB_MSC: USB MSC handling
V (2573) USB_MSC: USB MSC handling
V (2573) USB_MSC: USB MSC handling
V (2573) USB_MSC: USB MSC handling
V (2583) USB_MSC: USB MSC handling
V (2583) USB_MSC: USB MSC handling
V (2593) USB_MSC: USB MSC handling
V (2593) USB_MSC: USB MSC handling
V (2593) USB_MSC: USB MSC handling
V (2603) USB_MSC: USB MSC handling
V (2603) USB_MSC: USB MSC handling
V (2603) USB_MSC: USB MSC handling
V (2613) USB_MSC: USB MSC handling
V (2613) USB_MSC: USB MSC handling
V (2623) USB_MSC: USB MSC handling
V (2623) USB_MSC: USB MSC handling
V (2623) USB_MSC: USB MSC handling
V (2633) USB_MSC: USB MSC handling
V (2633) USB_MSC: USB MSC handling
V (2633) USB_MSC: USB MSC handling
V (2643) USB_MSC: USB MSC handling
V (2643) USB_MSC: USB MSC handling
V (2643) USB_MSC: USB MSC handling
V (2653) USB_MSC: USB MSC handling
V (2653) USB_MSC: USB MSC handling
V (2653) USB_MSC: USB MSC handling
V (2663) USB_MSC: USB MSC handling
V (2663) USB_MSC: USB MSC handling
V (2663) USB_MSC: USB MSC handling
V (2673) USB_MSC: USB MSC handling
V (2673) USB_MSC: USB MSC handling
V (2673) USB_MSC: USB MSC handling
V (2683) USB_MSC: USB MSC handling
V (2683) USB_MSC: USB MSC handling
V (2683) USB_MSC: USB MSC handling
V (2693) USB_MSC: USB MSC handling
V (2693) USB_MSC: USB MSC handling
V (2693) USB_MSC: USB MSC handling
V (2703) USB_MSC: USB MSC handling
V (2703) USB_MSC: USB MSC handling
V (2703) USB_MSC: USB MSC handling
V (2713) USB_MSC: USB MSC handling
V (2713) USB_MSC: USB MSC handling
V (2713) USB_MSC: USB MSC handling
V (2723) USB_MSC: USB MSC handling
V (2723) USB_MSC: USB MSC handling
V (2723) USB_MSC: USB MSC handling
V (2733) USB_MSC: USB MSC handling
V (2733) USB_MSC: USB MSC handling
V (2733) USB_MSC: USB MSC handling
V (2743) USB_MSC: USB MSC handling
V (2743) USB_MSC: USB MSC handling
V (2743) USB_MSC: USB MSC handling
V (2753) USB_MSC: USB MSC handling
V (2753) USB_MSC: USB MSC handling
V (2753) USB_MSC: USB MSC handling
V (2763) USB_MSC: USB MSC handling
V (2763) USB_MSC: USB MSC handling
V (2763) USB_MSC: USB MSC handling
V (2773) USB_MSC: USB MSC handling
V (2773) USB_MSC: USB MSC handling
V (2783) USB_MSC: USB MSC handling
V (2783) USB_MSC: USB MSC handling
V (2783) USB_MSC: USB MSC handling
V (2793) USB_MSC: USB MSC handling
V (2793) USB_MSC: USB MSC handling
V (2793) USB_MSC: USB MSC handling
V (2803) USB_MSC: USB MSC handling
V (2803) USB_MSC: USB MSC handling
V (2803) USB_MSC: USB MSC handling
V (2813) USB_MSC: USB MSC handling
V (2813) USB_MSC: USB MSC handling
V (2823) USB_MSC: USB MSC handling
V (2823) USB_MSC: USB MSC handling
V (2823) USB_MSC: USB MSC handling
V (2823) USB_MSC: USB MSC handling
V (2833) USB_MSC: USB MSC handling
V (2833) USB_MSC: USB MSC handling
V (2843) USB_MSC: USB MSC handling
V (2843) USB_MSC: USB MSC handling
V (2843) USB_MSC: USB MSC handling
V (2853) USB_MSC: USB MSC handling
V (2853) USB_MSC: USB MSC handling
V (2853) USB_MSC: USB MSC handling
V (2863) USB_MSC: USB MSC handling
V (2863) USB_MSC: USB MSC handling
V (2873) USB_MSC: USB MSC handling
V (2873) USB_MSC: USB MSC handling
V (2873) USB_MSC: USB MSC handling
V (2883) USB_MSC: USB MSC handling
V (2883) USB_MSC: USB MSC handling
V (2883) USB_MSC: USB MSC handling
V (2893) USB_MSC: USB MSC handling
V (2893) USB_MSC: USB MSC handling
V (2893) USB_MSC: USB MSC handling
V (2903) USB_MSC: USB MSC handling
V (2903) USB_MSC: USB MSC handling
V (2903) USB_MSC: USB MSC handling
V (2913) USB_MSC: USB MSC handling
V (2913) USB_MSC: USB MSC handling
V (2913) USB_MSC: USB MSC handling
V (2923) USB_MSC: USB MSC handling
V (2923) USB_MSC: USB MSC handling
V (2923) USB_MSC: USB MSC handling
V (2933) USB_MSC: USB MSC handling
V (2933) USB_MSC: USB MSC handling
V (2933) USB_MSC: USB MSC handling
V (2943) USB_MSC: USB MSC handling
V (2943) USB_MSC: USB MSC handling
V (2943) USB_MSC: USB MSC handling
V (2953) USB_MSC: USB MSC handling
V (2953) USB_MSC: USB MSC handling
V (2953) USB_MSC: USB MSC handling
V (2963) USB_MSC: USB MSC handling
V (2963) USB_MSC: USB MSC handling
V (2963) USB_MSC: USB MSC handling
V (2973) USB_MSC: USB MSC handling
V (2973) USB_MSC: USB MSC handling
V (2973) USB_MSC: USB MSC handling
V (2983) USB_MSC: USB MSC handling
V (2983) USB_MSC: USB MSC handling
V (2983) USB_MSC: USB MSC handling
V (2993) USB_MSC: USB MSC handling
V (2993) USB_MSC: USB MSC handling
V (2993) USB_MSC: USB MSC handling
V (3003) USB_MSC: USB MSC handling
V (3003) USB_MSC: USB MSC handling
V (3003) USB_MSC: USB MSC handling
V (3013) USB_MSC: USB MSC handling
V (3013) USB_MSC: USB MSC handling
V (3013) USB_MSC: USB MSC handling
V (3023) USB_MSC: USB MSC handling
V (3023) USB_MSC: USB MSC handling
V (3023) USB_MSC: USB MSC handling
V (3033) USB_MSC: USB MSC handling
V (3033) USB_MSC: USB MSC handling
V (3043) USB_MSC: USB MSC handling
V (3043) USB_MSC: USB MSC handling
V (3043) USB_MSC: USB MSC handling
V (3053) USB_MSC: USB MSC handling
V (3053) USB_MSC: USB MSC handling
V (3053) USB_MSC: USB MSC handling
V (3063) USB_MSC: USB MSC handling
V (3063) USB_MSC: USB MSC handling
V (3073) USB_MSC: USB MSC handling
V (3073) USB_MSC: USB MSC handling
V (3073) USB_MSC: USB MSC handling
V (3073) USB_MSC: USB MSC handling
V (3083) USB_MSC: USB MSC handling
V (3083) USB_MSC: USB MSC handling
V (3093) USB_MSC: USB MSC handling
V (3093) USB_MSC: USB MSC handling
V (3093) USB_MSC: USB MSC handling
V (3103) USB_MSC: USB MSC handling
V (3103) USB_MSC: USB MSC handling
V (3103) USB_MSC: USB MSC handling
V (3113) USB_MSC: USB MSC handling
V (3113) USB_MSC: USB MSC handling
V (3123) USB_MSC: USB MSC handling
V (3123) USB_MSC: USB MSC handling
V (3123) USB_MSC: USB MSC handling
V (3133) USB_MSC: USB MSC handling
V (3133) USB_MSC: USB MSC handling
V (3133) USB_MSC: USB MSC handling
V (3143) USB_MSC: USB MSC handling
V (3143) USB_MSC: USB MSC handling
V (3143) USB_MSC: USB MSC handling
V (3153) USB_MSC: USB MSC handling
V (3153) USB_MSC: USB MSC handling
V (3153) USB_MSC: USB MSC handling
V (3163) USB_MSC: USB MSC handling
V (3163) USB_MSC: USB MSC handling
V (3163) USB_MSC: USB MSC handling
V (3173) USB_MSC: USB MSC handling
V (3173) USB_MSC: USB MSC handling
V (3173) USB_MSC: USB MSC handling
V (3183) USB_MSC: USB MSC handling
V (3183) USB_MSC: USB MSC handling
V (3183) USB_MSC: USB MSC handling
V (3193) USB_MSC: USB MSC handling
V (3193) USB_MSC: USB MSC handling
V (3193) USB_MSC: USB MSC handling
V (3203) USB_MSC: USB MSC handling
V (3203) USB_MSC: USB MSC handling
V (3203) USB_MSC: USB MSC handling
V (3213) USB_MSC: USB MSC handling
V (3213) USB_MSC: USB MSC handling
V (3213) USB_MSC: USB MSC handling
V (3223) USB_MSC: USB MSC handling
V (3223) USB_MSC: USB MSC handling
V (3223) USB_MSC: USB MSC handling
V (3233) USB_MSC: USB MSC handling
V (3233) USB_MSC: USB MSC handling
V (3233) USB_MSC: USB MSC handling
V (3243) USB_MSC: USB MSC handling
V (3243) USB_MSC: USB MSC handling
V (3243) USB_MSC: USB MSC handling
V (3253) USB_MSC: USB MSC handling
V (3253) USB_MSC: USB MSC handling
V (3253) USB_MSC: USB MSC handling
V (3263) USB_MSC: USB MSC handling
V (3263) USB_MSC: USB MSC handling
V (3263) USB_MSC: USB MSC handling
V (3273) USB_MSC: USB MSC handling
V (3273) USB_MSC: USB MSC handling
V (3273) USB_MSC: USB MSC handling
V (3283) USB_MSC: USB MSC handling
V (3283) USB_MSC: USB MSC handling
V (3293) USB_MSC: USB MSC handling
V (3293) USB_MSC: USB MSC handling
V (3293) USB_MSC: USB MSC handling
V (3303) USB_MSC: USB MSC handling
V (3303) USB_MSC: USB MSC handling
V (3303) USB_MSC: USB MSC handling
V (3313) USB_MSC: USB MSC handling
V (3313) USB_MSC: USB MSC handling
V (3313) USB_MSC: USB MSC handling
V (3323) USB_MSC: USB MSC handling
V (3323) USB_MSC: USB MSC handling
V (3323) USB_MSC: USB MSC handling
V (3333) USB_MSC: USB MSC handling
V (3333) USB_MSC: USB MSC handling
V (3343) USB_MSC: USB MSC handling
V (3343) USB_MSC: USB MSC handling
V (3353) USB_MSC: USB MSC handling
V (3353) USB_MSC: USB MSC handling
V (3353) USB_MSC: USB MSC handling
V (3363) USB_MSC: USB MSC handling
V (3363) USB_MSC: USB MSC handling
V (3363) USB_MSC: USB MSC handling
V (3373) USB_MSC: USB MSC handling
V (3373) USB_MSC: USB MSC handling
V (3373) USB_MSC: USB MSC handling
V (3373) USB_MSC: USB MSC handling
V (3383) USB_MSC: USB MSC handling
V (3383) USB_MSC: USB MSC handling
V (3393) USB_MSC: USB MSC handling
V (3393) USB_MSC: USB MSC handling
V (3393) USB_MSC: USB MSC handling
V (3403) USB_MSC: USB MSC handling
V (3403) USB_MSC: USB MSC handling
V (3403) USB_MSC: USB MSC handling
V (3413) USB_MSC: USB MSC handling
V (3413) USB_MSC: USB MSC handling
V (3413) USB_MSC: USB MSC handling
V (3423) USB_MSC: USB MSC handling
V (3423) USB_MSC: USB MSC handling
V (3423) USB_MSC: USB MSC handling
V (3433) USB_MSC: USB MSC handling
V (3433) USB_MSC: USB MSC handling
V (3443) USB_MSC: USB MSC handling
V (3443) USB_MSC: USB MSC handling
V (3443) USB_MSC: USB MSC handling
V (3443) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3463) USB_MSC: USB MSC handling
V (3473) USB_MSC: USB MSC handling
V (3473) USB_MSC: USB MSC handling
V (3473) USB_MSC: USB MSC handling
V (3483) USB_MSC: USB MSC handling
V (3483) USB_MSC: USB MSC handling
V (3483) USB_MSC: USB MSC handling
V (3493) USB_MSC: USB MSC handling
V (3493) USB_MSC: USB MSC handling
V (3493) USB_MSC: USB MSC handling
V (3503) USB_MSC: USB MSC handling
V (3503) USB_MSC: USB MSC handling
V (3503) USB_MSC: USB MSC handling
V (3513) USB_MSC: USB MSC handling
V (3513) USB_MSC: USB MSC handling
V (3513) USB_MSC: USB MSC handling
V (3523) USB_MSC: USB MSC handling
V (3523) USB_MSC: USB MSC handling
V (3523) USB_MSC: USB MSC handling
V (3533) USB_MSC: USB MSC handling
V (3533) USB_MSC: USB MSC handling
V (3543) USB_MSC: USB MSC handling
V (3543) USB_MSC: USB MSC handling
V (3543) USB_MSC: USB MSC handling
V (3553) USB_MSC: USB MSC handling
V (3553) USB_MSC: USB MSC handling
V (3553) USB_MSC: USB MSC handling
V (3563) USB_MSC: USB MSC handling
V (3563) USB_MSC: USB MSC handling
V (3563) USB_MSC: USB MSC handling
V (3573) USB_MSC: USB MSC handling
V (3573) USB_MSC: USB MSC handling
V (3583) USB_MSC: USB MSC handling
V (3583) USB_MSC: USB MSC handling
V (3583) USB_MSC: USB MSC handling
V (3593) USB_MSC: USB MSC handling
V (3593) USB_MSC: USB MSC handling
V (3593) USB_MSC: USB MSC handling
V (3603) USB_MSC: USB MSC handling
V (3603) USB_MSC: USB MSC handling
V (3603) USB_MSC: USB MSC handling
V (3613) USB_MSC: USB MSC handling
V (3613) USB_MSC: USB MSC handling
V (3623) USB_MSC: USB MSC handling
V (3623) USB_MSC: USB MSC handling
V (3623) USB_MSC: USB MSC handling
V (3633) USB_MSC: USB MSC handling
V (3633) USB_MSC: USB MSC handling
V (3633) USB_MSC: USB MSC handling
V (3643) USB_MSC: USB MSC handling
V (3643) USB_MSC: USB MSC handling
V (3643) USB_MSC: USB MSC handling
V (3653) USB_MSC: USB MSC handling
V (3653) USB_MSC: USB MSC handling
V (3653) USB_MSC: USB MSC handling
V (3663) USB_MSC: USB MSC handling
V (3663) USB_MSC: USB MSC handling
V (3663) USB_MSC: USB MSC handling
V (3673) USB_MSC: USB MSC handling
V (3673) USB_MSC: USB MSC handling
V (3673) USB_MSC: USB MSC handling
V (3683) USB_MSC: USB MSC handling
V (3683) USB_MSC: USB MSC handling
V (3683) USB_MSC: USB MSC handling
V (3693) USB_MSC: USB MSC handling
V (3693) USB_MSC: USB MSC handling
V (3693) USB_MSC: USB MSC handling
V (3703) USB_MSC: USB MSC handling
V (3703) USB_MSC: USB MSC handling
V (3703) USB_MSC: USB MSC handling
V (3713) USB_MSC: USB MSC handling
V (3713) USB_MSC: USB MSC handling
V (3713) USB_MSC: USB MSC handling
V (3723) USB_MSC: USB MSC handling
V (3723) USB_MSC: USB MSC handling
V (3723) USB_MSC: USB MSC handling
V (3733) USB_MSC: USB MSC handling
V (3733) USB_MSC: USB MSC handling
V (3733) USB_MSC: USB MSC handling
V (3743) USB_MSC: USB MSC handling
V (3743) USB_MSC: USB MSC handling
V (3743) USB_MSC: USB MSC handling
V (3753) USB_MSC: USB MSC handling
V (3753) USB_MSC: USB MSC handling
V (3753) USB_MSC: USB MSC handling
V (3763) USB_MSC: USB MSC handling
V (3763) USB_MSC: USB MSC handling
V (3763) USB_MSC: USB MSC handling
V (3773) USB_MSC: USB MSC handling
V (3773) USB_MSC: USB MSC handling
V (3773) USB_MSC: USB MSC handling
V (3783) USB_MSC: USB MSC handling
V (3783) USB_MSC: USB MSC handling
V (3793) USB_MSC: USB MSC handling
V (3793) USB_MSC: USB MSC handling
V (3793) USB_MSC: USB MSC handling
V (3803) USB_MSC: USB MSC handling
V (3803) USB_MSC: USB MSC handling
V (3813) USB_MSC: USB MSC handling
V (3813) USB_MSC: USB MSC handling
V (3813) USB_MSC: USB MSC handling
V (3813) USB_MSC: USB MSC handling
V (3823) USB_MSC: USB MSC handling
V (3823) USB_MSC: USB MSC handling
V (3833) USB_MSC: USB MSC handling
V (3833) USB_MSC: USB MSC handling
V (3833) USB_MSC: USB MSC handling
V (3843) USB_MSC: USB MSC handling
V (3843) USB_MSC: USB MSC handling
V (3843) USB_MSC: USB MSC handling
V (3853) USB_MSC: USB MSC handling
V (3853) USB_MSC: USB MSC handling
V (3853) USB_MSC: USB MSC handling
V (3863) USB_MSC: USB MSC handling
V (3863) USB_MSC: USB MSC handling
V (3873) USB_MSC: USB MSC handling
V (3873) USB_MSC: USB MSC handling
V (3873) USB_MSC: USB MSC handling
V (3883) USB_MSC: USB MSC handling
V (3883) USB_MSC: USB MSC handling
V (3883) USB_MSC: USB MSC handling
V (3893) USB_MSC: USB MSC handling
V (3893) USB_MSC: USB MSC handling
V (3893) USB_MSC: USB MSC handling
V (3903) USB_MSC: USB MSC handling
V (3903) USB_MSC: USB MSC handling
V (3903) USB_MSC: USB MSC handling
V (3913) USB_MSC: USB MSC handling
V (3913) USB_MSC: USB MSC handling
V (3913) USB_MSC: USB MSC handling
V (3923) USB_MSC: USB MSC handling
V (3923) USB_MSC: USB MSC handling
V (3923) USB_MSC: USB MSC handling
V (3933) USB_MSC: USB MSC handling
V (3933) USB_MSC: USB MSC handling
V (3933) USB_MSC: USB MSC handling
V (3943) USB_MSC: USB MSC handling
V (3943) USB_MSC: USB MSC handling
V (3943) USB_MSC: USB MSC handling
V (3953) USB_MSC: USB MSC handling
V (3953) USB_MSC: USB MSC handling
V (3953) USB_MSC: USB MSC handling
V (3963) USB_MSC: USB MSC handling
V (3963) USB_MSC: USB MSC handling
V (3963) USB_MSC: USB MSC handling
V (3973) USB_MSC: USB MSC handling
V (3973) USB_MSC: USB MSC handling
V (3973) USB_MSC: USB MSC handling
V (3983) USB_MSC: USB MSC handling
V (3983) USB_MSC: USB MSC handling
V (3983) USB_MSC: USB MSC handling
V (3993) USB_MSC: USB MSC handling
V (3993) USB_MSC: USB MSC handling
V (3993) USB_MSC: USB MSC handling
V (4003) USB_MSC: USB MSC handling
V (4003) USB_MSC: USB MSC handling
V (4003) USB_MSC: USB MSC handling
V (4013) USB_MSC: USB MSC handling
V (4013) USB_MSC: USB MSC handling
V (4013) USB_MSC: USB MSC handling
V (4023) USB_MSC: USB MSC handling
V (4023) USB_MSC: USB MSC handling
V (4023) USB_MSC: USB MSC handling
V (4033) USB_MSC: USB MSC handling
V (4033) USB_MSC: USB MSC handling
V (4043) USB_MSC: USB MSC handling
V (4043) USB_MSC: USB MSC handling
V (4043) USB_MSC: USB MSC handling
V (4053) USB_MSC: USB MSC handling
V (4053) USB_MSC: USB MSC handling
V (4063) USB_MSC: USB MSC handling
V (4063) USB_MSC: USB MSC handling
V (4063) USB_MSC: USB MSC handling
V (4063) USB_MSC: USB MSC handling
V (4073) USB_MSC: USB MSC handling
V (4073) USB_MSC: USB MSC handling
V (4083) USB_MSC: USB MSC handling
V (4083) USB_MSC: USB MSC handling
V (4083) USB_MSC: USB MSC handling
V (4093) USB_MSC: USB MSC handling
V (4093) USB_MSC: USB MSC handling
V (4093) USB_MSC: USB MSC handling
V (4103) USB_MSC: USB MSC handling
V (4103) USB_MSC: USB MSC handling
V (4103) USB_MSC: USB MSC handling
V (4113) USB_MSC: USB MSC handling
V (4113) USB_MSC: USB MSC handling
V (4123) USB_MSC: USB MSC handling
V (4123) USB_MSC: USB MSC handling
V (4123) USB_MSC: USB MSC handling
V (4133) USB_MSC: USB MSC handling
V (4133) USB_MSC: USB MSC handling
V (4133) USB_MSC: USB MSC handling
V (4143) USB_MSC: USB MSC handling
V (4143) USB_MSC: USB MSC handling
V (4143) USB_MSC: USB MSC handling
V (4153) USB_MSC: USB MSC handling
V (4153) USB_MSC: USB MSC handling
V (4153) USB_MSC: USB MSC handling
V (4163) USB_MSC: USB MSC handling
V (4163) USB_MSC: USB MSC handling
V (4163) USB_MSC: USB MSC handling
V (4173) USB_MSC: USB MSC handling
V (4173) USB_MSC: USB MSC handling
V (4173) USB_MSC: USB MSC handling
V (4183) USB_MSC: USB MSC handling
V (4183) USB_MSC: USB MSC handling
V (4183) USB_MSC: USB MSC handling
V (4193) USB_MSC: USB MSC handling
V (4193) USB_MSC: USB MSC handling
V (4193) USB_MSC: USB MSC handling
V (4203) USB_MSC: USB MSC handling
V (4203) USB_MSC: USB MSC handling
V (4203) USB_MSC: USB MSC handling
V (4213) USB_MSC: USB MSC handling
V (4213) USB_MSC: USB MSC handling
V (4213) USB_MSC: USB MSC handling
V (4223) USB_MSC: USB MSC handling
V (4223) USB_MSC: USB MSC handling
V (4223) USB_MSC: USB MSC handling
V (4233) USB_MSC: USB MSC handling
V (4233) USB_MSC: USB MSC handling
V (4233) USB_MSC: USB MSC handling
V (4243) USB_MSC: USB MSC handling
V (4243) USB_MSC: USB MSC handling
V (4243) USB_MSC: USB MSC handling
V (4253) USB_MSC: USB MSC handling
V (4253) USB_MSC: USB MSC handling
V (4253) USB_MSC: USB MSC handling
V (4263) USB_MSC: USB MSC handling
V (4263) USB_MSC: USB MSC handling
V (4263) USB_MSC: USB MSC handling
V (4273) USB_MSC: USB MSC handling
V (4273) USB_MSC: USB MSC handling
V (4273) USB_MSC: USB MSC handling
V (4283) USB_MSC: USB MSC handling
V (4283) USB_MSC: USB MSC handling
V (4293) USB_MSC: USB MSC handling
V (4293) USB_MSC: USB MSC handling
V (4293) USB_MSC: USB MSC handling
V (4303) USB_MSC: USB MSC handling
V (4303) USB_MSC: USB MSC handling
V (4303) USB_MSC: USB MSC handling
V (4313) USB_MSC: USB MSC handling
V (4313) USB_MSC: USB MSC handling
V (4313) USB_MSC: USB MSC handling
V (4323) USB_MSC: USB MSC handling
V (4323) USB_MSC: USB MSC handling
V (4333) USB_MSC: USB MSC handling
V (4333) USB_MSC: USB MSC handling
V (4333) USB_MSC: USB MSC handling
V (4343) USB_MSC: USB MSC handling
V (4343) USB_MSC: USB MSC handling
V (4343) USB_MSC: USB MSC handling
V (4353) USB_MSC: USB MSC handling
V (4353) USB_MSC: USB MSC handling
V (4353) USB_MSC: USB MSC handling
V (4363) USB_MSC: USB MSC handling
V (4363) USB_MSC: USB MSC handling
V (4373) USB_MSC: USB MSC handling
V (4373) USB_MSC: USB MSC handling
V (4373) USB_MSC: USB MSC handling
V (4383) USB_MSC: USB MSC handling
V (4383) USB_MSC: USB MSC handling
V (4383) USB_MSC: USB MSC handling
V (4393) USB_MSC: USB MSC handling
V (4393) USB_MSC: USB MSC handling
V (4393) USB_MSC: USB MSC handling
V (4403) USB_MSC: USB MSC handling
V (4403) USB_MSC: USB MSC handling
V (4403) USB_MSC: USB MSC handling
V (4413) USB_MSC: USB MSC handling
V (4413) USB_MSC: USB MSC handling
V (4413) USB_MSC: USB MSC handling
V (4423) USB_MSC: USB MSC handling
V (4423) USB_MSC: USB MSC handling
V (4423) USB_MSC: USB MSC handling
V (4433) USB_MSC: USB MSC handling
V (4433) USB_MSC: USB MSC handling
V (4433) USB_MSC: USB MSC handling
V (4443) USB_MSC: USB MSC handling
V (4443) USB_MSC: USB MSC handling
V (4443) USB_MSC: USB MSC handling
V (4453) USB_MSC: USB MSC handling
V (4453) USB_MSC: USB MSC handling
V (4453) USB_MSC: USB MSC handling
V (4463) USB_MSC: USB MSC handling
V (4463) USB_MSC: USB MSC handling
V (4463) USB_MSC: USB MSC handling
V (4473) USB_MSC: USB MSC handling
V (4473) USB_MSC: USB MSC handling
V (4473) USB_MSC: USB MSC handling
V (4483) USB_MSC: USB MSC handling
V (4483) USB_MSC: USB MSC handling
V (4483) USB_MSC: USB MSC handling
V (4493) USB_MSC: USB MSC handling
V (4493) USB_MSC: USB MSC handling
V (4493) USB_MSC: USB MSC handling
V (4503) USB_MSC: USB MSC handling
V (4503) USB_MSC: USB MSC handling
V (4503) USB_MSC: USB MSC handling
V (4513) USB_MSC: USB MSC handling
V (4513) USB_MSC: USB MSC handling
V (4513) USB_MSC: USB MSC handling
V (4523) USB_MSC: USB MSC handling
V (4523) USB_MSC: USB MSC handling
V (4523) USB_MSC: USB MSC handling
V (4533) USB_MSC: USB MSC handling
V (4533) USB_MSC: USB MSC handling
V (4543) USB_MSC: USB MSC handling
V (4543) USB_MSC: USB MSC handling
V (4543) USB_MSC: USB MSC handling
V (4553) USB_MSC: USB MSC handling
V (4553) USB_MSC: USB MSC handling
V (4553) USB_MSC: USB MSC handling
V (4563) USB_MSC: USB MSC handling
V (4563) USB_MSC: USB MSC handling
V (4563) USB_MSC: USB MSC handling
V (4573) USB_MSC: USB MSC handling
V (4573) USB_MSC: USB MSC handling
V (4583) USB_MSC: USB MSC handling
V (4583) USB_MSC: USB MSC handling
V (4583) USB_MSC: USB MSC handling
V (4593) USB_MSC: USB MSC handling
V (4593) USB_MSC: USB MSC handling
V (4593) USB_MSC: USB MSC handling
V (4603) USB_MSC: USB MSC handling
V (4603) USB_MSC: USB MSC handling
V (4603) USB_MSC: USB MSC handling
V (4613) USB_MSC: USB MSC handling
V (4613) USB_MSC: USB MSC handling
V (4623) USB_MSC: USB MSC handling
V (4623) USB_MSC: USB MSC handling
V (4623) USB_MSC: USB MSC handling
V (4633) USB_MSC: USB MSC handling
V (4633) USB_MSC: USB MSC handling
V (4633) USB_MSC: USB MSC handling
V (4643) USB_MSC: USB MSC handling
V (4643) USB_MSC: USB MSC handling
V (4643) USB_MSC: USB MSC handling
V (4653) USB_MSC: USB MSC handling
V (4653) USB_MSC: USB MSC handling
V (4653) USB_MSC: USB MSC handling
V (4663) USB_MSC: USB MSC handling
V (4663) USB_MSC: USB MSC handling
V (4663) USB_MSC: USB MSC handling
V (4673) USB_MSC: USB MSC handling
V (4673) USB_MSC: USB MSC handling
V (4673) USB_MSC: USB MSC handling
V (4683) USB_MSC: USB MSC handling
V (4683) USB_MSC: USB MSC handling
V (4683) USB_MSC: USB MSC handling
V (4693) USB_MSC: USB MSC handling
V (4693) USB_MSC: USB MSC handling
V (4693) USB_MSC: USB MSC handling
V (4703) USB_MSC: USB MSC handling
V (4703) USB_MSC: USB MSC handling
V (4703) USB_MSC: USB MSC handling
V (4713) USB_MSC: USB MSC handling
V (4713) USB_MSC: USB MSC handling
V (4713) USB_MSC: USB MSC handling
V (4723) USB_MSC: USB MSC handling
V (4723) USB_MSC: USB MSC handling
V (4723) USB_MSC: USB MSC handling
V (4733) USB_MSC: USB MSC handling
V (4733) USB_MSC: USB MSC handling
V (4733) USB_MSC: USB MSC handling
V (4743) USB_MSC: USB MSC handling
V (4743) USB_MSC: USB MSC handling
V (4743) USB_MSC: USB MSC handling
V (4753) USB_MSC: USB MSC handling
V (4753) USB_MSC: USB MSC handling
V (4753) USB_MSC: USB MSC handling
V (5593) USB_MSC: USB MSC handling
V (5593) USB_MSC: USB MSC handling
V (5593) USB_MSC: USB MSC handling
V (5603) USB_MSC: USB MSC handling
V (5603) USB_MSC: USB MSC handling
V (5603) USB_MSC: USB MSC handling
V (5613) USB_MSC: USB MSC handling
V (5613) USB_MSC: USB MSC handling
V (5613) USB_MSC: USB MSC handling
V (5623) USB_MSC: USB MSC handling
V (5623) USB_MSC: USB MSC handling
V (5623) USB_MSC: USB MSC handling
V (5623) USB_MSC: USB MSC handling
V (5633) USB_MSC: USB MSC handling
V (5633) USB_MSC: USB MSC handling
V (5643) USB_MSC: USB MSC handling
V (5643) USB_MSC: USB MSC handling
V (5643) USB_MSC: USB MSC handling
V (5653) USB_MSC: USB MSC handling
V (5653) USB_MSC: USB MSC handling
V (5653) USB_MSC: USB MSC handling
V (5663) USB_MSC: USB MSC handling
V (5663) USB_MSC: USB MSC handling
I (5663) example: Write speed 0.29 MiB/s
D (5663) vfs_fat: vfs_fat_lseek: offset=0, filesize:=1048576
I (5673) example: Reading from file /usb/esp/dummy
V (5683) USB_MSC: USB MSC handling
V (5683) USB_MSC: USB MSC handling
V (5683) USB_MSC: USB MSC handling
V (5693) USB_MSC: USB MSC handling
V (5703) USB_MSC: USB MSC handling
V (5703) USB_MSC: USB MSC handling
V (5703) USB_MSC: USB MSC handling
V (5713) USB_MSC: USB MSC handling
V (5713) USB_MSC: USB MSC handling
V (5713) USB_MSC: USB MSC handling
V (5723) USB_MSC: USB MSC handling
V (5723) USB_MSC: USB MSC handling
V (5723) USB_MSC: USB MSC handling
V (5733) USB_MSC: USB MSC handling
V (5733) USB_MSC: USB MSC handling
V (5733) USB_MSC: USB MSC handling
V (5733) USB_MSC: USB MSC handling
V (5733) USB_MSC: USB MSC handling
V (5743) USB_MSC: USB MSC handling
V (5743) USB_MSC: USB MSC handling
V (5753) USB_MSC: USB MSC handling
V (5753) USB_MSC: USB MSC handling
V (5763) USB_MSC: USB MSC handling
V (5763) USB_MSC: USB MSC handling
V (5763) USB_MSC: USB MSC handling
V (5773) USB_MSC: USB MSC handling
V (5773) USB_MSC: USB MSC handling
V (5773) USB_MSC: USB MSC handling
V (5783) USB_MSC: USB MSC handling
V (5783) USB_MSC: USB MSC handling
V (5783) USB_MSC: USB MSC handling
V (5793) USB_MSC: USB MSC handling
V (5793) USB_MSC: USB MSC handling
V (5793) USB_MSC: USB MSC handling
V (5803) USB_MSC: USB MSC handling
V (5803) USB_MSC: USB MSC handling
V (5803) USB_MSC: USB MSC handling
V (5813) USB_MSC: USB MSC handling
V (5813) USB_MSC: USB MSC handling
V (5813) USB_MSC: USB MSC handling
V (5823) USB_MSC: USB MSC handling
V (5823) USB_MSC: USB MSC handling
V (5823) USB_MSC: USB MSC handling
V (5833) USB_MSC: USB MSC handling
V (5833) USB_MSC: USB MSC handling
V (5833) USB_MSC: USB MSC handling
V (5843) USB_MSC: USB MSC handling
V (5843) USB_MSC: USB MSC handling
V (5843) USB_MSC: USB MSC handling
V (5853) USB_MSC: USB MSC handling
V (5853) USB_MSC: USB MSC handling
V (5853) USB_MSC: USB MSC handling
V (5863) USB_MSC: USB MSC handling
V (5863) USB_MSC: USB MSC handling
V (5863) USB_MSC: USB MSC handling
V (5873) USB_MSC: USB MSC handling
V (5873) USB_MSC: USB MSC handling
V (5873) USB_MSC: USB MSC handling
V (5883) USB_MSC: USB MSC handling
V (5883) USB_MSC: USB MSC handling
V (5883) USB_MSC: USB MSC handling
V (5893) USB_MSC: USB MSC handling
V (5893) USB_MSC: USB MSC handling
V (5893) USB_MSC: USB MSC handling
V (5903) USB_MSC: USB MSC handling
V (5903) USB_MSC: USB MSC handling
V (5903) USB_MSC: USB MSC handling
V (5913) USB_MSC: USB MSC handling
V (5913) USB_MSC: USB MSC handling
V (5923) USB_MSC: USB MSC handling
V (5923) USB_MSC: USB MSC handling
V (5923) USB_MSC: USB MSC handling
V (5933) USB_MSC: USB MSC handling
V (5933) USB_MSC: USB MSC handling
V (5933) USB_MSC: USB MSC handling
V (5943) USB_MSC: USB MSC handling
V (5943) USB_MSC: USB MSC handling
V (5943) USB_MSC: USB MSC handling
V (5953) USB_MSC: USB MSC handling
V (5953) USB_MSC: USB MSC handling
V (5953) USB_MSC: USB MSC handling
V (5963) USB_MSC: USB MSC handling
V (5963) USB_MSC: USB MSC handling
V (5963) USB_MSC: USB MSC handling
V (5973) USB_MSC: USB MSC handling
V (5973) USB_MSC: USB MSC handling
V (5973) USB_MSC: USB MSC handling
V (5983) USB_MSC: USB MSC handling
V (5983) USB_MSC: USB MSC handling
V (5983) USB_MSC: USB MSC handling
V (5993) USB_MSC: USB MSC handling
V (5993) USB_MSC: USB MSC handling
V (6003) USB_MSC: USB MSC handling
V (6003) USB_MSC: USB MSC handling
V (6013) USB_MSC: USB MSC handling
V (6013) USB_MSC: USB MSC handling
V (6013) USB_MSC: USB MSC handling
V (6023) USB_MSC: USB MSC handling
V (6023) USB_MSC: USB MSC handling
V (6023) USB_MSC: USB MSC handling
V (6033) USB_MSC: USB MSC handling
V (6033) USB_MSC: USB MSC handling
V (6033) USB_MSC: USB MSC handling
V (6043) USB_MSC: USB MSC handling
V (6043) USB_MSC: USB MSC handling
V (6043) USB_MSC: USB MSC handling
V (6053) USB_MSC: USB MSC handling
V (6053) USB_MSC: USB MSC handling
V (6053) USB_MSC: USB MSC handling
V (6063) USB_MSC: USB MSC handling
V (6063) USB_MSC: USB MSC handling
V (6063) USB_MSC: USB MSC handling
V (6073) USB_MSC: USB MSC handling
V (6073) USB_MSC: USB MSC handling
V (6073) USB_MSC: USB MSC handling
V (6083) USB_MSC: USB MSC handling
V (6083) USB_MSC: USB MSC handling
V (6083) USB_MSC: USB MSC handling
V (6093) USB_MSC: USB MSC handling
V (6093) USB_MSC: USB MSC handling
V (6093) USB_MSC: USB MSC handling
V (6103) USB_MSC: USB MSC handling
V (6103) USB_MSC: USB MSC handling
V (6103) USB_MSC: USB MSC handling
V (6113) USB_MSC: USB MSC handling
V (6113) USB_MSC: USB MSC handling
V (6113) USB_MSC: USB MSC handling
V (6123) USB_MSC: USB MSC handling
V (6123) USB_MSC: USB MSC handling
V (6123) USB_MSC: USB MSC handling
V (6133) USB_MSC: USB MSC handling
V (6133) USB_MSC: USB MSC handling
V (6133) USB_MSC: USB MSC handling
V (6143) USB_MSC: USB MSC handling
V (6143) USB_MSC: USB MSC handling
V (6143) USB_MSC: USB MSC handling
V (6153) USB_MSC: USB MSC handling
V (6153) USB_MSC: USB MSC handling
V (6153) USB_MSC: USB MSC handling
V (6163) USB_MSC: USB MSC handling
V (6163) USB_MSC: USB MSC handling
V (6173) USB_MSC: USB MSC handling
V (6173) USB_MSC: USB MSC handling
V (6173) USB_MSC: USB MSC handling
V (6183) USB_MSC: USB MSC handling
V (6183) USB_MSC: USB MSC handling
V (6183) USB_MSC: USB MSC handling
V (6193) USB_MSC: USB MSC handling
V (6193) USB_MSC: USB MSC handling
V (6193) USB_MSC: USB MSC handling
V (6203) USB_MSC: USB MSC handling
V (6203) USB_MSC: USB MSC handling
V (6203) USB_MSC: USB MSC handling
V (6213) USB_MSC: USB MSC handling
V (6213) USB_MSC: USB MSC handling
V (6213) USB_MSC: USB MSC handling
V (6223) USB_MSC: USB MSC handling
V (6223) USB_MSC: USB MSC handling
V (6223) USB_MSC: USB MSC handling
V (6233) USB_MSC: USB MSC handling
V (6233) USB_MSC: USB MSC handling
V (6233) USB_MSC: USB MSC handling
V (6243) USB_MSC: USB MSC handling
V (6243) USB_MSC: USB MSC handling
V (6253) USB_MSC: USB MSC handling
V (6253) USB_MSC: USB MSC handling
V (6263) USB_MSC: USB MSC handling
V (6263) USB_MSC: USB MSC handling
V (6263) USB_MSC: USB MSC handling
V (6273) USB_MSC: USB MSC handling
V (6273) USB_MSC: USB MSC handling
V (6273) USB_MSC: USB MSC handling
V (6283) USB_MSC: USB MSC handling
V (6283) USB_MSC: USB MSC handling
V (6283) USB_MSC: USB MSC handling
V (6293) USB_MSC: USB MSC handling
V (6293) USB_MSC: USB MSC handling
V (6293) USB_MSC: USB MSC handling
V (6303) USB_MSC: USB MSC handling
V (6303) USB_MSC: USB MSC handling
V (6303) USB_MSC: USB MSC handling
V (6313) USB_MSC: USB MSC handling
V (6313) USB_MSC: USB MSC handling
V (6313) USB_MSC: USB MSC handling
V (6323) USB_MSC: USB MSC handling
V (6323) USB_MSC: USB MSC handling
V (6323) USB_MSC: USB MSC handling
V (6333) USB_MSC: USB MSC handling
V (6333) USB_MSC: USB MSC handling
V (6333) USB_MSC: USB MSC handling
V (6343) USB_MSC: USB MSC handling
V (6343) USB_MSC: USB MSC handling
V (6343) USB_MSC: USB MSC handling
V (6353) USB_MSC: USB MSC handling
V (6353) USB_MSC: USB MSC handling
V (6353) USB_MSC: USB MSC handling
V (6363) USB_MSC: USB MSC handling
V (6363) USB_MSC: USB MSC handling
V (6363) USB_MSC: USB MSC handling
V (6373) USB_MSC: USB MSC handling
V (6373) USB_MSC: USB MSC handling
V (6373) USB_MSC: USB MSC handling
V (6383) USB_MSC: USB MSC handling
V (6383) USB_MSC: USB MSC handling
V (6383) USB_MSC: USB MSC handling
V (6393) USB_MSC: USB MSC handling
V (6393) USB_MSC: USB MSC handling
V (6393) USB_MSC: USB MSC handling
V (6403) USB_MSC: USB MSC handling
V (6403) USB_MSC: USB MSC handling
V (6403) USB_MSC: USB MSC handling
V (6413) USB_MSC: USB MSC handling
V (6413) USB_MSC: USB MSC handling
V (6423) USB_MSC: USB MSC handling
V (6423) USB_MSC: USB MSC handling
V (6423) USB_MSC: USB MSC handling
V (6433) USB_MSC: USB MSC handling
V (6433) USB_MSC: USB MSC handling
V (6433) USB_MSC: USB MSC handling
V (6443) USB_MSC: USB MSC handling
V (6443) USB_MSC: USB MSC handling
V (6443) USB_MSC: USB MSC handling
V (6453) USB_MSC: USB MSC handling
V (6453) USB_MSC: USB MSC handling
V (6453) USB_MSC: USB MSC handling
V (6463) USB_MSC: USB MSC handling
V (6463) USB_MSC: USB MSC handling
V (6463) USB_MSC: USB MSC handling
V (6473) USB_MSC: USB MSC handling
V (6473) USB_MSC: USB MSC handling
V (6473) USB_MSC: USB MSC handling
V (6483) USB_MSC: USB MSC handling
V (6483) USB_MSC: USB MSC handling
V (6483) USB_MSC: USB MSC handling
V (6493) USB_MSC: USB MSC handling
V (6493) USB_MSC: USB MSC handling
V (6503) USB_MSC: USB MSC handling
V (6503) USB_MSC: USB MSC handling
V (6513) USB_MSC: USB MSC handling
V (6513) USB_MSC: USB MSC handling
V (6513) USB_MSC: USB MSC handling
V (6523) USB_MSC: USB MSC handling
V (6523) USB_MSC: USB MSC handling
V (6523) USB_MSC: USB MSC handling
V (6533) USB_MSC: USB MSC handling
V (6533) USB_MSC: USB MSC handling
V (6533) USB_MSC: USB MSC handling
V (6543) USB_MSC: USB MSC handling
V (6543) USB_MSC: USB MSC handling
V (6543) USB_MSC: USB MSC handling
V (6553) USB_MSC: USB MSC handling
V (6553) USB_MSC: USB MSC handling
V (6553) USB_MSC: USB MSC handling
V (6563) USB_MSC: USB MSC handling
V (6563) USB_MSC: USB MSC handling
V (6563) USB_MSC: USB MSC handling
V (6573) USB_MSC: USB MSC handling
V (6573) USB_MSC: USB MSC handling
V (6573) USB_MSC: USB MSC handling
V (6583) USB_MSC: USB MSC handling
V (6583) USB_MSC: USB MSC handling
V (6583) USB_MSC: USB MSC handling
V (6593) USB_MSC: USB MSC handling
V (6593) USB_MSC: USB MSC handling
V (6593) USB_MSC: USB MSC handling
V (6603) USB_MSC: USB MSC handling
V (6603) USB_MSC: USB MSC handling
V (6603) USB_MSC: USB MSC handling
V (6613) USB_MSC: USB MSC handling
V (6613) USB_MSC: USB MSC handling
V (6613) USB_MSC: USB MSC handling
V (6623) USB_MSC: USB MSC handling
V (6623) USB_MSC: USB MSC handling
V (6623) USB_MSC: USB MSC handling
V (6633) USB_MSC: USB MSC handling
V (6633) USB_MSC: USB MSC handling
V (6633) USB_MSC: USB MSC handling
V (6643) USB_MSC: USB MSC handling
V (6643) USB_MSC: USB MSC handling
V (6643) USB_MSC: USB MSC handling
V (6653) USB_MSC: USB MSC handling
V (6653) USB_MSC: USB MSC handling
V (6653) USB_MSC: USB MSC handling
V (6663) USB_MSC: USB MSC handling
V (6663) USB_MSC: USB MSC handling
V (6673) USB_MSC: USB MSC handling
V (6673) USB_MSC: USB MSC handling
V (6673) USB_MSC: USB MSC handling
V (6683) USB_MSC: USB MSC handling
V (6683) USB_MSC: USB MSC handling
V (6683) USB_MSC: USB MSC handling
V (6693) USB_MSC: USB MSC handling
V (6693) USB_MSC: USB MSC handling
V (6693) USB_MSC: USB MSC handling
V (6703) USB_MSC: USB MSC handling
V (6703) USB_MSC: USB MSC handling
V (6703) USB_MSC: USB MSC handling
V (6713) USB_MSC: USB MSC handling
V (6713) USB_MSC: USB MSC handling
V (6713) USB_MSC: USB MSC handling
V (6723) USB_MSC: USB MSC handling
V (6723) USB_MSC: USB MSC handling
V (6723) USB_MSC: USB MSC handling
V (6733) USB_MSC: USB MSC handling
V (6733) USB_MSC: USB MSC handling
V (6733) USB_MSC: USB MSC handling
V (6743) USB_MSC: USB MSC handling
V (6743) USB_MSC: USB MSC handling
V (6753) USB_MSC: USB MSC handling
V (6753) USB_MSC: USB MSC handling
V (6763) USB_MSC: USB MSC handling
V (6763) USB_MSC: USB MSC handling
V (6763) USB_MSC: USB MSC handling
V (6773) USB_MSC: USB MSC handling
V (6773) USB_MSC: USB MSC handling
V (6773) USB_MSC: USB MSC handling
V (6783) USB_MSC: USB MSC handling
V (6783) USB_MSC: USB MSC handling
V (6783) USB_MSC: USB MSC handling
V (6793) USB_MSC: USB MSC handling
V (6793) USB_MSC: USB MSC handling
V (6793) USB_MSC: USB MSC handling
V (6803) USB_MSC: USB MSC handling
V (6803) USB_MSC: USB MSC handling
V (6803) USB_MSC: USB MSC handling
V (6813) USB_MSC: USB MSC handling
V (6813) USB_MSC: USB MSC handling
V (6813) USB_MSC: USB MSC handling
V (6823) USB_MSC: USB MSC handling
V (6823) USB_MSC: USB MSC handling
V (6823) USB_MSC: USB MSC handling
V (6833) USB_MSC: USB MSC handling
V (6833) USB_MSC: USB MSC handling
V (6833) USB_MSC: USB MSC handling
V (6843) USB_MSC: USB MSC handling
V (6843) USB_MSC: USB MSC handling
V (6843) USB_MSC: USB MSC handling
V (6853) USB_MSC: USB MSC handling
V (6853) USB_MSC: USB MSC handling
V (6853) USB_MSC: USB MSC handling
V (6863) USB_MSC: USB MSC handling
V (6863) USB_MSC: USB MSC handling
V (6863) USB_MSC: USB MSC handling
V (6873) USB_MSC: USB MSC handling
V (6873) USB_MSC: USB MSC handling
V (6873) USB_MSC: USB MSC handling
V (6883) USB_MSC: USB MSC handling
V (6883) USB_MSC: USB MSC handling
V (6883) USB_MSC: USB MSC handling
V (6893) USB_MSC: USB MSC handling
V (6893) USB_MSC: USB MSC handling
V (6893) USB_MSC: USB MSC handling
V (6903) USB_MSC: USB MSC handling
V (6903) USB_MSC: USB MSC handling
V (6903) USB_MSC: USB MSC handling
V (6913) USB_MSC: USB MSC handling
V (6913) USB_MSC: USB MSC handling
V (6923) USB_MSC: USB MSC handling
V (6923) USB_MSC: USB MSC handling
V (6923) USB_MSC: USB MSC handling
V (6933) USB_MSC: USB MSC handling
V (6933) USB_MSC: USB MSC handling
V (6933) USB_MSC: USB MSC handling
V (6943) USB_MSC: USB MSC handling
V (6943) USB_MSC: USB MSC handling
V (6943) USB_MSC: USB MSC handling
V (6953) USB_MSC: USB MSC handling
V (6953) USB_MSC: USB MSC handling
V (6953) USB_MSC: USB MSC handling
V (6963) USB_MSC: USB MSC handling
V (6963) USB_MSC: USB MSC handling
V (6963) USB_MSC: USB MSC handling
V (6973) USB_MSC: USB MSC handling
V (6973) USB_MSC: USB MSC handling
V (6973) USB_MSC: USB MSC handling
V (6983) USB_MSC: USB MSC handling
V (6983) USB_MSC: USB MSC handling
V (6983) USB_MSC: USB MSC handling
V (6993) USB_MSC: USB MSC handling
V (6993) USB_MSC: USB MSC handling
V (7003) USB_MSC: USB MSC handling
V (7003) USB_MSC: USB MSC handling
V (7013) USB_MSC: USB MSC handling
V (7013) USB_MSC: USB MSC handling
V (7013) USB_MSC: USB MSC handling
V (7023) USB_MSC: USB MSC handling
V (7023) USB_MSC: USB MSC handling
V (7023) USB_MSC: USB MSC handling
V (7033) USB_MSC: USB MSC handling
V (7033) USB_MSC: USB MSC handling
V (7033) USB_MSC: USB MSC handling
V (7043) USB_MSC: USB MSC handling
V (7043) USB_MSC: USB MSC handling
V (7043) USB_MSC: USB MSC handling
V (7043) USB_MSC: USB MSC handling
V (7053) USB_MSC: USB MSC handling
V (7053) USB_MSC: USB MSC handling
V (7063) USB_MSC: USB MSC handling
V (7063) USB_MSC: USB MSC handling
V (7063) USB_MSC: USB MSC handling
V (7073) USB_MSC: USB MSC handling
V (7073) USB_MSC: USB MSC handling
V (7073) USB_MSC: USB MSC handling
V (7083) USB_MSC: USB MSC handling
V (7083) USB_MSC: USB MSC handling
V (7083) USB_MSC: USB MSC handling
V (7093) USB_MSC: USB MSC handling
V (7093) USB_MSC: USB MSC handling
V (7093) USB_MSC: USB MSC handling
V (7103) USB_MSC: USB MSC handling
V (7103) USB_MSC: USB MSC handling
V (7103) USB_MSC: USB MSC handling
V (7113) USB_MSC: USB MSC handling
V (7113) USB_MSC: USB MSC handling
V (7113) USB_MSC: USB MSC handling
V (7123) USB_MSC: USB MSC handling
V (7123) USB_MSC: USB MSC handling
V (7123) USB_MSC: USB MSC handling
V (7133) USB_MSC: USB MSC handling
V (7133) USB_MSC: USB MSC handling
V (7133) USB_MSC: USB MSC handling
V (7143) USB_MSC: USB MSC handling
V (7143) USB_MSC: USB MSC handling
V (7143) USB_MSC: USB MSC handling
V (7153) USB_MSC: USB MSC handling
V (7153) USB_MSC: USB MSC handling
V (7153) USB_MSC: USB MSC handling
V (7163) USB_MSC: USB MSC handling
V (7163) USB_MSC: USB MSC handling
V (7173) USB_MSC: USB MSC handling
V (7173) USB_MSC: USB MSC handling
V (7173) USB_MSC: USB MSC handling
V (7183) USB_MSC: USB MSC handling
V (7183) USB_MSC: USB MSC handling
V (7183) USB_MSC: USB MSC handling
V (7193) USB_MSC: USB MSC handling
V (7193) USB_MSC: USB MSC handling
V (7193) USB_MSC: USB MSC handling
V (7203) USB_MSC: USB MSC handling
V (7203) USB_MSC: USB MSC handling
V (7203) USB_MSC: USB MSC handling
V (7213) USB_MSC: USB MSC handling
V (7213) USB_MSC: USB MSC handling
V (7213) USB_MSC: USB MSC handling
V (7223) USB_MSC: USB MSC handling
V (7223) USB_MSC: USB MSC handling
V (7223) USB_MSC: USB MSC handling
V (7233) USB_MSC: USB MSC handling
V (7233) USB_MSC: USB MSC handling
V (7233) USB_MSC: USB MSC handling
V (7243) USB_MSC: USB MSC handling
V (7243) USB_MSC: USB MSC handling
V (7253) USB_MSC: USB MSC handling
V (7253) USB_MSC: USB MSC handling
V (7263) USB_MSC: USB MSC handling
V (7263) USB_MSC: USB MSC handling
V (7263) USB_MSC: USB MSC handling
V (7273) USB_MSC: USB MSC handling
V (7273) USB_MSC: USB MSC handling
V (7273) USB_MSC: USB MSC handling
V (7283) USB_MSC: USB MSC handling
V (7283) USB_MSC: USB MSC handling
V (7283) USB_MSC: USB MSC handling
V (7293) USB_MSC: USB MSC handling
V (7293) USB_MSC: USB MSC handling
V (7293) USB_MSC: USB MSC handling
V (7303) USB_MSC: USB MSC handling
V (7303) USB_MSC: USB MSC handling
V (7303) USB_MSC: USB MSC handling
V (7313) USB_MSC: USB MSC handling
V (7313) USB_MSC: USB MSC handling
V (7313) USB_MSC: USB MSC handling
V (7323) USB_MSC: USB MSC handling
V (7323) USB_MSC: USB MSC handling
V (7323) USB_MSC: USB MSC handling
V (7333) USB_MSC: USB MSC handling
V (7333) USB_MSC: USB MSC handling
V (7333) USB_MSC: USB MSC handling
V (7343) USB_MSC: USB MSC handling
V (7343) USB_MSC: USB MSC handling
V (7343) USB_MSC: USB MSC handling
V (7353) USB_MSC: USB MSC handling
V (7353) USB_MSC: USB MSC handling
V (7353) USB_MSC: USB MSC handling
V (7363) USB_MSC: USB MSC handling
V (7363) USB_MSC: USB MSC handling
V (7363) USB_MSC: USB MSC handling
V (7373) USB_MSC: USB MSC handling
V (7373) USB_MSC: USB MSC handling
V (7373) USB_MSC: USB MSC handling
V (7383) USB_MSC: USB MSC handling
V (7383) USB_MSC: USB MSC handling
V (7383) USB_MSC: USB MSC handling
V (7393) USB_MSC: USB MSC handling
V (7393) USB_MSC: USB MSC handling
V (7393) USB_MSC: USB MSC handling
V (7403) USB_MSC: USB MSC handling
V (7403) USB_MSC: USB MSC handling
V (7403) USB_MSC: USB MSC handling
V (7413) USB_MSC: USB MSC handling
V (7413) USB_MSC: USB MSC handling
V (7423) USB_MSC: USB MSC handling
V (7423) USB_MSC: USB MSC handling
V (7423) USB_MSC: USB MSC handling
V (7433) USB_MSC: USB MSC handling
V (7433) USB_MSC: USB MSC handling
V (7433) USB_MSC: USB MSC handling
V (7443) USB_MSC: USB MSC handling
V (7443) USB_MSC: USB MSC handling
V (7443) USB_MSC: USB MSC handling
V (7453) USB_MSC: USB MSC handling
V (7453) USB_MSC: USB MSC handling
V (7453) USB_MSC: USB MSC handling
V (7463) USB_MSC: USB MSC handling
V (7463) USB_MSC: USB MSC handling
V (7463) USB_MSC: USB MSC handling
V (7473) USB_MSC: USB MSC handling
V (7473) USB_MSC: USB MSC handling
V (7473) USB_MSC: USB MSC handling
V (7483) USB_MSC: USB MSC handling
V (7483) USB_MSC: USB MSC handling
V (7483) USB_MSC: USB MSC handling
V (7493) USB_MSC: USB MSC handling
V (7493) USB_MSC: USB MSC handling
V (7503) USB_MSC: USB MSC handling
V (7503) USB_MSC: USB MSC handling
V (7513) USB_MSC: USB MSC handling
V (7513) USB_MSC: USB MSC handling
V (7513) USB_MSC: USB MSC handling
V (7523) USB_MSC: USB MSC handling
V (7523) USB_MSC: USB MSC handling
V (7523) USB_MSC: USB MSC handling
V (7533) USB_MSC: USB MSC handling
V (7533) USB_MSC: USB MSC handling
V (7533) USB_MSC: USB MSC handling
V (7543) USB_MSC: USB MSC handling
V (7543) USB_MSC: USB MSC handling
V (7543) USB_MSC: USB MSC handling
V (7553) USB_MSC: USB MSC handling
V (7553) USB_MSC: USB MSC handling
V (7553) USB_MSC: USB MSC handling
V (7563) USB_MSC: USB MSC handling
V (7563) USB_MSC: USB MSC handling
V (7563) USB_MSC: USB MSC handling
V (7573) USB_MSC: USB MSC handling
V (7573) USB_MSC: USB MSC handling
V (7573) USB_MSC: USB MSC handling
V (7583) USB_MSC: USB MSC handling
V (7583) USB_MSC: USB MSC handling
V (7583) USB_MSC: USB MSC handling
V (7593) USB_MSC: USB MSC handling
V (7593) USB_MSC: USB MSC handling
V (7593) USB_MSC: USB MSC handling
V (7603) USB_MSC: USB MSC handling
V (7603) USB_MSC: USB MSC handling
V (7603) USB_MSC: USB MSC handling
V (7613) USB_MSC: USB MSC handling
V (7613) USB_MSC: USB MSC handling
V (7613) USB_MSC: USB MSC handling
V (7623) USB_MSC: USB MSC handling
V (7623) USB_MSC: USB MSC handling
V (7623) USB_MSC: USB MSC handling
V (7633) USB_MSC: USB MSC handling
V (7633) USB_MSC: USB MSC handling
V (7633) USB_MSC: USB MSC handling
V (7643) USB_MSC: USB MSC handling
V (7643) USB_MSC: USB MSC handling
V (7643) USB_MSC: USB MSC handling
V (7653) USB_MSC: USB MSC handling
V (7653) USB_MSC: USB MSC handling
V (7653) USB_MSC: USB MSC handling
V (7663) USB_MSC: USB MSC handling
V (7663) USB_MSC: USB MSC handling
V (7673) USB_MSC: USB MSC handling
V (7673) USB_MSC: USB MSC handling
V (7673) USB_MSC: USB MSC handling
V (7683) USB_MSC: USB MSC handling
V (7683) USB_MSC: USB MSC handling
V (7683) USB_MSC: USB MSC handling
V (7693) USB_MSC: USB MSC handling
V (7693) USB_MSC: USB MSC handling
V (7693) USB_MSC: USB MSC handling
V (7703) USB_MSC: USB MSC handling
V (7703) USB_MSC: USB MSC handling
V (7703) USB_MSC: USB MSC handling
V (7713) USB_MSC: USB MSC handling
V (7713) USB_MSC: USB MSC handling
V (7713) USB_MSC: USB MSC handling
V (7723) USB_MSC: USB MSC handling
V (7723) USB_MSC: USB MSC handling
V (7723) USB_MSC: USB MSC handling
V (7733) USB_MSC: USB MSC handling
V (7733) USB_MSC: USB MSC handling
V (7733) USB_MSC: USB MSC handling
V (7743) USB_MSC: USB MSC handling
V (7743) USB_MSC: USB MSC handling
V (7753) USB_MSC: USB MSC handling
V (7753) USB_MSC: USB MSC handling
V (7763) USB_MSC: USB MSC handling
V (7763) USB_MSC: USB MSC handling
V (7763) USB_MSC: USB MSC handling
V (7773) USB_MSC: USB MSC handling
V (7773) USB_MSC: USB MSC handling
V (7773) USB_MSC: USB MSC handling
V (7783) USB_MSC: USB MSC handling
V (7783) USB_MSC: USB MSC handling
V (7783) USB_MSC: USB MSC handling
V (7793) USB_MSC: USB MSC handling
V (7793) USB_MSC: USB MSC handling
V (7793) USB_MSC: USB MSC handling
V (7803) USB_MSC: USB MSC handling
V (7803) USB_MSC: USB MSC handling
V (7803) USB_MSC: USB MSC handling
V (7813) USB_MSC: USB MSC handling
V (7813) USB_MSC: USB MSC handling
V (7813) USB_MSC: USB MSC handling
V (7823) USB_MSC: USB MSC handling
V (7823) USB_MSC: USB MSC handling
V (7823) USB_MSC: USB MSC handling
V (7833) USB_MSC: USB MSC handling
V (7833) USB_MSC: USB MSC handling
V (7833) USB_MSC: USB MSC handling
V (7843) USB_MSC: USB MSC handling
V (7843) USB_MSC: USB MSC handling
V (7843) USB_MSC: USB MSC handling
V (7853) USB_MSC: USB MSC handling
V (7853) USB_MSC: USB MSC handling
V (7853) USB_MSC: USB MSC handling
V (7863) USB_MSC: USB MSC handling
V (7863) USB_MSC: USB MSC handling
V (7863) USB_MSC: USB MSC handling
V (7873) USB_MSC: USB MSC handling
V (7873) USB_MSC: USB MSC handling
V (7873) USB_MSC: USB MSC handling
V (7883) USB_MSC: USB MSC handling
V (7883) USB_MSC: USB MSC handling
V (7883) USB_MSC: USB MSC handling
V (7893) USB_MSC: USB MSC handling
V (7893) USB_MSC: USB MSC handling
V (7893) USB_MSC: USB MSC handling
V (7903) USB_MSC: USB MSC handling
V (7903) USB_MSC: USB MSC handling
V (7903) USB_MSC: USB MSC handling
V (7913) USB_MSC: USB MSC handling
V (7913) USB_MSC: USB MSC handling
V (7923) USB_MSC: USB MSC handling
V (7923) USB_MSC: USB MSC handling
V (7923) USB_MSC: USB MSC handling
V (7933) USB_MSC: USB MSC handling
V (7933) USB_MSC: USB MSC handling
V (7933) USB_MSC: USB MSC handling
V (7943) USB_MSC: USB MSC handling
V (7943) USB_MSC: USB MSC handling
V (7943) USB_MSC: USB MSC handling
V (7953) USB_MSC: USB MSC handling
V (7953) USB_MSC: USB MSC handling
V (7953) USB_MSC: USB MSC handling
V (7963) USB_MSC: USB MSC handling
V (7963) USB_MSC: USB MSC handling
V (7963) USB_MSC: USB MSC handling
V (7973) USB_MSC: USB MSC handling
V (7973) USB_MSC: USB MSC handling
V (7973) USB_MSC: USB MSC handling
V (7983) USB_MSC: USB MSC handling
V (7983) USB_MSC: USB MSC handling
V (7983) USB_MSC: USB MSC handling
V (7993) USB_MSC: USB MSC handling
V (7993) USB_MSC: USB MSC handling
V (7993) USB_MSC: USB MSC handling
V (8003) USB_MSC: USB MSC handling
V (8013) USB_MSC: USB MSC handling
V (8013) USB_MSC: USB MSC handling
V (8013) USB_MSC: USB MSC handling
V (8023) USB_MSC: USB MSC handling
V (8023) USB_MSC: USB MSC handling
V (8023) USB_MSC: USB MSC handling
V (8033) USB_MSC: USB MSC handling
V (8033) USB_MSC: USB MSC handling
V (8033) USB_MSC: USB MSC handling
V (8043) USB_MSC: USB MSC handling
V (8043) USB_MSC: USB MSC handling
V (8043) USB_MSC: USB MSC handling
V (8053) USB_MSC: USB MSC handling
V (8053) USB_MSC: USB MSC handling
V (8053) USB_MSC: USB MSC handling
V (8063) USB_MSC: USB MSC handling
V (8063) USB_MSC: USB MSC handling
V (8063) USB_MSC: USB MSC handling
V (8073) USB_MSC: USB MSC handling
V (8073) USB_MSC: USB MSC handling
V (8073) USB_MSC: USB MSC handling
V (8083) USB_MSC: USB MSC handling
V (8083) USB_MSC: USB MSC handling
V (8083) USB_MSC: USB MSC handling
V (8093) USB_MSC: USB MSC handling
V (8093) USB_MSC: USB MSC handling
V (8093) USB_MSC: USB MSC handling
V (8103) USB_MSC: USB MSC handling
V (8103) USB_MSC: USB MSC handling
V (8103) USB_MSC: USB MSC handling
V (8113) USB_MSC: USB MSC handling
V (8113) USB_MSC: USB MSC handling
V (8113) USB_MSC: USB MSC handling
V (8123) USB_MSC: USB MSC handling
V (8123) USB_MSC: USB MSC handling
V (8123) USB_MSC: USB MSC handling
V (8133) USB_MSC: USB MSC handling
V (8133) USB_MSC: USB MSC handling
V (8133) USB_MSC: USB MSC handling
V (8143) USB_MSC: USB MSC handling
V (8143) USB_MSC: USB MSC handling
V (8143) USB_MSC: USB MSC handling
V (8153) USB_MSC: USB MSC handling
V (8153) USB_MSC: USB MSC handling
V (8153) USB_MSC: USB MSC handling
V (8163) USB_MSC: USB MSC handling
V (8163) USB_MSC: USB MSC handling
V (8173) USB_MSC: USB MSC handling
V (8173) USB_MSC: USB MSC handling
V (8173) USB_MSC: USB MSC handling
V (8183) USB_MSC: USB MSC handling
V (8183) USB_MSC: USB MSC handling
V (8183) USB_MSC: USB MSC handling
V (8193) USB_MSC: USB MSC handling
V (8193) USB_MSC: USB MSC handling
V (8193) USB_MSC: USB MSC handling
V (8203) USB_MSC: USB MSC handling
V (8203) USB_MSC: USB MSC handling
V (8203) USB_MSC: USB MSC handling
V (8213) USB_MSC: USB MSC handling
V (8213) USB_MSC: USB MSC handling
V (8213) USB_MSC: USB MSC handling
V (8223) USB_MSC: USB MSC handling
V (8223) USB_MSC: USB MSC handling
V (8223) USB_MSC: USB MSC handling
V (8233) USB_MSC: USB MSC handling
V (8233) USB_MSC: USB MSC handling
V (8233) USB_MSC: USB MSC handling
V (8243) USB_MSC: USB MSC handling
V (8243) USB_MSC: USB MSC handling
V (8243) USB_MSC: USB MSC handling
V (8253) USB_MSC: USB MSC handling
V (8263) USB_MSC: USB MSC handling
V (8263) USB_MSC: USB MSC handling
V (8263) USB_MSC: USB MSC handling
V (8273) USB_MSC: USB MSC handling
V (8273) USB_MSC: USB MSC handling
V (8273) USB_MSC: USB MSC handling
V (8283) USB_MSC: USB MSC handling
V (8283) USB_MSC: USB MSC handling
V (8283) USB_MSC: USB MSC handling
V (8293) USB_MSC: USB MSC handling
V (8293) USB_MSC: USB MSC handling
V (8293) USB_MSC: USB MSC handling
V (8303) USB_MSC: USB MSC handling
V (8303) USB_MSC: USB MSC handling
V (8303) USB_MSC: USB MSC handling
V (8313) USB_MSC: USB MSC handling
V (8313) USB_MSC: USB MSC handling
V (8313) USB_MSC: USB MSC handling
V (8323) USB_MSC: USB MSC handling
V (8323) USB_MSC: USB MSC handling
V (8323) USB_MSC: USB MSC handling
V (8333) USB_MSC: USB MSC handling
V (8333) USB_MSC: USB MSC handling
V (8333) USB_MSC: USB MSC handling
V (8343) USB_MSC: USB MSC handling
V (8343) USB_MSC: USB MSC handling
V (8343) USB_MSC: USB MSC handling
V (8353) USB_MSC: USB MSC handling
V (8353) USB_MSC: USB MSC handling
V (8353) USB_MSC: USB MSC handling
V (8363) USB_MSC: USB MSC handling
V (8363) USB_MSC: USB MSC handling
V (8363) USB_MSC: USB MSC handling
V (8373) USB_MSC: USB MSC handling
V (8373) USB_MSC: USB MSC handling
V (8373) USB_MSC: USB MSC handling
V (8383) USB_MSC: USB MSC handling
V (8383) USB_MSC: USB MSC handling
I (8383) example: Read speed 0.39 MiB/s
V (8393) USB_MSC: USB MSC handling
V (8393) USB_MSC: USB MSC handling
V (8403) USB_MSC: USB MSC handling
V (8403) USB_MSC: USB MSC handling
V (8403) USB_MSC: USB MSC handling
V (8413) USB_MSC: USB MSC handling
V (8413) USB_MSC: USB MSC handling
V (8423) USB_MSC: USB MSC handling
V (8423) USB_MSC: USB MSC handling
I (8423) example: Example finished, you can disconnect the USB flash drive
roma-jam commented 3 months ago

@rikaiot Thanks for the additional log. The one different thing with these two cases is the timing. When device is attached to the port it has the power for a longer period of time than during the device connection.

Let's try to increase the Reset recovery delay value to 500 ms in USB-OTG configuration (for detailed inf, refer to section enumeration-configuration) just to give the USB drive some time to enable flash properly. This is a delay may be found in idf.py menuconfig: image

Please, let me know about the result. Thanks

rikaiot commented 3 months ago

@roma-jam thanks for the suggestion, we have tried increasing the Reset recovery delay to 500ms and also to 5000ms but we could not see any change in the behavior. It still works when the stick is connected and the dev kit is resetted or rebooted but not when hot-plugging the thumb drive.

roma-jam commented 3 months ago

Hi @rikaiot,

Based on the logs you provided, the USB Host lib part itself enumerated the device and pass it to the MSC Host class driver without any issues. Then, when the class driver tries to get the unit ready state (via test_unit_ready command), the USB thumb driver responded with the sense_key: 0x06, code: 0x28, qualifier: 0x00 which means that NOT READY TO READY TRANSITION - MEDIA CHANGED

Currently, the MSC Class driver doesn't request the sense status every time after something went wrong (meanwhile, we added that: https://github.com/espressif/esp-usb/pull/34, but without a release yet), so maybe some additional logic is required while the device is hot-plugged.

To understand the reason, it is necessary to have the log. So, if that is possible to capture the log of PC host class driver communication with the USB thumb drive, that would be very helpful. It could be done with several software (for example, Wireshark).

Thanks.

tore-espressif commented 3 months ago

Hello @rikaiot , thanks for the useful logs. Inside the MSC driver there is another timeout that might influence your usecase. https://github.com/espressif/esp-usb/blob/master/host/class/msc/usb_host_msc/src/msc_host.c#L83

Could you try increasing this to 5000 or even 10000 ms?

(You will have to move the code from managed_components/espressifusb_host_msc to components/espressifusb_host_msc , as our build system does not allow modifying files in managed_components folder... :/ )

cc @leeebo I think you encountered similar problem in the past...

leeebo commented 3 months ago

@tore-espressif We had issues with some specified USB disks, which were fixed by increasing the RESET_RECOVERY_MS from 20 to 500ms.

@rikaiot Which version of usb_host_msc component you using? Does the USB Disk you using work as normal on PC ?

rikaiot commented 3 months ago

Thank you @tore-espressif but increasing WAIT_FOR_READY_TIMEOUT_MS to 5000 or 10000 did not solve the problem. Thank you @leeebo but increasing RESET_RECOVERY_MS from 20 to 500 did not solve the problem.

Thank you @roma-jam is there a way to send you some of our thumb drives so you are able to reproduce the issue directly? it might be good to have some test devices for testing future releases anyway.

createskyblue commented 3 months ago

I tried two USB drives I had on hand, one being an SD card reader and the other a regular USB drive. The card reader USB encounters the issues mentioned above when used with ESP32- IDF versions 5.3, 5.2, and 4.4, whereas the regular USB drive works fine.

When I attempted to use STM32CubeMX to generate an MSC project for the STM32F105RCT6, both the card reader USB and the regular USB drive worked without any problems.

It seems that the MSC compatibility in ESP-IDF might not be very good.

Increasing the delay with the RESET_RECOVERY_MS and WAIT_FOR_READY_TIMEOUT_MS setting did not work for me.

image

tore-espressif commented 3 months ago

@createskyblue Thanks for the test! We never claimed compatibility with SD card readers, but this is surely a feature we will add

rikaiot commented 3 months ago

@tore-espressif the initial issue happens with regular USB thumb drives. Is there a way we could send you some test devices to elaborate the issue?

tore-espressif commented 3 months ago

@tore-espressif the initial issue happens with regular USB thumb drives. Is there a way we could send you some test devices to elaborate the issue?

Hello @rikaiot please contact me at tomas.rezucha@espressif.com and we can handle the rest via email.

ColmanLai commented 3 months ago

I have the same problem. My device is not a SD card reader, it is an USB thumb drive. As long as I know, some USB thumb drive actually is a SD card reader with a permanent SD card inside. Please acknowledge me for any progress. Thank you.

fozzzgate commented 1 month ago

@tore-espressif @roma-jam We are also having the exact same issue with a 16GB Lexar flash drive and do not want to ship until this is resolved. Since this doesn't look like it is going to be fixed anytime soon, can you give us a hint about what function(s) need to be modified in what file(s)? Changing the timeouts has no effect on the problem. Pulling the current master branch (1.1.3) doesn't fix the problem either.

Here is the USB flash drive that doesn't work

*** Device descriptor ***
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0x0
bDeviceSubClass 0x0
bDeviceProtocol 0x0
bMaxPacketSize0 64
idVendor 0x5dc
idProduct 0xc75d
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerialNumber 3
bNumConfigurations 1
*** Configuration descriptor ***
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
bMaxPower 100mA
        *** Interface descriptor ***
        bLength 9
        bDescriptorType 4
        bInterfaceNumber 0
        bAlternateSetting 0
        bNumEndpoints 2
        bInterfaceClass 0x8
        bInterfaceSubClass 0x6
        bInterfaceProtocol 0x50
        iInterface 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x81   EP 1 IN
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
                *** Endpoint descriptor ***
                bLength 7
                bDescriptorType 5
                bEndpointAddress 0x2    EP 2 OUT
                bmAttributes 0x2        BULK
                wMaxPacketSize 64
                bInterval 0
Device info:
         Capacity: 15270 MB
         Sector size: 512
         Sector count: 31273727
         PID: 0xC75D
         VID: 0x 5DC
         iProduct: USB Flash Drive
         iManufacturer: Lexar
roma-jam commented 1 month ago

Hi @fozzzgate,

thanks for reporting. The problem you have also has the NOT READY TO READY TRANSITION - MEDIA CHANGED as the reply on test unit ready request?

Do you have an option to get the wireshark log of attaching such device to a PC?

fozzzgate commented 1 month ago

@roma-jam Yes, I also have the NOT READY TO READY TRANSITION - MEDIA CHANGED problem with a certain USB drive.

Attached are Wireshark captures of a good SanDisk Cruzer U 16GB USB drive insertion and a bad Lexar JumpDrive 16GB USB drive insertion.

Wireshark Insertion Captures.zip

The first difference is Frame 45:

Good: Transfer length = 8, CDB (12 bytes): a20000000000000000080000 Bad: Transfer length = 252, CDB (10 bytes): 2300000000000000fc00

The NOT READY TO READY TRANSITION - MEDIA CHANGED is Frame 56:

Despite it saying Current Error (0x70) below, it mounts just fine under Windows and under ESP32-S3 if inserted before boot.

Frame 56: 45 bytes on wire (360 bits), 45 bytes captured (360 bits) on interface \\.\USBPcap1, id 0
USB URB
    [Source: 1.5.1]
    [Destination: host]
    USBPcap pseudoheader length: 27
    IRP ID: 0xffffb98a2bbd7aa0
    IRP USBD_STATUS: USBD_STATUS_SUCCESS (0x00000000)
    URB Function: URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER (0x0009)
    IRP information: 0x01, Direction: PDO -> FDO
    URB bus id: 1
    Device address: 5
    Endpoint: 0x81, Direction: IN
    URB transfer type: URB_BULK (0x03)
    Packet Data Length: 18
    [Request in: 55]
    [Time from request: 1.726817000 seconds]
    [bInterfaceClass: Mass Storage (0x08)]
USB Mass Storage
SCSI Payload (Request Sense Response Data)
    [LUN: 0x0000]
    [Command Set:Direct Access Device (0x00) ]
    [SBC Opcode: Request Sense (0x03)]
    [Request in: 53]
    [Response in: 58]
    .111 0000 = SNS Error Type: Current Error (0x70)
    Valid: 112
    0... .... = Filemark: False
    .0.. .... = EOM: False
    ..0. .... = ILI: False
    .... 0110 = Sense Key: Unit Attention (0x6)
    Sense Info: 0x00000000
    Additional Sense Length: 10
    Command-Specific Information: 00000000
    Additional Sense Code+Qualifier: Not Ready To Ready Change, Medium May Have Changed (0x2800)
    Field Replaceable Unit Code: 0x00
    0... .... = SKSV: False
    .000 0000 0000 0000 0000 0000 = Sense Key Specific: 0x000000
fozzzgate commented 1 month ago

@roma-jam @tore-espressif Attached are Wireshark JSON packet dumps of the bad (Lexar) and good (Sandisk Cruzer U) insertions. I have removed the "noise" between the two captures (i.e. timestamps, GUIDs) to make diffs easier.

USB Wireshark & JSON.zip

The dumps are virtually identical up to Frame 56, where the 'bad' Lexar drive returns Not Ready To Ready Change. However, whatever Windows did to 'fix' the problem seems to have been completed by Frame 65, when Windows successfully requests the Serial Number, which is returned in Frame 68. Or maybe requesting the Serial Number doesn't care about the Ready status - Only sector reads do.

For the 'good' Cruzer drive, Frame 56 returns Invalid Command Operation Code (0x2000) (vs. the Lexar Not Ready To Ready Change) and the Serial Number isn't requested until Frame 135 (and returned in Frame 138).

fozzzgate commented 1 month ago

This Stack Overflow answer seems to hint at a solution: Android SCSI USB communication issues

fozzzgate commented 1 month ago

Created pull request that fixes the issue: https://github.com/espressif/esp-usb/pull/81