TouchGFX uses ST Cube drivers for STM32 MCUs and ST evaluation boards with the exception of
"STMCube™ is an STMicroelectronics original initiative to ease developers’ life by reducing development efforts, time and cost. STM32Cube covers STM32 portfolio".
Currently TouchGFX uses the following versions of the drivers:
If you would like to use a different version of Cube you should consider that TouchGFX organizes the Cube driver files differently. Rather than attempting to replace the files in the TouchGFX distribution it would be more convenient to host your own Cube files at a separate location on disk and make modifications to your project configuration(s) to use those files instead. The TouchGFX distribution hosts Cube driver files at the following locations:
- Inside the vendor folder for ST boards, e.g.:
touchgfx/board/ST/STM32F746G-DISCO/source/vendor(Maps closely to
"Drivers/BSP"of a Cube distribution)
Users of Cube must provide a HAL configuration (
stm32f7xx_hal_conf.h) somewhere along the include path of a project (expected by
stm32f7xx_hal.h). Note that this configuration may need to be migrated when up- or downgrading to different versions of Cube. As an example: When upgrading to CubeF7 1.4.0, Cube drivers required the definition of an additional symbol: A timeout for startup of the Low Speed oscillator (LSE).
stm32f7xx_hal_conf.h and updating your project configurations to use your own cube files, here is a list of files that contain changes made by Draupner:
touchgfx\board\ST\STM32F746G-DISCO\source\vendor\Components\ft5336\ft5336.c(Change in the way X- and Y-coordinates are read from device)
otm8009a.cfor every STM32F7x69 board (Change to brightness)
touchgfx\board\ST\STM32769I-EVAL\source\vendor\STM32F769I_EVAL) to avoid references to ST Font Utilities.
These board-specific driver files typically don't undergo many changes and are easy to migrate. To summarize:
- Download and unpack a different version of Cube to a different location on disk.
- Update project configurations to use files from this location rather than the ones referenced within the TouchGFX distribution.
- Ensure that
stm32f7xx_hal_conf.his still valid - If not, you can usually find examples of valid configurations within the Cube driver package.
- Migrate any relevant changes from the list above (See list of files above).