cancel
Showing results for 
Search instead for 
Did you mean: 

TouchGFX designer 4.26.0 points to empty folder!

SCous.1
Associate II

Hi, I've installed TouchGFX designer 4.26.0 on my laptop and i see a difference in behaviour to the previous versions.

The problem is that we want to update our IAR project ewp file as we change or add new items in our designer. 
However we have issues when we do. 
At the moment our designer makes the following change

<option>
<name>IlinkAdditionalLibs</name>
<state>$PROJ_DIR$\psi_board_lib.a</state>
<state>$PROJ_DIR$/../../lib/touchGFX/touchgfx/lib/core/cortex_m7/IAR9.x/touchgfx_core.a</state>
</option>

changes to 

<option>
<name>IlinkAdditionalLibs</name>
<state>$PROJ_DIR$\psi_board_lib.a</state>
<state>$PROJ_DIR$/../../touchgfx/touchgfx/lib/core/cortex_m7/IAR9.x/touchgfx_core.a</state>
</option>

That would not be a problem if the new folder "$PROJ_DIR$/../../touchgfx/touchgfx/lib/core/" was not empty after every build.

I've tried to set the files back into that folder but every touchgfx build the folder is empty again. I've also tried to change my "touchgfx_path := ../lib/touchGFX/touchgfx" in the "touchgfx/config/gcc/app.mk" file but even that gets set back to default. 
Also updating the config in "\touchgfx\config\msvs\Application.props" gets reverted back to standard.
Now i can't seem to run the following command

touchgfx update_project --project-file=../target/iar/project.ewp

As this command makes my IAR config invalid. I get errors like:

	Fatal Error[Li001]: could not open file "C:\..\..\touchgfx\touchgfx\lib\core\cortex_m7\IAR9.x\touchgfx_core.a" (failed opening file: The system cannot find the path specified.

because the lib\core folder is empty. 
How can i make sure that we do not change this folder or if I place the correct files into that folder we do not end up with an empty folder again after each 'generate code' command in touchgfx designer?

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions

Hello @SCous.1 ,

From what I understand, you have made originally a project based on our STM32H750-DK TBS with TouchGFX Designer, am I correct?

STM32CubeMX is essential for a TouchGFX project because it generates the Board Initialization Code that configures the MCU and all peripherals (RAM, display, etc.) before your application runs. This code is pure hardware setup and is independent of TouchGFX.

If you update the TouchGFX version, you should also update STM32CubeMX to keep everything compatible (MCU packs, drivers, and code generation). In the default TouchGFX projects, we already try to keep the TBS (TouchGFX Board Sets) up to date using STM32CubeMX, so that the hardware configuration and the generated code stay consistent.

That’s why, if you are using a given TouchGFX version and you do not need to update TouchGFX, then you do not need to use or update your STM32CubeMX either. You can continue working with your current setup as it is.

When you update your project you should see these messages :

  • When you open the project with TouchGFX Designer :
    OsmanSOYKURT_0-1771319868534.png

     

  • When you generate code from TouchGFX Designer:
    OsmanSOYKURT_2-1771319996912.png
    If you open the ioc file with the latest STM32CubeMX, you'll be asked to update the firmware (if a most recent one exists).
Osman SOYKURT
ST Software Developer | TouchGFX

View solution in original post

3 REPLIES 3
Osman SOYKURT
ST Employee

Hello @SCous.1 ,

Which version of TouchGFX were you using before? And which STM32 chip do you use?
Updating version of TouchGFX requires also update of the STM32CubeMX (you should have seen in the log console in TouchGFX Designer a message asking you to open your .ioc file, migrate to the latest firmware, and regenerate code with the latest STM32CubeMX). Have you done that?

Osman SOYKURT
ST Software Developer | TouchGFX

I was using touchGFX designer 4.21.4. 

I didn't use STM32CubeMX to install the designer again. Should I? and why? 
I don't use STM32CubeMX for this project at all, I think I never even opened it.

The message you speak of didn't catch my attention either. Or I can't remember.

I do not even have an *.ioc file in my project.

The STM is a STM32H750.

Hello @SCous.1 ,

From what I understand, you have made originally a project based on our STM32H750-DK TBS with TouchGFX Designer, am I correct?

STM32CubeMX is essential for a TouchGFX project because it generates the Board Initialization Code that configures the MCU and all peripherals (RAM, display, etc.) before your application runs. This code is pure hardware setup and is independent of TouchGFX.

If you update the TouchGFX version, you should also update STM32CubeMX to keep everything compatible (MCU packs, drivers, and code generation). In the default TouchGFX projects, we already try to keep the TBS (TouchGFX Board Sets) up to date using STM32CubeMX, so that the hardware configuration and the generated code stay consistent.

That’s why, if you are using a given TouchGFX version and you do not need to update TouchGFX, then you do not need to use or update your STM32CubeMX either. You can continue working with your current setup as it is.

When you update your project you should see these messages :

  • When you open the project with TouchGFX Designer :
    OsmanSOYKURT_0-1771319868534.png

     

  • When you generate code from TouchGFX Designer:
    OsmanSOYKURT_2-1771319996912.png
    If you open the ioc file with the latest STM32CubeMX, you'll be asked to update the firmware (if a most recent one exists).
Osman SOYKURT
ST Software Developer | TouchGFX