cancel
Showing results for 
Search instead for 
Did you mean: 

Change peripheral ( USART ) config ( CubeMX )

LFili.1
Associate II

Hi, by following some video i am able to create a GUI ( ST32F469I-DISCO ) and get a complete CubeIDE project... I create the GUI by selecting the right application template for the TouchGFX project ( device ). Then i can generate the code. After that i can change the project name ( STMCubeIDE\-project ) and open the folder with the CubeIDE editor. Now the .ioc file is not present in the CubeIDE project folder and i try to use the link to the file, the template file imported by TouchGFX i think i get one error, that say i cannot use that file to manage peripheral configuration. So try to hack.... If i copy the file .ioc in the project folder and rename it, i can open the CubeMX file and change the pheripheral configuration, but when i try to compile the project some library ( header ) cannot be found anymore. So... what is the right way to create a GUI, manage the hardware correctly and develop my software... ? Thanks.

4 REPLIES 4
matte
Associate II

Renaming projects in CubeIDE is not supported. Well, it can work for empty projects for single core STM32 products. This is a known issue.

The reason is that CubeIDE integrates many different "Cube ecosystem puzzle pieces". The puzzle pieces introduces a dependency chain and the project name is used as a reference in files that are not seen/known by/to Eclipse framework. So even if the rename operation does not result in an ERROR, sometime later along the road it is quite likely that CubeMX will not work or that the project will not build or debug.

Unfortunately the only safe method today is to choose project name carefully from the start.

Known issue, heavy investment to fix it --> Other more value-adding tickets are being addressed!

LFili.1
Associate II

Thank matte for the reply...

The problem is not caused by renaming project inside .project file... Yes, true the dependency chain is..... complicated.... ( means productivity ? )

Anyway the problem is, i can not change the peripheral configuration by using CubeMX perspective,

The original .ioc file seems to be not related to the CubeIDE project, and the new one ( copied ) don't cause problem if i not change any peripheral conf...

I remember my old asm prog for the ST6 series... Now this is an ARM processor with several peripheral... so who can accompany me along the samurai road ?

Now i'm about to compare all the file between two identical projects, one modifyed and the other not... ( WinMerge, DiffMerge ) i found many changes in the .project file... ( dependency relative )...

Thank again...

TDK
Guru

It sounds like your project got into a bad state when you tried to rename stuff.

Changing the peripheral configuration within CubeMX and re-generating the code is of course supported and straightforward.

I would create a new project, don't rename it, and use that instead.

If you feel a post has answered your question, please click "Accept as Solution".
LFili.1
Associate II

This seems to work but i'm not absolutely shure...

Inside the project configuration file change the reference to the .ioc file;

<link>

<name>Termostato.ioc</name>

<type>1</type>

<locationURI>$%7BPARENT-1-PROJECT_LOC%7D/Termostato.ioc</locationURI>

</link>

Name must be equal to the project name.

locationURL seems to refer to the parent directory of the ST32MCubeIDE folder, or where the file .ioc can be found. So rename the .ioc file by give it te same name of the project.

More in the future... Thanks to all...