ArduPilot / ArduPilot/ardupilot
Copter: Do a Brake before RTL for a radio FS event
- Dominant language
- C++
- Stars
- 15.9k
- Forks
- 21.4k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 119
Description
It is a common case for FPV fliers that radio contact may be lost for a short period of time. For example you could succinctly turn your RC antenna into a wrong position etc.
The RTL engages instantly in that cases. That is not very comfortably and makes no sense if your connection restored after one or two seconds.
Another concern is user have to re-switch fly mode to cancel RTL and set his previous mode. This requires for additional actions and could lead to a human mistake.
### Feature request
1. Copter to do a short pause (goto Brake mode for 3-5 seconds) on radio failsafe event before engage the RTL procedure.
2. If radio contact will be restored while that pause and user moves pitch/roll stick above some threshold then a previous fly mode should be set.
3. This feature shall be only applicable to an intelligent fly modes: Loiter, AltHold, PosHold etc.
So the another criteria for [2] is the throttle level that must be near mid level to cancel RTL.
4. Add new setting (flag) to select the fly modes this feature will be enabled for:
- 1 - enabled for Loiter
- 2 - enabled for AltHold
- 4 - enabled for PosHold
**Platform**
[x] Copter
Contributor guide
Research direction
Review the Copter radio-failsafe and RTL flow, along with Loiter, AltHold, and PosHold mode handling. Trace how restored radio input and pilot stick or throttle input are processed, then establish tests for the Brake pause, mode-selection flag, and cancellation behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- embedded-iot, robotics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100