cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeMX v6.13 cannot open .ioc file for H56

EskayEllar
Associate

I recently updated my version of CubeMX from 6.12.1 to 6.13.0. It is now unable to open my .ioc for a specific STM32H563VI project.

 

When I try to migrate, it loads the IOC, then gives an error saying it is "Not a valid ioc file".

If I try to continue using the old version, it gets stuck on unzipping a file (DB.6.0.121.tar.bz2) for a few minutes, then silently stops.

EskayEllar_0-1734042731864.png

If I uninstall and go back to CubeMX 6.12.1 it can open it no problem, but that doesn't seem like a good solution.

I have tried reinstalling CubeMX 6.13.0 from the website directly, checking for updates and relevant software packages.

I am able to open previous projects that use the same MCU, so it seems it may be due to some specific configuration used. I have tried modifying the working project to include the same features as the non-working one, but it has not prevented it from loading.

 

I tested opening an older project which used the NUCLEO-H563ZI. This older project also gives an "Not a valid ioc file" error, whether I try to continue or migrate it.

 

I tried uninstalling STM32CubeMX, STMicroelectronics stlink-server, and STMCUFinder. I then reinstalled STM32CubeMX 6.13.0, waited for it to check for updates, and tried again. Migrating once again gave an invalid IOC error, and continuing with the old version immediately showed the same file being unzipped, until it closed.

 

There does not appear to be any relevant information in the errata/known limitations of 6.13.0. Any guidance or support would be appreciated!

8 REPLIES 8
TDK
Guru

Probably a bug.

If you can attach the IOC in question it may help them replicate the issue, particularly since it only happens with this one project.

If you feel a post has answered your question, please click "Accept as Solution".
peterdonchev
Senior

If I try to continue using the old version, it gets stuck on unzipping a file (DB.6.0.121.tar.bz2) for a few minutes, then silently stops.

EskayEllar_0-1734042731864.png

 


I have the same problem.

peterdonchev_0-1737630977082.png
It gets stuck here and, after a few seconds, gives up.

peterdonchev_1-1737631004090.png

 

 

 

JoWi
Associate II

Today I ran into the same issue with an STM32H563. A STM32G4 MCU works without issues, I tried several times to reinstall cube.

When starting an empty project with the STM32H563, saving and loading works. I tried comparing the content of this clean, working file with my old file but didn't found anything helpful.

Any information are much appreciated as this makes CubeMX 6.13. and some new libraries completely unusable for me.

If you are having a problem, attach an IOC that produces the problem.

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

Unfortunately I can't share the IOC as it is confidential. Today I will try to manually reconfigure the MCU with cube 6.13.0 and afterwards compare the two files to see if I find some clues and what is corrupting the files.

peterdonchev
Senior

Here is a simple project. It can be migrated, but if I choose to continue, it gets stuck and then loads STM32CubeMX without the project.

JoWi
Associate II

So I resolved my issue by removing the config related to Memory Management in the .IOC file with an editor. In the file that was working fine with CubeMX 6.12.1 but produced the "Not a valid ioc file" error in 6.13.0, there was this section: 

