MAVLink Protocol Version

This file has protocol version: 3. The version numbers range from 1-255.

0

MAVLink Type Enumerations

Micro air vehicle / autopilot classes. This identifies the individual model.

CMD ID Field Name Description

CMD ID Field Name Description

These values define the type of firmware release. These values indicate the first version or release of this type. For example the first alpha release would be 64, the second would be 65.

CMD ID Field Name Description

These flags encode the MAV mode.

CMD ID Field Name Description

These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not.

CMD ID Field Name Description

Override command, pauses current mission execution and moves immediately to a position

CMD ID Field Name Description

These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override.

CMD ID Field Name Description

CMD ID Field Name Description

CMD ID Field Name Description

These encode the sensors whose status is sent as part of the SYS_STATUS message.

CMD ID Field Name Description

CMD ID Field Name Description

CMD ID Field Name Description

CMD ID Field Name Description

CMD ID Field Name Description

Enumeration of possible mount operation modes

CMD ID Field Name Description

Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data.

CMD ID Field Name Description

THIS INTERFACE IS DEPRECATED AS OF JULY 2015. Please use MESSAGE_INTERVAL instead. A data stream is not a fixed set of messages, but rather a recommendation to the autopilot software. Individual autopilots may or may not obey the recommended messages.

CMD ID Field Name Description

The ROI (region of interest) for the vehicle. This can be be used by the vehicle for camera/vehicle attitude alignment (see MAV_CMD_NAV_ROI).

CMD ID Field Name Description

ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission.

CMD ID Field Name Description

Specifies the datatype of a MAVLink parameter.

CMD ID Field Name Description

result from a mavlink command

CMD ID Field Name Description

result in a mavlink mission ack

CMD ID Field Name Description

Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/.

CMD ID Field Name Description

Power supply status flags (bitmask)

CMD ID Field Name Description

SERIAL_CONTROL device types

CMD ID Field Name Description

SERIAL_CONTROL flags (bitmask)

CMD ID Field Name Description

Enumeration of distance sensor types

CMD ID Field Name Description

Enumeration of sensor orientation, according to its rotations

CMD ID Field Name Description

Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability.

CMD ID Field Name Description

Type of mission items being requested/sent in mission protocol.

CMD ID Field Name Description

Enumeration of estimator types

CMD ID Field Name Description

Enumeration of battery types

CMD ID Field Name Description

Enumeration of battery functions

CMD ID Field Name Description

Enumeration of VTOL states

CMD ID Field Name Description

Enumeration of landed detector states

CMD ID Field Name Description

Enumeration of the ADSB altimeter types

CMD ID Field Name Description

ADSB classification for the type of vehicle emitting the transponder signal

CMD ID Field Name Description

These flags indicate status such as data validity of each data source. Set = data valid

CMD ID Field Name Description

Bitmask of options for the MAV_CMD_DO_REPOSITION

CMD ID Field Name Description

Flags in EKF_STATUS message

CMD ID Field Name Description

CMD ID Field Name Description

CMD ID Field Name Description

Possible actions an aircraft can take to avoid a collision.

CMD ID Field Name Description

Aircraft-rated danger from this threat.

CMD ID Field Name Description

Source of information about this collision.

CMD ID Field Name Description

Type of GPS fix

CMD ID Field Name Description

MAVLink Messages

The heartbeat message shows that a system is present and responding. The type of the MAV and Autopilot hardware allow the receiving system to treat further messages from this system appropriate (e.g. by laying out the user interface based on the autopilot).

Field Name Type Description

The general system state. If the system is following the MAVLink standard, the system state is mainly defined by three orthogonal states/modes: The system mode, which is either LOCKED (motors shut down and locked), MANUAL (system under RC control), GUIDED (system with autonomous position control, position setpoint controlled manually) or AUTO (system guided by path/waypoint planner). The NAV_MODE defined the current flight state: LIFTOFF (often an open-loop maneuver), LANDING, WAYPOINTS or VECTOR. This represents the internal navigation state machine. The system status shows wether the system is currently active or not and if an emergency occured. During the CRITICAL and EMERGENCY states the MAV is still considered to be active, but should start emergency procedures autonomously. After a failure occured it should first move from active to critical to allow manual intervention and then move to emergency after a certain timeout.

