mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-19 22:35:23 +03:00
GPS Rescue Bugfix, add a failsafe debug, refactor stick deflection (#12195)
* simple failsafe debug * simplify areSticksActive use getRcDeflectionAbs and fix unitTest * bugfix to require stick input to re-take control * small refactor
This commit is contained in:
parent
e5c53597a3
commit
4454286165
7 changed files with 30 additions and 30 deletions
|
@ -683,18 +683,7 @@ static bool canUpdateVTX(void)
|
|||
bool areSticksActive(uint8_t stickPercentLimit)
|
||||
{
|
||||
for (int axis = FD_ROLL; axis <= FD_YAW; axis ++) {
|
||||
const uint8_t deadband = axis == FD_YAW ? rcControlsConfig()->yaw_deadband : rcControlsConfig()->deadband;
|
||||
uint8_t stickPercent = 0;
|
||||
if ((rcData[axis] >= PWM_RANGE_MAX) || (rcData[axis] <= PWM_RANGE_MIN)) {
|
||||
stickPercent = 100;
|
||||
} else {
|
||||
if (rcData[axis] > (rxConfig()->midrc + deadband)) {
|
||||
stickPercent = ((rcData[axis] - rxConfig()->midrc - deadband) * 100) / (PWM_RANGE_MAX - rxConfig()->midrc - deadband);
|
||||
} else if (rcData[axis] < (rxConfig()->midrc - deadband)) {
|
||||
stickPercent = ((rxConfig()->midrc - deadband - rcData[axis]) * 100) / (rxConfig()->midrc - deadband - PWM_RANGE_MIN);
|
||||
}
|
||||
}
|
||||
if (stickPercent >= stickPercentLimit) {
|
||||
if (getRcDeflectionAbs(axis) * 100.f >= stickPercentLimit) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue