1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-25 17:25:18 +03:00

Fix bug in acc and mag calibration flag logic

This commit is contained in:
Konstantin Sharlaimov (DigitalEntity) 2016-12-14 19:31:00 +10:00
parent a92fef2678
commit 9b5acb70a9
2 changed files with 7 additions and 7 deletions

View file

@ -389,12 +389,12 @@ void setAccelerationCalibrationValues(flightDynamicsTrims_t * accZeroToUse, flig
accZero = accZeroToUse; accZero = accZeroToUse;
accGain = accGainToUse; accGain = accGainToUse;
if ((accZero->raw[X] != 0) && (accZero->raw[Y] != 0) && (accZero->raw[Z] != 0) && if ((accZero->raw[X] == 0) && (accZero->raw[Y] == 0) && (accZero->raw[Z] == 0) &&
(accGain->raw[X] != 4096) && (accGain->raw[Y] != 4096) &&(accGain->raw[Z] != 4096)) { (accGain->raw[X] == 4096) && (accGain->raw[Y] == 4096) &&(accGain->raw[Z] == 4096)) {
ENABLE_STATE(ACCELEROMETER_CALIBRATED); DISABLE_STATE(ACCELEROMETER_CALIBRATED);
} }
else { else {
DISABLE_STATE(ACCELEROMETER_CALIBRATED); ENABLE_STATE(ACCELEROMETER_CALIBRATED);
} }
} }

View file

@ -205,11 +205,11 @@ void compassUpdate(timeUs_t currentTimeUs, flightDynamicsTrims_t *magZero)
static int16_t magPrev[XYZ_AXIS_COUNT]; static int16_t magPrev[XYZ_AXIS_COUNT];
// Check magZero // Check magZero
if ((magZero->raw[X] != 0) && (magZero->raw[Y] != 0) && (magZero->raw[Z] != 0)) { if ((magZero->raw[X] == 0) && (magZero->raw[Y] == 0) && (magZero->raw[Z] == 0)) {
ENABLE_STATE(COMPASS_CALIBRATED); DISABLE_STATE(COMPASS_CALIBRATED);
} }
else { else {
DISABLE_STATE(COMPASS_CALIBRATED); ENABLE_STATE(COMPASS_CALIBRATED);
} }
if (!mag.dev.read(magADCRaw)) { if (!mag.dev.read(magADCRaw)) {