Skip to main content
Associate II
July 29, 2026
Solved

USB CDC Device Not Recognized on STM32F466 — Internal PHY Configuration Question

  • July 29, 2026
  • 1 reply
  • 57 views

Hi,

I'm currently encountering an issue with USB CDC on the STM32F466: the device is not being recognized as a USB CDC device.

I'm using the USB_OTG_FS peripheral, with the USB_DEVICE middleware configured as CDC. However, in the Parameter Settings for USB_OTG_FS, I don't see an option for Internal PHY.

I then tried using USB_OTG_HS with Internal FS PHY instead, and in that configuration, the Internal PHY option is available in the parameter settings.

So I'd like to confirm the following:

Is the Internal PHY option only available when using Internal FS PHY (i.e., only through USB_OTG_HS configured for FS mode), and not available for USB_OTG_FS directly?
If I need to use CDC with USB_OTG_FS, do I need to add external pull-up resistors (since there's no internal PHY option to handle this automatically)?

Thanks in advance for your help.

Best answer by Gyessine

hello ​@Jerrylin00 

For the STM32F446, which is most likely the product under discussion, there is no STM32F466. The STM32F466 reference appears to be a typographical error.

For USB_OTG_FS, the device automatically uses the internal full-speed (FS) PHY.

For USB_OTG_HS, the device can use the internal USB_FS_PHY to enable the USB_OTG_HS instance in full-speed mode, or it can use an external PHY for high-speed mode.

As far as current knowledge indicates, the STM32F4 family does not require external pull-up resistors. Only the STM32F1 and STM32F3 families require an external pull-up resistor.
BR
Gyessine

1 reply

GyessineBest answer
ST Technical Moderator
July 29, 2026

hello ​@Jerrylin00 

For the STM32F446, which is most likely the product under discussion, there is no STM32F466. The STM32F466 reference appears to be a typographical error.

For USB_OTG_FS, the device automatically uses the internal full-speed (FS) PHY.

For USB_OTG_HS, the device can use the internal USB_FS_PHY to enable the USB_OTG_HS instance in full-speed mode, or it can use an external PHY for high-speed mode.

As far as current knowledge indicates, the STM32F4 family does not require external pull-up resistors. Only the STM32F1 and STM32F3 families require an external pull-up resistor.
BR
Gyessine

In order to give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question.