Skip to main content
Associate II
November 29, 2023
Question

STM32CubeIDE - Open IOC file stopped working without warning

  • November 29, 2023
  • 3 replies
  • 3171 views

I have developing my project for some weeks now with no issues, then suddenly I cannot open the IOC file to modify the pin configuration. Worked on Monday, doesn't work two days later. no files have been copied or duplicated, just pushed to git.

I have tried all the updates I can find but still no joy.

The error message is:

Invalid Input: Must be project's active .ioc file.

Project's 'XXX-011-Firmware' active one is 'XX-011-Firmware.ioc' file

 

I am using Cube:

Version: 1.14.0

Build: 19471_20231121_1200 (UTC)

 

I have looked in the IOS file and:

ProjectManager.ProjectFileName=XXX-011-Firmware.ioc
ProjectManager.ProjectName=XXX-011-Firmware

Match

IDE Log Attached

Last successful .ide.log (MX) two days earlier attached.

No new logs created because of the error.

 

Can anyone help?

This topic has been closed for replies.

3 replies

Peter BENSCH
Technical Moderator
November 29, 2023

Welcome @Bob_Walton,to the community!

The error message appears, for example, if there is more than one IOC in the project or if the IOC file has been renamed (as in this case).

Regards
/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
Associate II
November 29, 2023

The file has not been renamed and there is only one IOC file in the project.

I did manage to recover by doing the following.

  1. create a new project from the IOC file
  2. copy the IOC and overwrite the old file
  3. edit the IOC to set the project name and IOC file to the original
  4. when I try to open the file is asks if I want to migrate and I answer yes
  5. then I can open the file with all of the original settings

BUT

if I edit the settings and code generation takes place, I cannot open the file again without repeating the steps above.

I would seem that code generation locks the file.

Regards

Bob

Peter BENSCH
Technical Moderator
November 30, 2023

@Bob_Walton With steps 1 to 3, you are obviously creating an (essentially) identical IOC to the previous IOC - except that the process blocking the previous one does not yet have access to it. Step 4 shows that the new IOC still contains a reference to an older firmware library, which is why you are offered the migration.

Generating code does not block the IOC, but I suspect some cloud functionality does. Didn't you mention that you are working with GIT?

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
Associate II
November 30, 2023

@Peter BENSCH Yes, I am using GuiHub as the repository for pushing my code changes. Do you suspect there is a link between the push and the IOC read problem?

At the end of each day I push my repo, so the fact that the problem appears between two days seems to be a viable root cause.

Why would the IOC link be broken by a git push?

I Have been working with Git all along and this problem only started recently. Is there some background update which I am not aware of?

Bob S
Super User
November 29, 2023

What if you run CubeMX stand-alone instead of starting it from inside the IDE?

<soapbox>I never run CubeMX from inside the IDE.  I always run the stand-alone version.  For me it is just plain easier, and quicker when I'm working for multiple projects at the same time.</soapbox>