Library containing Crazyflie 2.0 sensors drivers: - LPS25H (barometer) - MPU9250 (IMU) - PMW3901 (optical flow) - VL53L0X (range)

Dependents:   Drones-Controlador controladoatitude_cteste Drone_Controlador_Atitude optical_test

Revision:
9:350a1d643ef1
Parent:
8:930aa9d0f5ae
Child:
10:237258f2d05e
--- a/MPU9250/MPU9250.cpp	Mon May 14 20:18:20 2018 +0000
+++ b/MPU9250/MPU9250.cpp	Fri Jul 20 20:40:10 2018 +0000
@@ -122,10 +122,10 @@
     int16_t ay_raw = (ay_raw_h << 8) | ay_raw_l;
     int16_t az_raw = (az_raw_h << 8) | az_raw_l;
 
-    // Convert raw data to SI units [m/s^2]
-    ax = ax_raw * a_res;
-    ay = ay_raw * a_res;
-    az = az_raw * a_res;
+    // Convert raw data to SI units [m/s^2] and also convert from sensor reference frame to drone reference frame
+    ax = ay_raw * a_res;
+    ay = -ax_raw * a_res;
+    az = -az_raw * a_res;
 }
 
 /** Read accelerometer data */
@@ -144,9 +144,9 @@
     int16_t gy_raw = (gy_raw_h << 8 ) | gy_raw_l;
     int16_t gz_raw = (gz_raw_h << 8 ) | gz_raw_l;
 
-    // Convert raw data to SI units [rad/s]
-    gx = gx_raw * g_res;
-    gy = gy_raw * g_res;
+    // Convert raw data to SI units [rad/s] and also convert from sensor reference frame to drone reference frame
+    gx = -gy_raw * g_res;
+    gy = gx_raw * g_res;
     gz = gz_raw * g_res;
 }