Field Name Type Description

The system time is the time of the master clock, typically the computer clock of the main onboard computer.

Field Name Type Description

A ping message either requesting or responding to a ping. This allows to measure the system latencies, including serial port, radio modem and UDP connections.

Field Name Type Description

Request to control this MAV

Field Name Type Description

Accept / deny control of this MAV

Field Name Type Description

Emit an encrypted signature / key identifying this system. PLEASE NOTE: This protocol has been kept simple, so transmitting the key requires an encrypted channel for true safety.

Field Name Type Description

THIS INTERFACE IS DEPRECATED. USE COMMAND_LONG with MAV_CMD_DO_SET_MODE INSTEAD. Set the system mode, as defined by enum MAV_MODE. There is no target component id as the mode is by definition for the overall aircraft, not only for one component.

Field Name Type Description

Request to read the onboard parameter with the param_id string id. Onboard parameters are stored as key[const char*] -> value[float]. This allows to send a parameter to any other component (such as the GCS) without the need of previous knowledge of possible parameter names. Thus the same GCS can store different parameters for different autopilots. See also http://qgroundcontrol.org/parameter_interface for a full documentation of QGroundControl and IMU code.

Field Name Type Description

Request all parameters of this component. After this request, all parameters are emitted.

Field Name Type Description

Emit the value of a onboard parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows him to re-request missing parameters after a loss or timeout.

Field Name Type Description

Set a parameter value TEMPORARILY to RAM. It will be reset to default on system reboot. Send the ACTION MAV_ACTION_STORAGE_WRITE to PERMANENTLY write the RAM contents to EEPROM. IMPORTANT: The receiving component should acknowledge the new parameter value by sending a param_value message to all communication partners. This will also ensure that multiple GCS all have an up-to-date list of all parameters. If the sending GCS did not receive a PARAM_VALUE message within its timeout time, it should re-send the PARAM_SET message.

Field Name Type Description

The global position, as returned by the Global Positioning System (GPS). This is NOT the global position estimate of the system, but rather a RAW sensor value. See message GLOBAL_POSITION for the global position estimate. Coordinate frame is right-handed, Z-axis up (GPS frame).

Field Name Type Description

The positioning status, as reported by GPS. This message is intended to display status information about each satellite visible to the receiver. See message GLOBAL_POSITION for the global position estimate. This message can contain information for up to 20 satellites.

Field Name Type Description

The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units

Field Name Type Description

The RAW IMU readings for the usual 9DOF sensor setup. This message should always contain the true raw values without any scaling to allow data capture and system debugging.

Field Name Type Description

The RAW pressure readings for the typical setup of one absolute pressure and one differential pressure sensor. The sensor values should be the raw, UNSCALED ADC values.

Field Name Type Description

The pressure readings for the typical setup of one absolute and differential pressure sensor. The units are as specified in each field.

Field Name Type Description

The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right).

Field Name Type Description

The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0).

Field Name Type Description

The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention)

Field Name Type Description

The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient.

Field Name Type Description

