From 345e3c37a1cf619392b54589bb91b4caf7844810 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sat, 20 Oct 2018 17:26:53 -0700 Subject: altos/easymega-v2.0: Handle different mpu9250 orientation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The mpu9250 on EasyMega v2.0 is rotated 90° compared with EasyMega v1 and TeleMega IMU devices. Signed-off-by: Keith Packard --- src/kernel/ao_data.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/kernel/ao_data.h') diff --git a/src/kernel/ao_data.h b/src/kernel/ao_data.h index 3918f4e0..dda5de4c 100644 --- a/src/kernel/ao_data.h +++ b/src/kernel/ao_data.h @@ -382,6 +382,7 @@ typedef int16_t angle_t; /* in degrees */ /* X axis is aligned in the other board axis (across) */ /* Z axis is aligned perpendicular to the board (through) */ +#ifndef ao_data_along #define ao_data_along(packet) ((packet)->mpu9250.accel_y) #define ao_data_across(packet) ((packet)->mpu9250.accel_x) #define ao_data_through(packet) ((packet)->mpu9250.accel_z) @@ -389,6 +390,7 @@ typedef int16_t angle_t; /* in degrees */ #define ao_data_roll(packet) ((packet)->mpu9250.gyro_y) #define ao_data_pitch(packet) ((packet)->mpu9250.gyro_x) #define ao_data_yaw(packet) ((packet)->mpu9250.gyro_z) +#endif static inline float ao_convert_gyro(float sensor) { @@ -425,9 +427,11 @@ typedef int16_t ao_mag_t; /* in raw sample units */ * sensors. Also, the Z axis is flipped in sign. */ +#ifndef ao_data_mag_along #define ao_data_mag_along(packet) ((packet)->mpu9250.mag_x) #define ao_data_mag_across(packet) ((packet)->mpu9250.mag_y) #define ao_data_mag_through(packet) ((packet)->mpu9250.mag_z) +#endif #endif -- cgit v1.2.3