Warning This microservices is still under construction (some initial thinking here). At the moment only base modes are standarized - custom mode/sub mode are currently completely at the discretion of the flight stack. We hope to also standardise some of those custom modes (hence the page).
Flight Modes define how the autopilot responds to user input and controls vehicle movement. This topic lists the baseline flight modes; flight modes that are commonly implemented by many MAVLink-enabled flight systems.
Flight stacks are not required to implement these modes, but if they do they must reference them using the same base and custom mode, and implement the same behaviour as described below. This allows a ground station or other MAVLink application to control the vehicle even if it is not familiar with the vehicle flight stack.
Note The tables below describe the "high level" behaviour for fixed wing and copter (table key is below). Minor variations in behaviour are expected for different implementations; but a user or GCS should not need more information than provided here to enable or provide a UI for the mode.
Flight modes are set using MAV_CMD_DO_SET_MODE, specifying a "base" mode (MAV_MODE) and custom mode/sub-mode. The MAV_MODE
is itself a predefined OR of mode definitions in MAV_MODE_FLAG which define the "base" behaviour.
The base modes are:
- Manual: Direct pass-through of pilot (RC) input to outputs. This only applies to planes (multicopters require stabilization/attitude control).
- Stabilized: Pilot in the loop with attitude control. Roll/pitch are controlled by stick position, yaw rate by stick position.
- Guided: Pilot in the loop with position control. X/Y velocity are controlled by stick position, yaw rate by stick position.
- Auto: Flight modes where vehicle is under autonomous control (e.g. missons, go-to commands, takeoff/land etc., and where RC control is not required (e.g. it is optional as in Orbit mode).
Mode | Base Mode | Roll & Pitch | Yaw | Throttle | Position Sensors | Summary |
---|---|---|---|---|---|---|
Position | Guided | S+ | S+ | S+ | RC mode where centered sticks put vehicle into straight and level flight where vehicle posture/attitude, altitude, and the straight line vehicle path are maintained against wind (and other forces).
|
|
Altitude | Stabilized | S (roll) S+(pitch) |
M | S+ |
RC mode like Stabilized mode but with altitude stabilization (centered sticks put vehicle into straight and level flight and maintain current altitude). The vehicle course is not maintained, and can drift due to wind.
|
|
Stabilized | Stabilized | S | M | M |
RC mode where centered RP sticks levels vehicle attitude (roll and pitch). The vehicle course and altitude are not maintained, and can drift due to wind.
|
|
Acro | Stabilized | Srate | Srate | M | RC mode for performing acrobatic maneuvers e.g. rolls, flips, stalls and acrobatic figures. RPY stick inputs are translated to angular rate commands that are stabilized by autopilot. Throttle is passed directly to the output mixer. |
|
Manual | Manual | M | M | M | RC mode where stick input is sent directly to the output mixer (for "fully" manual control). This is the only mode that overrides the FMU (commands are sent via the safety coprocessor). It provides a safety mechanism that allows full control of throttle, elevator, ailerons and rudder via RC in the event of an FMU firmware malfunction. |
|
Takeoff | Auto | Vehicle initiates the takeoff sequence using either catapult/hand-launch mode or runway takeoff mode (in the current direction). | ||||
Land | Auto | Vehicle initiates a fixed-wing landing sequence. | ||||
Hold | Auto | Vehicle circles around the GPS hold position at the current altitude. | ||||
Return | Auto | Vehicle ascends to a safe height and then returns to its home position and circles. | ||||
Mission | Auto | Vehicle executes a predefined mission/flight plan that has been uploaded to the flight controller. | ||||
Offboard | Auto | Vehicle obeys attitude setpoints provided over MAVLink (often from a companion computer connected via serial cable or wifi). |
Mode | Base Mode | Roll & Pitch | Yaw | Throttle | Position Sensors | Summary |
---|---|---|---|---|---|---|
Position | Guided | S+ | Srate | S+ | RC mode where RPT sticks control speed in corresponding directions. Centered sticks level vehicle and hold it to fixed position and altitude against wind.
|
|
Altitude | Stabilized | S | Srate | S+ | RC mode like Manual/Stabilized mode but with altitude stabilization (centered sticks level vehicle and hold it to fixed altitude). The horizontal position of the vehicle can move due to wind (or pre-existing momentum).
|
|
Manual/ Stabilized | Stabilized | S | Srate | M | RC mode where centered sticks level vehicle (only - position is not stabilized).
|
|
Rattitude | Stabilized | S or Srate | Srate | M |
RC mode that allows pilots to fly using Manual/Stabilized flight most of the time, but still perform Acro mode-style flips and tricks when desired. Centered sticks level vehicle.
|
|
Acro | Stabilized | Srate | Srate | M | RC mode for performing acrobatic maneuvers e.g. flips, rolls and loops. RC RPY stick inputs control the rate of angular rotation around the respective axes. Throttle is passed directly to the output mixer. When sticks are centered the vehicle will stop rotating, but remain in its current orientation (e.g. possibly inverted) and moving according to its current momentum. |
|
Orbit | Guided | - | - | - | GCS-initiated guided mode for flying a circle, always facing the center. Mode must be started from GCS, specifying center point and initial radius and altitude. RC control is optional, and can be used to set the orbit altitude, radius, speed, and direction. Altitude control is the same as for Position Mode. |
|
Takeoff | Auto | Vehicle ascends to takeoff altitude and holds position. | ||||
Land | Auto | Vehicle lands at the position where the mode was engaged. | ||||
Hold | Auto | Vehicle hovers at the current GPS position and altitude. | ||||
Return | Auto | Vehicle ascends to a safe height and then returns to its home position and lands. | ||||
Mission | Auto | Vehicle executes a predefined mission/flight plan that has been uploaded to the flight controller. | ||||
Follow Me | Auto | Vehicle autonomously follows a user using an Android phone/tablet running QGC. | ||||
Offboard | Auto | Vehicle obeys a position, velocity or attitude setpoints provided over MAVLink (often from a companion computer connected via serial cable or wifi). |
VTOL vehicles may support both fixed-wing and multicopter flight modes, executing them based on the current vehicle mode (MC or FW).
Key for understanding the table is as follows:
Abbreviations:
- RPY: Roll, Pitch, Yaw
- RPT: Roll, Pitch Throttle