Skip to main content
Scribe
Associate II
June 17, 2023
Question

CMSIS drives for STM32H5

Hello,

For the STM32U5 there is a full collection of CMSIS compliant drivers. Will such drivers be provided for the H5 (in particular USB and Ethernet) and if so, does ST have an estimate of in what time frame?

I'm trying to determine if I will need to write my own wrappers or not.

Many thanks

This topic has been closed for replies.

6 replies

waclawek.jan
Super User
June 17, 2023

> For the STM32U5 there is a full collection of CMSIS compliant drivers

Where?

What do you mean by "CMSIS compliant drivers"?

JW

Scribe
ScribeAuthor
Associate II
June 21, 2023

I refer to the CMSIS-Driver Specification: https://www.keil.com/pack/doc/CMSIS/Driver/html/index.html

This is a collection of APIs that allow components to be interfaced with Keil MDK Middleware or any other CMSIS-Driver compliant middleware, such as the USB and Network stacks.

The U5 features a CMSIS-Driver compliant USB implementation, amongst other things.

STOne-32
ST Technical Moderator
June 17, 2023

Hi @Scribe 

You can check out our GitHub here 

https://htmlpreview.github.io/?https://github.com/STMicroelectronics/STM32CubeH5/blob/main/Release_Notes.html

Hope it helps you , Ciao 

Scribe
ScribeAuthor
Associate II
June 21, 2023

Thank you for your response, I can see that right now from those release notes there's no support for CMSIS-Driver compliant drivers (https://www.keil.com/pack/doc/CMSIS/Driver/html/index.html), questions:

  1. Are the Ethernet and USB components on the H5 similar/identical to those on the H7 or U5 so that I can lift and adopt an existing CMSIS implementation?
  2. Do you know if/when support will be added? (specifically for USB and Ethernet).

Many thanks

Pavel A.
June 21, 2023

> so that I can lift and adopt an existing CMSIS implementation?

You mean of course, existing implementations from ST "Cube firmware" packages for STM32H7 (ETH) and ST USB H/D libraries on github ?

ST Employee
July 14, 2023

I'm not sure I fully understand your question but let me try:

  • First, STM32U5 doesn't have ETH IP, so you can take it out of the equation for this part.
  • If you mean the HAL drivers: USB & ETH HAL are not identical of course between STM32H7 and STM32H5 but are compatible at API level, so can be used seamlessly.
  • If you mean the registers description: USB & ETH registers are not identical between STM32H7 and STM32H5. But since the IP differences are slight, the registers description can also be used almost seamlessly.  
  • If you mean Middleware layer: STM32H7 and STM32H5 have same Middleware layer if you use Classic CoreMW (ST USB Device/Host, LwIP), [STM32H7 here, STM32H5 here] and same also if you use Azure RTOS (USBX & NetXDuo) [STM32H7 here, STM32H5 here]

If you mean something else, then sorry for the misunderstanding and thanks in advance for clarifying.