Mission With Landing Followed by Takeoff

Set DISARM_DELAY for longer than your Mission Command delay time. This will work in SITL anyway and I have run similar actual missions although none recently.

Yes you are right. There is now a parameter COM_DISARM_LAND that determines how long after a landing has been detected before the vehicle disarms. Now that it is set to longer than my mission DELAY it seems to work fine at least in SITL. Thanks for the suggestion.

That parameter is in the PX4 flight stack not Arducopter.

About parameter “DISARM_DELAY” you can set 0 to make it never Disarm. But I think for safety reason, I suggest we never set it 0. This is interesting issue if we can do take off after landing in one mission program. Can we really do it in Arducopter and also in Quadplane Vtol???

I have done it many times with Arducopter. Basic functionality.

Can we do it both with Vtol Quadplane and Arduplane (non quadplane)???

I’m not familiar with Vtol Quadplane, see what you can accomplish in SITL. Arduplane doesn’t have a Delay Mission Command. There is a CONDITION_DELAY but that delays DO commands.

@dkemxr I am trying to perform an auto mission with a landing followed by a takeoff and cannot get it to work. as soon as it lands, it will shutdown and disarm. In this thread, it implies that the disarm delay will keep it from disarming after landing until the delay command expires and starts the takeoff. I have found that it will disarm immediately without obeying the disarm delay. below is the mission. any help would be greatly appreciated!

Hi Bill-I have flown many missions like this but none recently and I am having the same problem in SITL trying it. I set DISARM_DELAY (0) and that didn’t do it. Then I thought perhaps there is some interaction with the AUTO_OPTIONS Parameter. But setting this to 3 didn’t help. It doesn’t seem to respect the DISARM_DELAY under any circumstances I have tried.

Thanks Dave! I appreciate you taking the time to confirm this.
@rmackay9 was there an intended change to the code to prevent taking off after a land command in a mission? Is this an issue with 4.1?

Hi @bnsgeyer, I tried the some missions with take-offs after landings. They seem to work fine on Copter 4.0.7. My disarm_delay was set to 10s while delay before the vehicle took off again was set to 5s. The vehicle seem to disarm almost immediately only after landing following a RTL at the end of those missions. Hope this is helpful.

https://www.dropbox.com/s/ovtsu64un4e28ba/video_1280.mp4?dl=0

@seth_poh that is helpful. It tells me that we broke it in 4.1. I will follow up with @rmackay9. I need 4.1 for the simulation work I am doing so I won’t be able to revert to 4.0.7. Thanks!

That is helpful. I’m sure I was running 3.6 of some flavor when I ran those missions and I know it used to work in SITL.

So I think this is a 4.1 issue and there is a new MIS_OPTIONS value that controls whether the vehicle disarms immediately after landing (the default) or stays armed again allowing the vehicle to take off again. Sorry for this change in behaviour but we also run into situations where users don’t want the mission to continue after a land or RTL.

By the way, the Copter-4.1 beta testing category is here and I monitor it regularly so if you bump into problems feel free to raise them in this category as well…

2 Likes

Thanks, I missed that parameter!

1 Like

If i enable Mis_options with bit 4 (continue after land)and disarm delay time to 0( disarm disabled)
SITL is working perfectly for multiple takeoff and landing scenario but entire flight it doesn’t disarmed as per disarm_delay set to 0…
Here my question is after drone landed motor will Stop or its still running at MOT_SPIN_ARM value in real time?

It will if it’s Armed. Set it 0 of you don’t want them to spin.

Just tested in sim on 4.3.6 and MIS_OPTIONS = 4 and DISARM_DELAY = 0 does not prevent the aircraft from disarming on land.

It seems like I need a takeoff command after the land command at somepoint in the auto mission. I was wanting to trigger a servo 60 seconds after touching down (but leave the aircraft armed while doing so) and then disarming. Don’t know if this is possible?

Although a bit jank - looks like the following workaround works for this use case:

DO_AUX_FUNCTION = 153 disarms the aircraft after the delay and servo command - thus it never reaches the takeoff.