CMSIS DSP library support (arm_math.h)

It seems that I’ve found a work-around in the meantime.

I stumbled on this stack overflow question and while the poster’s specific issue is about a
stm32f4 device, his issue is the same.

The proposed workaround is to grab the applicable *.c source files from:
…/DaisyExamples/libDaisy/Drivers/CMSIS/DSP/Source/…

and include them in the project directory and the Make file like:
# Sources
CPP_SOURCES = ex_pitchshifter.cpp
C_SOURCES = arm_sin_f32.c arm_common_tables.c

I am able to get the pitchshifter example to compile this way and it runs on the hardware using using the arm_math.h functions exactly as it runs without them.

I imagine there is a better way to define where all of the CMSIS source files are, so I don’t have to include them one-by-one, but the make file already includes:
# Library Locations
LIBDAISY_DIR ?= ../../../libdaisy

[edit]
:arrow_down_small: This is not the answer. :arrow_down_small:

So, I’m guessing that:
CMSIS_DIR ?= ../../../libDaisy/Drivers/CMSIS/DSP/Source/
Isn’t the answer (though, I might give this a go now - just to check).

Long term, would love to just be able to use the functions without the workaround - let me know if anyone has a better solution.

1 Like