2025-08-06 5:42 AM
Hi all,
I’m working on enabling USB High‑Speed (HS) communication on an STM32F446RE using an external USB3300 ULPI PHY, but I’m running into several issues and can’t get ULPI communication working.
Current Issues:
DIR pin stays high – it appears the STM32 never gains control of the bus.
The ULPI clock runs at 60 MHz (derived from the USB3300’s 24 MHz oscillator), and while enumeration occurs, the USB middleware fails to initialize correctly, resulting in the device being detected as an “Unknown Device.”
To enable PLLQ, I tried enabling the USB FS peripheral and then disabling it to avoid pin conflicts with the HS lines, but it didn’t help.
Toggling the USB3300 reset pin had no effect.
Configuration Details:
Initial setup done via CubeMX.
USB_OTG_HS configured for ULPI interface.
RCC and PLL settings look correct, but PLLQ doesn’t remain enabled.
Tried USB Device middleware with CDC class, but initialization fails.
Request for Help:
Does a constantly high DIR pin mean the PHY is stuck or incorrectly configured?
Any guidance, reference projects, or checklists to debug this setup would be greatly appreciated.
Thanks in advance!