Browse Source

Changed arming procedure for fixedwing.

With Fixedwing and motorstop enable it auto arms as soon as throttle as above throttle_low.
Also disarming is disabled. (Must cycle power for it to disarm)

Without motorstop there is normal disarm/arming procedure.
master
oleost 9 years ago
committed by Konstantin (DigitalEntity) Sharlaimov
parent
commit
fc7f4d5179
  1. 20
      src/main/fc/rc_controls.c

20
src/main/fc/rc_controls.c

@ -195,17 +195,23 @@ void processRcStickPositions(rxConfig_t *rxConfig, throttleStatus_e throttleStat
return; return;
} }
if (isUsingSticksToArm) {
if (isUsingSticksToArm) {
// Disarm on throttle down + yaw // Disarm on throttle down + yaw
if (rcSticks == THR_LO + YAW_LO + PIT_CE + ROL_CE) { if (rcSticks == THR_LO + YAW_LO + PIT_CE + ROL_CE) {
// Dont disarm if fixedwing and motorstop
if (STATE(FIXED_WING) && feature(FEATURE_MOTOR_STOP)) {
return;
}
else {
if (ARMING_FLAG(ARMED)) if (ARMING_FLAG(ARMED))
mwDisarm(); mwDisarm();
else { else {
beeper(BEEPER_DISARM_REPEAT); // sound tone while stick held beeper(BEEPER_DISARM_REPEAT); // sound tone while stick held
rcDelayCommand = 0; // reset so disarm tone will repeat rcDelayCommand = 0; // reset so disarm tone will repeat
}
} }
} }
}
}
if (ARMING_FLAG(ARMED)) { if (ARMING_FLAG(ARMED)) {
// actions during armed // actions during armed
@ -246,6 +252,16 @@ void processRcStickPositions(rxConfig_t *rxConfig, throttleStatus_e throttleStat
} }
} }
// Auto arm on throttle when using fixedwing and motorstop
if (isUsingSticksToArm) {
if ((!throttleStatus == THROTTLE_LOW) && (STATE(FIXED_WING)) && (feature(FEATURE_MOTOR_STOP))) {
// Arm via YAW
mwArm();
return;
}
}
if (rcSticks == THR_HI + YAW_LO + PIT_LO + ROL_CE) { if (rcSticks == THR_HI + YAW_LO + PIT_LO + ROL_CE) {
// Calibrating Acc // Calibrating Acc
accSetCalibrationCycles(CALIBRATING_ACC_CYCLES); accSetCalibrationCycles(CALIBRATING_ACC_CYCLES);

Loading…
Cancel
Save