ArduPilot / ArduPilot/ardupilot

Toggling safety switch state by MP can kill all motor outputs.

Open
#22,009 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
15.9k
Forks
21.4k
Avg merge
3d 17h
Merged PRs (30d)
119

Description

How to reproduce the problem(Tested Copter v4.2):
1. Take off the aircraft.
2. Press "Ctrl+F" in MP.
3. Press the button "Toggle Saftey Switch".
4. The aircraft crashes.

If the physical safety switch is shorted during a flight, nothing bad will happen as long as the parameter BRD_SAFETYOPTION is set properly. However, using MP to toggle safety switch behaves differently. I think it is confusing and can be dangerous for someone who needs the function.

The safety switch should not be allowed to be activated in flight via mavlink commands.

**Platform**
[ ] All
[ ] AntennaTracker
[x] Copter
[ ] Plane
[ ] Rover
[ ] Submarine

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue on Copter v4.2 with Mission Planner: take off, open Ctrl+F, and use “Toggle Safety Switch.” Trace the MAVLink command handling for safety-switch state changes and compare it with the physical switch behavior when BRD_SAFETYOPTION is configured. Done means an in-flight MAVLink request cannot activate the safety switch or disable motor outputs.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
embedded-iot, robotics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.