MMTAppReg1.MEMORYMAP.AP=RW_priv_only
MMTAppReg1.MEMORYMAP.AppRegionName=ExtFlash
MMTAppReg1.MEMORYMAP.Cacheability=NonCacheable
MMTAppReg1.MEMORYMAP.ContextName=CortexM33
MMTAppReg1.MEMORYMAP.CoreName=ARM Cortex-M33
MMTAppReg1.MEMORYMAP.DefaultDataRegion=false
MMTAppReg1.MEMORYMAP.IPParameters=StartAddress,Size,CoreName,SizeUnit,DefaultDataRegion,MemType,MemSource,ContextName,Name,AP,Cacheability
MMTAppReg1.MEMORYMAP.InvalidRegion=true
MMTAppReg1.MEMORYMAP.MemSource=EXT
MMTAppReg1.MEMORYMAP.MemType=ROM
MMTAppReg1.MEMORYMAP.Name=ExtFlash
MMTAppReg1.MEMORYMAP.Size=16777216
MMTAppReg1.MEMORYMAP.SizeUnit=MB
MMTAppReg1.MEMORYMAP.StartAddress=0x90000000
MMTAppReg2.MEMORYMAP.AP=RO_all
MMTAppReg2.MEMORYMAP.AppRegionName=FLASH
MMTAppReg2.MEMORYMAP.Cacheability=WTRA
MMTAppReg2.MEMORYMAP.ContextName=CortexM33
MMTAppReg2.MEMORYMAP.CoreName=ARM Cortex-M33
MMTAppReg2.MEMORYMAP.DefaultDataRegion=false
MMTAppReg2.MEMORYMAP.IPParameters=StartAddress,Size,CoreName,DefaultDataRegion,MemType,ContextName,Name,AP,Cacheability,Shareability
MMTAppReg2.MEMORYMAP.MemType=ROM
MMTAppReg2.MEMORYMAP.Name=FLASH
MMTAppReg2.MEMORYMAP.Shareability=Shareable
MMTAppReg2.MEMORYMAP.Size=1572864
MMTAppReg2.MEMORYMAP.StartAddress=0x08000000
MMTAppReg3.MEMORYMAP.AP=RW_priv_only
MMTAppReg3.MEMORYMAP.AppRegionName=RAM
MMTAppReg3.MEMORYMAP.Cacheability=WBRAWA
MMTAppReg3.MEMORYMAP.ContextName=CortexM33
MMTAppReg3.MEMORYMAP.CoreName=ARM Cortex-M33
MMTAppReg3.MEMORYMAP.DefaultDataRegion=false
MMTAppReg3.MEMORYMAP.IPParameters=StartAddress,Size,CoreName,DefaultDataRegion,ContextName,Name,AP,Shareability,Cacheability
MMTAppReg3.MEMORYMAP.Name=RAM
MMTAppReg3.MEMORYMAP.Shareability=Shareable
MMTAppReg3.MEMORYMAP.Size=655360
MMTAppReg3.MEMORYMAP.StartAddress=0x20000000
MMTAppReg4.MEMORYMAP.AppRegionName=RAM Reserved Alias Region
MMTAppReg4.MEMORYMAP.CoreName=ARM Cortex-M33
MMTAppReg4.MEMORYMAP.DefaultDataRegion=false
MMTAppReg4.MEMORYMAP.IPParameters=StartAddress,Size,CoreName,DefaultDataRegion,ReservedRegion,Name
MMTAppReg4.MEMORYMAP.Name=RAM Reserved Alias Region
MMTAppReg4.MEMORYMAP.ReservedRegion=true
MMTAppReg4.MEMORYMAP.Size=655360
MMTAppReg4.MEMORYMAP.StartAddress=0x0A000000
MMTAppReg5.MEMORYMAP.AP=RW_all
MMTAppReg5.MEMORYMAP.AppRegionName=PARAMETER_FLASH
MMTAppReg5.MEMORYMAP.Cacheability=WTRA
MMTAppReg5.MEMORYMAP.ContextName=CortexM33
MMTAppReg5.MEMORYMAP.CoreName=ARM Cortex-M33
MMTAppReg5.MEMORYMAP.DefaultDataRegion=false
MMTAppReg5.MEMORYMAP.IPParameters=StartAddress,Size,CoreName,DefaultDataRegion,MemType,ContextName,Name,AP,Cacheability,Shareability
MMTAppReg5.MEMORYMAP.MemType=ROM
MMTAppReg5.MEMORYMAP.Name=PARAMETER_FLASH
MMTAppReg5.MEMORYMAP.Shareability=Shareable
MMTAppReg5.MEMORYMAP.Size=8192
MMTAppReg5.MEMORYMAP.StartAddress=0x08180000
MMTAppRegionsCount=5

When I replaced all the lines by:

MMTAppRegionsCount=0

the file could be migrated & opened successfully within Cube MX 6.13.0.

The issue did also arise with the IOC file that I freshly re-built with 6.13.0. I had everything else configured so far, but when I click on the Memory Management tab and save the IOC file, afterwards it doesn't open but throws the same error.

On the other hand, when I start a fresh IOC file in 6.13.0 with nothing configured and click the Memory Management tab + save the file, the error does not arise.

So my assumption is that if some other part is configured, the Memory Management config corrupts the file. I didn't have the time to check every part I configured to find out what other part causes this error, as for me this solution works because I don't need the Memory Management config.

Let me know if you encountered similar behavior.