The scaled values of the RC channels received. (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to UINT16_MAX.

Field Name Type Description

The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification.

Field Name Type Description

The RAW values of the servo outputs (for RC input from the remote, use the RC_CHANNELS messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%.

Field Name Type Description

Request a partial list of mission items from the system/component. http://qgroundcontrol.org/mavlink/waypoint_protocol. If start and end index are the same, just send one waypoint.

Field Name Type Description

This message is sent to the MAV to write a partial list. If start index == end index, only one item will be transmitted / updated. If the start index is NOT 0 and above the current list size, this request should be REJECTED!

Field Name Type Description

Message encoding a mission item. This message is emitted to announce the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). See also http://qgroundcontrol.org/mavlink/waypoint_protocol.

Field Name Type Description

Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM message. http://qgroundcontrol.org/mavlink/waypoint_protocol

Field Name Type Description

Set the mission item with sequence number seq as current item. This means that the MAV will continue to this mission item on the shortest path (not following the mission items in-between).

Field Name Type Description

Message that announces the sequence number of the current active mission item. The MAV will fly towards this mission item.

Field Name Type Description

Request the overall list of mission items from the system/component.

Field Name Type Description

This message is emitted as response to MISSION_REQUEST_LIST by the MAV and to initiate a write transaction. The GCS can then request the individual mission item based on the knowledge of the total number of MISSIONs.

Field Name Type Description

Delete all mission items at once.

Field Name Type Description

A certain mission item has been reached. The system will either hold this position (or circle on the orbit) or (if the autocontinue on the WP was set) continue to the next MISSION.

Field Name Type Description

Ack message during MISSION handling. The type field states if this message is a positive ack (type=0) or if an error happened (type=non-zero).

Field Name Type Description

As local waypoints exist, the global MISSION reference allows to transform between the local coordinate frame and the global (GPS) coordinate frame. This can be necessary when e.g. in- and outdoor settings are connected and the MAV should move from in- to outdoor.

Field Name Type Description

Once the MAV sets a new GPS-Local correspondence, this message announces the origin (0,0,0) position

Field Name Type Description

Bind a RC channel to a parameter. The parameter should change accoding to the RC channel value.

Field Name Type Description

Request the information of the mission item with the sequence number seq. The response of the system to this message should be a MISSION_ITEM_INT message. http://qgroundcontrol.org/mavlink/waypoint_protocol

Field Name Type Description

Set a safety zone (volume), which is defined by two corners of a cube. This message can be used to tell the MAV which setpoints/MISSIONs to accept and which to reject. Safety areas are often enforced by national or competition regulations.

Field Name Type Description

Read out the safety zone the MAV currently assumes.

Field Name Type Description

The attitude in the aeronautical frame (right-handed, Z-down, X-front, Y-right), expressed as quaternion. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0).

Field Name Type Description

The state of the fixed wing navigation and position controller.

Field Name Type Description

The filtered global position (e.g. fused GPS and accelerometers). The position is in GPS-frame (right-handed, Z-up). It is designed as scaled integer message since the resolution of float is not sufficient. NOTE: This message is intended for onboard networks / companion computers and higher-bandwidth links and optimized for accuracy and completeness. Please use the GLOBAL_POSITION_INT message for a minimal subset.

Field Name Type Description

The filtered local position (e.g. fused computer vision and accelerometers). Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention)

Field Name Type Description

The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification.

Field Name Type Description

THIS INTERFACE IS DEPRECATED. USE SET_MESSAGE_INTERVAL INSTEAD.

Field Name Type Description

THIS INTERFACE IS DEPRECATED. USE MESSAGE_INTERVAL INSTEAD.

Field Name Type Description

This message provides an API for manually controlling the vehicle using standard joystick axes nomenclature, along with a joystick-like input device. Unused axes can be disabled an buttons are also transmit as boolean values of their

Field Name Type Description

The RAW values of the RC channels sent to the MAV to override info received from the RC radio. A value of UINT16_MAX means no change to that channel. A value of 0 means control of that channel should be released back to the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification.

Field Name Type Description

Message encoding a mission item. This message is emitted to announce the presence of a mission item and to set a mission item on the system. The mission item can be either in x, y, z meters (type: LOCAL) or x:lat, y:lon, z:altitude. Local frame is Z-down, right handed (NED), global frame is Z-up, right handed (ENU). See alsohttp://qgroundcontrol.org/mavlink/waypoint_protocol.

Field Name Type Description

Metrics typically displayed on a HUD for fixed wing aircraft

Field Name Type Description

Message encoding a command with parameters as scaled integers. Scaling depends on the actual command value.

Field Name Type Description

Send a command with up to seven parameters to the MAV

Field Name Type Description

Report status of a command. Includes feedback wether the command was executed.

Field Name Type Description

Setpoint in roll, pitch, yaw and thrust from the operator

Field Name Type Description

Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system).

Field Name Type Description

Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a SET_ATTITUDE_TARGET message if the vehicle is being controlled this way.

Field Name Type Description

Sets a desired vehicle position in a local north-east-down coordinate frame. Used by an external controller to command the vehicle (manual controller or other system).

Field Name Type Description

Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_LOCAL_NED if the vehicle is being controlled this way.

