diff --git a/src/main/fc/settings.yaml b/src/main/fc/settings.yaml index 2046e7d014..780070e75f 100644 --- a/src/main/fc/settings.yaml +++ b/src/main/fc/settings.yaml @@ -419,14 +419,20 @@ groups: min: INT16_MIN max: INT16_MAX - name: maggain_x + description: "Magnetometer calibration X gain. If 0, no calibration or calibration failed" + default_value: "0" field: magGain[X] min: INT16_MIN max: INT16_MAX - name: maggain_y + description: "Magnetometer calibration Y gain. If 0, no calibration or calibration failed" + default_value: "0" field: magGain[Y] min: INT16_MIN max: INT16_MAX - name: maggain_z + description: "Magnetometer calibration Z gain. If 0, no calibration or calibration failed" + default_value: "0" field: magGain[Z] min: INT16_MIN max: INT16_MAX diff --git a/src/main/sensors/compass.c b/src/main/sensors/compass.c index eda1fab967..90fb2c5ac0 100644 --- a/src/main/sensors/compass.c +++ b/src/main/sensors/compass.c @@ -380,7 +380,7 @@ void compassUpdate(timeUs_t currentTimeUs) diffMag += (mag.magADC[axis] - magPrev[axis]) * (mag.magADC[axis] - magPrev[axis]); avgMag += (mag.magADC[axis] + magPrev[axis]) * (mag.magADC[axis] + magPrev[axis]) / 4.0f; - int32_t sample = ABS(mag.magADC[axis]); + const int32_t sample = ABS(mag.magADC[axis]); if (sample > magGain[axis]) { magGain[axis] = sample; }