cancel
Showing results for 
Search instead for 
Did you mean: 

Whats the procedure to change the HAL library that the CubeMX tool within the IDE is using ?

LivesInALittleHouse
Associate II

fatal error: stm32f1xx_hal_exti.h: No such file or directory

I now get the above error from a previously working project. After accepting the offer to upgrade from CubeIDE version 1.0.1 to 1.0.2. It worked fine initially but then I needed to regenerate the files as I tweaked the application's FreeRTOS usage & configuration settings. I now get the above error, looking for a header file that until this point has never existed.

From another similar post on this subject, it seems that the problem lies in the HAL library been used. The project settings within CubeMX are.

I haven't had any prompts about the incompatibility. But on reading the for mentioned post have done a manual download of the latest V1.8.0 F1 firmware package. ( the release notes on this list addition of new HAL EXTI driver).

So the remaining problem now just boils down to , how do you get the project it re-generate the code using the V 1.8.0 HAL version rather than the V 1.7.0 ?. accepting the fact the HAL usage within this development project will need to reviewed.

4 REPLIES 4
LivesInALittleHouse
Associate II

Is this still unsolved ?

Rick Hamilton
Associate II

I have the same problem. I opened a previously working project using STM32F1 needed to change GPIO now I too get this error. Looking on the internet looks like lots of people have this issue. What is the solution?

LivesInALittleHouse
Associate II

As a short term fix , I just commented out the header includes that caused the problem. In my case the #include "stm32f1xx_hal_exti.h" from within the auto generated stm32f1xx_hal_conf.h file every time I re-built the CubeMx project.

However never got any form of "official" response/ guidance in how to edit project over to the the later V1.8.0 firmware package.

So after having a dig about I came to the conclusion that the firmware package used gets fixed at the time of project creation, it allows you to select from the versions installed on your computer. Didn't really fancy re-creating project from scratch again from a new project using in which I'd selected this firmware.

So fiddled if in the end , by taking a copy of the CubeMX project .ioc file, then edited original file changing the line ProjectManager.FirmwarePackage=STM32Cube FW_F1 V1.7.0 to ProjectManager.FirmwarePackage=STM32Cube FW_F1 V1.8.0. Opened the IDE & then the CubeMX project within , checked settings (now using FW V1.8.0 ) and re-generated, re-complied. since then things have been fine ( this assumes that you have downloaded at some point the later FW V1.8.0 firmware package for the F1 series which resides as a folder in the CubeMX Repository e.g. C:\Users\me\STM32Cube\Repository ).

LivesInALittleHouse
Associate II

PS the CubeIDE has been upgraded again in the last few days to V 1.2.0 . ( early January 2020 ) which didn't seem to cause any more problems of this nature, although the release notes contain the following statement :-

Important:

STMicroelectronics recommends that a new workspace is created for the work done with STM32CubeIDE v1.2.0. Existing projects made with a previous version of STM32CubeIDE must be imported and copied into the new workspace.