Field Name Type Description

Sets a desired vehicle position, velocity, and/or acceleration in a global coordinate system (WGS84). Used by an external controller to command the vehicle (manual controller or other system).

Field Name Type Description

Reports the current commanded vehicle position, velocity, and acceleration as specified by the autopilot. This should match the commands sent in SET_POSITION_TARGET_GLOBAL_INT if the vehicle is being controlled this way.

Field Name Type Description

The offset in X, Y, Z and yaw between the LOCAL_POSITION_NED messages of MAV X and the global coordinate frame in NED coordinates. Coordinate frame is right-handed, Z-axis down (aeronautical frame, NED / north-east-down convention)

Field Name Type Description

DEPRECATED PACKET! Suffers from missing airspeed fields and singularities due to Euler angles. Please use HIL_STATE_QUATERNION instead. Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations.

Field Name Type Description

Sent from autopilot to simulation. Hardware in the loop control outputs

Field Name Type Description

Sent from simulation to autopilot. The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification.

Field Name Type Description

Sent from autopilot to simulation. Hardware in the loop control outputs (replacement for HIL_CONTROLS)

Field Name Type Description

Optical flow from a flow sensor (e.g. optical mouse sensor)

Field Name Type Description

Field Name Type Description

Field Name Type Description

Field Name Type Description

Field Name Type Description

The IMU readings in SI units in NED body frame

Field Name Type Description

Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor)

Field Name Type Description

The IMU readings in SI units in NED body frame

Field Name Type Description

Status of simulation environment, if used

Field Name Type Description

Status generated by radio and injected into MAVLink stream.

Field Name Type Description

File transfer message

Field Name Type Description

Time synchronization message.

Field Name Type Description

Camera-IMU triggering and synchronisation message.

Field Name Type Description

The global position, as returned by the Global Positioning System (GPS). This is NOT the global position estimate of the sytem, but rather a RAW sensor value. See message GLOBAL_POSITION for the global position estimate. Coordinate frame is right-handed, Z-axis up (GPS frame).

Field Name Type Description

Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor)

Field Name Type Description

Sent from simulation to autopilot, avoids in contrast to HIL_STATE singularities. This packet is useful for high throughput applications such as hardware in the loop simulations.

Field Name Type Description

The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units

Field Name Type Description

Request a list of available logs. On some systems calling this may stop on-board logging until LOG_REQUEST_END is called.

Field Name Type Description

