2023-09-08 12:59 AM
Hi,
I have an odd error since updating to 1.17.1 FW on the STM32F7, My setup is :
Board - STM32F769I-DISCO
STM32CubeIDE - 1.13.1
After updating with the FW Patch v1.17.1, my project now complains "Code Generation could not be done probably because the necessary firmware probably isn't........"
When creating the project, STM32, it's possible to click next and under 'Firmware Package Name and Version', there is a drop down. If I select v1.17.1, the error above is still generated.
When you proceed further with the auto code generation from the IOC, none of source is included and the project build icon is greyed out. If I then change the IOC and auto-generate code, the project source appears.
How To Reproduce: As above, install v1.17.1 FW7 Patch and follow instructions above. When looking at this, I found that the ZIP file for the FW7 v1.17.1 unzips with the same name as the release, v1.17.0.
If I select v1.17.0 as outlined above after unzipping and copying the new update, the "Code Generation could not be done.." pop up still displays.
The only workaround for me is to unzip my original v1.17.0 package into the repository, and select v1.17.0, the project is then created successfully and following auto code generation compiles and runs.
In Summary: If I use the 'patched version' v1.17.1, (renamed or not once, unzipped) whatever I choose in "Firmware Package Name and Version" does not help. If I use my original version v1.17.0, and select this in "Firmware Package Name and Version", all is well.
Perhaps there is a mix up in version/patch naming with regards to the repository somewhere? I find it odd that the zip opens with the same name as the original version. Screen shot is attached.
I raised this on the STM32F7FW Github site, but they said the issue is with the IDE itself and I should post here instead.
Regards,
Steve.
2023-09-08 02:50 AM
Welcome @SteveFen, to the community!
Are you sure you installed the 1.17.1 patch into an existing 1.17.0?
The patch alone (30MB) is of course not a complete library, but only contains the differences to version 1.17.0. The folder name remains the same, because the version is still 1.17.x. By the way, the numbers used for the main and patch versions are taken from the file package.xml, the folder name is absolutely irrelevant and could also be "abcdef_library".
By the way, you can also install the main versions and patches manually by simply unpacking them manually and letting the patch files overwrite the originals when unpacking.
Regards
/Peter
2023-09-12 06:55 AM
Hi,
Yes, I initially had the 1.17.0 installed and everyting was working fine, without complaints.
I tried to install via the patch v1.17.1 using the Help/Update Firmware option..
I also tried to manually extract and overwote as you've indicated.
I still get the pop up (shown in the screenshot above) and no code is being generated.
Can you clarify please, when setting up a new project, if you select next, you're presented with a Firmware Package Name and Version. Mine is showing both v1.17.0 and v1.17.1 in the pull down selector. Selecting the latter gives no change and I get the same issues.
What should this be set to?
Note again, I had no issues prior to trying to move to v1.17.1. A batch file / installer for the patch would have been useful but I'm guessing this is taken care of (or should be) by the IDE.
2023-09-12 08:37 AM
Hi,
I deleted the FW in the respository and forced a new download, this created the xxxFW_F7_v1.17.0 directory.
I then downloaded (Using Help/Check for Embedded Software Packages) v1.17.1 which downloaded the new 30MB patch file and then it created a new directory xxxFW_F7_v1.17.1 in my repository directory.
You will see from the screenshots that the FW appears to be installed. Checking the contents of the FW in the repository the v1.17.1 is slightly larger in size than the v1.17.0 which I'd expect due to the additional support files.
When I first create the project, I still get the error pop up saying "Code Generation could not be done most probably because the necessary firmware package is missing.."
This is after the creating ui popup etc.
Is it that there is no issue really, because at that point, the IDE has opened the .ioc file and is waiting for the device to be configured? If so, maybe the pop up text needs rewording?
Regards,
Steve.
2023-09-13 05:51 AM
I can confirm your observation. You can recreate it, as you mentioned, if you create a new project and answer the query "USE_NEWLIB_REENTRANT must be set..." with No. If it is answered with Yes, the message does not appear, but one must not forget to set this option accordingly.
In my opinion, this is indeed a wrongly assigned information window.
Regards
/Peter
2023-09-15 08:10 AM
OK, thanks. Yes, it is confusing..perhaps one to change in the future.
Regards,
Steve.
2023-09-16 01:54 PM - edited 2023-09-16 01:56 PM
It looks like every CubeMX/IDE version knows the highest versions of the firmware libraries and won't recognize newer versions. (are these versions hardcoded or built into template database?)