2022-03-21 06:08 PM
I am working on a USB device based on a STM32H743 MCU, using ThreadX/AZURE and USBX.
According to RM0433 (the reference manual for STM32H742, STM32H743/753 and STM32H750), the USB peripheral supports:
- bidirectional endpoint 0
- 8 IN endpoints
- 8 OUT endpoints
However, _ux_dcd_stm32_endpoint_create() reports a UX_NO_ED_AVAILABLE failure whenever I try to use any matching IN and OUT endpoint, for example IN8 and OUT8.
Am I missing anything? Is it a bug? Is there a workaround?
Thanks!
Bart
Solved! Go to Solution.
2022-05-21 06:17 AM
Hi @BKlus.1 ,
If you want to use a bidirectional endpoint, you should define UX_DEVICE_BIDIRECTIONAL_ENDPOINT_SUPPORT flag in ux_user.h
/* Defined, this macro enables device bi-directional-endpoint support. */
/* #define UX_DEVICE_BIDIRECTIONAL_ENDPOINT_SUPPORT */
Note : this flag are added in AzureRTOS USBX middleware 6.1.6 release.
Regards.
2022-03-22 02:59 AM
Hello @BKlus.1 ,
This issue has been reported internally.
I will keep you posted.
BeST Regards,
Walid
2022-03-22 05:33 PM
Thank you!
2022-05-21 06:17 AM
Hi @BKlus.1 ,
If you want to use a bidirectional endpoint, you should define UX_DEVICE_BIDIRECTIONAL_ENDPOINT_SUPPORT flag in ux_user.h
/* Defined, this macro enables device bi-directional-endpoint support. */
/* #define UX_DEVICE_BIDIRECTIONAL_ENDPOINT_SUPPORT */
Note : this flag are added in AzureRTOS USBX middleware 6.1.6 release.
Regards.