LOG_ENTRY ( #118 )

Reply to LOG_REQUEST_LIST

Field Name Type Description

Request a chunk of a log

Field Name Type Description

Reply to LOG_REQUEST_DATA

Field Name Type Description

Erase all logs

Field Name Type Description

Stop log transfer and resume normal logging

Field Name Type Description

data for injecting into the onboard GPS (used for DGPS)

Field Name Type Description

Second GPS data. Coordinate frame is right-handed, Z-axis up (GPS frame).

Field Name Type Description

Power supply status

Field Name Type Description

Control a serial port. This can be used for raw access to an onboard serial peripheral such as a GPS or telemetry radio. It is designed to make it possible to update the devices firmware via MAVLink messages or change the devices settings. A message with zero bytes can be used to change just the baudrate.

Field Name Type Description

RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting

Field Name Type Description

RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting

Field Name Type Description

The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units

Field Name Type Description

Field Name Type Description

Field Name Type Description

Field Name Type Description

Request for terrain data and terrain status

Field Name Type Description

Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a TERRAIN_REQUEST

Field Name Type Description

Request that the vehicle report terrain height at the given location. Used by GCS to check if vehicle has all terrain data needed for a mission.

Field Name Type Description

Response from a TERRAIN_CHECK request

Field Name Type Description

Barometer readings for 2nd barometer

Field Name Type Description

Motion capture attitude and position

Field Name Type Description

Set the vehicle attitude and body angular rates.

Field Name Type Description

Set the vehicle attitude and body angular rates.

Field Name Type Description

The current system altitude.

Field Name Type Description

The autopilot is requesting a resource (file, binary, other type of data)

Field Name Type Description

Barometer readings for 3rd barometer

Field Name Type Description

current motion information from a designated system

Field Name Type Description

The smoothed, monotonic system state used to feed the control loops of the system.

Field Name Type Description

Battery information

Field Name Type Description

Version and capability of autopilot software

Field Name Type Description

The location of a landing area captured from a downward facing camera

Field Name Type Description

Estimator status message including flags, innovation test ratios and estimated accuracies. The flags message is an integer bitmask containing information on which EKF outputs are valid. See the ESTIMATOR_STATUS_FLAGS enum definition for further information. The innovaton test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovaton test ratios should be below 0.5 with occasional values up to 1.0. Values greater than 1.0 should be rare under normal operation and indicate that a measurement has been rejected by the filter. The user should be notified if an innovation test ratio greater than 1.0 is recorded. Notifications for values in the range between 0.5 and 1.0 should be optional and controllable by the user.

Field Name Type Description

Field Name Type Description

GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the sytem.

Field Name Type Description

RTCM message for injecting into the onboard GPS (used for DGPS)

Field Name Type Description

Message appropriate for high latency connections like Iridium

Field Name Type Description

Vibration levels and accelerometer clipping

Field Name Type Description

This message can be requested by sending the MAV_CMD_GET_HOME_POSITION command. The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitely set by the operator before or after. The position the system will return to and land on. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector.

Field Name Type Description

The position the system will return to and land on. The position is set automatically by the system during the takeoff in case it was not explicitely set by the operator before or after. The global and local positions encode the position in the respective coordinate frames, while the q parameter encodes the orientation of the surface. Under normal conditions it describes the heading and terrain slope, which can be used by the aircraft to adjust the approach. The approach 3D vector describes the point to which the system should fly in normal flight mode and then perform a landing sequence along the vector.

Field Name Type Description

This interface replaces DATA_STREAM

Field Name Type Description

Provides state for additional features

Field Name Type Description

The location and information of an ADSB vehicle

Field Name Type Description

Information about a potential collision

Field Name Type Description

Message implementing parts of the V2 payload specs in V1 frames for transitional support.

Field Name Type Description

Send raw controller memory. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output.

Field Name Type Description

Field Name Type Description

Send a key-value pair as float. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output.

Field Name Type Description

Send a key-value pair as integer. The use of this message is discouraged for normal packets, but a quite efficient way for testing new messages and getting experimental debug output.

Field Name Type Description

Status text message. These messages are printed in yellow in the COMM console of QGroundControl. WARNING: They consume quite some bandwidth, so use only for important status and error messages. If implemented wisely, these messages are buffered on the MCU and sent only at a limited rate (e.g. 10 Hz).

Field Name Type Description

Send a debug value. The index is used to discriminate between values. These values show up in the plot of QGroundControl as DEBUG N.

Field Name Type Description

Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing

Field Name Type Description

Report button state change

Field Name Type Description

Control vehicle tone generation (buzzer)

Field Name Type Description

WIP: Information about a camera

Field Name Type Description

WIP: Settings of a camera, can be requested using MAV_CMD_REQUEST_CAMERA_SETTINGS and written using MAV_CMD_SET_CAMERA_SETTINGS

Field Name Type Description

WIP: Information about a storage medium

Field Name Type Description

WIP: Information about the status of a capture

Field Name Type Description

WIP: Information about a captured image

Field Name Type Description

WIP: Information about flight since last arming

Field Name Type Description

WIP: Orientation of a mount

Field Name Type Description

A message containing logged data (see also MAV_CMD_LOGGING_START)

Field Name Type Description

A message containing logged data which requires a LOGGING_ACK to be sent back

Field Name Type Description

An ack for a LOGGING_DATA_ACKED message

Field Name Type Description

WIP: Information about video stream

Field Name Type Description

WIP: Message that sets video stream settings

Field Name Type Description

WIP: Version and capability of protocol version. This message is the response to REQUEST_PROTOCOL_VERSION and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to REQUEST_PROTOCOL_VERSION to enable the handshaking. Library implementers should consider adding this into the default decoding state machine to allow the protocol core to respond directly.

Field Name Type Description
© Someone. License: CC BY 4.0            Updated: 2017-12-05 22:41:17

results matching ""

    No results matching ""