Hi,
I have ported the complete DMP library from Invensense to CC2650 (SensorTag). CC2650 is interfacing with MPU9250. I downloaded the code from software downloads on "download link. I enable Accel and Gyro and disabled 9x fusion using the following function:
inv_enable_quaternion() --Enabling this. THe assumption is that it will enabled 6x fusion and generate quaternion.s
//inv_enable_9x_sensor_fusion(); -- Disabling this as Magnetometer is not enabled
But when I run the complete code provided in the main function (rest of the code unchanged, except I removal of the UART interface code and interface to Python script). I am printing the data which is gathered from FIFO after enabling the DMP. It generates the following output:
[Cortex_M3_0]
..............Start.................
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
(error)0.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.00000.0000363025525525519225525562240046320000001310Motion!
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
0.0000 (error) 1.9590 - 0.0000 0.0000 0.0000 - 0.0000 0.0000 0.0000 0.0000
The code snippet which is being used to print the data is:
dmp_read_fifo(gyro, accel_short, quat, &sensor_timestamp, &sensors, &more);
System_printf("%f %f %f - %f %f %f - %f %f %f %f \n",
gyro[0], gyro[1], gyro[2], accel_short[0], accel_short[1], accel_short[2],
quat[0], quat[1], quat[2], quat[3]);
System_flush();
I am not sure what is going wrong. Please advise on how to debug this issue. Also I get the same issue when I enable Magnetometer and I enable the function inv_enable_9x_sensor_fusion().
Regards
Puneet