MAVLink Mission Interface

The MAVLink mission interface is a data format for storing missions to be carried out by micro air vehicles. The items of the data format can be transmitted as mission using the Waypoint Protocol or as individual action using the MAVLink COMMAND message.

Each mission item consists of:

  • Command ID, defined by ENUM MAV_CMD
    • NAV commands describe navigation related commands
    • CONDITION commands can be used to change the execution of the mission based on a condition
    • DO commands describe immediate actions
  • Parameters 1-4. These parameters are generic and are also transmitted by the COMMAND message.
  • Parameters 5-7. These parameter slots are used for position in the NAV command messages (x/y/z or latitude/longitude/altitude). For mission commands not requiring position data they can additionally be used for generic parameters

This generic structure allows to execute complex missions on the MAV, but is yet easier to implement and transmit than e.g. XML or code based missions. The execution of the mission is in the sole responsibility of the MAV, MAVLink just defines the mission format and standardizes the communication protocol.

Mission Format Definition

The current / up-to-date mission specs are listed on the MAVLink common message format page:


This example will demonstrate how the mission interface specifications allow to control the autonomous flight of a MAV as well as to execute immediate actions on user request.

Autonomous Flight

We assume the MAV has to carry out the following mission:

  • Start from a ground location from the operator's hand at 30 deg climb angle until it reaches the safe flight altitude of 40m
  • Continue to waiting waypoint 1. Loiter in a 60 m radius around the waypoint for two minutes
  • Fly a sequence of five GPS positions
  • Land at a certain GPS position