From 2bbbf9937d50e229b512b83f0b669b65c6aee2e1 Mon Sep 17 00:00:00 2001 From: Dominic Clifton Date: Sat, 7 Jun 2014 02:27:07 +0100 Subject: [PATCH] Decoupling imu from config - acc_unarmedcal. --- src/main/config/config.c | 2 ++ src/main/flight/imu.c | 2 +- src/main/flight/imu.h | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/config/config.c b/src/main/config/config.c index 90999347e3..b103ed5bab 100755 --- a/src/main/config/config.c +++ b/src/main/config/config.c @@ -388,6 +388,8 @@ void activateConfig(void) imuRuntimeConfig.gyro_cmpf_factor = masterConfig.gyro_cmpf_factor; imuRuntimeConfig.gyro_cmpfm_factor = masterConfig.gyro_cmpfm_factor; imuRuntimeConfig.acc_lpf_factor = currentProfile.acc_lpf_factor; + imuRuntimeConfig.acc_unarmedcal = currentProfile.acc_unarmedcal;; + configureImu(&imuRuntimeConfig, ¤tProfile.pidProfile, ¤tProfile.barometerConfig, ¤tProfile.accDeadband); diff --git a/src/main/flight/imu.c b/src/main/flight/imu.c index d7acd2593c..159b5f07c1 100755 --- a/src/main/flight/imu.c +++ b/src/main/flight/imu.c @@ -245,7 +245,7 @@ void acc_calc(uint32_t deltaT) rotateV(&accel_ned.V, &rpy); - if (currentProfile.acc_unarmedcal == 1) { + if (imuRuntimeConfig->acc_unarmedcal == 1) { if (!f.ARMED) { accZoffset -= accZoffset / 64; accZoffset += accel_ned.V.Z; diff --git a/src/main/flight/imu.h b/src/main/flight/imu.h index acd7905dfc..72c1d9acb9 100644 --- a/src/main/flight/imu.h +++ b/src/main/flight/imu.h @@ -23,6 +23,7 @@ extern int16_t throttleAngleCorrection; typedef struct imuRuntimeConfig_s { uint8_t acc_lpf_factor; + uint8_t acc_unarmedcal; float gyro_cmpf_factor; float gyro_cmpfm_factor; } imuRuntimeConfig_t;