If you set a disarm switch it will disarm in-flight entering the famous “rapid return to earth” mode. You can test that in the Simulator. Switch Arming is best used for Rovers
I’ve tried forcing a disarm in the simulator via Mission Planner Actions, and it disarms in flight. But don’t know how to simulate flicking a switch to test the ArmDisarm RCn_OPTION parameter.
I did some more simulator tests to establish what the different stop/arm/disarm functions do, and have established the following. Please correct me if I’m mistaken about any of this.
Emergency stop: Immediately kills motors, drone remains armed and will come back to life if emergency stop is disengaged. If drone is disarmed, prevents arming via pre-arm checks. Disarm: Disarms drone, stopping motors, requires pre-arm checks to pass before re-arming
Both functions work in flight.
RCn_OPTION
Name
Low
High
Notes
31
Motor Emergency Stop
Motors run normally
Kills motors
See above for interactions with armed/disarmed state
Disarm will work in flight. Working with students I’ve seen it happen. It doesn’t end well. As a result I use the Arm/Emergency Stop function, that way if a switch is accidentally triggered in flight there is a slight chance it can be reactivated before the planet smashes into the drone. You just need to remember that when you land and flip the switch the drone doesn’t disarm right away, it takes a few seconds.
I found it was particularly difficult (or impossible) to disarm in flight unless you have an arm/disarm switch with no “interlock”.
Also the emergency motor stop can be reverted and the copter could still potentially recover and fly, but disarm cannot be recovered from.
The other oddity that I’ve seen come up is the RTL Final Altitude - where the copter does an RTL for some reason then descends to a specified altitude and waits. The caveat is if the RTL is triggered by RC failsafe then the final altitude is ignored and the copter proceeds to land. The assumption would be that since there was an RC failsafe you may have no control, and the copter could be stuck at the final altitude until the battery voltage goes below Low or Critical level, so instead of waiting it should just land.
So from my point of view it’s important to have
battery failsafes fully configured correctly
arm/disarm requires two actions, like a second switch or 0% throttle (configured in the radio)
disarm and emergency motor stop all tested (on the ground)
RTL and settings all tested
a spring-centred throttle (at least for multirotors)
One interesting thing here it that for ELRS it is required to arm using a switch and there are explanations why in the docs. I do not like it but use a switch which is reversed i e I arm by flopping the switch to off.
I would much prefer using the emergency motor feature because of the possibility to immediately revert to flying but if I have understood the ELRS docs/forums right only arm/disarm is correct.
I have seen info about using a dummy function in the transmitter to avoid the switch but do not remember the setup. I certainly would be grateful for any comments about the ELRS switch requirements.
ELRS just needs to see a low/high on channel 5. So if you use Arm/Emergency stop on channel 5 that will satisfy ELRS, without the worry of inflight disarming. Once the drone is landed and motors are stopped, it will disarm in a few seconds on the ground.
I don’t think the ArduPilot wiki calls out Ch5 as adamantly as the ExpressLRS documentation does. It’s not technically incorrect for them to be so specific, but with some experience and practical knowledge, Ch5 can be repurposed successfully and still satisfy the ELRS intent as you suggest.
My reference was to the docs of ELRS and some discussions from an ELRS developer I read.quite some time ago. I should have mentioned the source better, sorry.