I hope you’re all doing well. I am currently working on a project that involves modifying the behavior of my UAV’s RTL (Return to Launch) mode in ArduPilot. Specifically, I want to disable the RTL mode and keep the vehicle in its current mode (e.g., AUTO or GUIDED) without any automatic returns to the home location.
I’ve been diving into the ArduPilot documentation and exploring various parameters, but I’m facing some challenges in achieving this modification. It seems that the RTL mode is quite persistent and automatically triggers under certain conditions.
I’ve considered adjusting parameters like ALT_HOLD_RTL and RTL_CLIMB_MIN, but I’m not entirely sure if these are the right parameters to modify for my goal.
If any experienced members of the community could provide guidance on which parameters to modify or other strategies to disable the RTL mode, I would greatly appreciate it. Any insights, tips, or examples would be incredibly helpful in getting me on the right track.
Thank you all in advance for your assistance. Your expertise and advice will be instrumental in helping me achieve the desired behavior for my UAV project.
What do you want to achieve exactly? What are the scenarios when you do not want RTL engaged?
Disabling RTL completely is not the best idea since it is an important safety feature. Let’s see in what cases you want to override RTL and see how these cases can be handled.
obstaclesImagine you’re a professional videographer using drones to capture stunning aerial footage for cinematic projects via specific camera model. In this scenario, you might want to consider disabling RTL for the following reasons:
Seamless Cinematic Shots: When shooting cinematic sequences, maintaining uninterrupted shots is crucial. Disabling RTL could prevent unexpected automatic returns that could disrupt the flow of your video, ensuring you capture smooth and consistent visuals. (our agency have faced this point many times).
Precision in Narration: Aerial videography often tells a story through visuals. You might be following a specific script or narration in your video. Disabling RTL allows you to have complete control over the timing of aerial maneuvers, ensuring that your shots align perfectly with the narration.
Creative Freedom: As a creative professional, you want the flexibility to explore creative angles and perspectives. Disabling RTL enables you to choreograph intricate flight paths that match your artistic vision without being constrained by automatic return behavior.
Focus on Filming: Managing the UAV’s behavior during filming can be distracting. By disabling RTL, you can focus entirely on framing and capturing breathtaking shots, without worrying about the UAV initiating an automatic return at an inconvenient moment.
Risk Management: the area we want to cover in our video production is covered by us all the waypoints are safe so we don’t have to be worried about RTL that’s why we want to disable it at all.
could you please tell me where i customize these parameters to make disabled by default i don’t want to do it all the time, should i write it a custom plugin or there’s any file that stored default parameters in the source code?
The parameters I mentioned all stay set in the combination you choose. BUT in your scenarios there is still no important justification mentioned for disabling failsafes, as RTL is only ever initiated for specific reasons and doesnt just happen randomly. Disabling RTL just means the copter is more likely to crash or try to land in some unexpected location.
In all scenarios you mention the copter should be improved to suit the purpose, not compromised for the sake of the shot - it might be you need a bigger battery or more efficient motors and props, or a better radio system. Even improved tuning can slightly extend flight time.
Videography that requires continuity needs the correct equipment for the job, and skill in setting up cameras and stitching video segments. The same applies to stills of course.
Many a drone operator has had to return to site to take additional shots or more footage, so things like time of day, lenses and exposure (plus more) are all important. What I mean is: it’s not always possible to get all footage in one take.
In this case the operator compromised the battery failsafe levels to cause this reportable incident.
A search will turn up the official report.
Actually the task i have to do is disabling RTL for my Agency we’re tried to many other ways but i figure it out that RTL should be disabled then we can achieve the results that we want to i’ve mentioned the details above.
Could you please guide me on how to disable it altogether, even in emergencies? The area we use it for is all covered. We have considered the injuries that might happen, so there’s nothing to be worried about.
I listed the parameters already, just check them in the Full Parameter list, descriptions are even provided in there.
Just set any you dont want to use to 0
I still say it’s a bad idea to disable failsafes, better to improve the copter so it performs the requirements.
EDIT:
It would actually be better for us to know what failsafes are triggering and under what circumstances - we might be able to help more.
For example if you are using Auto missions or Guided mode then these highlighted options could be all you need in FS_OPTIONS
I have seen companies disable fail-safes on professional level multirotors for all sorts of reasons and it always ended badly.
Not using proper Ardupilot failsafes for RC can go badly wrong in ways you wont think of.
I had to examine a machine for a company that used the RC receiver failsafe to set a mode rather than using failsafe mode since they thought that RTL is RTL what difference is there if we engage it or failsafe does. Until one day they got low on battery and tried to land the vehicle. But every time it went out of sight it would lose RC and the receiver would move the mode channel to RTL, causing the vehicle to climb a little to regain RC that then switched it back to landing mode, then lose RC and repeat just behind a treeline. Because they were mode switching with RC it was overriding the battery failsafe, eventually causing the machine to fall out the sky costing thousands in repairs. if they had used the proper failsafe the battery failsafe would have overridden the RC failsafe and it would have continued to land but the command coming from the receiver was just overriding it causing it to mode switch until the battery ran out…
The failsafe procedures are there for a reason, you should use them. It doesn’t have to RTL, but the machine needs to know something is wrong. You don’t want to just mask the issue to the flight controller.
You keep mentioning it disrupting work flow, you keep missing the fact these are emergency procedures, it won’t kick in unless something is wrong. It’s not some random thing that happens, if you’re getting random RTL then you need to look into why.
Trying to disable it is the equivalent of putting tape over the check engine light in the car, just so you don’t need to look at it.
Thanks Dear GeoMuir,
I truly appreciate your insights and the experiences you’ve shared I want to assure you that we’ve thoroughly considered the risks and consequences associated with disabling failsafe systems. Our decision to proceed with disabling RTL in our specific use case comes after careful consideration of our operational requirements, workflow, and safety measures. While we understand and acknowledge the critical role of failsafes in ensuring safe operations, our unique circumstances have led us to this decision.
We’re fully aware that failsafes are not random interventions but rather critical emergency procedures. However, our operational constraints and requirements have led us to seek this particular configuration. we would be very greatful if you have any advice regarding Disabling the RTL.