mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-25 17:25:20 +03:00
Improved handling of airmode detection.
This commit is contained in:
parent
d0432ae1e3
commit
6206f034a8
1 changed files with 5 additions and 1 deletions
|
@ -45,6 +45,8 @@
|
||||||
boxBitmask_t rcModeActivationMask; // one bit per mode defined in boxId_e
|
boxBitmask_t rcModeActivationMask; // one bit per mode defined in boxId_e
|
||||||
static boxBitmask_t stickyModesEverDisabled;
|
static boxBitmask_t stickyModesEverDisabled;
|
||||||
|
|
||||||
|
static bool airmodeActive;
|
||||||
|
|
||||||
PG_REGISTER_ARRAY(modeActivationCondition_t, MAX_MODE_ACTIVATION_CONDITION_COUNT, modeActivationConditions,
|
PG_REGISTER_ARRAY(modeActivationCondition_t, MAX_MODE_ACTIVATION_CONDITION_COUNT, modeActivationConditions,
|
||||||
PG_MODE_ACTIVATION_PROFILE, 1);
|
PG_MODE_ACTIVATION_PROFILE, 1);
|
||||||
|
|
||||||
|
@ -59,7 +61,7 @@ void rcModeUpdate(boxBitmask_t *newState)
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isAirmodeActive(void) {
|
bool isAirmodeActive(void) {
|
||||||
return (IS_RC_MODE_ACTIVE(BOXAIRMODE) || featureIsEnabled(FEATURE_AIRMODE));
|
return airmodeActive;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isRangeActive(uint8_t auxChannelIndex, const channelRange_t *range) {
|
bool isRangeActive(uint8_t auxChannelIndex, const channelRange_t *range) {
|
||||||
|
@ -136,6 +138,8 @@ void updateActivatedModes(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
rcModeUpdate(&newMask);
|
rcModeUpdate(&newMask);
|
||||||
|
|
||||||
|
airmodeActive = featureIsEnabled(FEATURE_AIRMODE) || IS_RC_MODE_ACTIVE(BOXAIRMODE);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isModeActivationConditionPresent(boxId_e modeId)
|
bool isModeActivationConditionPresent(boxId_e modeId)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue