AN4879 · Application noteIntroduction to USB hardware and PCB guidelines using STM32 MCUs
Download .pdfOpen in the full document

USB on STM32 products

USB implementation on STM32 products

Table 3. USB implementation on STM32 mainstream products
Feature1STM32F070x6/BSTM32F072

STM32F078

STM32F04x

STM32F102

STM32F103

STM32F105/107 STM32F302xB/C

STM32F303xB/C

STM32F373

STM32F302x6/8

STM32F302xD/E

STM32F303xD/E

STM32C071

STM32G0B0xx

STM32G0C1xx

STM32G4
USB 2.0 FS device interfaceUSB OTG_FSUSB 2.0 FS device interfaceUSB 2.0 FS host/device interfaceUSB 2.0 FS device interface
Crystal-less USB-X---Supported in device mode-X
Bidirectional endpoints (including EP0)848888
Host mode channels-8-88-
Size of dedicated packet buffer SRAM1 Kbyte2512 bytes31.25 Kbytes4512 bytes41 Kbyte22 Kbytes2 Kbytes1 Kbyte
Integrated PHYFS5FS5FS5FS5FS5FS5FS5
Pull-up resistor on USB_DP lineEmbedded1.5 kΩ resistor must be addedEmbedded1.5 kΩ resistor must be addedEmbeddedEmbeddedEmbedded
LPMX-XSupported in device modeSupported in device modeX
BCDX-Supported in device modeSupported in device modeX
ADP---X
Table 4. USB implementation on STM32 high-performance products
Feature6STM32F401

STM32F411

STM32F2x5

STM32F2x7

STM32F405

STM32F415

STM32F407

STM32F417

STM32F427

STM32F437

STM32F429

STM32F439

STM32F412

STM32F413

STM32F423

STM32F446

STM32F469

STM32F479

STM32F74x

STM32F756

STM32F76x

STM32F77x

STM32F7x2

STM32F730R/V

STM32F750

STM32F7x3

STM32F730Z/I

STM32H742

STM32H743

STM32H753

STM32H750

STM32H745

STM32H755

STM32H747

STM32H757

STM32H7A3
STM32H7B3 STM32H7B0
STM32H723
STM32H733
STM32H735
STM32H730

STM32H5F/E

STM32H7R3x8/R7x8

STM32H7S3x8/S7x8

STM32H7S3x8/S7x8

STM32H7R3x8/R7x8

STM32C562
STM32H503
STM32H543/553
STM32H563
STM32H573
STM32H562

STM32N6
OTG_FSOTG_HSOTG_FSOTG_HSOTG_FSOTG_HSOTG_FSOTG_HSOTG_FSOTG_HSOTG_HS1OTG_HS2OTG_HSOTG_FSOTG_HSUSB 2.0 FS host/device interfaceOTG_HS
Crystal-less USB----------XXXXX--
Bidirectional endpoints (including EP0)46466969699996989
Host mode channels81281212161216121616161612168716
Size of dedicated packet buffer SRAM (Kbytes)81.25-1.2541.25-1.2541.2544441.25424
Integrated PHYFS9FS9FS9FS9FS9FS9FS9FS9FS9HS10FS9FS9FS9FS9HS10FS9HS10
ULPI available to primary I/Os via multiplexing--X--X--X----
Dedicated VDDUSBNOYESYESYESYESYESYESYESYESYES
LPM----X-XXXXXXXXXXX
BCD----X---X-XXXXXXX
ADP-----------------
Table 5. USB implementation on STM32 ultra-low-power products
Feature11STM32L0x2

STM32L0x3

STM32L1xxSTM32L4x2

STM32L4x3

STM32L4x5

STM32L4x6

STM32L4Rx

STM32L4Sx

STM32L5

STM32U3

STM32U575

STM32U585

STM32U535

STM32U545

STM32U59x

STM32U5Ax

STM32U5Gx

STM32U5Fx

STM32U073x8/B/C

STM32U083xC

USB 2.0 FS device interfaceUSB OTG_FSUSB 2.0 FS device interfaceUSB 2.0 FS host/device interfaceUSB OTG_FSUSB 2.0 FS host/device interfaceUSB 2.0 OTG_HSUSB 2.0 FS device interface
Crystal-less USBX-XX12XXXXXX
Bidirectional endpoints (including EP0)86886898
Host mode channels-12-8131281316-
Size of dedicated packet buffer SRAM141 Kbyte1.25 Kbytes (with advanced FIFO control)1 Kbyte2 Kbytes1.25 Kbytes2 Kbytes4 Kbytes1 Kbyte
Integrated PHYFS15FS15FSFSFS15FS15HS15FS15
Pull up resistor on USB_DP lineXXXXXXXX
Dedicated VDDUSBYESNOYESYESYESYESYESYESYESYES
LPMXXXXXXXX
BCDXXXXXXXX
ADP-X------

  

  

  

  

  

Table 6. USB implementation on STM32 wireless products
Feature

STM32WB35xx/

STM32WB55xx

STM32WBA2xSTM32WBA6x
USB 2.0 FS device interfaceUSB 2.0 FS host/device interfaceUSB 2.0 HS host/device interface
Crystal-less USBX--
Number of endpoints889
Host mode channels121616
Size of dedicated packet buffer SRAM1.25 Kbytes2 Kbytes4 Kbytes
Integrated PHYFSFSHS
Pull up resistor on USB_DP lineXXX
LPMXXX
BCDXXX
ADP---
1 X: supported.
2 When the CAN peripheral is used, only the first 768 bytes are available to the USB. The last 256 bytes are used by the CAN.
3 The USB and CAN share a dedicated 512 bytes SRAM. They can then be used in the same application but not at the same time.
4 The dedicated SRAM is used exclusively by the USB endpoints (not shared with any other peripheral).
5 Internal FS OTG PHY support.
6 X: supported.
7 Bi-directional (including EP0)
8 The dedicated SRAM is used exclusively by the USB endpoints (not shared with any other peripheral).
9 Internal FS OTG PHY support.
10 Internal HS OTG PHY support.
11 X: supported.
12 Except for STM32L47x/L48x devices.
13 Bi-directional (including EP0)
14 The dedicated SRAM is used exclusively by the USB endpoints (not shared with any other peripheral).
15 Internal FS OTG PHY support.