Skip to content

M5Tab5 USB Host: Full-Speed device enumeration fails with "Root port reset failed" #344

@duckmanek

Description

@duckmanek

Describe the bug

USB Host on M5Tab5 (ESP32-P4) fails to enumerate Full-Speed USB devices (e.g. Garmin GPSMAP 66s in CDC/Spanner mode). The device is detected (VBUS present, device powered) but enumeration fails with repeated E HUB: Root port reset failed errors every ~2.3 seconds.

To reproduce

  1. Set M5Tab5 input source to USB Host mode
  2. Connect any Full-Speed USB CDC device (tested: Garmin GPSMAP 66s in Spanner/Serial mode)
  3. Power on — device receives VBUS (5V) but enumeration never completes
  4. Serial monitor shows: E (XXXXX) HUB: Root port reset failed repeated every ~2.3 seconds

Expected behavior

USB Full-Speed CDC device enumerates successfully and data transfer works.

Screenshots

No response

Environment

Board: M5Stack Tab5 (ESP32-P4)
arduino-esp32 (m5stack fork): 3.2.5
IDF version: 5.3.x

Additional context

This is a known ESP-IDF bug fixed in IDF 5.4.2. The espressif arduino-esp32 3.3.8 (IDF 5.5.4) does not fix this for Tab5 either due to missing board variant definitions. High-Speed devices work correctly. Please update the M5Stack arduino-esp32 fork to IDF 5.4+.

Issue checklist

  • I searched for previous reports in the issue tracker
  • My report contains all necessary details

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions