mirror of
https://github.com/espressif/esp-idf.git
synced 2026-05-28 16:46:31 +03:00
Enable ESP32-S31 in the USB device example build rules, supported target tables, USB PHY pin mapping, and pytest target parametrization. The target supports USB-OTG through its USB 2.0 PHY. Keep ESP32-S31 USB device tests marked as temporary CI skips until runners with the usb_device tag are available.
USB-OTG Examples
See the README.md file in the upper level examples directory for more information about examples.
Common Pin Assignments
Pin assignment is only needed for ESP chips that have a USB-OTG peripheral. If your board doesn't have a USB connector connected to the USB-OTG dedicated GPIOs, you may have to DIY a cable and connect D+ and D- to the pins listed below.
ESP BOARD USB CONNECTOR (type A)
--
| || VBUS (5V)
[USB_DM] ------> | || D-
[USB_DP] ------> | || D+
| || GND
--
USB PHY pin mapping
| USB_DP | USB_DM | |
|---|---|---|
| ESP32-S2/S3 | GPIO20 | GPIO19 |
| ESP32-P4 2.0 | pin 50 | pin 49 |
| ESP32-P4 1.1 | GPIO27 | GPIO26 |
| ESP32-H4 | GPIO22 | GPIO21 |
| ESP32-S31 | pin 44 | pin 45 |
Note: On the ESP32-P4 and ESP32-S31, the USB 2.0 PHY pins are dedicated to USB-OTG functionality and cannot be used as general-purpose GPIOs. ESP32-S31 only supports the USB 2.0 PHY.