cancel
Showing results for 
Search instead for 
Did you mean: 

TouchFGX 4.14.0 for STM32H73Bi STM32CudeIde code adds ref to CMSIS_RTOS path that does not exist

JMors.1
Associate III

When generating code from TouchGFX 4.14.0 for the STM32H73Bi-DK board, the STM32CubeIDE project includes a path reference to CMSIS_RTOS which is not included in the TouchGFX generated code. A CMSIS_RTOS_V2 folder does exist. This cases the following warning in CudeIDE.

Invalid project path: Include path not found (C:\TouchGFXProjects\STM32H7B3iTest2\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS).

3 REPLIES 3
JWese.2
Associate II

I just upgraded to Cube MX 6.0.0, TouchGFX 4.14.0 and CubeIDE 1.4.1 and noticed this as well. I believe the release notes made mention to FreeRTOS not being required with some changes to CMSIS_V1 and CMSIS_V2, not quite sure how that all works, but I could not get rid of that path, as it was not anywhere in the paths (that I could find). The larger problem I noticed, is that anytime you update the .ioc file to liberate any peripherals, after it generates the code, the screen goes blank. Doesn't appear to matter what you change, anything that causes it to generate the .ioc code again leads to this failure. If you choose the option to migrate (Cube IDE states that Touch GFX generated the code using Cube MX 5.5.0, not 6.0.0) this will go blank when you run or debug without a change to the .ioc file. This happens to me on both the STM32F469I-Disco board and STM32F769i-Disco. Not that this is answering your question, but I believe I will have to roll back to CubeIDE 1.2.1, and 4.13.0 and whatever version of Cube MX I was using, to get my projects to function again. I don't know how stable these new releases are with each other.

JWese.2
Associate II

So after some more fiddling around, there is a reference to CMSIS_RTOS (not the _V2 version) on, for me at least, line 144 of my .cproject file, and one on line 38 of the subdir.mk file. You can do a file search for CMSIS_RTOS and it will find all of the instances where it is mentioned in Cube IDE. The .mk file is auto-generated, so not sure if it is that instance AND the one in the .cproject file, but after revising both to CMSIS_RTOS _V2, the warning went away along with the dead path in the includes section of the project. The make file may override this again, not sure.

The inability to change the .ioc file seems to be associated with CubeMX 6.0.0. After generating a TouchGFX project in 4.14.0 and then modifying the .ioc in CubeMx version 5.5.0 (outside of Cube IDE), it will run to "target" in TouchGFX and run or debug in Cube IDE 1.4.1 after the changes, and the display will work. So for me, at least, it all seems to be something with CubeMX 6.0.0. This ***** because I lost all of my work and the .ioc file does not want to open in MX 5.5.0 after Cube IDE rolled it up to MX 6.0.0 for me. I am posting this long-winded answer in case someone else runs into the same thing, or until someone intelligent chimes in and informs me of what I am doing incorrectly.

Aplou.1
Associate III

Hello,

I had a similar problem when I tried to change CMSISv1 to CMSISv2 in cubeMX (6.0.0). My projected was compiling and running just fine, and after the change (and some code rewrite to fit with CMSISv2) the compiler displays an include error CMSISv2.

However, I can compile successfully with cubeIDE, but I cannot program...