1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-20 23:05:19 +03:00

Fix multi-range profile type adjustments (#9162)

Fix multi-range profile type adjustments
This commit is contained in:
Michael Keller 2019-11-16 01:02:19 +13:00 committed by GitHub
commit ab43b3a1e5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -782,14 +782,10 @@ static void processContinuosAdjustments(controlRateConfig_t *controlRateConfig)
const adjustmentConfig_t *adjustmentConfig = &defaultAdjustmentConfigs[adjustmentRange->adjustmentConfig - ADJUSTMENT_FUNCTION_CONFIG_INDEX_OFFSET];
const adjustmentFunction_e adjustmentFunction = adjustmentConfig->adjustmentFunction;
if (!isRangeActive(adjustmentRange->auxChannelIndex, &adjustmentRange->range) ||
adjustmentFunction == ADJUSTMENT_NONE ||
rcData[channelIndex] == adjustmentState->lastRcData) {
continue;
}
adjustmentState->lastRcData = rcData[channelIndex];
if (isRangeActive(adjustmentRange->auxChannelIndex, &adjustmentRange->range) &&
adjustmentFunction != ADJUSTMENT_NONE) {
if (rcData[channelIndex] != adjustmentState->lastRcData) {
int newValue = -1;
if (adjustmentConfig->mode == ADJUSTMENT_MODE_SELECT) {
@ -815,12 +811,16 @@ static void processContinuosAdjustments(controlRateConfig_t *controlRateConfig)
pidInitConfig(currentPidProfile);
}
}
#if defined(USE_OSD) && defined(USE_OSD_ADJUSTMENTS)
updateOsdAdjustmentData(newValue, adjustmentConfig->adjustmentFunction);
#else
UNUSED(newValue);
#endif
adjustmentState->lastRcData = rcData[channelIndex];
}
} else {
adjustmentState->lastRcData = 0;
}
}
}