Some microcontrollers, for example the common STM32 line, claim USB capabilities along these lines:

USB 2.0 OTG HS, that is, USB 2.0 FS/HS device/host/OTG controller, integrating the transceivers for full-speed operation, and featuring an ULPI for high-speed operation: an external PHY device connected to the device is required.

From: Part 2, https://www.st.com/resource/en/application_note/dm00296349-usb-hardware-and-pcb-guidelines-using-stm32-mcus-stmicroelectronics.pdf

Does that mean there is one USB controller, connected to a FS PHY and with the capabilities(/pins, ULPI) to connect to a HS PHY (one or the other), or does that mean there's one standalone controller+PHY couple capped at full speed and something else entirely that would manage an external PHY, which would mean double USB capabilities when using an external PHY ?

The wording of that resource makes me believe the former, but datasheet feature summaries have me believe the latter:

Advanced connectivity

  • USB 2.0 full-speed device/host/OTG controller with on-chip PHY
  • USB 2.0 high-speed/full-speed device/host/OTG controller with dedicated DMA, on-chip full-speed PHY and on-chip Hi-speed PHY or ULPI depending on the part number

This question Connecting two USB DP/DM also leaves me unsure: "The only time the FS port will be used is during dfu where the ulpi won't be working." ?

I'd love a clarification. Hopefully the underlying concepts aren't STM32 specific.

  • \$\begingroup\$ I'm not sure that I would assume anything by implication. For the specific model MCU that you are considering, you will need to read the datasheet and determine what is and what is NOT included in its functionality. There is no general-purpose answers that apply across all possible parts that contain USB hardware. \$\endgroup\$
    – jwh20
    Commented Feb 12, 2021 at 15:58

3 Answers 3


In on some of their EVAL boards they put a PHY and an OTG, I am 99% sure that you can run both at the same time.

I interpret this statement (From the stm32f750v8 datasheet) to mean that you can have two USB connections at the same time, but the second one requires a phy.

An USB OTG full-speed and a USB OTG high-speed with full-speed capability (with the ULPI)

I have seen STM32H7's or F7's with two D+ D- pairs on them (can't remember where), so I assume they have two usb phys built in.

If it says (with the ULPI) then you'll need a PHY for two USB's

Also if you want the full 480Mbits, you'll need a PHY.


If the OTG_HS hardware doesn't have an integrated HS PHY, then it can either use the internal FS PHY or use an external HS PHY using ULPI. A single OTG_HS hardware can't operate in both modes simultaneously.

Some STM32 devices have a OTG_HS hardware with integrated HS PHY.

Some devices may have both OTG_FS and OTG_HS hardware at the same time. STM32F407 is an example. These devices can activate both USB peripherals at the same time, completely independent of each other.

Even when operating in full speed mode with internal FS PHY, OTG_HS hardware still have some advantages over the OTG_FS hardware. It has dedicated DMA and higher amounts of dedicated buffer memory compared to OTG_FS.


Usually they make two 'feature lines' since the host part and the device part of the USB system are completely different and mutally exclusive. Usually however they only provide just one single OTG port (which is dual roled), so when you use it as a master you can't be a device.

The last word is in the datasheet but if you only have one DP/DM pair usually that's what they mean.

In newer NXP parts, for example, I've seen a dual mode OTG port and, additionaly, a device-only USB2 port. It all depends on the MCU feature set.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.