Arm_math.h file missing

Hi everyone.

This my include files for STM32F103C generic.

#include "arm_math.h"
#include "io_routines.h"
#include "filter_cmsis.h"
#include "filter_cmsis2.h"
#include "filter_cmsis_cw_nar.h"
#include "filter_cmsis_cw_nar2.h"
#include "filter_noise_reduction.h"

Now I searched my pc and found three "arm_math.h"files.

But the Arduino compiler tells me no such file found.


C:\Program Files (x86)\Microchip\MPLABX\v5.25\packs\arm\CMSIS\5.0.1\CMSIS\Include\arm_math.h

How do I tell the Arduino compiler which one to use ?Why does it not see anyone?

Thanks in advance.

What Arduino model are you using? If it's not an Arduino, what third-party core are you using?

Thanks johnwasser.

I did mention STM32F103C generic so I am not sure what you refer to as "core".

This generic board is also called "Bluepill"

I installed the new board with the Board Manager and I can compile and upload the Blink example in the "Other Boards" Examples (now added to my Arduino IDE.)

Thanks for the reply.

So the problem is a missing (or differently-named) file in the third-party core you installed to support the third-party 'STM32duino' board.

My guess would be that they put 'arm_math.h' as 'math.h', possibly in a directory named 'arm' or 'stm32'. I would look for 'math.h' in the downloaded content: C:\Users\MIKE\AppData\Local\Arduino15\packages\arduino\hardware

I did copy arm_math.h from the Arduino library and past it into the same folder with all the other include files for this project.

Now arm_math_cm3 is the next error so after a lot of searching I found a similar post that suggest to #define arm_math_cm3 now the second error is also gone .
But now I am stuck with a bunch of new errors which is way beyond my skill level.

My conclusion now is :(For myself)
Do not attempt to copy code from a different compiler into Arduino ide and magic will happen.

I am still searching for a DSP Radio noise filter for the STM32F103C complete project for Arduino or STMCUBE32.

Thanks for replying.

It looks like your sketch is using CMSIS, a library for supporting a variety of ARM processors. It appears to be something you would use on Windows32 or Linux64 running on an ARM processor. I don't know if it is possible to get it to work on an ARM-based Arduino.