Skip to main content
Dat Tran
Senior II
September 13, 2022
Solved

Does STM32H7 (STM32H743) support usb gadget ethernet?

  • September 13, 2022
  • 3 replies
  • 1301 views

Anyone know  STM32H7 (STM32H743) support usb gadget ethernet?

I read somewhere STM32F7 does, but not sure about STM32H7

Many thanks.

This topic has been closed for replies.
Best answer by FBL

Hello @Community member​ 

In ux_host_class_cdc_ecm.h file under

STM32Cube\Repository\Packs\STMicroelectronics\X-CUBE-AZRTOS H7\2.1.0\Middlewares\ST\usbx\common\usbx_host_classes\inc

we can find ethernet is supported as an USB host

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_IP           0x0800

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_ARP           0x0806

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_RARP          0x8035

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_PACKET_SIZE       1536 

Also, in STM32Cube\Repository\STM32Cube_FW_H7_V1.10.0\Middlewares\ST\STM32_USB_Host_Library\Class\CDC\Inc Ethernet is among supported classes

3 replies

FBLBest answer
ST Technical Moderator
September 14, 2022

Hello @Community member​ 

In ux_host_class_cdc_ecm.h file under

STM32Cube\Repository\Packs\STMicroelectronics\X-CUBE-AZRTOS H7\2.1.0\Middlewares\ST\usbx\common\usbx_host_classes\inc

we can find ethernet is supported as an USB host

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_IP           0x0800

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_ARP           0x0806

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_RARP          0x8035

#define UX_HOST_CLASS_CDC_ECM_ETHERNET_PACKET_SIZE       1536 

Also, in STM32Cube\Repository\STM32Cube_FW_H7_V1.10.0\Middlewares\ST\STM32_USB_Host_Library\Class\CDC\Inc Ethernet is among supported classes

To give better visibility on the answered topics, please click on "Best answer" on the reply which solved your issue or answered your question.Best regards,FBL
Dat Tran
Dat TranAuthor
Senior II
September 19, 2022

very nice, thank you so much.

mohamed.ayed
ST Employee
October 15, 2022

Hi Dat Tran,

ST USB Host lib does not support CDC-ECM / RNDIS Class so as mentioned by @F.Belaid​  you can use USBX (Azure RTOS Middleware) it support CDC-ECM Host Class.

https://learn.microsoft.com/en-us/azure/rtos/usbx/usbx-host-stack-6

Note actually we don't have a Host CDC ECM sample application.