ACCEL/GYRO data coming out with errors when DMP is enabled

By puneetwadhawan , 14 October 2015

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

phpbb Topic ID
29367