Zephyr on STM32H743

We’ve been using Zephyr on a custom STM32H743 board with fairly good results. We continue to have USB high-speed problems so I wanted to compare the operation to a STM32H743 board running full-speed USB. The Nucleo board is supported in Zephyr and the CDC-ACM sample compiled and ran perfectly with the following build commands:

west build -b nucleo_h743zi samples/subsys/usb/cdc_acm -p && west flash

So back to debugging high-speed USB …

1 Like

Am I correct in thinking that the STM32H7 chips do not have a USB high-speed PHY, and therefore you have to use an external phy?

I have also been considering USB on ZephyrRTOS, but am not sure about the quality of the stack, have you faced any issues, or have any concerns?

Hi @nicstarke – welcome to the TMPDIR community!

Correct, the STM32H7 requires an external phy for HS USB.

Yes, we are working through some issues, but I think some of them are hardware-related. You can follow the progress here:

I plan to write a bandwidth test app once I have the STM32H747I-DISCO dev board up.

STM32H747I-DISCO development board arrived with HS USB:

I’m always amazed at how quick and easy it is to build and program Zephyr on these things:

west build -b stm32h747i_disco_m7 samples/subsys/usb/cdc_acm && west flash

With the cdc_acm sample, HS USB is behaving well.

1 Like

Discovered the power to the USB Phy IO power was floating, so after we fixed that, the USB on our custom STM32H7 board is now reliable and matches dev boards. The odd thing is that it worked fine on some boards, so enough power must have been leaking from other paths to be marginal.

wow ! these are hard issues to nail down.