Hello,
I have a few questions about X-CUBE-MEMS as following:
- Can we run multiple algorithms (MotionFX, MotionDI, MotionTilt etc) on the same platform simultaneously using the same input data? I would like to make performance comparision between algorithms. As the algorithms are provided as object code, is there any dependency between them (CRC module etc..)?
- What is the stack usage for each algorithm? I couldn't find it in the documentation. When I look at the examples, the stack size is 0x8000 (32kB) which is very high. I need to reduce it in my application. What should be it?
- I will collect data at a high rate > 800Hz using the FIFO of MEMS. For MotionFX and MotionDI algorithms, the recommended execution rate is 100Hz. Should I use decimation attribute of these algorithms. Are there any examples for decimation usage?
- In the examples, a timer interrupt is used mostly when reading sensor data. But the ODR and timer will drift in time. In the application notes, it is stated that "Note: BDU only guarantees that the LSB part and MSB part have been sampled at the same moment. For example, if the reading speed is too slow, X and Y can be read at T1 and Z sampled at T2." Isn't it possible that such a condition may occur if timer interrupt is used instead of data ready interrupt?