2021-07-14 04:39 AM
Hello,
at the moment I try to make the DSP-Lib work, I’d like to switch to 5.6.0, but the IDE doesn’t let me “erase�? the package because it claims it is used. Ok, so tries to continue with it:
Step1: I activated it:
Step2: I set the Symbols:
__FPU_Present=1
ARM_MATH_CM4
CORE_CM4
Step3: Checking the Includes:
Here it starts getting interesting, I do not know why the CubeIDE added Core_A? Is that correct.
Step4: Copying all the files that are missing:
Not sure why ARM includes *.c-Files, anyway, I added all the *.c and *.h filed from the package I downloaded.
Step5: I include “arm_math.h�? in main.c and try to compile the project:
Here is the issue, I get ton’s of error-messages like this one:
c:\st\stm32cubeide_1.6.1\stm32cubeide\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_1.5.0.202011040924\tools\arm-none-eabi\bin\ld.exe: Middlewares/Third_Party/ARM_CMSIS/CMSIS/DSP/Source/CommonTables/arm_common_tables.o:(.rodata.twiddleCoef_4096_q15+0x0): multiple definition of `twiddleCoef_4096_q15'; Middlewares/Third_Party/ARM_CMSIS/CMSIS/DSP/Source/CommonTables/CommonTables.o:(.rodata.twiddleCoef_4096_q15+0x0): first defined here
What am I doing wrong, did I miss a flag, or add files that should not have been added?
Thanks a lot.
Best Regards, Seppel
Solved! Go to Solution.
2021-07-14 08:51 AM
Hello,
the issue was trivial to fix, all that was required was to exclude the folder from the build, but I did not notice it needed to be excluded. Thanks a lot for the support :thumbs_up: to everybody involved :
There are Bugs in the STM32CubeIDE regarding the ARM-CMSIS configuration. It is sad, because in general the STM32CubeIDE is very powerful, very useful and I like the fact it is eclipse where I integrate SVN, Git etc. . I hope these Bugs get fixed soon, ARM got a much better DSP-Lib than Infineon(the last time I looked at it) and that benefits ST a lot, because the applications can use the maximum performance of the controller.
As far as I know Tilen has opened a Ticket: https://stackoverflow.com/questions/66409852/strange-error-message-when-using-cmsis-5-7-with-stm-cubeide-during-code-generati#
Thanks a lot for the good support at ST.
Best Regards, Seppel
2021-07-14 06:49 AM
Hello @seppeltronics_v,
I recommend you following Configuring DSP libraries on SM32CubeIDE article, it would help you.
When your question is answered, please close this topic by choosing Select as Best. This will help other users find that answer faster.
Chahinez.
2021-07-14 08:51 AM
Hello,
the issue was trivial to fix, all that was required was to exclude the folder from the build, but I did not notice it needed to be excluded. Thanks a lot for the support :thumbs_up: to everybody involved :
There are Bugs in the STM32CubeIDE regarding the ARM-CMSIS configuration. It is sad, because in general the STM32CubeIDE is very powerful, very useful and I like the fact it is eclipse where I integrate SVN, Git etc. . I hope these Bugs get fixed soon, ARM got a much better DSP-Lib than Infineon(the last time I looked at it) and that benefits ST a lot, because the applications can use the maximum performance of the controller.
As far as I know Tilen has opened a Ticket: https://stackoverflow.com/questions/66409852/strange-error-message-when-using-cmsis-5-7-with-stm-cubeide-during-code-generati#
Thanks a lot for the good support at ST.
Best Regards, Seppel
2021-07-15 03:43 AM
Hello @ChahinezC ,
what I noticed, the Flag "ARM_MATH_CM4" is not in the code of Version 5.7.0 . Do you know why that is, and what should be used instead? Isn't the Code that you can compile matching the Lib?
Thanks a lot.
Best Regards, Seppel
2021-07-22 03:57 AM
2021-09-13 01:40 AM
Nice to hear that you managed to set up CMSIS 5. I have failed miserably trying the same with different attempts, but ended up following this howto (https://community.st.com/s/article/configuring-dsp-libraries-on-stm32cubeide) using a really old and deprecated CMSIS 4 version that is included in the latest 1.26.2 Cube package for STM32F4.
Can you elaborate a little of how you got the libraries built or where I can find prebuilt CMSIS 5 DSP libraries?
I tried following the "Building only the CMSIS-DSP library" section for the CMSIS 5 instructions (https://github.com/ARM-software/CMSIS_5/tree/develop/CMSIS/DSP) on a Ubuntu 18.04 computer with both the gcc found in the path and the gcc used in STM32CubeIDE (using a symlink). They both built fine, but I always get errors that they are libraries that are unreadable when linking in CubeIDE. "nm -D" is able to read the libraries fine.
I also agree that CubeIDE is a really nice and powerful software and it would have been a dream if the CMSIS DSP libraries where just a button click away, like they are in Keil.
2021-09-13 03:32 AM
Hello,
to get that article up to date with the current compileflags I wrote an mail to the ST-Support that I have been intouch to, hopefully it will be updated/improved soon.
Currently I have not compiled the DSP-Lib as a library, I use the source. There have been compiled versions from ARM, but I could not find the latest release as a compiled lib anywhere. I’m not using Ubuntu nor Linux, I use the STM32CubeIDE on a Win10 machine. At the moment I’m very busy, I’m really sorry, I wish I had more time, because I like helping others, being stuck is a bad feeling. I highly recommend getting in touch with the ST-Support. If you have been successful, it would be awesome if you write a little “how to�? document and post it
In general, getting the latest Lib via the STM32CubeIDE could work, ST just needs to contact ARM why the latest build is not available and bringing there IDE up to date.
Thanks a lot.
Best Regards, Seppel
P.S. @ChahinezC Please update your article it's misleading as it contains no information about the changes in the ARM-Library version since 2019. People use the wrong compile-Flags based on that article, leading to unnecessary support-cases at ST. Thanks a lot.