Porting Embedded MotionDriver 6.12 to CC2640

By puneetwadhawan , 27 October 2015

Hi,
I am porting Embedded MotionDriver 6.12 example code (meant for MSP430) to CC2640 (ARM M3 based MCU). I am running the code with following settings :

1. Sampling Frequency 20 Hz : using the function mpu_set_sample_rate
2. DMP enabled
3. LPF : 42 Using the function mpu_set_lpf
4. FSR Gyro : 2000
5. FSR Accel: 2G

The MPU is running is running @ 16MHz. After porting the top level function (main.c) and other related fucntions, I can get the data coming out of the function dmp_fifo_read() (calling it DATA1 for future reference). I am also able to print the data after executing the function inv_execute_on_data() (calling it DATA2). I have following questions:
1. What is the difference between the expected values of DATA1 and DATA2. Currently my observation is that both the data are somewhat same.
2. Is it possible to validate the data coming out from inv_execute_on_data(). One way could be by faking the data coming from MPU and expecting a known set of data at the output of inv_execute_on_data() function. Can you provide a known set of data that be fed into the code and checked at the output of MPL (i.e. function inv_execute_on_data). BY doing this, I can easily filter the problems arising due to porting issues. Please advise.
3. It is advised in the Porting guidelines that while doing 9x fusion the maximum sampling frequency should be 100Hz for MSP 430. Do we have any recommendation for max sampling frequency that be achieved with M3 running at 16MHz (CC2640).
4. Many of the API functions used in driver 6.12 are not described in "App Note 2- Motion Driver 6.12 Features Guide" but are present in "MotionDriver_Tutorial_12212018 CB" (available with Driver code 5.1.1). Do we have a similar document for Driver 6.12

phpbb Topic ID
30465