inav icon indicating copy to clipboard operation
inav copied to clipboard

Allow fixed wing launch with throttle low option

Open breadoven opened this issue 4 years ago • 12 comments

Currently it's necessary to raise the throttle after arming to allow the motor to run during launch with a fixed wing, If you forget to raise the throttle the motor won't start and the launch will fail. Given that launch takes full control of the throttle and flight it seems reasonable it can do the same with the throttle stick maintained in the low position throughout the launch avoiding the need to set the throttle, avoiding failed launches.

This PR provides an option to allow launch with throttle low. After arming the plane can be launched without touching the throttle stick. It then completes the launch as it does currently until the launch sequence finishes based on launch timeout or max altitude limit at which point launch control is maintained with AUTO throttle set to Nav cruise throttle. This state ends immediately if a preselected Nav mode can be activated or after some time when the pilot decides to take control by raising the throttle or moving the pitch/roll stick.

Points to note:

  1. It's an optional setting, default set to OFF
  2. If launch idle is set to run motor or motor stop is off then the motor will start immediately when armed (unavoidable)
  3. In light of 2) this PR allows switched launch to be cancelled after arming but before launch by moving the Pitch/Roll stick (currently this only works if launch is enabled as a feature). Provides a quicker means of killing the motor than using the launch switch (throttle can't be used because it's already low).

This has been tested on the ground with various combinations of settings and works as expected although it's possible some combination may have been missed. Also tested in flight for both the "pilot takes control" and preselected Nav mode possibilities and works as expected.

As an aside it was noticed the following code in fwLaunchState_FW_LAUNCH_STATE_IN_PROGRESS is repeated twice. Is this a typo or intended ?

if (isLaunchMaxAltitudeReached()) {
     return FW_LAUNCH_EVENT_SUCCESS; // cancel the launch and do the FW_LAUNCH_STATE_FINISH state
 }

breadoven avatar Dec 07 '20 17:12 breadoven

Requirement to raise the throttle exists as an additional safety measure, so you don't accidentally trigger a launch by shaking the wing when moving it around after arming. Since 2.6 we have a distinct beeping pattern to remind the user of low throttle in launch mode, reducing the possibility of forgetting to raise the throttle stick.

I think this new setting adds complexity and also reduces the safety of the launch mode.

digitalentity avatar Dec 12 '20 20:12 digitalentity

Well leave it open for discussion see what others think. It is an option so if it doesn't suit your way of launching no need to use it. Personally I don't understand why anyone would arm without the plane ready to launch. If you can raise the throttle stick just before launch how is this any different to flicking the arming switch just before launch ? The launch beeper was changed but for me it was a bit too subtle although this isn't a problem if you build your own firmware, easily changed. Maybe this will prevent people suffering failed launches, I'm not sure it will. The benefit of this is there's nothing to forget ... other than arming perhaps.

breadoven avatar Dec 12 '20 21:12 breadoven

I agree, let's keep it open and collect other people's oppinions.

digitalentity avatar Dec 13 '20 09:12 digitalentity

I would like to see this merged. I can understand the safety issues mentioned, but that is what arming is for. In the same manner one can argue that after throttling up you are in the same danger. Which you will probably just get into to habit of doing after a while.

Having done several throws where the aircraft crashed 4 meters in front of me because I forgot to raise throttle, I find it makes sense to have the option. Additionally I always know that when armed the plane is hot. At anytime it can go and there is no extra “postarm”. Users should be educated to this, and not educated to feeling “safe” with an armed plane. I believe this is more consistent mentally.

harkal avatar Jan 27 '21 08:01 harkal

Personally, I have never had this problem, but that is probably because I use FXT Viper goggles that allow me to launch with my goggles on but still walk around. Other than that I can understand why people would want this feature and I agree that arming the plane is the moment from where the pilot needs to be mindful of a potentially dangerous plane.

However, one thing I really don't like about this is

  1. If launch idle is set to run motor or motor stop is off then the motor will start immediately when armed (unavoidable)

I would say enabling this feature should set the idle throttle to zero.

avsaase avatar Mar 20 '21 11:03 avsaase

Personally, I have never had this problem, but that is probably because I use FXT Viper goggles that allow me to launch with my goggles on but still walk around. Other than that I can understand why people would want this feature and I agree that arming the plane is the moment from where the pilot needs to be mindful of a potentially dangerous plane.

However, one thing I really don't like about this is

  1. If launch idle is set to run motor or motor stop is off then the motor will start immediately when armed (unavoidable)

I would say enabling this feature should set the idle throttle to zero.

But that would prevent it working if you want to use launch idle throttle.. Which is why it is an option. If this doesn't fit with the way you prefer to do things then you wouldn't use it. The new Prearm feature would be very useful here if you were concerned about accidental arming.

breadoven avatar Mar 20 '21 11:03 breadoven

This issue / pull request has been automatically marked as stale because it has not had any activity in 60 days. The resources of the INAV team are limited, and so we are asking for your help. This issue / pull request will be closed if no further activity occurs within two weeks.

stale[bot] avatar Jan 09 '22 01:01 stale[bot]

This issue / pull request has been automatically marked as stale because it has not had any activity in 60 days. The resources of the INAV team are limited, and so we are asking for your help. This issue / pull request will be closed if no further activity occurs within two weeks.

stale[bot] avatar Apr 18 '22 18:04 stale[bot]

@breadoven what should we do with this one?

DzikuVx avatar Apr 18 '22 18:04 DzikuVx

@breadoven what should we do with this one?

Maybe do a poll in discussions and decide based on that but only if there are more than so many responses, at least 10 perhaps ?

breadoven avatar Apr 19 '22 09:04 breadoven

Ah well, doesn't seem to be any great interest in this PR so closing.

breadoven avatar May 06 '22 21:05 breadoven

Let's keep it open just for future reference. Maybe it will become relevant

DzikuVx avatar May 07 '22 08:05 DzikuVx