From a6fa28b261ef46b3d10db92b229a14479ae32351 Mon Sep 17 00:00:00 2001 From: Hamish Willee Date: Thu, 11 Jun 2026 08:44:29 +1000 Subject: [PATCH] ci(update): Add prettier, markdownlink, prettier, reviewdog --- .github/workflows/lint.yml | 38 + .husky/pre-commit | 1 + .markdownlint.yaml | 35 + .prettierignore | 9 + .prettierrc.yaml | 5 + CLAUDE.md | 72 + cspell.json | 183 + en/SUMMARY.md | 2 +- en/about/faq.md | 12 +- en/getting_started/index.md | 4 +- en/getting_started/installation.md | 3 +- en/guide/message_signing.md | 8 +- en/mavgen_c/index.md | 2 +- en/messages/ASLUAV.md | 523 +- en/messages/AVSSUAS.md | 273 +- en/messages/all.md | 17 +- en/messages/ardupilotmega.md | 2688 +++--- en/messages/common.md | 11434 ++++++++++++------------- en/messages/csAirLink.md | 38 +- en/messages/cubepilot.md | 84 +- en/messages/development.md | 627 +- en/messages/dialects.md | 1 - en/messages/icarous.md | 84 +- en/messages/index.md | 1 - en/messages/loweheiser.md | 86 +- en/messages/marsh.md | 259 +- en/messages/matrixpilot.md | 620 +- en/messages/minimal.md | 529 +- en/messages/paparazzi.md | 63 +- en/messages/python_array_test.md | 124 +- en/messages/standard.md | 138 +- en/messages/stemstudios.md | 68 +- en/messages/storm32.md | 435 +- en/messages/test.md | 63 +- en/messages/uAvionix.md | 370 +- en/messages/ualberta.md | 95 +- en/services/arm_authorization.md | 8 +- en/services/camera.md | 2 +- en/services/camera_def.md | 148 +- en/services/command.md | 2 +- en/services/component_information.md | 2 +- en/services/component_metadata.md | 4 +- en/services/gimbal_v2.md | 8 +- en/services/illuminator.md | 2 +- en/services/image_transmission.md | 2 +- en/services/mavlink_id_assignment.md | 2 +- en/services/mission.md | 10 +- en/services/parameter.md | 4 +- en/services/parameter_ext.md | 4 +- package-lock.json | 2973 ++++++- package.json | 19 +- yarn.lock | 1533 +++- 52 files changed, 13914 insertions(+), 9803 deletions(-) create mode 100644 .github/workflows/lint.yml create mode 100755 .husky/pre-commit create mode 100644 .markdownlint.yaml create mode 100644 .prettierignore create mode 100644 .prettierrc.yaml create mode 100644 CLAUDE.md create mode 100644 cspell.json diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 000000000..3ec7b3b77 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,38 @@ +name: Lint + +on: + pull_request: + paths: + - "en/**" + +jobs: + markdownlint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: reviewdog/action-markdownlint@v0 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + reporter: github-pr-review + markdownlint_flags: "en/**/*.md --ignore en/messages" + + prettier: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: "20" + - run: npm ci + - run: npx prettier --check "en/**/*.md" + + spellcheck: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: streetsidesoftware/cspell-action@v6 + with: + files: "en/**/*.md" + config: cspell.json + incremental_files_only: true + github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 000000000..2312dc587 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1 @@ +npx lint-staged diff --git a/.markdownlint.yaml b/.markdownlint.yaml new file mode 100644 index 000000000..fa33c9b69 --- /dev/null +++ b/.markdownlint.yaml @@ -0,0 +1,35 @@ +default: true + +# Allow inline HTML (used for anchors,
, etc. throughout the docs) +MD033: false + +# First line need not be a top-level heading (VitePress uses frontmatter) +MD041: false + +# Line length — not enforced (Prettier handles prose wrapping) +MD013: false + +# Allow duplicate headings in different sections +MD024: + siblings_only: true + +# Allow bare URLs (many protocol spec links are inline) +MD034: false + +# Table pipe style and column count — too many pre-existing variations; revisit in a separate pass +MD055: false +MD056: false + +# Link fragment validation — 973 pre-existing broken fragments; track as separate issue +MD051: false + +# Allow tabs inside code blocks (intentional indentation in C/Python examples) +MD010: + code_blocks: false + +# Pre-existing violations throughout the codebase — revisit in a separate pass +MD040: false # Fenced code blocks without language specifier +MD045: false # Images without alt text +MD001: false # Heading levels skip (e.g. h2 → h4) +MD036: false # Emphasis used instead of a heading +MD029: false # Ordered list item prefix style diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000..8a5ad9330 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,9 @@ +zh/ +ko/ +de/ +ja/ +ru/ +tr/ +uk/ +.vitepress/ +node_modules/ diff --git a/.prettierrc.yaml b/.prettierrc.yaml new file mode 100644 index 000000000..c4b3c94db --- /dev/null +++ b/.prettierrc.yaml @@ -0,0 +1,5 @@ +proseWrap: preserve +printWidth: 120 +tabWidth: 2 +singleQuote: false +embeddedLanguageFormatting: "off" diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 000000000..3d81a894b --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,72 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## What This Repo Is + +This is the **MAVLink Developer Guide** — a VitePress-based documentation site for the MAVLink drone messaging protocol. Source content lives in `en/` (English), with translations in `zh/` (Chinese) and `ko/` (Korean) managed via Crowdin. The published site is at mavlink.io. + +## Commands + +```bash +# Install dependencies +npm ci # or: yarn install + +# Local dev server with hot reload +yarn start # alias for: yarn docs:dev + +# Production build (Linux) +yarn docs:build + +# Production build (Windows) +yarn docs:buildwin + +# Preview the built site +yarn docs:preview + +# Check links +yarn linkcheck +``` + +CI (`.github/workflows/docs_deploy.yml`) uses `npm ci` + `npm run docs:build` on Node 20, then deploys to the `mavlink/mavlink.io` repo. + +## Architecture + +### Directory Layout + +- `en/` — primary English source; all editing happens here +- `zh/`, `ko/` — machine/community translations synced from Crowdin (do not edit directly) +- `.vitepress/config.mjs` — VitePress site config; sidebars are generated dynamically from `SUMMARY.md` files rather than hard-coded +- `.vitepress/get_sidebar.js` — parses `SUMMARY.md` GitBook-style files to generate VitePress sidebar config +- `.vitepress/theme/` — custom theme overrides + +### Navigation / Sidebar + +The sidebar for each language is built by reading that language's `en/SUMMARY.md` (and equivalent). This file is the authoritative table of contents — adding a new page requires both creating the `.md` file **and** adding it to `SUMMARY.md`. + +### Content Structure (`en/`) + +- `messages/` — auto-generated message reference docs (one per XML dialect: `common.md`, `ardupilotmega.md`, etc.) +- `services/` — microservice protocol docs (mission, command, camera, gimbal, FTP, etc.) +- `guide/` — protocol internals (serialization, routing, MAVLink 2, signing, etc.) +- `mavgen_c/`, `mavgen_python/` — language-specific library usage guides +- `contributing/` — contributor guides +- `about/`, `getting_started/`, `file_formats/` — introductory and reference content + +### Excluded from Build + +Files matching `**/_*.md` are excluded from the VitePress build (used as includes/partials). Several language folders (`de`, `ja`, `ru`, `tr`, `uk`) are also excluded — only `en`, `zh`, and `ko` are active. + +## Authoring Conventions + +- VitePress callout syntax: `::: info`, `::: tip`, `::: warning`, `::: danger` (not `> **Note**` or `> **Tip**`) +- Math is supported via `markdown-it-mathjax3` — use `$...$` inline and `$$...$$` for blocks +- Tabs component is available via `@red-asuka/vitepress-plugin-tabs` +- Internal links use relative paths to `.md` files (e.g., `../services/mission.md`) +- The `EDITOR` environment variable enables "Open in your editor" links during local dev; omit it to get GitHub edit links instead + +## Translation Workflow + +- Crowdin config (`crowdin.yml`) maps `en/**/*.md` → `{lang}/**/{filename}.md` +- Only edit English source in `en/`; translation PRs come from the Crowdin bot +- New pages need to be in `en/SUMMARY.md` before Crowdin will pick them up diff --git a/cspell.json b/cspell.json new file mode 100644 index 000000000..ea40d19ec --- /dev/null +++ b/cspell.json @@ -0,0 +1,183 @@ +{ + "version": "0.2", + "language": "en,en-GB", + "include": [ + "en/**/*.md" + ], + "ignorePaths": [ + "en/messages/**", + "en/services/camera_def.md" + ], + "words": [ + "ADSB", + "Agro", + "Ardu", + "ardupilot", + "ardupilotmega", + "ARINC", + "ASLUAV", + "ASTM", + "AUTOCONTINUE", + "Autoquad", + "Avionix", + "AVSSUAS", + "Bbuild", + "bitfield", + "bitmask", + "Bytewise", + "CCITT", + "cdeg", + "codegen", + "COLORMODE", + "compid", + "configurators", + "CRCS", + "CREAT", + "cubepilot", + "dataflash", + "Datapilot", + "datestamp", + "DCMAKE", + "deconflict", + "deconflicting", + "deconfliction", + "dezi", + "DMAVLINK", + "dpixels", + "Dronecode", + "Dronefleet", + "Errno", + "eulers", + "EXPMODE", + "firmwares", + "FLARM", + "Flightzoomer", + "geofence", + "geofences", + "gomavlib", + "halfword", + "Hask", + "icarous", + "IFLAG", + "imagestreamer", + "incompat", + "Inexa", + "irectory", + "IRLOCK", + "JAGCS", + "joysticksend", + "Kinect", + "libevents", + "loweheiser", + "lxml", + "matrixpilot", + "mavconn", + "mavcrc", + "mavexpression", + "mavextra", + "MAVFTP", + "mavgen", + "mavgenerate", + "MAVLINK", + "mavlinkcamera", + "mavlogdump", + "MAVPACKED", + "mavparm", + "mavparse", + "MAVROS", + "mavschema", + "MAVSDK", + "mavset", + "mavtest", + "mavutil", + "mavwp", + "MCRF", + "MDEF", + "memcpy", + "memset", + "microcontrollers", + "mkfifo", + "multicopter", + "multicopters", + "mydescriptivebranchname", + "Nutt", + "nuttx", + "OCTOROTOR", + "ODID", + "opendroneid", + "packetization", + "parameterrange", + "parameterranges", + "PHOTOEV", + "PHOTOFMT", + "PHOTOISO", + "PHOTOQUAL", + "PHOTORATIO", + "PHOTOSHUTSPD", + "PHOTOSIZE", + "PITCHYAW", + "Pixhawk", + "posx", + "pymavlink", + "PYTHONPATH", + "QUADROTOR", + "rallypoints", + "rawimage", + "resends", + "reserialize", + "roption", + "rosversion", + "RTSP", + "SBUS", + "Sentera", + "serialnumber", + "setpoint", + "setpoints", + "SHUTTERSPD", + "SITL", + "SIYI", + "Skydio", + "STATUSTEXT", + "subcomponent", + "Synturian", + "SYSID", + "systemid", + "tcpdump", + "tcpin", + "THISMAV", + "TIMESYNC", + "TRUNC", + "Tukaani", + "TXRX", + "ualberta", + "UART", + "UAVCAN", + "udpbcast", + "udpin", + "udpout", + "UNINIT", + "unitless", + "UNLIM", + "unscalable", + "usbmodem", + "usec", + "VIDEV", + "VIDFMT", + "VIDFOV", + "VIDFPS", + "VIDISO", + "VIDRES", + "VIDSHUTSPD", + "VIDSTREAM", + "Waddress", + "WBMODE", + "Wingtra", + "Wireshark", + "WIRIS", + "Workswell", + "WPNEXT", + "WRONLY", + "Xtrack", + "Yuneec" + ] +} diff --git a/en/SUMMARY.md b/en/SUMMARY.md index 528bf7f90..cc79ca262 100644 --- a/en/SUMMARY.md +++ b/en/SUMMARY.md @@ -71,7 +71,7 @@ - [Dialects & Tests](messages/dialects.md) - [ardupilotmega.xml](messages/ardupilotmega.md) - [ASLUAV.xml](messages/ASLUAV.md) - - [AVSSUAS.xml](messages/AVSSUAS.md) + - [AVSSUAS.xml](messages/AVSSUAS.md) - [csAirLink.xml](messages/csAirLink.md) - [cubepilot.xml](messages/cubepilot.md) - [icarous.xml](messages/icarous.md) diff --git a/en/about/faq.md b/en/about/faq.md index e0db2efd9..ba459334e 100644 --- a/en/about/faq.md +++ b/en/about/faq.md @@ -21,8 +21,8 @@
What version of MAVLink should I use?
-
You should use the MAVLink 2 protocol where at all possible (it fixes a number of limitations of earlier versions). - The MAVLink 2 libraries also support MAVLink 1, so you can use them to communicate with legacy systems if needed. +
You should use the MAVLink 2 protocol where at all possible (it fixes a number of limitations of earlier versions). + The MAVLink 2 libraries also support MAVLink 1, so you can use them to communicate with legacy systems if needed.
How often is MAVLink updated/released?
@@ -58,15 +58,15 @@
MAVLink is part of the safety critical components of an unmanned air system. A bad communication link dropping many packets can endanger the flight safety of the aircraft and has to be monitored. Having the sequence in the header allows MAVLink to continuously provide feedback about the packet drop rate and thus allows the aircraft or ground control station to take action.
Why is CRC_EXTRA needed in the packet checksum?
-
The CRC_EXTRA CRC is used to verify that the sender and receiver have a shared understanding of the over-the-wire format of a particular message +
The CRC_EXTRA CRC is used to verify that the sender and receiver have a shared understanding of the over-the-wire format of a particular message (required because as a lightweight protocol, the message structure isn't included in the payload).

- In MAVLink 0.9 the CRC was not used (although there was a length check). - There were a small number of cases where XML describing a message changed without changing the message length, + In MAVLink 0.9 the CRC was not used (although there was a length check). + There were a small number of cases where XML describing a message changed without changing the message length, leading to badly corrupted fields when messages were read.
I would like to help improve the decoding/encoding routines or other features. Can MAVLink be changed?
-
Yes, but only very, very carefully with safety testing. +
Yes, but only very, very carefully with safety testing.
MAVLink is used as a safety-critical component in many autopilot systems and has undergone many years of testing. Please suggest new features on the MAVLink support channels.
How can I further reduce the generated C library size?
diff --git a/en/getting_started/index.md b/en/getting_started/index.md index 763cbb9a2..1e255cfb0 100644 --- a/en/getting_started/index.md +++ b/en/getting_started/index.md @@ -4,8 +4,8 @@ Download or Generate MAVLink source files for your [dialect](../messages/index.m - **Download the [pre-built MAVLink source files](../index.md#prebuilt_libraries)** if you're working in a C/C++ project and using standard dialects. - **Generate the MAVLink source files** to use any other [supported language](../index.md#supported_languages), add/modify messages or dialects, or use the example scripts: - 1. [Install MAVLink](../getting_started/installation.md) - 1. [Generate Language-Specific Source Files](../getting_started/generate_libraries.md). + 1. [Install MAVLink](../getting_started/installation.md) + 1. [Generate Language-Specific Source Files](../getting_started/generate_libraries.md). The following topics explain how to include the files in your project and use MAVLink: diff --git a/en/getting_started/installation.md b/en/getting_started/installation.md index f2b78eeba..75bd0860a 100644 --- a/en/getting_started/installation.md +++ b/en/getting_started/installation.md @@ -25,6 +25,7 @@ To install the MAVLink toolchain: - **Windows:** Download from [Python for Windows](https://www.python.org/downloads/) - **Ubuntu Linux** Make sure Python and Pip are both installed: + ``` sudo apt install python3 python3-pip ``` @@ -36,7 +37,7 @@ To install the MAVLink toolchain: cd mavlink ``` -2. Install the required packages: +1. Install the required packages: ``` python3 -m pip install -r pymavlink/requirements.txt diff --git a/en/guide/message_signing.md b/en/guide/message_signing.md index 89e1bb447..3e0385ec4 100644 --- a/en/guide/message_signing.md +++ b/en/guide/message_signing.md @@ -26,11 +26,11 @@ The C library uses [MAVLINK_IFLAG_SIGNED](../guide/serialization.md#MAVLINK_IFLA The 13 bytes of the signature are: -| Data | Description | -| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [linkID](#link_ids) (8 bits) | ID of link on which packet is sent. Normally this is the same as the _channel_. | +| Data | Description | +| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [linkID](#link_ids) (8 bits) | ID of link on which packet is sent. Normally this is the same as the _channel_. | | [timestamp](#timestamp) (48 bits) | Timestamp in 10 microsecond units since 1st January 2015 GMT time. This _must_ monotonically increase for every message on a particular [link](#link_ids). Note that means the timestamp may get ahead of the actual time if the packet rate averages more than 100,000 packets per second. | -| [signature](#signature) (48 bits) | A 48 bit signature for the packet, based on the complete packet, timestamp, and secret key. | +| [signature](#signature) (48 bits) | A 48 bit signature for the packet, based on the complete packet, timestamp, and secret key. | See below for more information about the fields. diff --git a/en/mavgen_c/index.md b/en/mavgen_c/index.md index 4a7aa3771..885c1c1d7 100644 --- a/en/mavgen_c/index.md +++ b/en/mavgen_c/index.md @@ -44,7 +44,7 @@ If you generate your own headers, you will have to add their output location to When compiling the project, make sure to add the include directory: ```sh -$ gcc ... -I generated/include ... +gcc ... -I generated/include ... ``` ## Adding Library to Cmake Project diff --git a/en/messages/ASLUAV.md b/en/messages/ASLUAV.md index 8c437c00e..c6a5e68ec 100644 --- a/en/messages/ASLUAV.md +++ b/en/messages/ASLUAV.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 17 | 234 -[Enums](#enumerated-types) | 2 | 159 -[Commands](#mav_commands) | 170 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 17 | 234 | +| [Enums](#enumerated-types) | 2 | 159 | +| [Commands](#mav_commands) | 170 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,339 +47,322 @@ The following sections list all entities in the dialect (both included and defin Message encoding a command with parameters as scaled integers and additional metadata. Scaling depends on the actual command value. -Field Name | Type | Values | Description ---- | --- | --- | --- -utc_time | `uint32_t` | | UTC time, seconds elapsed since 01.01.1970 -vehicle_timestamp | `uint64_t` | | Microseconds elapsed since vehicle boot -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the COMMAND, as defined by [MAV_FRAME](#MAV_FRAME) enum -command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the mission item, as defined by [MAV_CMD](#mav_commands) enum -current | `uint8_t` | | false:0, true:1 -autocontinue | `uint8_t` | | autocontinue to next wp -param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum -param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum -param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum -param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum -x | `int32_t` | | PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 -y | `int32_t` | | PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 -z | `float` | | PARAM7 / z position: global: altitude in meters (MSL, WGS84, AGL or relative to home - depending on frame). - +| Field Name | Type | Values | Description | +| ----------------- | ---------- | ------------------------ | ----------------------------------------------------------------------------------------------------------- | +| utc_time | `uint32_t` | | UTC time, seconds elapsed since 01.01.1970 | +| vehicle_timestamp | `uint64_t` | | Microseconds elapsed since vehicle boot | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the COMMAND, as defined by [MAV_FRAME](#MAV_FRAME) enum | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the mission item, as defined by [MAV_CMD](#mav_commands) enum | +| current | `uint8_t` | | false:0, true:1 | +| autocontinue | `uint8_t` | | autocontinue to next wp | +| param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum | +| param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum | +| param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum | +| param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum | +| x | `int32_t` | | PARAM5 / local: x position in meters _1e4, global: latitude in degrees_ 10^7 | +| y | `int32_t` | | PARAM6 / local: y position in meters _1e4, global: longitude in degrees_ 10^7 | +| z | `float` | | PARAM7 / z position: global: altitude in meters (MSL, WGS84, AGL or relative to home - depending on frame). | ### COMMAND_LONG_STAMPED (224) {#COMMAND_LONG_STAMPED} Send a command with up to seven parameters to the MAV and additional metadata -Field Name | Type | Values | Description ---- | --- | --- | --- -utc_time | `uint32_t` | | UTC time, seconds elapsed since 01.01.1970 -vehicle_timestamp | `uint64_t` | | Microseconds elapsed since vehicle boot -target_system | `uint8_t` | | System which should execute the command -target_component | `uint8_t` | | Component which should execute the command, 0 for all components -command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID, as defined by [MAV_CMD](#mav_commands) enum. -confirmation | `uint8_t` | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) -param1 | `float` | | Parameter 1, as defined by [MAV_CMD](#mav_commands) enum. -param2 | `float` | | Parameter 2, as defined by [MAV_CMD](#mav_commands) enum. -param3 | `float` | | Parameter 3, as defined by [MAV_CMD](#mav_commands) enum. -param4 | `float` | | Parameter 4, as defined by [MAV_CMD](#mav_commands) enum. -param5 | `float` | | Parameter 5, as defined by [MAV_CMD](#mav_commands) enum. -param6 | `float` | | Parameter 6, as defined by [MAV_CMD](#mav_commands) enum. -param7 | `float` | | Parameter 7, as defined by [MAV_CMD](#mav_commands) enum. - +| Field Name | Type | Values | Description | +| ----------------- | ---------- | ------------------------ | ------------------------------------------------------------------------------------------------ | +| utc_time | `uint32_t` | | UTC time, seconds elapsed since 01.01.1970 | +| vehicle_timestamp | `uint64_t` | | Microseconds elapsed since vehicle boot | +| target_system | `uint8_t` | | System which should execute the command | +| target_component | `uint8_t` | | Component which should execute the command, 0 for all components | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID, as defined by [MAV_CMD](#mav_commands) enum. | +| confirmation | `uint8_t` | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) | +| param1 | `float` | | Parameter 1, as defined by [MAV_CMD](#mav_commands) enum. | +| param2 | `float` | | Parameter 2, as defined by [MAV_CMD](#mav_commands) enum. | +| param3 | `float` | | Parameter 3, as defined by [MAV_CMD](#mav_commands) enum. | +| param4 | `float` | | Parameter 4, as defined by [MAV_CMD](#mav_commands) enum. | +| param5 | `float` | | Parameter 5, as defined by [MAV_CMD](#mav_commands) enum. | +| param6 | `float` | | Parameter 6, as defined by [MAV_CMD](#mav_commands) enum. | +| param7 | `float` | | Parameter 7, as defined by [MAV_CMD](#mav_commands) enum. | ### SENS_POWER (8002) {#SENS_POWER} Voltage and current sensor data -Field Name | Type | Units | Description ---- | --- | --- | --- -adc121_vspb_volt | `float` | V | Power board voltage sensor reading -adc121_cspb_amp | `float` | A | Power board current sensor reading -adc121_cs1_amp | `float` | A | Board current sensor 1 reading -adc121_cs2_amp | `float` | A | Board current sensor 2 reading - +| Field Name | Type | Units | Description | +| ---------------- | ------- | ----- | ---------------------------------- | +| adc121_vspb_volt | `float` | V | Power board voltage sensor reading | +| adc121_cspb_amp | `float` | A | Power board current sensor reading | +| adc121_cs1_amp | `float` | A | Board current sensor 1 reading | +| adc121_cs2_amp | `float` | A | Board current sensor 2 reading | ### SENS_MPPT (8003) {#SENS_MPPT} Maximum Power Point Tracker (MPPT) sensor data for solar module power performance tracking -Field Name | Type | Units | Description ---- | --- | --- | --- -mppt_timestamp | `uint64_t` | us | MPPT last timestamp -mppt1_volt | `float` | V | MPPT1 voltage -mppt1_amp | `float` | A | MPPT1 current -mppt1_pwm | `uint16_t` | us | MPPT1 pwm -mppt1_status | `uint8_t` | | MPPT1 status -mppt2_volt | `float` | V | MPPT2 voltage -mppt2_amp | `float` | A | MPPT2 current -mppt2_pwm | `uint16_t` | us | MPPT2 pwm -mppt2_status | `uint8_t` | | MPPT2 status -mppt3_volt | `float` | V | MPPT3 voltage -mppt3_amp | `float` | A | MPPT3 current -mppt3_pwm | `uint16_t` | us | MPPT3 pwm -mppt3_status | `uint8_t` | | MPPT3 status - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | ------------------- | +| mppt_timestamp | `uint64_t` | us | MPPT last timestamp | +| mppt1_volt | `float` | V | MPPT1 voltage | +| mppt1_amp | `float` | A | MPPT1 current | +| mppt1_pwm | `uint16_t` | us | MPPT1 pwm | +| mppt1_status | `uint8_t` | | MPPT1 status | +| mppt2_volt | `float` | V | MPPT2 voltage | +| mppt2_amp | `float` | A | MPPT2 current | +| mppt2_pwm | `uint16_t` | us | MPPT2 pwm | +| mppt2_status | `uint8_t` | | MPPT2 status | +| mppt3_volt | `float` | V | MPPT3 voltage | +| mppt3_amp | `float` | A | MPPT3 current | +| mppt3_pwm | `uint16_t` | us | MPPT3 pwm | +| mppt3_status | `uint8_t` | | MPPT3 status | ### ASLCTRL_DATA (8004) {#ASLCTRL_DATA} ASL-fixed-wing controller data -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Timestamp -aslctrl_mode | `uint8_t` | | ASLCTRL control-mode (manual, stabilized, auto, etc...) -h | `float` | | See sourcecode for a description of these values... -hRef | `float` | | -hRef_t | `float` | | -PitchAngle | `float` | deg | Pitch angle -PitchAngleRef | `float` | deg | Pitch angle reference -q | `float` | | -qRef | `float` | | -uElev | `float` | | -uThrot | `float` | | -uThrot2 | `float` | | -nZ | `float` | | -AirspeedRef | `float` | m/s | Airspeed reference -SpoilersEngaged | `uint8_t` | | -YawAngle | `float` | deg | Yaw angle -YawAngleRef | `float` | deg | Yaw angle reference -RollAngle | `float` | deg | Roll angle -RollAngleRef | `float` | deg | Roll angle reference -p | `float` | | -pRef | `float` | | -r | `float` | | -rRef | `float` | | -uAil | `float` | | -uRud | `float` | | - +| Field Name | Type | Units | Description | +| --------------- | ---------- | ----- | ------------------------------------------------------- | +| timestamp | `uint64_t` | us | Timestamp | +| aslctrl_mode | `uint8_t` | | ASLCTRL control-mode (manual, stabilized, auto, etc...) | +| h | `float` | | See sourcecode for a description of these values... | +| hRef | `float` | | +| hRef_t | `float` | | +| PitchAngle | `float` | deg | Pitch angle | +| PitchAngleRef | `float` | deg | Pitch angle reference | +| q | `float` | | +| qRef | `float` | | +| uElev | `float` | | +| uThrot | `float` | | +| uThrot2 | `float` | | +| nZ | `float` | | +| AirspeedRef | `float` | m/s | Airspeed reference | +| SpoilersEngaged | `uint8_t` | | +| YawAngle | `float` | deg | Yaw angle | +| YawAngleRef | `float` | deg | Yaw angle reference | +| RollAngle | `float` | deg | Roll angle | +| RollAngleRef | `float` | deg | Roll angle reference | +| p | `float` | | +| pRef | `float` | | +| r | `float` | | +| rRef | `float` | | +| uAil | `float` | | +| uRud | `float` | | ### ASLCTRL_DEBUG (8005) {#ASLCTRL_DEBUG} ASL-fixed-wing controller debug data -Field Name | Type | Description ---- | --- | --- -i32_1 | `uint32_t` | Debug data -i8_1 | `uint8_t` | Debug data -i8_2 | `uint8_t` | Debug data -f_1 | `float` | Debug data -f_2 | `float` | Debug data -f_3 | `float` | Debug data -f_4 | `float` | Debug data -f_5 | `float` | Debug data -f_6 | `float` | Debug data -f_7 | `float` | Debug data -f_8 | `float` | Debug data - +| Field Name | Type | Description | +| ---------- | ---------- | ----------- | +| i32_1 | `uint32_t` | Debug data | +| i8_1 | `uint8_t` | Debug data | +| i8_2 | `uint8_t` | Debug data | +| f_1 | `float` | Debug data | +| f_2 | `float` | Debug data | +| f_3 | `float` | Debug data | +| f_4 | `float` | Debug data | +| f_5 | `float` | Debug data | +| f_6 | `float` | Debug data | +| f_7 | `float` | Debug data | +| f_8 | `float` | Debug data | ### ASLUAV_STATUS (8006) {#ASLUAV_STATUS} Extended state information for ASLUAVs -Field Name | Type | Description ---- | --- | --- -LED_status | `uint8_t` | Status of the position-indicator LEDs -SATCOM_status | `uint8_t` | Status of the IRIDIUM satellite communication system -Servo_status | `uint8_t[8]` | Status vector for up to 8 servos -Motor_rpm | `float` | Motor RPM - +| Field Name | Type | Description | +| ------------- | ------------ | ---------------------------------------------------- | +| LED_status | `uint8_t` | Status of the position-indicator LEDs | +| SATCOM_status | `uint8_t` | Status of the IRIDIUM satellite communication system | +| Servo_status | `uint8_t[8]` | Status vector for up to 8 servos | +| Motor_rpm | `float` | Motor RPM | ### EKF_EXT (8007) {#EKF_EXT} Extended EKF state estimates for ASLUAVs -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Time since system start -Windspeed | `float` | m/s | Magnitude of wind velocity (in lateral inertial plane) -WindDir | `float` | rad | Wind heading angle from North -WindZ | `float` | m/s | Z (Down) component of inertial wind velocity -Airspeed | `float` | m/s | Magnitude of air velocity -beta | `float` | rad | Sideslip angle -alpha | `float` | rad | Angle of attack - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ------------------------------------------------------ | +| timestamp | `uint64_t` | us | Time since system start | +| Windspeed | `float` | m/s | Magnitude of wind velocity (in lateral inertial plane) | +| WindDir | `float` | rad | Wind heading angle from North | +| WindZ | `float` | m/s | Z (Down) component of inertial wind velocity | +| Airspeed | `float` | m/s | Magnitude of air velocity | +| beta | `float` | rad | Sideslip angle | +| alpha | `float` | rad | Angle of attack | ### ASL_OBCTRL (8008) {#ASL_OBCTRL} Off-board controls/commands for ASLUAVs -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Time since system start -uElev | `float` | | Elevator command [~] -uThrot | `float` | | Throttle command [~] -uThrot2 | `float` | | Throttle 2 command [~] -uAilL | `float` | | Left aileron command [~] -uAilR | `float` | | Right aileron command [~] -uRud | `float` | | Rudder command [~] -obctrl_status | `uint8_t` | | Off-board computer status - +| Field Name | Type | Units | Description | +| ------------- | ---------- | ----- | ------------------------- | +| timestamp | `uint64_t` | us | Time since system start | +| uElev | `float` | | Elevator command [~] | +| uThrot | `float` | | Throttle command [~] | +| uThrot2 | `float` | | Throttle 2 command [~] | +| uAilL | `float` | | Left aileron command [~] | +| uAilR | `float` | | Right aileron command [~] | +| uRud | `float` | | Rudder command [~] | +| obctrl_status | `uint8_t` | | Off-board computer status | ### SENS_ATMOS (8009) {#SENS_ATMOS} Atmospheric sensors (temperature, humidity, ...) -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Time since system boot -TempAmbient | `float` | degC | Ambient temperature -Humidity | `float` | % | Relative humidity - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | ---------------------- | +| timestamp | `uint64_t` | us | Time since system boot | +| TempAmbient | `float` | degC | Ambient temperature | +| Humidity | `float` | % | Relative humidity | ### SENS_BATMON (8010) {#SENS_BATMON} Battery pack monitoring data for Li-Ion batteries -Field Name | Type | Units | Description ---- | --- | --- | --- -batmon_timestamp | `uint64_t` | us | Time since system start -temperature | `float` | degC | Battery pack temperature -voltage | `uint16_t` | mV | Battery pack voltage -current | `int16_t` | mA | Battery pack current -SoC | `uint8_t` | | Battery pack state-of-charge -batterystatus | `uint16_t` | | Battery monitor status report bits in Hex -serialnumber | `uint16_t` | | Battery monitor serial number in Hex -safetystatus | `uint32_t` | | Battery monitor safetystatus report bits in Hex -operationstatus | `uint32_t` | | Battery monitor operation status report bits in Hex -cellvoltage1 | `uint16_t` | mV | Battery pack cell 1 voltage -cellvoltage2 | `uint16_t` | mV | Battery pack cell 2 voltage -cellvoltage3 | `uint16_t` | mV | Battery pack cell 3 voltage -cellvoltage4 | `uint16_t` | mV | Battery pack cell 4 voltage -cellvoltage5 | `uint16_t` | mV | Battery pack cell 5 voltage -cellvoltage6 | `uint16_t` | mV | Battery pack cell 6 voltage - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | --------------------------------------------------- | +| batmon_timestamp | `uint64_t` | us | Time since system start | +| temperature | `float` | degC | Battery pack temperature | +| voltage | `uint16_t` | mV | Battery pack voltage | +| current | `int16_t` | mA | Battery pack current | +| SoC | `uint8_t` | | Battery pack state-of-charge | +| batterystatus | `uint16_t` | | Battery monitor status report bits in Hex | +| serialnumber | `uint16_t` | | Battery monitor serial number in Hex | +| safetystatus | `uint32_t` | | Battery monitor safetystatus report bits in Hex | +| operationstatus | `uint32_t` | | Battery monitor operation status report bits in Hex | +| cellvoltage1 | `uint16_t` | mV | Battery pack cell 1 voltage | +| cellvoltage2 | `uint16_t` | mV | Battery pack cell 2 voltage | +| cellvoltage3 | `uint16_t` | mV | Battery pack cell 3 voltage | +| cellvoltage4 | `uint16_t` | mV | Battery pack cell 4 voltage | +| cellvoltage5 | `uint16_t` | mV | Battery pack cell 5 voltage | +| cellvoltage6 | `uint16_t` | mV | Battery pack cell 6 voltage | ### FW_SOARING_DATA (8011) {#FW_SOARING_DATA} Fixed-wing soaring (i.e. thermal seeking) data -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | ms | Timestamp -timestampModeChanged | `uint64_t` | ms | Timestamp since last mode change -xW | `float` | m/s | Thermal core updraft strength -xR | `float` | m | Thermal radius -xLat | `float` | deg | Thermal center latitude -xLon | `float` | deg | Thermal center longitude -VarW | `float` | | Variance W -VarR | `float` | | Variance R -VarLat | `float` | | Variance Lat -VarLon | `float` | | Variance Lon -LoiterRadius | `float` | m | Suggested loiter radius -LoiterDirection | `float` | | Suggested loiter direction -DistToSoarPoint | `float` | m | Distance to soar point -vSinkExp | `float` | m/s | Expected sink rate at current airspeed, roll and throttle -z1_LocalUpdraftSpeed | `float` | m/s | Measurement / updraft speed at current/local airplane position -z2_DeltaRoll | `float` | deg | Measurement / roll angle tracking error -z1_exp | `float` | | Expected measurement 1 -z2_exp | `float` | | Expected measurement 2 -ThermalGSNorth | `float` | m/s | Thermal drift (from estimator prediction step only) -ThermalGSEast | `float` | m/s | Thermal drift (from estimator prediction step only) -TSE_dot | `float` | m/s | Total specific energy change (filtered) -DebugVar1 | `float` | | Debug variable 1 -DebugVar2 | `float` | | Debug variable 2 -ControlMode | `uint8_t` | | Control Mode [-] -valid | `uint8_t` | | Data valid [-] - +| Field Name | Type | Units | Description | +| -------------------- | ---------- | ----- | -------------------------------------------------------------- | +| timestamp | `uint64_t` | ms | Timestamp | +| timestampModeChanged | `uint64_t` | ms | Timestamp since last mode change | +| xW | `float` | m/s | Thermal core updraft strength | +| xR | `float` | m | Thermal radius | +| xLat | `float` | deg | Thermal center latitude | +| xLon | `float` | deg | Thermal center longitude | +| VarW | `float` | | Variance W | +| VarR | `float` | | Variance R | +| VarLat | `float` | | Variance Lat | +| VarLon | `float` | | Variance Lon | +| LoiterRadius | `float` | m | Suggested loiter radius | +| LoiterDirection | `float` | | Suggested loiter direction | +| DistToSoarPoint | `float` | m | Distance to soar point | +| vSinkExp | `float` | m/s | Expected sink rate at current airspeed, roll and throttle | +| z1_LocalUpdraftSpeed | `float` | m/s | Measurement / updraft speed at current/local airplane position | +| z2_DeltaRoll | `float` | deg | Measurement / roll angle tracking error | +| z1_exp | `float` | | Expected measurement 1 | +| z2_exp | `float` | | Expected measurement 2 | +| ThermalGSNorth | `float` | m/s | Thermal drift (from estimator prediction step only) | +| ThermalGSEast | `float` | m/s | Thermal drift (from estimator prediction step only) | +| TSE_dot | `float` | m/s | Total specific energy change (filtered) | +| DebugVar1 | `float` | | Debug variable 1 | +| DebugVar2 | `float` | | Debug variable 2 | +| ControlMode | `uint8_t` | | Control Mode [-] | +| valid | `uint8_t` | | Data valid [-] | ### SENSORPOD_STATUS (8012) {#SENSORPOD_STATUS} Monitoring of sensorpod status -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | ms | Timestamp in linuxtime (since 1.1.1970) -visensor_rate_1 | `uint8_t` | | Rate of ROS topic 1 -visensor_rate_2 | `uint8_t` | | Rate of ROS topic 2 -visensor_rate_3 | `uint8_t` | | Rate of ROS topic 3 -visensor_rate_4 | `uint8_t` | | Rate of ROS topic 4 -recording_nodes_count | `uint8_t` | | Number of recording nodes -cpu_temp | `uint8_t` | degC | Temperature of sensorpod CPU in -free_space | `uint16_t` | | Free space available in recordings directory in [Gb] * 1e2 - +| Field Name | Type | Units | Description | +| --------------------- | ---------- | ----- | ----------------------------------------------------------- | +| timestamp | `uint64_t` | ms | Timestamp in linuxtime (since 1.1.1970) | +| visensor_rate_1 | `uint8_t` | | Rate of ROS topic 1 | +| visensor_rate_2 | `uint8_t` | | Rate of ROS topic 2 | +| visensor_rate_3 | `uint8_t` | | Rate of ROS topic 3 | +| visensor_rate_4 | `uint8_t` | | Rate of ROS topic 4 | +| recording_nodes_count | `uint8_t` | | Number of recording nodes | +| cpu_temp | `uint8_t` | degC | Temperature of sensorpod CPU in | +| free_space | `uint16_t` | | Free space available in recordings directory in [Gb] \* 1e2 | ### SENS_POWER_BOARD (8013) {#SENS_POWER_BOARD} Monitoring of power board status -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Timestamp -pwr_brd_status | `uint8_t` | | Power board status register -pwr_brd_led_status | `uint8_t` | | Power board leds status -pwr_brd_system_volt | `float` | V | Power board system voltage -pwr_brd_servo_volt | `float` | V | Power board servo voltage -pwr_brd_digital_volt | `float` | V | Power board digital voltage -pwr_brd_mot_l_amp | `float` | A | Power board left motor current sensor -pwr_brd_mot_r_amp | `float` | A | Power board right motor current sensor -pwr_brd_analog_amp | `float` | A | Power board analog current sensor -pwr_brd_digital_amp | `float` | A | Power board digital current sensor -pwr_brd_ext_amp | `float` | A | Power board extension current sensor -pwr_brd_aux_amp | `float` | A | Power board aux current sensor - +| Field Name | Type | Units | Description | +| -------------------- | ---------- | ----- | -------------------------------------- | +| timestamp | `uint64_t` | us | Timestamp | +| pwr_brd_status | `uint8_t` | | Power board status register | +| pwr_brd_led_status | `uint8_t` | | Power board leds status | +| pwr_brd_system_volt | `float` | V | Power board system voltage | +| pwr_brd_servo_volt | `float` | V | Power board servo voltage | +| pwr_brd_digital_volt | `float` | V | Power board digital voltage | +| pwr_brd_mot_l_amp | `float` | A | Power board left motor current sensor | +| pwr_brd_mot_r_amp | `float` | A | Power board right motor current sensor | +| pwr_brd_analog_amp | `float` | A | Power board analog current sensor | +| pwr_brd_digital_amp | `float` | A | Power board digital current sensor | +| pwr_brd_ext_amp | `float` | A | Power board extension current sensor | +| pwr_brd_aux_amp | `float` | A | Power board aux current sensor | ### GSM_LINK_STATUS (8014) {#GSM_LINK_STATUS} Status of GSM modem (connected to onboard computer) -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -timestamp | `uint64_t` | us | | Timestamp (of OBC) -gsm_modem_type | `uint8_t` | | [GSM_MODEM_TYPE](#GSM_MODEM_TYPE) | GSM modem used -gsm_link_type | `uint8_t` | | [GSM_LINK_TYPE](#GSM_LINK_TYPE) | GSM link type -rssi | `uint8_t` | | | RSSI as reported by modem (unconverted) -rsrp_rscp | `uint8_t` | | | RSRP (LTE) or RSCP (WCDMA) as reported by modem (unconverted) -sinr_ecio | `uint8_t` | | | SINR (LTE) or ECIO (WCDMA) as reported by modem (unconverted) -rsrq | `uint8_t` | | | RSRQ (LTE only) as reported by modem (unconverted) - +| Field Name | Type | Units | Values | Description | +| -------------- | ---------- | ----- | --------------------------------- | ------------------------------------------------------------- | +| timestamp | `uint64_t` | us | | Timestamp (of OBC) | +| gsm_modem_type | `uint8_t` | | [GSM_MODEM_TYPE](#GSM_MODEM_TYPE) | GSM modem used | +| gsm_link_type | `uint8_t` | | [GSM_LINK_TYPE](#GSM_LINK_TYPE) | GSM link type | +| rssi | `uint8_t` | | | RSSI as reported by modem (unconverted) | +| rsrp_rscp | `uint8_t` | | | RSRP (LTE) or RSCP (WCDMA) as reported by modem (unconverted) | +| sinr_ecio | `uint8_t` | | | SINR (LTE) or ECIO (WCDMA) as reported by modem (unconverted) | +| rsrq | `uint8_t` | | | RSRQ (LTE only) as reported by modem (unconverted) | ### SATCOM_LINK_STATUS (8015) {#SATCOM_LINK_STATUS} Status of the SatCom link -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Timestamp -last_heartbeat | `uint64_t` | us | Timestamp of the last successful sbd session -failed_sessions | `uint16_t` | | Number of failed sessions -successful_sessions | `uint16_t` | | Number of successful sessions -signal_quality | `uint8_t` | | Signal quality -ring_pending | `uint8_t` | | Ring call pending -tx_session_pending | `uint8_t` | | Transmission session pending -rx_session_pending | `uint8_t` | | Receiving session pending - +| Field Name | Type | Units | Description | +| ------------------- | ---------- | ----- | -------------------------------------------- | +| timestamp | `uint64_t` | us | Timestamp | +| last_heartbeat | `uint64_t` | us | Timestamp of the last successful sbd session | +| failed_sessions | `uint16_t` | | Number of failed sessions | +| successful_sessions | `uint16_t` | | Number of successful sessions | +| signal_quality | `uint8_t` | | Signal quality | +| ring_pending | `uint8_t` | | Ring call pending | +| tx_session_pending | `uint8_t` | | Transmission session pending | +| rx_session_pending | `uint8_t` | | Receiving session pending | ### SENSOR_AIRFLOW_ANGLES (8016) {#SENSOR_AIRFLOW_ANGLES} Calibrated airflow angle measurements -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Timestamp -angleofattack | `float` | deg | Angle of attack -angleofattack_valid | `uint8_t` | | Angle of attack measurement valid -sideslip | `float` | deg | Sideslip angle -sideslip_valid | `uint8_t` | | Sideslip angle measurement valid - +| Field Name | Type | Units | Description | +| ------------------- | ---------- | ----- | --------------------------------- | +| timestamp | `uint64_t` | us | Timestamp | +| angleofattack | `float` | deg | Angle of attack | +| angleofattack_valid | `uint8_t` | | Angle of attack measurement valid | +| sideslip | `float` | deg | Sideslip angle | +| sideslip_valid | `uint8_t` | | Sideslip angle measurement valid | ## Enumerated Types ### GSM_LINK_TYPE {#GSM_LINK_TYPE} -Value | Name | Description ---- | --- | --- -0 | [GSM_LINK_TYPE_NONE](#GSM_LINK_TYPE_NONE) | no service -1 | [GSM_LINK_TYPE_UNKNOWN](#GSM_LINK_TYPE_UNKNOWN) | link type unknown -2 | [GSM_LINK_TYPE_2G](#GSM_LINK_TYPE_2G) | 2G (GSM/GRPS/EDGE) link -3 | [GSM_LINK_TYPE_3G](#GSM_LINK_TYPE_3G) | 3G link (WCDMA/HSDPA/HSPA) -4 | [GSM_LINK_TYPE_4G](#GSM_LINK_TYPE_4G) | 4G link (LTE) +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | -------------------------- | +| 0 | [GSM_LINK_TYPE_NONE](#GSM_LINK_TYPE_NONE) | no service | +| 1 | [GSM_LINK_TYPE_UNKNOWN](#GSM_LINK_TYPE_UNKNOWN) | link type unknown | +| 2 | [GSM_LINK_TYPE_2G](#GSM_LINK_TYPE_2G) | 2G (GSM/GRPS/EDGE) link | +| 3 | [GSM_LINK_TYPE_3G](#GSM_LINK_TYPE_3G) | 3G link (WCDMA/HSDPA/HSPA) | +| 4 | [GSM_LINK_TYPE_4G](#GSM_LINK_TYPE_4G) | 4G link (LTE) | ### GSM_MODEM_TYPE {#GSM_MODEM_TYPE} -Value | Name | Description ---- | --- | --- -0 | [GSM_MODEM_TYPE_UNKNOWN](#GSM_MODEM_TYPE_UNKNOWN) | not specified -1 | [GSM_MODEM_TYPE_HUAWEI_E3372](#GSM_MODEM_TYPE_HUAWEI_E3372) | HUAWEI LTE USB Stick E3372 +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | -------------------------- | +| 0 | [GSM_MODEM_TYPE_UNKNOWN](#GSM_MODEM_TYPE_UNKNOWN) | not specified | +| 1 | [GSM_MODEM_TYPE_HUAWEI_E3372](#GSM_MODEM_TYPE_HUAWEI_E3372) | HUAWEI LTE USB Stick E3372 | ## Commands (MAV_CMD) {#mav_commands} @@ -386,29 +370,26 @@ Value | Name | Description Mission command to reset Maximum Power Point Tracker (MPPT) -Param (Label) | Description ---- | --- -1 | MPPT number -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | MPPT number | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_PAYLOAD_CONTROL (40002) {#MAV_CMD_PAYLOAD_CONTROL} Mission command to perform a power cycle on payload -Param (Label) | Description ---- | --- -1 | Complete power cycle -2 | VISensor power cycle -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - - +| Param (Label) | Description | +| ------------- | -------------------- | +| 1 | Complete power cycle | +| 2 | VISensor power cycle | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | diff --git a/en/messages/AVSSUAS.md b/en/messages/AVSSUAS.md index 9123e8793..298ebe25f 100644 --- a/en/messages/AVSSUAS.md +++ b/en/messages/AVSSUAS.md @@ -26,6 +26,7 @@ span.warning { color: red; } + **Protocol dialect:** 1 **Protocol version:** 2 @@ -36,11 +37,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 4 | 234 -[Enums](#enumerated-types) | 3 | 159 -[Commands](#mav_commands) | 175 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 4 | 234 | +| [Enums](#enumerated-types) | 3 | 159 | +| [Commands](#mav_commands) | 175 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -50,97 +51,93 @@ The following sections list all entities in the dialect (both included and defin AVSS PRS system status. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since PRS boot). -error_status | `uint32_t` | | PRS error statuses -battery_status | `uint32_t` | | Estimated battery run-time without a remote connection and PRS battery voltage -arm_status | `uint8_t` | | PRS arm statuses -charge_status | `uint8_t` | | PRS battery charge statuses - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | ------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since PRS boot). | +| error_status | `uint32_t` | | PRS error statuses | +| battery_status | `uint32_t` | | Estimated battery run-time without a remote connection and PRS battery voltage | +| arm_status | `uint8_t` | | PRS arm statuses | +| charge_status | `uint8_t` | | PRS battery charge statuses | ### AVSS_DRONE_POSITION (60051) {#AVSS_DRONE_POSITION} Drone position. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). -lat | `int32_t` | degE7 | Latitude, expressed -lon | `int32_t` | degE7 | Longitude, expressed -alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. -ground_alt | `float` | m | Altitude above ground, This altitude is measured by a ultrasound, Laser rangefinder or millimeter-wave radar -barometer_alt | `float` | m | This altitude is measured by a barometer - +| Field Name | Type | Units | Description | +| ------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). | +| lat | `int32_t` | degE7 | Latitude, expressed | +| lon | `int32_t` | degE7 | Longitude, expressed | +| alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. | +| ground_alt | `float` | m | Altitude above ground, This altitude is measured by a ultrasound, Laser rangefinder or millimeter-wave radar | +| barometer_alt | `float` | m | This altitude is measured by a barometer | ### AVSS_DRONE_IMU (60052) {#AVSS_DRONE_IMU} Drone IMU data. Quaternion order is w, x, y, z and a zero rotation would be expressed as (1 0 0 0). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). -q1 | `float` | | Quaternion component 1, w (1 in null-rotation) -q2 | `float` | | Quaternion component 2, x (0 in null-rotation) -q3 | `float` | | Quaternion component 3, y (0 in null-rotation) -q4 | `float` | | Quaternion component 4, z (0 in null-rotation) -xacc | `float` | m/s/s | X acceleration -yacc | `float` | m/s/s | Y acceleration -zacc | `float` | m/s/s | Z acceleration -xgyro | `float` | rad/s | Angular speed around X axis -ygyro | `float` | rad/s | Angular speed around Y axis -zgyro | `float` | rad/s | Angular speed around Z axis - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ---------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). | +| q1 | `float` | | Quaternion component 1, w (1 in null-rotation) | +| q2 | `float` | | Quaternion component 2, x (0 in null-rotation) | +| q3 | `float` | | Quaternion component 3, y (0 in null-rotation) | +| q4 | `float` | | Quaternion component 4, z (0 in null-rotation) | +| xacc | `float` | m/s/s | X acceleration | +| yacc | `float` | m/s/s | Y acceleration | +| zacc | `float` | m/s/s | Z acceleration | +| xgyro | `float` | rad/s | Angular speed around X axis | +| ygyro | `float` | rad/s | Angular speed around Y axis | +| zgyro | `float` | rad/s | Angular speed around Z axis | ### AVSS_DRONE_OPERATION_MODE (60053) {#AVSS_DRONE_OPERATION_MODE} Drone operation mode. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). -M300_operation_mode | `uint8_t` | | DJI M300 operation mode -horsefly_operation_mode | `uint8_t` | | horsefly operation mode - +| Field Name | Type | Units | Description | +| ----------------------- | ---------- | ----- | ------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since FC boot). | +| M300_operation_mode | `uint8_t` | | DJI M300 operation mode | +| horsefly_operation_mode | `uint8_t` | | horsefly operation mode | ## Enumerated Types ### MAV_AVSS_COMMAND_FAILURE_REASON {#MAV_AVSS_COMMAND_FAILURE_REASON} -Value | Name | Description ---- | --- | --- -1 | [PRS_NOT_STEADY](#PRS_NOT_STEADY) | AVSS defined command failure reason. PRS not steady. -2 | [PRS_DTM_NOT_ARMED](#PRS_DTM_NOT_ARMED) | AVSS defined command failure reason. PRS DTM not armed. -3 | [PRS_OTM_NOT_ARMED](#PRS_OTM_NOT_ARMED) | AVSS defined command failure reason. PRS OTM not armed. +| Value | Name | Description | +| ------------------------------- | --------------------------------------- | ------------------------------------------------------- | +| 1 | [PRS_NOT_STEADY](#PRS_NOT_STEADY) | AVSS defined command failure reason. PRS not steady. | +| 2 | [PRS_DTM_NOT_ARMED](#PRS_DTM_NOT_ARMED) | AVSS defined command failure reason. PRS DTM not armed. | +| 3 | [PRS_OTM_NOT_ARMED](#PRS_OTM_NOT_ARMED) | AVSS defined command failure reason. PRS OTM not armed. | ### AVSS_M300_OPERATION_MODE {#AVSS_M300_OPERATION_MODE} -Value | Name | Description ---- | --- | --- -0 | [MODE_M300_MANUAL_CTRL](#MODE_M300_MANUAL_CTRL) | In manual control mode -1 | [MODE_M300_ATTITUDE](#MODE_M300_ATTITUDE) | In attitude mode -6 | [MODE_M300_P_GPS](#MODE_M300_P_GPS) | In GPS mode -9 | [MODE_M300_HOTPOINT_MODE](#MODE_M300_HOTPOINT_MODE) | In hotpoint mode -10 | [MODE_M300_ASSISTED_TAKEOFF](#MODE_M300_ASSISTED_TAKEOFF) | In assisted takeoff mode -11 | [MODE_M300_AUTO_TAKEOFF](#MODE_M300_AUTO_TAKEOFF) | In auto takeoff mode -12 | [MODE_M300_AUTO_LANDING](#MODE_M300_AUTO_LANDING) | In auto landing mode -15 | [MODE_M300_NAVI_GO_HOME](#MODE_M300_NAVI_GO_HOME) | In go home mode -17 | [MODE_M300_NAVI_SDK_CTRL](#MODE_M300_NAVI_SDK_CTRL) | In sdk control mode -31 | [MODE_M300_S_SPORT](#MODE_M300_S_SPORT) | In sport mode -33 | [MODE_M300_FORCE_AUTO_LANDING](#MODE_M300_FORCE_AUTO_LANDING) | In force auto landing mode -38 | [MODE_M300_T_TRIPOD](#MODE_M300_T_TRIPOD) | In tripod mode -40 | [MODE_M300_SEARCH_MODE](#MODE_M300_SEARCH_MODE) | In search mode -41 | [MODE_M300_ENGINE_START](#MODE_M300_ENGINE_START) | In engine mode +| Value | Name | Description | +| ------------------------------------------- | ------------------------------------------------------------- | -------------------------- | +| 0 | [MODE_M300_MANUAL_CTRL](#MODE_M300_MANUAL_CTRL) | In manual control mode | +| 1 | [MODE_M300_ATTITUDE](#MODE_M300_ATTITUDE) | In attitude mode | +| 6 | [MODE_M300_P_GPS](#MODE_M300_P_GPS) | In GPS mode | +| 9 | [MODE_M300_HOTPOINT_MODE](#MODE_M300_HOTPOINT_MODE) | In hotpoint mode | +| 10 | [MODE_M300_ASSISTED_TAKEOFF](#MODE_M300_ASSISTED_TAKEOFF) | In assisted takeoff mode | +| 11 | [MODE_M300_AUTO_TAKEOFF](#MODE_M300_AUTO_TAKEOFF) | In auto takeoff mode | +| 12 | [MODE_M300_AUTO_LANDING](#MODE_M300_AUTO_LANDING) | In auto landing mode | +| 15 | [MODE_M300_NAVI_GO_HOME](#MODE_M300_NAVI_GO_HOME) | In go home mode | +| 17 | [MODE_M300_NAVI_SDK_CTRL](#MODE_M300_NAVI_SDK_CTRL) | In sdk control mode | +| 31 | [MODE_M300_S_SPORT](#MODE_M300_S_SPORT) | In sport mode | +| 33 | [MODE_M300_FORCE_AUTO_LANDING](#MODE_M300_FORCE_AUTO_LANDING) | In force auto landing mode | +| 38 | [MODE_M300_T_TRIPOD](#MODE_M300_T_TRIPOD) | In tripod mode | +| 40 | [MODE_M300_SEARCH_MODE](#MODE_M300_SEARCH_MODE) | In search mode | +| 41 | [MODE_M300_ENGINE_START](#MODE_M300_ENGINE_START) | In engine mode | ### AVSS_HORSEFLY_OPERATION_MODE {#AVSS_HORSEFLY_OPERATION_MODE} -Value | Name | Description ---- | --- | --- -0 | [MODE_HORSEFLY_MANUAL_CTRL](#MODE_HORSEFLY_MANUAL_CTRL) | In manual control mode -1 | [MODE_HORSEFLY_AUTO_TAKEOFF](#MODE_HORSEFLY_AUTO_TAKEOFF) | In auto takeoff mode -2 | [MODE_HORSEFLY_AUTO_LANDING](#MODE_HORSEFLY_AUTO_LANDING) | In auto landing mode -3 | [MODE_HORSEFLY_NAVI_GO_HOME](#MODE_HORSEFLY_NAVI_GO_HOME) | In go home mode -4 | [MODE_HORSEFLY_DROP](#MODE_HORSEFLY_DROP) | In drop mode +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ---------------------- | +| 0 | [MODE_HORSEFLY_MANUAL_CTRL](#MODE_HORSEFLY_MANUAL_CTRL) | In manual control mode | +| 1 | [MODE_HORSEFLY_AUTO_TAKEOFF](#MODE_HORSEFLY_AUTO_TAKEOFF) | In auto takeoff mode | +| 2 | [MODE_HORSEFLY_AUTO_LANDING](#MODE_HORSEFLY_AUTO_LANDING) | In auto landing mode | +| 3 | [MODE_HORSEFLY_NAVI_GO_HOME](#MODE_HORSEFLY_NAVI_GO_HOME) | In go home mode | +| 4 | [MODE_HORSEFLY_DROP](#MODE_HORSEFLY_DROP) | In drop mode | ## Commands (MAV_CMD) {#mav_commands} @@ -148,104 +145,96 @@ Value | Name | Description AVSS defined command. Set PRS arm statuses. -Param (Label) | Description ---- | --- -1 (ARM status) | PRS arm statuses -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| -------------- | ---------------- | +| 1 (ARM status) | PRS arm statuses | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_GET_ARM (60051) {#MAV_CMD_PRS_GET_ARM} AVSS defined command. Gets PRS arm statuses -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_GET_BATTERY (60052) {#MAV_CMD_PRS_GET_BATTERY} -AVSS defined command. Get the PRS battery voltage in millivolts - -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined +AVSS defined command. Get the PRS battery voltage in millivolts +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_GET_ERR (60053) {#MAV_CMD_PRS_GET_ERR} AVSS defined command. Get the PRS error statuses. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_SET_ARM_ALTI (60070) {#MAV_CMD_PRS_SET_ARM_ALTI} AVSS defined command. Set the ATS arming altitude in meters. -Param (Label) | Description | Units ---- | --- | --- -1 (Altitude) | ATS arming altitude | m -2 | User defined | -3 | User defined | -4 | User defined | -5 | User defined | -6 | User defined | -7 | User defined | - +| Param (Label) | Description | Units | +| ------------- | ------------------- | ----- | +| 1 (Altitude) | ATS arming altitude | m | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_GET_ARM_ALTI (60071) {#MAV_CMD_PRS_GET_ARM_ALTI} AVSS defined command. Get the ATS arming altitude in meters. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_PRS_SHUTDOWN (60072) {#MAV_CMD_PRS_SHUTDOWN} AVSS defined command. Shuts down the PRS system. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | diff --git a/en/messages/all.md b/en/messages/all.md index db011716c..f696bccf0 100644 --- a/en/messages/all.md +++ b/en/messages/all.md @@ -37,6 +37,7 @@ span.warning { color: red; } + ## MAVLink Include Files - [ardupilotmega.xml](../messages/ardupilotmega.md) @@ -59,11 +60,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 0 | 391 -[Enums](#enumerated-types) | 0 | 258 -[Commands](#mav_commands) | 224 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 0 | 391 | +| [Enums](#enumerated-types) | 0 | 258 | +| [Commands](#mav_commands) | 224 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -81,7 +82,5 @@ Dummy/temporary [MAV_CMD](#mav_commands) that causes all.xml to correctly import It not be used, and will be removed when the toolchain is fixed. -Param (Label) | Description ---- | --- - - +| Param (Label) | Description | +| ------------- | ----------- | diff --git a/en/messages/ardupilotmega.md b/en/messages/ardupilotmega.md index 648ace2f9..d3f7faae0 100644 --- a/en/messages/ardupilotmega.md +++ b/en/messages/ardupilotmega.md @@ -10,7 +10,7 @@ The documentation here may not be a precise match if, for example, changes have These messages define the [ArduPilot](http://ardupilot.org) specific dialect. This topic is a human-readable form of the XML definition file: [ardupilotmega.xml](https://github.com/mavlink/mavlink/blob/master/message_definitions/v1.0/ardupilotmega.xml). - + ::: info @@ -28,6 +28,7 @@ span.warning { color: red; } + **Protocol dialect:** 2 ## MAVLink Include Files @@ -41,11 +42,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 73 | 252 -[Enums](#enumerated-types) | 45 | 175 -[Commands](#mav_commands) | 200 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 73 | 252 | +| [Enums](#enumerated-types) | 45 | 175 | +| [Commands](#mav_commands) | 200 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -57,21 +58,20 @@ The following sections list all entities in the dialect (both included and defin Offsets and calibrations values for hardware sensors. This makes it easier to debug the calibration process. -Field Name | Type | Units | Description ---- | --- | --- | --- -mag_ofs_x | `int16_t` | | Magnetometer X offset. -mag_ofs_y | `int16_t` | | Magnetometer Y offset. -mag_ofs_z | `int16_t` | | Magnetometer Z offset. -mag_declination | `float` | rad | Magnetic declination. -raw_press | `int32_t` | | Raw pressure from barometer. -raw_temp | `int32_t` | | Raw temperature from barometer. -gyro_cal_x | `float` | | Gyro X calibration. -gyro_cal_y | `float` | | Gyro Y calibration. -gyro_cal_z | `float` | | Gyro Z calibration. -accel_cal_x | `float` | | Accel X calibration. -accel_cal_y | `float` | | Accel Y calibration. -accel_cal_z | `float` | | Accel Z calibration. - +| Field Name | Type | Units | Description | +| --------------- | --------- | ----- | ------------------------------- | +| mag_ofs_x | `int16_t` | | Magnetometer X offset. | +| mag_ofs_y | `int16_t` | | Magnetometer Y offset. | +| mag_ofs_z | `int16_t` | | Magnetometer Z offset. | +| mag_declination | `float` | rad | Magnetic declination. | +| raw_press | `int32_t` | | Raw pressure from barometer. | +| raw_temp | `int32_t` | | Raw temperature from barometer. | +| gyro_cal_x | `float` | | Gyro X calibration. | +| gyro_cal_y | `float` | | Gyro Y calibration. | +| gyro_cal_z | `float` | | Gyro Z calibration. | +| accel_cal_x | `float` | | Accel X calibration. | +| accel_cal_y | `float` | | Accel Y calibration. | +| accel_cal_z | `float` | | Accel Z calibration. | ### SET_MAG_OFFSETS (151) — [DEP] {#SET_MAG_OFFSETS} @@ -79,177 +79,165 @@ accel_cal_z | `float` | | Accel Z calibration. Set the magnetometer offsets -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -mag_ofs_x | `int16_t` | Magnetometer X offset. -mag_ofs_y | `int16_t` | Magnetometer Y offset. -mag_ofs_z | `int16_t` | Magnetometer Z offset. - +| Field Name | Type | Description | +| ---------------- | --------- | ---------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| mag_ofs_x | `int16_t` | Magnetometer X offset. | +| mag_ofs_y | `int16_t` | Magnetometer Y offset. | +| mag_ofs_z | `int16_t` | Magnetometer Z offset. | ### MEMINFO (152) {#MEMINFO} State of autopilot RAM. -Field Name | Type | Units | Description ---- | --- | --- | --- -brkval | `uint16_t` | | Heap top. -freemem | `uint16_t` | bytes | Free memory. -freemem32 ++ | `uint32_t` | bytes | Free memory (32 bit). - +| Field Name | Type | Units | Description | +| ------------------------------------------------------------------------- | ---------- | ----- | --------------------- | +| brkval | `uint16_t` | | Heap top. | +| freemem | `uint16_t` | bytes | Free memory. | +| freemem32 ++ | `uint32_t` | bytes | Free memory (32 bit). | ### AP_ADC (153) {#AP_ADC} Raw ADC output. -Field Name | Type | Description ---- | --- | --- -adc1 | `uint16_t` | ADC output 1. -adc2 | `uint16_t` | ADC output 2. -adc3 | `uint16_t` | ADC output 3. -adc4 | `uint16_t` | ADC output 4. -adc5 | `uint16_t` | ADC output 5. -adc6 | `uint16_t` | ADC output 6. - +| Field Name | Type | Description | +| ---------- | ---------- | ------------- | +| adc1 | `uint16_t` | ADC output 1. | +| adc2 | `uint16_t` | ADC output 2. | +| adc3 | `uint16_t` | ADC output 3. | +| adc4 | `uint16_t` | ADC output 4. | +| adc5 | `uint16_t` | ADC output 5. | +| adc6 | `uint16_t` | ADC output 6. | ### DIGICAM_CONFIGURE (154) {#DIGICAM_CONFIGURE} Configure on-board Camera Control System. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -mode | `uint8_t` | | Mode enumeration from 1 to N //P, TV, AV, M, etc. (0 means ignore). -shutter_speed | `uint16_t` | | Divisor number //e.g. 1000 means 1/1000 (0 means ignore). -aperture | `uint8_t` | | F stop number x 10 //e.g. 28 means 2.8 (0 means ignore). -iso | `uint8_t` | | ISO enumeration from 1 to N //e.g. 80, 100, 200, Etc (0 means ignore). -exposure_type | `uint8_t` | | Exposure type enumeration from 1 to N (0 means ignore). -command_id | `uint8_t` | | Command Identity (incremental loop: 0 to 255). //A command sent multiple times will be executed or pooled just once. -engine_cut_off | `uint8_t` | ds | Main engine cut-off time before camera trigger (0 means no cut-off). -extra_param | `uint8_t` | | Extra parameters enumeration (0 means ignore). -extra_value | `float` | | Correspondent value to given extra_param. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| mode | `uint8_t` | | Mode enumeration from 1 to N //P, TV, AV, M, etc. (0 means ignore). | +| shutter_speed | `uint16_t` | | Divisor number //e.g. 1000 means 1/1000 (0 means ignore). | +| aperture | `uint8_t` | | F stop number x 10 //e.g. 28 means 2.8 (0 means ignore). | +| iso | `uint8_t` | | ISO enumeration from 1 to N //e.g. 80, 100, 200, Etc (0 means ignore). | +| exposure_type | `uint8_t` | | Exposure type enumeration from 1 to N (0 means ignore). | +| command_id | `uint8_t` | | Command Identity (incremental loop: 0 to 255). //A command sent multiple times will be executed or pooled just once. | +| engine_cut_off | `uint8_t` | ds | Main engine cut-off time before camera trigger (0 means no cut-off). | +| extra_param | `uint8_t` | | Extra parameters enumeration (0 means ignore). | +| extra_value | `float` | | Correspondent value to given extra_param. | ### DIGICAM_CONTROL (155) {#DIGICAM_CONTROL} Control on-board Camera Control System to take shots. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -session | `uint8_t` | 0: stop, 1: start or keep it up //Session control e.g. show/hide lens. -zoom_pos | `uint8_t` | 1 to N //Zoom's absolute position (0 means ignore). -zoom_step | `int8_t` | -100 to 100 //Zooming step value to offset zoom from the current position. -focus_lock | `uint8_t` | 0: unlock focus or keep unlocked, 1: lock focus or keep locked, 3: re-lock focus. -shot | `uint8_t` | 0: ignore, 1: shot or start filming. -command_id | `uint8_t` | Command Identity (incremental loop: 0 to 255)//A command sent multiple times will be executed or pooled just once. -extra_param | `uint8_t` | Extra parameters enumeration (0 means ignore). -extra_value | `float` | Correspondent value to given extra_param. - +| Field Name | Type | Description | +| ---------------- | --------- | ------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| session | `uint8_t` | 0: stop, 1: start or keep it up //Session control e.g. show/hide lens. | +| zoom_pos | `uint8_t` | 1 to N //Zoom's absolute position (0 means ignore). | +| zoom_step | `int8_t` | -100 to 100 //Zooming step value to offset zoom from the current position. | +| focus_lock | `uint8_t` | 0: unlock focus or keep unlocked, 1: lock focus or keep locked, 3: re-lock focus. | +| shot | `uint8_t` | 0: ignore, 1: shot or start filming. | +| command_id | `uint8_t` | Command Identity (incremental loop: 0 to 255)//A command sent multiple times will be executed or pooled just once. | +| extra_param | `uint8_t` | Extra parameters enumeration (0 means ignore). | +| extra_value | `float` | Correspondent value to given extra_param. | ### MOUNT_CONFIGURE (156) {#MOUNT_CONFIGURE} Message to configure a camera mount, directional antenna, etc. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -mount_mode | `uint8_t` | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | Mount operating mode. -stab_roll | `uint8_t` | | (1 = yes, 0 = no). -stab_pitch | `uint8_t` | | (1 = yes, 0 = no). -stab_yaw | `uint8_t` | | (1 = yes, 0 = no). - +| Field Name | Type | Values | Description | +| ---------------- | --------- | --------------------------------- | --------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| mount_mode | `uint8_t` | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | Mount operating mode. | +| stab_roll | `uint8_t` | | (1 = yes, 0 = no). | +| stab_pitch | `uint8_t` | | (1 = yes, 0 = no). | +| stab_yaw | `uint8_t` | | (1 = yes, 0 = no). | ### MOUNT_CONTROL (157) {#MOUNT_CONTROL} Message to control a camera mount, directional antenna, etc. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -input_a | `int32_t` | Pitch (centi-degrees) or lat (degE7), depending on mount mode. -input_b | `int32_t` | Roll (centi-degrees) or lon (degE7) depending on mount mode. -input_c | `int32_t` | Yaw (centi-degrees) or alt (cm) depending on mount mode. -save_position | `uint8_t` | If "1" it will save current trimmed position on EEPROM (just valid for NEUTRAL and LANDING). - +| Field Name | Type | Description | +| ---------------- | --------- | -------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| input_a | `int32_t` | Pitch (centi-degrees) or lat (degE7), depending on mount mode. | +| input_b | `int32_t` | Roll (centi-degrees) or lon (degE7) depending on mount mode. | +| input_c | `int32_t` | Yaw (centi-degrees) or alt (cm) depending on mount mode. | +| save_position | `uint8_t` | If "1" it will save current trimmed position on EEPROM (just valid for NEUTRAL and LANDING). | ### MOUNT_STATUS (158) {#MOUNT_STATUS} Message with some status from autopilot to GCS about camera or antenna mount. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID. -target_component | `uint8_t` | | | Component ID. -pointing_a | `int32_t` | cdeg | | Pitch. -pointing_b | `int32_t` | cdeg | | Roll. -pointing_c | `int32_t` | cdeg | | Yaw. -mount_mode ++ | `uint8_t` | | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | Mount operating mode. - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------- | --------- | ----- | --------------------------------- | --------------------- | +| target_system | `uint8_t` | | | System ID. | +| target_component | `uint8_t` | | | Component ID. | +| pointing_a | `int32_t` | cdeg | | Pitch. | +| pointing_b | `int32_t` | cdeg | | Roll. | +| pointing_c | `int32_t` | cdeg | | Yaw. | +| mount_mode ++ | `uint8_t` | | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | Mount operating mode. | ### FENCE_POINT (160) {#FENCE_POINT} A fence point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -idx | `uint8_t` | | Point index (first point is 1, 0 is for return point). -count | `uint8_t` | | Total number of points (for sanity checking). -lat | `float` | deg | Latitude of point. -lng | `float` | deg | Longitude of point. - +| Field Name | Type | Units | Description | +| ---------------- | --------- | ----- | ------------------------------------------------------ | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| idx | `uint8_t` | | Point index (first point is 1, 0 is for return point). | +| count | `uint8_t` | | Total number of points (for sanity checking). | +| lat | `float` | deg | Latitude of point. | +| lng | `float` | deg | Longitude of point. | ### FENCE_FETCH_POINT (161) {#FENCE_FETCH_POINT} Request a current fence point from MAV. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -idx | `uint8_t` | Point index (first point is 1, 0 is for return point). - +| Field Name | Type | Description | +| ---------------- | --------- | ------------------------------------------------------ | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| idx | `uint8_t` | Point index (first point is 1, 0 is for return point). | ### AHRS (163) {#AHRS} Status of DCM attitude estimator. -Field Name | Type | Units | Description ---- | --- | --- | --- -omegaIx | `float` | rad/s | X gyro drift estimate. -omegaIy | `float` | rad/s | Y gyro drift estimate. -omegaIz | `float` | rad/s | Z gyro drift estimate. -accel_weight | `float` | | Average accel_weight. -renorm_val | `float` | | Average renormalisation value. -error_rp | `float` | | Average error_roll_pitch value. -error_yaw | `float` | | Average error_yaw value. - +| Field Name | Type | Units | Description | +| ------------ | ------- | ----- | ------------------------------- | +| omegaIx | `float` | rad/s | X gyro drift estimate. | +| omegaIy | `float` | rad/s | Y gyro drift estimate. | +| omegaIz | `float` | rad/s | Z gyro drift estimate. | +| accel_weight | `float` | | Average accel_weight. | +| renorm_val | `float` | | Average renormalisation value. | +| error_rp | `float` | | Average error_roll_pitch value. | +| error_yaw | `float` | | Average error_yaw value. | ### SIMSTATE (164) {#SIMSTATE} Status of simulation environment, if used. -Field Name | Type | Units | Description ---- | --- | --- | --- -roll | `float` | rad | Roll angle. -pitch | `float` | rad | Pitch angle. -yaw | `float` | rad | Yaw angle. -xacc | `float` | m/s/s | X acceleration. -yacc | `float` | m/s/s | Y acceleration. -zacc | `float` | m/s/s | Z acceleration. -xgyro | `float` | rad/s | Angular speed around X axis. -ygyro | `float` | rad/s | Angular speed around Y axis. -zgyro | `float` | rad/s | Angular speed around Z axis. -lat | `int32_t` | degE7 | Latitude. -lng | `int32_t` | degE7 | Longitude. - +| Field Name | Type | Units | Description | +| ---------- | --------- | ----- | ---------------------------- | +| roll | `float` | rad | Roll angle. | +| pitch | `float` | rad | Pitch angle. | +| yaw | `float` | rad | Yaw angle. | +| xacc | `float` | m/s/s | X acceleration. | +| yacc | `float` | m/s/s | Y acceleration. | +| zacc | `float` | m/s/s | Z acceleration. | +| xgyro | `float` | rad/s | Angular speed around X axis. | +| ygyro | `float` | rad/s | Angular speed around Y axis. | +| zgyro | `float` | rad/s | Angular speed around Z axis. | +| lat | `int32_t` | degE7 | Latitude. | +| lng | `int32_t` | degE7 | Longitude. | ### HWSTATUS (165) — [DEP] {#HWSTATUS} @@ -257,224 +245,208 @@ lng | `int32_t` | degE7 | Longitude. Status of key hardware. -Field Name | Type | Units | Description ---- | --- | --- | --- -Vcc | `uint16_t` | mV | Board voltage. -I2Cerr | `uint8_t` | | I2C error count. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ---------------- | +| Vcc | `uint16_t` | mV | Board voltage. | +| I2Cerr | `uint8_t` | | I2C error count. | ### RADIO (166) {#RADIO} Status generated by radio. -Field Name | Type | Units | Description ---- | --- | --- | --- -rssi | `uint8_t` | | Local signal strength. -remrssi | `uint8_t` | | Remote signal strength. -txbuf | `uint8_t` | % | How full the tx buffer is. -noise | `uint8_t` | | Background noise level. -remnoise | `uint8_t` | | Remote background noise level. -rxerrors | `uint16_t` | | Receive errors. -fixed | `uint16_t` | | Count of error corrected packets. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | --------------------------------- | +| rssi | `uint8_t` | | Local signal strength. | +| remrssi | `uint8_t` | | Remote signal strength. | +| txbuf | `uint8_t` | % | How full the tx buffer is. | +| noise | `uint8_t` | | Background noise level. | +| remnoise | `uint8_t` | | Remote background noise level. | +| rxerrors | `uint16_t` | | Receive errors. | +| fixed | `uint16_t` | | Count of error corrected packets. | ### LIMITS_STATUS (167) {#LIMITS_STATUS} Status of AP_Limits. Sent in extended status stream when AP_Limits is enabled. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -limits_state | `uint8_t` | | [LIMITS_STATE](#LIMITS_STATE) | State of AP_Limits. -last_trigger | `uint32_t` | ms | | Time (since boot) of last breach. -last_action | `uint32_t` | ms | | Time (since boot) of last recovery action. -last_recovery | `uint32_t` | ms | | Time (since boot) of last successful recovery. -last_clear | `uint32_t` | ms | | Time (since boot) of last all-clear. -breach_count | `uint16_t` | | | Number of fence breaches. -mods_enabled | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of enabled modules. -mods_required | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of required modules. -mods_triggered | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of triggered modules. - +| Field Name | Type | Units | Values | Description | +| -------------- | ---------- | ----- | ----------------------------- | ---------------------------------------------- | +| limits_state | `uint8_t` | | [LIMITS_STATE](#LIMITS_STATE) | State of AP_Limits. | +| last_trigger | `uint32_t` | ms | | Time (since boot) of last breach. | +| last_action | `uint32_t` | ms | | Time (since boot) of last recovery action. | +| last_recovery | `uint32_t` | ms | | Time (since boot) of last successful recovery. | +| last_clear | `uint32_t` | ms | | Time (since boot) of last all-clear. | +| breach_count | `uint16_t` | | | Number of fence breaches. | +| mods_enabled | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of enabled modules. | +| mods_required | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of required modules. | +| mods_triggered | `uint8_t` | | [LIMIT_MODULE](#LIMIT_MODULE) | AP_Limit_Module bitfield of triggered modules. | ### WIND (168) {#WIND} Wind estimation. -Field Name | Type | Units | Description ---- | --- | --- | --- -direction | `float` | deg | Wind direction (that wind is coming from). -speed | `float` | m/s | Wind speed in ground plane. -speed_z | `float` | m/s | Vertical wind speed. - +| Field Name | Type | Units | Description | +| ---------- | ------- | ----- | ------------------------------------------ | +| direction | `float` | deg | Wind direction (that wind is coming from). | +| speed | `float` | m/s | Wind speed in ground plane. | +| speed_z | `float` | m/s | Vertical wind speed. | ### DATA16 (169) {#DATA16} Data packet, size 16. -Field Name | Type | Units | Description ---- | --- | --- | --- -type | `uint8_t` | | Data type. -len | `uint8_t` | bytes | Data length. -data | `uint8_t[16]` | | Raw data. - +| Field Name | Type | Units | Description | +| ---------- | ------------- | ----- | ------------ | +| type | `uint8_t` | | Data type. | +| len | `uint8_t` | bytes | Data length. | +| data | `uint8_t[16]` | | Raw data. | ### DATA32 (170) {#DATA32} Data packet, size 32. -Field Name | Type | Units | Description ---- | --- | --- | --- -type | `uint8_t` | | Data type. -len | `uint8_t` | bytes | Data length. -data | `uint8_t[32]` | | Raw data. - +| Field Name | Type | Units | Description | +| ---------- | ------------- | ----- | ------------ | +| type | `uint8_t` | | Data type. | +| len | `uint8_t` | bytes | Data length. | +| data | `uint8_t[32]` | | Raw data. | ### DATA64 (171) {#DATA64} Data packet, size 64. -Field Name | Type | Units | Description ---- | --- | --- | --- -type | `uint8_t` | | Data type. -len | `uint8_t` | bytes | Data length. -data | `uint8_t[64]` | | Raw data. - +| Field Name | Type | Units | Description | +| ---------- | ------------- | ----- | ------------ | +| type | `uint8_t` | | Data type. | +| len | `uint8_t` | bytes | Data length. | +| data | `uint8_t[64]` | | Raw data. | ### DATA96 (172) {#DATA96} Data packet, size 96. -Field Name | Type | Units | Description ---- | --- | --- | --- -type | `uint8_t` | | Data type. -len | `uint8_t` | bytes | Data length. -data | `uint8_t[96]` | | Raw data. - +| Field Name | Type | Units | Description | +| ---------- | ------------- | ----- | ------------ | +| type | `uint8_t` | | Data type. | +| len | `uint8_t` | bytes | Data length. | +| data | `uint8_t[96]` | | Raw data. | ### RANGEFINDER (173) {#RANGEFINDER} Rangefinder reporting. -Field Name | Type | Units | Description ---- | --- | --- | --- -distance | `float` | m | Distance. -voltage | `float` | V | Raw voltage if available, zero otherwise. - +| Field Name | Type | Units | Description | +| ---------- | ------- | ----- | ----------------------------------------- | +| distance | `float` | m | Distance. | +| voltage | `float` | V | Raw voltage if available, zero otherwise. | ### AIRSPEED_AUTOCAL (174) {#AIRSPEED_AUTOCAL} Airspeed auto-calibration. -Field Name | Type | Units | Description ---- | --- | --- | --- -vx | `float` | m/s | GPS velocity north. -vy | `float` | m/s | GPS velocity east. -vz | `float` | m/s | GPS velocity down. -diff_pressure | `float` | Pa | Differential pressure. -EAS2TAS | `float` | | Estimated to true airspeed ratio. -ratio | `float` | | Airspeed ratio. -state_x | `float` | | EKF state x. -state_y | `float` | | EKF state y. -state_z | `float` | | EKF state z. -Pax | `float` | | EKF Pax. -Pby | `float` | | EKF Pby. -Pcz | `float` | | EKF Pcz. - +| Field Name | Type | Units | Description | +| ------------- | ------- | ----- | --------------------------------- | +| vx | `float` | m/s | GPS velocity north. | +| vy | `float` | m/s | GPS velocity east. | +| vz | `float` | m/s | GPS velocity down. | +| diff_pressure | `float` | Pa | Differential pressure. | +| EAS2TAS | `float` | | Estimated to true airspeed ratio. | +| ratio | `float` | | Airspeed ratio. | +| state_x | `float` | | EKF state x. | +| state_y | `float` | | EKF state y. | +| state_z | `float` | | EKF state z. | +| Pax | `float` | | EKF Pax. | +| Pby | `float` | | EKF Pby. | +| Pcz | `float` | | EKF Pcz. | ### RALLY_POINT (175) {#RALLY_POINT} A rally point. Used to set a point when from GCS -> MAV. Also used to return a point from MAV -> GCS. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID. -target_component | `uint8_t` | | | Component ID. -idx | `uint8_t` | | | Point index (first point is 0). -count | `uint8_t` | | | Total number of points (for sanity checking). -lat | `int32_t` | degE7 | | Latitude of point. -lng | `int32_t` | degE7 | | Longitude of point. -alt | `int16_t` | m | | Transit / loiter altitude relative to home. -break_alt | `int16_t` | m | | Break altitude relative to home. -land_dir | `uint16_t` | cdeg | | Heading to aim for when landing. -flags | `uint8_t` | | [RALLY_FLAGS](#RALLY_FLAGS) | Configuration flags. - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | --------------------------- | --------------------------------------------- | +| target_system | `uint8_t` | | | System ID. | +| target_component | `uint8_t` | | | Component ID. | +| idx | `uint8_t` | | | Point index (first point is 0). | +| count | `uint8_t` | | | Total number of points (for sanity checking). | +| lat | `int32_t` | degE7 | | Latitude of point. | +| lng | `int32_t` | degE7 | | Longitude of point. | +| alt | `int16_t` | m | | Transit / loiter altitude relative to home. | +| break_alt | `int16_t` | m | | Break altitude relative to home. | +| land_dir | `uint16_t` | cdeg | | Heading to aim for when landing. | +| flags | `uint8_t` | | [RALLY_FLAGS](#RALLY_FLAGS) | Configuration flags. | ### RALLY_FETCH_POINT (176) {#RALLY_FETCH_POINT} Request a current rally point from MAV. MAV should respond with a [RALLY_POINT](#RALLY_POINT) message. MAV should not respond if the request is invalid. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -idx | `uint8_t` | Point index (first point is 0). - +| Field Name | Type | Description | +| ---------------- | --------- | ------------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| idx | `uint8_t` | Point index (first point is 0). | ### COMPASSMOT_STATUS (177) {#COMPASSMOT_STATUS} Status of compassmot calibration. -Field Name | Type | Units | Description ---- | --- | --- | --- -throttle | `uint16_t` | d% | Throttle. -current | `float` | A | Current. -interference | `uint16_t` | % | Interference. -CompensationX | `float` | | Motor Compensation X. -CompensationY | `float` | | Motor Compensation Y. -CompensationZ | `float` | | Motor Compensation Z. - +| Field Name | Type | Units | Description | +| ------------- | ---------- | ----- | --------------------- | +| throttle | `uint16_t` | d% | Throttle. | +| current | `float` | A | Current. | +| interference | `uint16_t` | % | Interference. | +| CompensationX | `float` | | Motor Compensation X. | +| CompensationY | `float` | | Motor Compensation Y. | +| CompensationZ | `float` | | Motor Compensation Z. | ### AHRS2 (178) {#AHRS2} Status of secondary AHRS filter if available. -Field Name | Type | Units | Description ---- | --- | --- | --- -roll | `float` | rad | Roll angle. -pitch | `float` | rad | Pitch angle. -yaw | `float` | rad | Yaw angle. -altitude | `float` | m | Altitude (MSL). -lat | `int32_t` | degE7 | Latitude. -lng | `int32_t` | degE7 | Longitude. - +| Field Name | Type | Units | Description | +| ---------- | --------- | ----- | --------------- | +| roll | `float` | rad | Roll angle. | +| pitch | `float` | rad | Pitch angle. | +| yaw | `float` | rad | Yaw angle. | +| altitude | `float` | m | Altitude (MSL). | +| lat | `int32_t` | degE7 | Latitude. | +| lng | `int32_t` | degE7 | Longitude. | ### CAMERA_STATUS (179) {#CAMERA_STATUS} Camera Event. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Image timestamp (since UNIX epoch, according to camera clock). -target_system | `uint8_t` | | | System ID. -cam_idx | `uint8_t` | | | Camera ID. -img_idx | `uint16_t` | | | Image index. -event_id | `uint8_t` | | [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) | Event type. -p1 | `float` | | | Parameter 1 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). -p2 | `float` | | | Parameter 2 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). -p3 | `float` | | | Parameter 3 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). -p4 | `float` | | | Parameter 4 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). - +| Field Name | Type | Units | Values | Description | +| ------------- | ---------- | ----- | ------------------------------------------- | ------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | | Image timestamp (since UNIX epoch, according to camera clock). | +| target_system | `uint8_t` | | | System ID. | +| cam_idx | `uint8_t` | | | Camera ID. | +| img_idx | `uint16_t` | | | Image index. | +| event_id | `uint8_t` | | [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) | Event type. | +| p1 | `float` | | | Parameter 1 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). | +| p2 | `float` | | | Parameter 2 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). | +| p3 | `float` | | | Parameter 3 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). | +| p4 | `float` | | | Parameter 4 (meaning depends on event_id, see [CAMERA_STATUS_TYPES](#CAMERA_STATUS_TYPES) enum). | ### CAMERA_FEEDBACK (180) {#CAMERA_FEEDBACK} Camera Capture Feedback. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Image timestamp (since UNIX epoch), as passed in by [CAMERA_STATUS](#CAMERA_STATUS) message (or autopilot if no CCB). -target_system | `uint8_t` | | | System ID. -cam_idx | `uint8_t` | | | Camera ID. -img_idx | `uint16_t` | | | Image index. -lat | `int32_t` | degE7 | | Latitude. -lng | `int32_t` | degE7 | | Longitude. -alt_msl | `float` | m | | Altitude (MSL). -alt_rel | `float` | m | | Altitude (Relative to HOME location). -roll | `float` | deg | | Camera Roll angle (earth frame, +-180). -pitch | `float` | deg | | Camera Pitch angle (earth frame, +-180). -yaw | `float` | deg | | Camera Yaw (earth frame, 0-360, true). -foc_len | `float` | mm | | Focal Length. -flags | `uint8_t` | | [CAMERA_FEEDBACK_FLAGS](#CAMERA_FEEDBACK_FLAGS) | Feedback flags. -completed_captures ++ | `uint16_t` | | | Completed image captures. - +| Field Name | Type | Units | Values | Description | +| ---------------------------------------------------------------------------------- | ---------- | ----- | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Image timestamp (since UNIX epoch), as passed in by [CAMERA_STATUS](#CAMERA_STATUS) message (or autopilot if no CCB). | +| target_system | `uint8_t` | | | System ID. | +| cam_idx | `uint8_t` | | | Camera ID. | +| img_idx | `uint16_t` | | | Image index. | +| lat | `int32_t` | degE7 | | Latitude. | +| lng | `int32_t` | degE7 | | Longitude. | +| alt_msl | `float` | m | | Altitude (MSL). | +| alt_rel | `float` | m | | Altitude (Relative to HOME location). | +| roll | `float` | deg | | Camera Roll angle (earth frame, +-180). | +| pitch | `float` | deg | | Camera Pitch angle (earth frame, +-180). | +| yaw | `float` | deg | | Camera Yaw (earth frame, 0-360, true). | +| foc_len | `float` | mm | | Focal Length. | +| flags | `uint8_t` | | [CAMERA_FEEDBACK_FLAGS](#CAMERA_FEEDBACK_FLAGS) | Feedback flags. | +| completed_captures ++ | `uint16_t` | | | Completed image captures. | ### BATTERY2 (181) — [DEP] {#BATTERY2} @@ -482,1203 +454,1159 @@ flags | `uint8_t` | | [CAMERA_FEEDBACK_FLAGS](#CAMERA_FEEDBACK_FLAGS) | Feedback 2nd Battery status -Field Name | Type | Units | Description ---- | --- | --- | --- -voltage | `uint16_t` | mV | Voltage. -current_battery | `int16_t` | cA | Battery current, -1: autopilot does not measure the current. - +| Field Name | Type | Units | Description | +| --------------- | ---------- | ----- | ------------------------------------------------------------ | +| voltage | `uint16_t` | mV | Voltage. | +| current_battery | `int16_t` | cA | Battery current, -1: autopilot does not measure the current. | ### AHRS3 (182) {#AHRS3} Status of third AHRS filter if available. This is for ANU research group (Ali and Sean). -Field Name | Type | Units | Description ---- | --- | --- | --- -roll | `float` | rad | Roll angle. -pitch | `float` | rad | Pitch angle. -yaw | `float` | rad | Yaw angle. -altitude | `float` | m | Altitude (MSL). -lat | `int32_t` | degE7 | Latitude. -lng | `int32_t` | degE7 | Longitude. -v1 | `float` | | Test variable1. -v2 | `float` | | Test variable2. -v3 | `float` | | Test variable3. -v4 | `float` | | Test variable4. - +| Field Name | Type | Units | Description | +| ---------- | --------- | ----- | --------------- | +| roll | `float` | rad | Roll angle. | +| pitch | `float` | rad | Pitch angle. | +| yaw | `float` | rad | Yaw angle. | +| altitude | `float` | m | Altitude (MSL). | +| lat | `int32_t` | degE7 | Latitude. | +| lng | `int32_t` | degE7 | Longitude. | +| v1 | `float` | | Test variable1. | +| v2 | `float` | | Test variable2. | +| v3 | `float` | | Test variable3. | +| v4 | `float` | | Test variable4. | ### AUTOPILOT_VERSION_REQUEST (183) {#AUTOPILOT_VERSION_REQUEST} Request the autopilot version from the system/component. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. - +| Field Name | Type | Description | +| ---------------- | --------- | ------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | ### REMOTE_LOG_DATA_BLOCK (184) {#REMOTE_LOG_DATA_BLOCK} Send a block of log data to remote location. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -seqno | `uint32_t` | [MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS](#MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) | Log data block sequence number. -data | `uint8_t[200]` | | Log data block. - +| Field Name | Type | Values | Description | +| ---------------- | -------------- | ------------------------------------------------------------------------- | ------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| seqno | `uint32_t` | [MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS](#MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS) | Log data block sequence number. | +| data | `uint8_t[200]` | | Log data block. | ### REMOTE_LOG_BLOCK_STATUS (185) {#REMOTE_LOG_BLOCK_STATUS} Send Status of each log block that autopilot board might have sent. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -seqno | `uint32_t` | | Log data block sequence number. -status | `uint8_t` | [MAV_REMOTE_LOG_DATA_BLOCK_STATUSES](#MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) | Log data block status. - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ------------------------------------------------------------------------- | ------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| seqno | `uint32_t` | | Log data block sequence number. | +| status | `uint8_t` | [MAV_REMOTE_LOG_DATA_BLOCK_STATUSES](#MAV_REMOTE_LOG_DATA_BLOCK_STATUSES) | Log data block status. | ### LED_CONTROL (186) {#LED_CONTROL} Control vehicle LEDs. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -instance | `uint8_t` | Instance (LED instance to control or 255 for all LEDs). -pattern | `uint8_t` | Pattern (see [LED_PATTERN_ENUM](#LED_PATTERN_ENUM)). -custom_len | `uint8_t` | Custom Byte Length. -custom_bytes | `uint8_t[24]` | Custom Bytes. - +| Field Name | Type | Description | +| ---------------- | ------------- | ------------------------------------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| instance | `uint8_t` | Instance (LED instance to control or 255 for all LEDs). | +| pattern | `uint8_t` | Pattern (see [LED_PATTERN_ENUM](#LED_PATTERN_ENUM)). | +| custom_len | `uint8_t` | Custom Byte Length. | +| custom_bytes | `uint8_t[24]` | Custom Bytes. | ### MAG_CAL_PROGRESS (191) {#MAG_CAL_PROGRESS} Reports progress of compass calibration. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -compass_id | `uint8_t` | | | Compass being calibrated.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -cal_mask | `uint8_t` | | | Bitmask of compasses being calibrated. -cal_status | `uint8_t` | | [MAG_CAL_STATUS](#MAG_CAL_STATUS) | Calibration Status. -attempt | `uint8_t` | | | Attempt number. -completion_pct | `uint8_t` | % | | Completion percentage. -completion_mask | `uint8_t[10]` | | | Bitmask of sphere sections (see http://en.wikipedia.org/wiki/Geodesic_grid). -direction_x | `float` | | | Body frame direction vector for display. -direction_y | `float` | | | Body frame direction vector for display. -direction_z | `float` | | | Body frame direction vector for display. - +| Field Name | Type | Units | Values | Description | +| --------------- | ------------- | ----- | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| compass_id | `uint8_t` | | | Compass being calibrated.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| cal_mask | `uint8_t` | | | Bitmask of compasses being calibrated. | +| cal_status | `uint8_t` | | [MAG_CAL_STATUS](#MAG_CAL_STATUS) | Calibration Status. | +| attempt | `uint8_t` | | | Attempt number. | +| completion_pct | `uint8_t` | % | | Completion percentage. | +| completion_mask | `uint8_t[10]` | | | Bitmask of sphere sections (see http://en.wikipedia.org/wiki/Geodesic_grid). | +| direction_x | `float` | | | Body frame direction vector for display. | +| direction_y | `float` | | | Body frame direction vector for display. | +| direction_z | `float` | | | Body frame direction vector for display. | ### EKF_STATUS_REPORT (193) {#EKF_STATUS_REPORT} EKF Status message including flags and variances. -Field Name | Type | Values | Description ---- | --- | --- | --- -flags | `uint16_t` | [EKF_STATUS_FLAGS](#EKF_STATUS_FLAGS) | Flags. -velocity_variance | `float` | | Velocity variance. -pos_horiz_variance | `float` | | Horizontal Position variance. -pos_vert_variance | `float` | | Vertical Position variance. -compass_variance | `float` | | Compass variance. -terrain_alt_variance | `float` | | Terrain Altitude variance. -airspeed_variance ++ | `float` | | Airspeed variance. - +| Field Name | Type | Values | Description | +| --------------------------------------------------------------------------------- | ---------- | ------------------------------------- | ----------------------------- | +| flags | `uint16_t` | [EKF_STATUS_FLAGS](#EKF_STATUS_FLAGS) | Flags. | +| velocity_variance | `float` | | Velocity variance. | +| pos_horiz_variance | `float` | | Horizontal Position variance. | +| pos_vert_variance | `float` | | Vertical Position variance. | +| compass_variance | `float` | | Compass variance. | +| terrain_alt_variance | `float` | | Terrain Altitude variance. | +| airspeed_variance ++ | `float` | | Airspeed variance. | ### PID_TUNING (194) {#PID_TUNING} PID tuning information. -Field Name | Type | Values | Description ---- | --- | --- | --- -axis | `uint8_t` | [PID_TUNING_AXIS](#PID_TUNING_AXIS) | Axis.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -desired | `float` | | Desired rate. -achieved | `float` | | Achieved rate. -FF | `float` | | FF component. -P | `float` | | P component. -I | `float` | | I component. -D | `float` | | D component. -SRate ++ | `float` | | Slew rate. -PDmod ++ | `float` | | P/D oscillation modifier. - +| Field Name | Type | Values | Description | +| --------------------------------------------------------------------- | --------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| axis | `uint8_t` | [PID_TUNING_AXIS](#PID_TUNING_AXIS) | Axis.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| desired | `float` | | Desired rate. | +| achieved | `float` | | Achieved rate. | +| FF | `float` | | FF component. | +| P | `float` | | P component. | +| I | `float` | | I component. | +| D | `float` | | D component. | +| SRate ++ | `float` | | Slew rate. | +| PDmod ++ | `float` | | P/D oscillation modifier. | ### DEEPSTALL (195) {#DEEPSTALL} Deepstall path planning. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -landing_lat | `int32_t` | degE7 | | Landing latitude. -landing_lon | `int32_t` | degE7 | | Landing longitude. -path_lat | `int32_t` | degE7 | | Final heading start point, latitude. -path_lon | `int32_t` | degE7 | | Final heading start point, longitude. -arc_entry_lat | `int32_t` | degE7 | | Arc entry point, latitude. -arc_entry_lon | `int32_t` | degE7 | | Arc entry point, longitude. -altitude | `float` | m | | Altitude. -expected_travel_distance | `float` | m | | Distance the aircraft expects to travel during the deepstall. -cross_track_error | `float` | m | | Deepstall cross track error (only valid when in [DEEPSTALL_STAGE_LAND](#DEEPSTALL_STAGE_LAND)). -stage | `uint8_t` | | [DEEPSTALL_STAGE](#DEEPSTALL_STAGE) | Deepstall stage. - +| Field Name | Type | Units | Values | Description | +| ------------------------ | --------- | ----- | ----------------------------------- | ----------------------------------------------------------------------------------------------- | +| landing_lat | `int32_t` | degE7 | | Landing latitude. | +| landing_lon | `int32_t` | degE7 | | Landing longitude. | +| path_lat | `int32_t` | degE7 | | Final heading start point, latitude. | +| path_lon | `int32_t` | degE7 | | Final heading start point, longitude. | +| arc_entry_lat | `int32_t` | degE7 | | Arc entry point, latitude. | +| arc_entry_lon | `int32_t` | degE7 | | Arc entry point, longitude. | +| altitude | `float` | m | | Altitude. | +| expected_travel_distance | `float` | m | | Distance the aircraft expects to travel during the deepstall. | +| cross_track_error | `float` | m | | Deepstall cross track error (only valid when in [DEEPSTALL_STAGE_LAND](#DEEPSTALL_STAGE_LAND)). | +| stage | `uint8_t` | | [DEEPSTALL_STAGE](#DEEPSTALL_STAGE) | Deepstall stage. | ### GIMBAL_REPORT (200) {#GIMBAL_REPORT} 3 axis gimbal measurements. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -delta_time | `float` | s | Time since last update. -delta_angle_x | `float` | rad | Delta angle X. -delta_angle_y | `float` | rad | Delta angle Y. -delta_angle_z | `float` | rad | Delta angle X. -delta_velocity_x | `float` | m/s | Delta velocity X. -delta_velocity_y | `float` | m/s | Delta velocity Y. -delta_velocity_z | `float` | m/s | Delta velocity Z. -joint_roll | `float` | rad | Joint ROLL. -joint_el | `float` | rad | Joint EL. -joint_az | `float` | rad | Joint AZ. - +| Field Name | Type | Units | Description | +| ---------------- | --------- | ----- | ----------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| delta_time | `float` | s | Time since last update. | +| delta_angle_x | `float` | rad | Delta angle X. | +| delta_angle_y | `float` | rad | Delta angle Y. | +| delta_angle_z | `float` | rad | Delta angle X. | +| delta_velocity_x | `float` | m/s | Delta velocity X. | +| delta_velocity_y | `float` | m/s | Delta velocity Y. | +| delta_velocity_z | `float` | m/s | Delta velocity Z. | +| joint_roll | `float` | rad | Joint ROLL. | +| joint_el | `float` | rad | Joint EL. | +| joint_az | `float` | rad | Joint AZ. | ### GIMBAL_CONTROL (201) {#GIMBAL_CONTROL} Control message for rate gimbal. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -demanded_rate_x | `float` | rad/s | Demanded angular rate X. -demanded_rate_y | `float` | rad/s | Demanded angular rate Y. -demanded_rate_z | `float` | rad/s | Demanded angular rate Z. - +| Field Name | Type | Units | Description | +| ---------------- | --------- | ----- | ------------------------ | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| demanded_rate_x | `float` | rad/s | Demanded angular rate X. | +| demanded_rate_y | `float` | rad/s | Demanded angular rate Y. | +| demanded_rate_z | `float` | rad/s | Demanded angular rate Z. | ### GIMBAL_TORQUE_CMD_REPORT (214) {#GIMBAL_TORQUE_CMD_REPORT} 100 Hz gimbal torque command telemetry. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -rl_torque_cmd | `int16_t` | Roll Torque Command. -el_torque_cmd | `int16_t` | Elevation Torque Command. -az_torque_cmd | `int16_t` | Azimuth Torque Command. - +| Field Name | Type | Description | +| ---------------- | --------- | ------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| rl_torque_cmd | `int16_t` | Roll Torque Command. | +| el_torque_cmd | `int16_t` | Elevation Torque Command. | +| az_torque_cmd | `int16_t` | Azimuth Torque Command. | ### GOPRO_HEARTBEAT (215) {#GOPRO_HEARTBEAT} Heartbeat from a HeroBus attached GoPro. -Field Name | Type | Values | Description ---- | --- | --- | --- -status | `uint8_t` | [GOPRO_HEARTBEAT_STATUS](#GOPRO_HEARTBEAT_STATUS) | Status. -capture_mode | `uint8_t` | [GOPRO_CAPTURE_MODE](#GOPRO_CAPTURE_MODE) | Current capture mode. -flags | `uint8_t` | [GOPRO_HEARTBEAT_FLAGS](#GOPRO_HEARTBEAT_FLAGS) | Additional status bits. - +| Field Name | Type | Values | Description | +| ------------ | --------- | ------------------------------------------------- | ----------------------- | +| status | `uint8_t` | [GOPRO_HEARTBEAT_STATUS](#GOPRO_HEARTBEAT_STATUS) | Status. | +| capture_mode | `uint8_t` | [GOPRO_CAPTURE_MODE](#GOPRO_CAPTURE_MODE) | Current capture mode. | +| flags | `uint8_t` | [GOPRO_HEARTBEAT_FLAGS](#GOPRO_HEARTBEAT_FLAGS) | Additional status bits. | ### GOPRO_GET_REQUEST (216) {#GOPRO_GET_REQUEST} Request a [GOPRO_COMMAND](#GOPRO_COMMAND) response from the GoPro. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. - +| Field Name | Type | Values | Description | +| ---------------- | --------- | ------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. | ### GOPRO_GET_RESPONSE (217) {#GOPRO_GET_RESPONSE} Response from a [GOPRO_COMMAND](#GOPRO_COMMAND) get request. -Field Name | Type | Values | Description ---- | --- | --- | --- -cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. -status | `uint8_t` | [GOPRO_REQUEST_STATUS](#GOPRO_REQUEST_STATUS) | Status. -value | `uint8_t[4]` | | Value. - +| Field Name | Type | Values | Description | +| ---------- | ------------ | --------------------------------------------- | ----------- | +| cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. | +| status | `uint8_t` | [GOPRO_REQUEST_STATUS](#GOPRO_REQUEST_STATUS) | Status. | +| value | `uint8_t[4]` | | Value. | ### GOPRO_SET_REQUEST (218) {#GOPRO_SET_REQUEST} Request to set a [GOPRO_COMMAND](#GOPRO_COMMAND) with a desired. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. -value | `uint8_t[4]` | | Value. - +| Field Name | Type | Values | Description | +| ---------------- | ------------ | ------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. | +| value | `uint8_t[4]` | | Value. | ### GOPRO_SET_RESPONSE (219) {#GOPRO_SET_RESPONSE} Response from a [GOPRO_COMMAND](#GOPRO_COMMAND) set request. -Field Name | Type | Values | Description ---- | --- | --- | --- -cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. -status | `uint8_t` | [GOPRO_REQUEST_STATUS](#GOPRO_REQUEST_STATUS) | Status. - +| Field Name | Type | Values | Description | +| ---------- | --------- | --------------------------------------------- | ----------- | +| cmd_id | `uint8_t` | [GOPRO_COMMAND](#GOPRO_COMMAND) | Command ID. | +| status | `uint8_t` | [GOPRO_REQUEST_STATUS](#GOPRO_REQUEST_STATUS) | Status. | ### RPM (226) {#RPM} RPM sensor output. -Field Name | Type | Description ---- | --- | --- -rpm1 | `float` | RPM Sensor1. -rpm2 | `float` | RPM Sensor2. - +| Field Name | Type | Description | +| ---------- | ------- | ------------ | +| rpm1 | `float` | RPM Sensor1. | +| rpm2 | `float` | RPM Sensor2. | ### DEVICE_OP_READ (11000) {#DEVICE_OP_READ} Read registers for a device. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -request_id | `uint32_t` | | Request ID - copied to reply. -bustype | `uint8_t` | [DEVICE_OP_BUSTYPE](#DEVICE_OP_BUSTYPE) | The bus type. -bus | `uint8_t` | | Bus number. -address | `uint8_t` | | Bus address. -busname | `char[40]` | | Name of device on bus (for SPI). -regstart | `uint8_t` | | First register to read. -count | `uint8_t` | | Count of registers to read. -bank ++ | `uint8_t` | | Bank number. - +| Field Name | Type | Values | Description | +| -------------------------------------------------------------------- | ---------- | --------------------------------------- | -------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| request_id | `uint32_t` | | Request ID - copied to reply. | +| bustype | `uint8_t` | [DEVICE_OP_BUSTYPE](#DEVICE_OP_BUSTYPE) | The bus type. | +| bus | `uint8_t` | | Bus number. | +| address | `uint8_t` | | Bus address. | +| busname | `char[40]` | | Name of device on bus (for SPI). | +| regstart | `uint8_t` | | First register to read. | +| count | `uint8_t` | | Count of registers to read. | +| bank ++ | `uint8_t` | | Bank number. | ### DEVICE_OP_READ_REPLY (11001) {#DEVICE_OP_READ_REPLY} Read registers reply. -Field Name | Type | Description ---- | --- | --- -request_id | `uint32_t` | Request ID - copied from request. -result | `uint8_t` | 0 for success, anything else is failure code. -regstart | `uint8_t` | Starting register. -count | `uint8_t` | Count of bytes read. -data | `uint8_t[128]` | Reply data. -bank ++ | `uint8_t` | Bank number. - +| Field Name | Type | Description | +| -------------------------------------------------------------------- | -------------- | --------------------------------------------- | +| request_id | `uint32_t` | Request ID - copied from request. | +| result | `uint8_t` | 0 for success, anything else is failure code. | +| regstart | `uint8_t` | Starting register. | +| count | `uint8_t` | Count of bytes read. | +| data | `uint8_t[128]` | Reply data. | +| bank ++ | `uint8_t` | Bank number. | ### DEVICE_OP_WRITE (11002) {#DEVICE_OP_WRITE} Write registers for a device. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -request_id | `uint32_t` | | Request ID - copied to reply. -bustype | `uint8_t` | [DEVICE_OP_BUSTYPE](#DEVICE_OP_BUSTYPE) | The bus type. -bus | `uint8_t` | | Bus number. -address | `uint8_t` | | Bus address. -busname | `char[40]` | | Name of device on bus (for SPI). -regstart | `uint8_t` | | First register to write. -count | `uint8_t` | | Count of registers to write. -data | `uint8_t[128]` | | Write data. -bank ++ | `uint8_t` | | Bank number. - +| Field Name | Type | Values | Description | +| -------------------------------------------------------------------- | -------------- | --------------------------------------- | -------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| request_id | `uint32_t` | | Request ID - copied to reply. | +| bustype | `uint8_t` | [DEVICE_OP_BUSTYPE](#DEVICE_OP_BUSTYPE) | The bus type. | +| bus | `uint8_t` | | Bus number. | +| address | `uint8_t` | | Bus address. | +| busname | `char[40]` | | Name of device on bus (for SPI). | +| regstart | `uint8_t` | | First register to write. | +| count | `uint8_t` | | Count of registers to write. | +| data | `uint8_t[128]` | | Write data. | +| bank ++ | `uint8_t` | | Bank number. | ### DEVICE_OP_WRITE_REPLY (11003) {#DEVICE_OP_WRITE_REPLY} Write registers reply. -Field Name | Type | Description ---- | --- | --- -request_id | `uint32_t` | Request ID - copied from request. -result | `uint8_t` | 0 for success, anything else is failure code. - +| Field Name | Type | Description | +| ---------- | ---------- | --------------------------------------------- | +| request_id | `uint32_t` | Request ID - copied from request. | +| result | `uint8_t` | 0 for success, anything else is failure code. | ### SECURE_COMMAND (11004) {#SECURE_COMMAND} Send a secure command. Data should be signed with a private key corresponding with a public key known to the recipient. Signature should be over the concatenation of the sequence number (little-endian format), the operation (little-endian format) the data and the session key. For [SECURE_COMMAND_GET_SESSION_KEY](#SECURE_COMMAND_GET_SESSION_KEY) the session key should be zero length. The data array consists of the data followed by the signature. The sum of the data_length and the sig_length cannot be more than 220. The format of the data is command specific. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -sequence | `uint32_t` | | Sequence ID for tagging reply. -operation | `uint32_t` | [SECURE_COMMAND_OP](#SECURE_COMMAND_OP) | Operation being requested. -data_length | `uint8_t` | | Data length. -sig_length | `uint8_t` | | Signature length. -data | `uint8_t[220]` | | Signed data. - +| Field Name | Type | Values | Description | +| ---------------- | -------------- | --------------------------------------- | ------------------------------ | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| sequence | `uint32_t` | | Sequence ID for tagging reply. | +| operation | `uint32_t` | [SECURE_COMMAND_OP](#SECURE_COMMAND_OP) | Operation being requested. | +| data_length | `uint8_t` | | Data length. | +| sig_length | `uint8_t` | | Signature length. | +| data | `uint8_t[220]` | | Signed data. | ### SECURE_COMMAND_REPLY (11005) {#SECURE_COMMAND_REPLY} Reply from secure command. -Field Name | Type | Values | Description ---- | --- | --- | --- -sequence | `uint32_t` | | Sequence ID from request. -operation | `uint32_t` | [SECURE_COMMAND_OP](#SECURE_COMMAND_OP) | Operation that was requested. -result | `uint8_t` | [MAV_RESULT](#MAV_RESULT) | Result of command. -data_length | `uint8_t` | | Data length. -data | `uint8_t[220]` | | Reply data. - +| Field Name | Type | Values | Description | +| ----------- | -------------- | --------------------------------------- | ----------------------------- | +| sequence | `uint32_t` | | Sequence ID from request. | +| operation | `uint32_t` | [SECURE_COMMAND_OP](#SECURE_COMMAND_OP) | Operation that was requested. | +| result | `uint8_t` | [MAV_RESULT](#MAV_RESULT) | Result of command. | +| data_length | `uint8_t` | | Data length. | +| data | `uint8_t[220]` | | Reply data. | ### ADAP_TUNING (11010) {#ADAP_TUNING} Adaptive Controller tuning information. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -axis | `uint8_t` | | [PID_TUNING_AXIS](#PID_TUNING_AXIS) | Axis.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -desired | `float` | deg/s | | Desired rate. -achieved | `float` | deg/s | | Achieved rate. -error | `float` | | | Error between model and vehicle. -theta | `float` | | | Theta estimated state predictor. -omega | `float` | | | Omega estimated state predictor. -sigma | `float` | | | Sigma estimated state predictor. -theta_dot | `float` | | | Theta derivative. -omega_dot | `float` | | | Omega derivative. -sigma_dot | `float` | | | Sigma derivative. -f | `float` | | | Projection operator value. -f_dot | `float` | | | Projection operator derivative. -u | `float` | | | u adaptive controlled output command. - +| Field Name | Type | Units | Values | Description | +| ---------- | --------- | ----- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| axis | `uint8_t` | | [PID_TUNING_AXIS](#PID_TUNING_AXIS) | Axis.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| desired | `float` | deg/s | | Desired rate. | +| achieved | `float` | deg/s | | Achieved rate. | +| error | `float` | | | Error between model and vehicle. | +| theta | `float` | | | Theta estimated state predictor. | +| omega | `float` | | | Omega estimated state predictor. | +| sigma | `float` | | | Sigma estimated state predictor. | +| theta_dot | `float` | | | Theta derivative. | +| omega_dot | `float` | | | Omega derivative. | +| sigma_dot | `float` | | | Sigma derivative. | +| f | `float` | | | Projection operator value. | +| f_dot | `float` | | | Projection operator derivative. | +| u | `float` | | | u adaptive controlled output command. | ### VISION_POSITION_DELTA (11011) {#VISION_POSITION_DELTA} Camera vision based attitude and position deltas. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (synced to UNIX time or since system boot). -time_delta_usec | `uint64_t` | us | Time since the last reported camera frame. -angle_delta | `float[3]` | rad | Defines a rotation vector [roll, pitch, yaw] to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) from the previous [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD). -position_delta | `float[3]` | m | Change in position to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) from the previous [FRAME_BODY_FRD](#FRAME_BODY_FRD) rotated to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD). -confidence | `float` | % | Normalised confidence value from 0 to 100. - +| Field Name | Type | Units | Description | +| --------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (synced to UNIX time or since system boot). | +| time_delta_usec | `uint64_t` | us | Time since the last reported camera frame. | +| angle_delta | `float[3]` | rad | Defines a rotation vector [roll, pitch, yaw] to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) from the previous [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD). | +| position_delta | `float[3]` | m | Change in position to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) from the previous [FRAME_BODY_FRD](#FRAME_BODY_FRD) rotated to the current [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD). | +| confidence | `float` | % | Normalised confidence value from 0 to 100. | ### AOA_SSA (11020) {#AOA_SSA} Angle of Attack and Side Slip Angle. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (since boot or Unix epoch). -AOA | `float` | deg | Angle of Attack. -SSA | `float` | deg | Side Slip Angle. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (since boot or Unix epoch). | +| AOA | `float` | deg | Angle of Attack. | +| SSA | `float` | deg | Side Slip Angle. | ### ESC_TELEMETRY_1_TO_4 (11030) {#ESC_TELEMETRY_1_TO_4} ESC Telemetry Data for ESCs 1 to 4, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_5_TO_8 (11031) {#ESC_TELEMETRY_5_TO_8} ESC Telemetry Data for ESCs 5 to 8, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_9_TO_12 (11032) {#ESC_TELEMETRY_9_TO_12} ESC Telemetry Data for ESCs 9 to 12, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### OSD_PARAM_CONFIG (11033) {#OSD_PARAM_CONFIG} Configure an OSD parameter slot. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -request_id | `uint32_t` | | Request ID - copied to reply. -osd_screen | `uint8_t` | | OSD parameter screen index. -osd_index | `uint8_t` | | OSD parameter display index. -param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -config_type | `uint8_t` | [OSD_PARAM_CONFIG_TYPE](#OSD_PARAM_CONFIG_TYPE) | Config type. -min_value | `float` | | OSD parameter minimum value. -max_value | `float` | | OSD parameter maximum value. -increment | `float` | | OSD parameter increment. - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| request_id | `uint32_t` | | Request ID - copied to reply. | +| osd_screen | `uint8_t` | | OSD parameter screen index. | +| osd_index | `uint8_t` | | OSD parameter display index. | +| param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| config_type | `uint8_t` | [OSD_PARAM_CONFIG_TYPE](#OSD_PARAM_CONFIG_TYPE) | Config type. | +| min_value | `float` | | OSD parameter minimum value. | +| max_value | `float` | | OSD parameter maximum value. | +| increment | `float` | | OSD parameter increment. | ### OSD_PARAM_CONFIG_REPLY (11034) {#OSD_PARAM_CONFIG_REPLY} Configure OSD parameter reply. -Field Name | Type | Values | Description ---- | --- | --- | --- -request_id | `uint32_t` | | Request ID - copied from request. -result | `uint8_t` | [OSD_PARAM_CONFIG_ERROR](#OSD_PARAM_CONFIG_ERROR) | Config error type. - +| Field Name | Type | Values | Description | +| ---------- | ---------- | ------------------------------------------------- | --------------------------------- | +| request_id | `uint32_t` | | Request ID - copied from request. | +| result | `uint8_t` | [OSD_PARAM_CONFIG_ERROR](#OSD_PARAM_CONFIG_ERROR) | Config error type. | ### OSD_PARAM_SHOW_CONFIG (11035) {#OSD_PARAM_SHOW_CONFIG} Read a configured an OSD parameter slot. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -request_id | `uint32_t` | Request ID - copied to reply. -osd_screen | `uint8_t` | OSD parameter screen index. -osd_index | `uint8_t` | OSD parameter display index. - +| Field Name | Type | Description | +| ---------------- | ---------- | ----------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| request_id | `uint32_t` | Request ID - copied to reply. | +| osd_screen | `uint8_t` | OSD parameter screen index. | +| osd_index | `uint8_t` | OSD parameter display index. | ### OSD_PARAM_SHOW_CONFIG_REPLY (11036) {#OSD_PARAM_SHOW_CONFIG_REPLY} Read configured OSD parameter reply. -Field Name | Type | Values | Description ---- | --- | --- | --- -request_id | `uint32_t` | | Request ID - copied from request. -result | `uint8_t` | [OSD_PARAM_CONFIG_ERROR](#OSD_PARAM_CONFIG_ERROR) | Config error type. -param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -config_type | `uint8_t` | [OSD_PARAM_CONFIG_TYPE](#OSD_PARAM_CONFIG_TYPE) | Config type. -min_value | `float` | | OSD parameter minimum value. -max_value | `float` | | OSD parameter maximum value. -increment | `float` | | OSD parameter increment. - +| Field Name | Type | Values | Description | +| ----------- | ---------- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| request_id | `uint32_t` | | Request ID - copied from request. | +| result | `uint8_t` | [OSD_PARAM_CONFIG_ERROR](#OSD_PARAM_CONFIG_ERROR) | Config error type. | +| param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| config_type | `uint8_t` | [OSD_PARAM_CONFIG_TYPE](#OSD_PARAM_CONFIG_TYPE) | Config type. | +| min_value | `float` | | OSD parameter minimum value. | +| max_value | `float` | | OSD parameter maximum value. | +| increment | `float` | | OSD parameter increment. | ### OBSTACLE_DISTANCE_3D (11037) {#OBSTACLE_DISTANCE_3D} Obstacle located as a 3D vector. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -sensor_type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Class id of the distance sensor type. -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference. -obstacle_id | `uint16_t` | | | Unique ID given to each obstacle so that its movement can be tracked. Use UINT16_MAX if object ID is unknown or cannot be determined.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -x | `float` | m | | X position of the obstacle. -y | `float` | m | | Y position of the obstacle. -z | `float` | m | | Z position of the obstacle. -min_distance | `float` | m | | Minimum distance the sensor can measure. -max_distance | `float` | m | | Maximum distance the sensor can measure. - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| sensor_type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Class id of the distance sensor type. | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference. | +| obstacle_id | `uint16_t` | | | Unique ID given to each obstacle so that its movement can be tracked. Use UINT16_MAX if object ID is unknown or cannot be determined.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| x | `float` | m | | X position of the obstacle. | +| y | `float` | m | | Y position of the obstacle. | +| z | `float` | m | | Z position of the obstacle. | +| min_distance | `float` | m | | Minimum distance the sensor can measure. | +| max_distance | `float` | m | | Maximum distance the sensor can measure. | ### WATER_DEPTH (11038) {#WATER_DEPTH} Water depth -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot) -id | `uint8_t` | | Onboard ID of the sensor
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -healthy | `uint8_t` | | Sensor data healthy (0=unhealthy, 1=healthy) -lat | `int32_t` | degE7 | Latitude -lng | `int32_t` | degE7 | Longitude -alt | `float` | m | Altitude (MSL) of vehicle -roll | `float` | rad | Roll angle -pitch | `float` | rad | Pitch angle -yaw | `float` | rad | Yaw angle -distance | `float` | m | Distance (uncorrected) -temperature | `float` | degC | Water temperature - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot) | +| id | `uint8_t` | | Onboard ID of the sensor
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| healthy | `uint8_t` | | Sensor data healthy (0=unhealthy, 1=healthy) | +| lat | `int32_t` | degE7 | Latitude | +| lng | `int32_t` | degE7 | Longitude | +| alt | `float` | m | Altitude (MSL) of vehicle | +| roll | `float` | rad | Roll angle | +| pitch | `float` | rad | Pitch angle | +| yaw | `float` | rad | Yaw angle | +| distance | `float` | m | Distance (uncorrected) | +| temperature | `float` | degC | Water temperature | ### MCU_STATUS (11039) {#MCU_STATUS} The MCU status, giving MCU temperature and voltage. The min and max voltages are to allow for detecting power supply instability. -Field Name | Type | Units | Description ---- | --- | --- | --- -id | `uint8_t` | | MCU instance
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -MCU_temperature | `int16_t` | cdegC | MCU Internal temperature -MCU_voltage | `uint16_t` | mV | MCU voltage -MCU_voltage_min | `uint16_t` | mV | MCU voltage minimum -MCU_voltage_max | `uint16_t` | mV | MCU voltage maximum - +| Field Name | Type | Units | Description | +| --------------- | ---------- | ----- | ---------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | MCU instance
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| MCU_temperature | `int16_t` | cdegC | MCU Internal temperature | +| MCU_voltage | `uint16_t` | mV | MCU voltage | +| MCU_voltage_min | `uint16_t` | mV | MCU voltage minimum | +| MCU_voltage_max | `uint16_t` | mV | MCU voltage maximum | ### ESC_TELEMETRY_13_TO_16 (11040) {#ESC_TELEMETRY_13_TO_16} ESC Telemetry Data for ESCs 13 to 16, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_17_TO_20 (11041) {#ESC_TELEMETRY_17_TO_20} ESC Telemetry Data for ESCs 17 to 20, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_21_TO_24 (11042) {#ESC_TELEMETRY_21_TO_24} ESC Telemetry Data for ESCs 21 to 24, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_25_TO_28 (11043) {#ESC_TELEMETRY_25_TO_28} ESC Telemetry Data for ESCs 25 to 28, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### ESC_TELEMETRY_29_TO_32 (11044) {#ESC_TELEMETRY_29_TO_32} ESC Telemetry Data for ESCs 29 to 32, matching data sent by BLHeli ESCs. -Field Name | Type | Units | Description ---- | --- | --- | --- -temperature | `uint8_t[4]` | degC | Temperature. -voltage | `uint16_t[4]` | cV | Voltage. -current | `uint16_t[4]` | cA | Current. -totalcurrent | `uint16_t[4]` | mAh | Total current. -rpm | `uint16_t[4]` | rpm | RPM (eRPM). -count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ----------------------------------------------------- | +| temperature | `uint8_t[4]` | degC | Temperature. | +| voltage | `uint16_t[4]` | cV | Voltage. | +| current | `uint16_t[4]` | cA | Current. | +| totalcurrent | `uint16_t[4]` | mAh | Total current. | +| rpm | `uint16_t[4]` | rpm | RPM (eRPM). | +| count | `uint16_t[4]` | | count of telemetry packets received (wraps at 65535). | ### NAMED_VALUE_STRING (11060) {#NAMED_VALUE_STRING} Send a key-value pair as string. 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -value | `char[64]` | | Value of the debug variable - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| value | `char[64]` | | Value of the debug variable | ## Enumerated Types ### ACCELCAL_VEHICLE_POS {#ACCELCAL_VEHICLE_POS} -Value | Name | Description ---- | --- | --- -1 | [ACCELCAL_VEHICLE_POS_LEVEL](#ACCELCAL_VEHICLE_POS_LEVEL) | -2 | [ACCELCAL_VEHICLE_POS_LEFT](#ACCELCAL_VEHICLE_POS_LEFT) | -3 | [ACCELCAL_VEHICLE_POS_RIGHT](#ACCELCAL_VEHICLE_POS_RIGHT) | -4 | [ACCELCAL_VEHICLE_POS_NOSEDOWN](#ACCELCAL_VEHICLE_POS_NOSEDOWN) | -5 | [ACCELCAL_VEHICLE_POS_NOSEUP](#ACCELCAL_VEHICLE_POS_NOSEUP) | -6 | [ACCELCAL_VEHICLE_POS_BACK](#ACCELCAL_VEHICLE_POS_BACK) | -16777215 | [ACCELCAL_VEHICLE_POS_SUCCESS](#ACCELCAL_VEHICLE_POS_SUCCESS) | -16777216 | [ACCELCAL_VEHICLE_POS_FAILED](#ACCELCAL_VEHICLE_POS_FAILED) | +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------- | ----------- | +| 1 | [ACCELCAL_VEHICLE_POS_LEVEL](#ACCELCAL_VEHICLE_POS_LEVEL) | +| 2 | [ACCELCAL_VEHICLE_POS_LEFT](#ACCELCAL_VEHICLE_POS_LEFT) | +| 3 | [ACCELCAL_VEHICLE_POS_RIGHT](#ACCELCAL_VEHICLE_POS_RIGHT) | +| 4 | [ACCELCAL_VEHICLE_POS_NOSEDOWN](#ACCELCAL_VEHICLE_POS_NOSEDOWN) | +| 5 | [ACCELCAL_VEHICLE_POS_NOSEUP](#ACCELCAL_VEHICLE_POS_NOSEUP) | +| 6 | [ACCELCAL_VEHICLE_POS_BACK](#ACCELCAL_VEHICLE_POS_BACK) | +| 16777215 | [ACCELCAL_VEHICLE_POS_SUCCESS](#ACCELCAL_VEHICLE_POS_SUCCESS) | +| 16777216 | [ACCELCAL_VEHICLE_POS_FAILED](#ACCELCAL_VEHICLE_POS_FAILED) | ### SCRIPTING_CMD {#SCRIPTING_CMD} -Value | Name | Description ---- | --- | --- -0 | [SCRIPTING_CMD_REPL_START](#SCRIPTING_CMD_REPL_START) | Start a REPL session. -1 | [SCRIPTING_CMD_REPL_STOP](#SCRIPTING_CMD_REPL_STOP) | End a REPL session. -2 | [SCRIPTING_CMD_STOP](#SCRIPTING_CMD_STOP) | Stop execution of scripts. -3 | [SCRIPTING_CMD_STOP_AND_RESTART](#SCRIPTING_CMD_STOP_AND_RESTART) | Stop execution of scripts and restart. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | -------------------------------------- | +| 0 | [SCRIPTING_CMD_REPL_START](#SCRIPTING_CMD_REPL_START) | Start a REPL session. | +| 1 | [SCRIPTING_CMD_REPL_STOP](#SCRIPTING_CMD_REPL_STOP) | End a REPL session. | +| 2 | [SCRIPTING_CMD_STOP](#SCRIPTING_CMD_STOP) | Stop execution of scripts. | +| 3 | [SCRIPTING_CMD_STOP_AND_RESTART](#SCRIPTING_CMD_STOP_AND_RESTART) | Stop execution of scripts and restart. | ### SECURE_COMMAND_OP {#SECURE_COMMAND_OP} -Value | Name | Description ---- | --- | --- -0 | [SECURE_COMMAND_GET_SESSION_KEY](#SECURE_COMMAND_GET_SESSION_KEY) | Get an 8 byte session key which is used for remote secure updates which operate on flight controller data such as bootloader public keys. Return data will be 8 bytes on success. The session key remains valid until either the flight controller reboots or another [SECURE_COMMAND_GET_SESSION_KEY](#SECURE_COMMAND_GET_SESSION_KEY) is run. -1 | [SECURE_COMMAND_GET_REMOTEID_SESSION_KEY](#SECURE_COMMAND_GET_REMOTEID_SESSION_KEY) | Get an 8 byte session key which is used for remote secure updates which operate on RemoteID module data. Return data will be 8 bytes on success. The session key remains valid until either the remote ID module reboots or another [SECURE_COMMAND_GET_REMOTEID_SESSION_KEY](#SECURE_COMMAND_GET_REMOTEID_SESSION_KEY) is run. -2 | [SECURE_COMMAND_REMOVE_PUBLIC_KEYS](#SECURE_COMMAND_REMOVE_PUBLIC_KEYS) | Remove range of public keys from the bootloader. Command data consists of two bytes, first byte if index of first public key to remove. Second byte is the number of keys to remove. If all keys are removed then secure boot is disabled and insecure firmware can be loaded. -3 | [SECURE_COMMAND_GET_PUBLIC_KEYS](#SECURE_COMMAND_GET_PUBLIC_KEYS) | Get current public keys from the bootloader. Command data consists of two bytes, first byte is index of first public key to fetch, 2nd byte is number of keys to fetch. Total data needs to fit in data portion of reply (max 6 keys for 32 byte keys). Reply data has the index of the first key in the first byte, followed by the keys. Returned keys may be less than the number of keys requested if there are less keys installed than requested. -4 | [SECURE_COMMAND_SET_PUBLIC_KEYS](#SECURE_COMMAND_SET_PUBLIC_KEYS) | Set current public keys in the bootloader. Data consists of a one byte public key index followed by the public keys. With 32 byte keys this allows for up to 6 keys to be set in one request. Keys outside of the range that is being set will remain unchanged. -5 | [SECURE_COMMAND_GET_REMOTEID_CONFIG](#SECURE_COMMAND_GET_REMOTEID_CONFIG) | Get config data for remote ID module. This command should be sent to the component ID of the flight controller which will forward it to the RemoteID module either over mavlink or DroneCAN. Data format is specific to the RemoteID implementation, see RemoteID firmware documentation for details. -6 | [SECURE_COMMAND_SET_REMOTEID_CONFIG](#SECURE_COMMAND_SET_REMOTEID_CONFIG) | Set config data for remote ID module. This command should be sent to the component ID of the flight controller which will forward it to the RemoteID module either over mavlink or DroneCAN. Data format is specific to the RemoteID implementation, see RemoteID firmware documentation for details. -7 | [SECURE_COMMAND_FLASH_BOOTLOADER](#SECURE_COMMAND_FLASH_BOOTLOADER) | Flash bootloader from local storage. Data is the filename to use for the bootloader. This is intended to be used with MAVFtp to upload a new bootloader to a microSD before flashing. +| Value | Name | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [SECURE_COMMAND_GET_SESSION_KEY](#SECURE_COMMAND_GET_SESSION_KEY) | Get an 8 byte session key which is used for remote secure updates which operate on flight controller data such as bootloader public keys. Return data will be 8 bytes on success. The session key remains valid until either the flight controller reboots or another [SECURE_COMMAND_GET_SESSION_KEY](#SECURE_COMMAND_GET_SESSION_KEY) is run. | +| 1 | [SECURE_COMMAND_GET_REMOTEID_SESSION_KEY](#SECURE_COMMAND_GET_REMOTEID_SESSION_KEY) | Get an 8 byte session key which is used for remote secure updates which operate on RemoteID module data. Return data will be 8 bytes on success. The session key remains valid until either the remote ID module reboots or another [SECURE_COMMAND_GET_REMOTEID_SESSION_KEY](#SECURE_COMMAND_GET_REMOTEID_SESSION_KEY) is run. | +| 2 | [SECURE_COMMAND_REMOVE_PUBLIC_KEYS](#SECURE_COMMAND_REMOVE_PUBLIC_KEYS) | Remove range of public keys from the bootloader. Command data consists of two bytes, first byte if index of first public key to remove. Second byte is the number of keys to remove. If all keys are removed then secure boot is disabled and insecure firmware can be loaded. | +| 3 | [SECURE_COMMAND_GET_PUBLIC_KEYS](#SECURE_COMMAND_GET_PUBLIC_KEYS) | Get current public keys from the bootloader. Command data consists of two bytes, first byte is index of first public key to fetch, 2nd byte is number of keys to fetch. Total data needs to fit in data portion of reply (max 6 keys for 32 byte keys). Reply data has the index of the first key in the first byte, followed by the keys. Returned keys may be less than the number of keys requested if there are less keys installed than requested. | +| 4 | [SECURE_COMMAND_SET_PUBLIC_KEYS](#SECURE_COMMAND_SET_PUBLIC_KEYS) | Set current public keys in the bootloader. Data consists of a one byte public key index followed by the public keys. With 32 byte keys this allows for up to 6 keys to be set in one request. Keys outside of the range that is being set will remain unchanged. | +| 5 | [SECURE_COMMAND_GET_REMOTEID_CONFIG](#SECURE_COMMAND_GET_REMOTEID_CONFIG) | Get config data for remote ID module. This command should be sent to the component ID of the flight controller which will forward it to the RemoteID module either over mavlink or DroneCAN. Data format is specific to the RemoteID implementation, see RemoteID firmware documentation for details. | +| 6 | [SECURE_COMMAND_SET_REMOTEID_CONFIG](#SECURE_COMMAND_SET_REMOTEID_CONFIG) | Set config data for remote ID module. This command should be sent to the component ID of the flight controller which will forward it to the RemoteID module either over mavlink or DroneCAN. Data format is specific to the RemoteID implementation, see RemoteID firmware documentation for details. | +| 7 | [SECURE_COMMAND_FLASH_BOOTLOADER](#SECURE_COMMAND_FLASH_BOOTLOADER) | Flash bootloader from local storage. Data is the filename to use for the bootloader. This is intended to be used with MAVFtp to upload a new bootloader to a microSD before flashing. | ### LIMITS_STATE {#LIMITS_STATE} -Value | Name | Description ---- | --- | --- -0 | [LIMITS_INIT](#LIMITS_INIT) | Pre-initialization. -1 | [LIMITS_DISABLED](#LIMITS_DISABLED) | Disabled. -2 | [LIMITS_ENABLED](#LIMITS_ENABLED) | Checking limits. -3 | [LIMITS_TRIGGERED](#LIMITS_TRIGGERED) | A limit has been breached. -4 | [LIMITS_RECOVERING](#LIMITS_RECOVERING) | Taking action e.g. Return/RTL. -5 | [LIMITS_RECOVERED](#LIMITS_RECOVERED) | We're no longer in breach of a limit. +| Value | Name | Description | +| ------------------------------- | --------------------------------------- | ------------------------------------- | +| 0 | [LIMITS_INIT](#LIMITS_INIT) | Pre-initialization. | +| 1 | [LIMITS_DISABLED](#LIMITS_DISABLED) | Disabled. | +| 2 | [LIMITS_ENABLED](#LIMITS_ENABLED) | Checking limits. | +| 3 | [LIMITS_TRIGGERED](#LIMITS_TRIGGERED) | A limit has been breached. | +| 4 | [LIMITS_RECOVERING](#LIMITS_RECOVERING) | Taking action e.g. Return/RTL. | +| 5 | [LIMITS_RECOVERED](#LIMITS_RECOVERED) | We're no longer in breach of a limit. | ### LIMIT_MODULE {#LIMIT_MODULE} -(Bitmask) +(Bitmask) -Value | Name | Description ---- | --- | --- -1 | [LIMIT_GPSLOCK](#LIMIT_GPSLOCK) | Pre-initialization. -2 | [LIMIT_GEOFENCE](#LIMIT_GEOFENCE) | Disabled. -4 | [LIMIT_ALTITUDE](#LIMIT_ALTITUDE) | Checking limits. +| Value | Name | Description | +| ---------------------------- | --------------------------------- | ------------------- | +| 1 | [LIMIT_GPSLOCK](#LIMIT_GPSLOCK) | Pre-initialization. | +| 2 | [LIMIT_GEOFENCE](#LIMIT_GEOFENCE) | Disabled. | +| 4 | [LIMIT_ALTITUDE](#LIMIT_ALTITUDE) | Checking limits. | ### RALLY_FLAGS {#RALLY_FLAGS} Flags in [RALLY_POINT](#RALLY_POINT) message. -Value | Name | Description ---- | --- | --- -1 | [FAVORABLE_WIND](#FAVORABLE_WIND) | Flag set when requiring favorable winds for landing. -2 | [LAND_IMMEDIATELY](#LAND_IMMEDIATELY) | Flag set when plane is to immediately descend to break altitude and land without GCS intervention. Flag not set when plane is to loiter at Rally point until commanded to land. -4 | [ALT_FRAME_VALID](#ALT_FRAME_VALID) | True if the following altitude frame value is valid. -24 | [ALT_FRAME](#ALT_FRAME) | 2 bit value representing altitude frame. 0: absolute, 1: relative home, 2: relative origin, 3: relative terrain +| Value | Name | Description | +| ------------------------------ | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [FAVORABLE_WIND](#FAVORABLE_WIND) | Flag set when requiring favorable winds for landing. | +| 2 | [LAND_IMMEDIATELY](#LAND_IMMEDIATELY) | Flag set when plane is to immediately descend to break altitude and land without GCS intervention. Flag not set when plane is to loiter at Rally point until commanded to land. | +| 4 | [ALT_FRAME_VALID](#ALT_FRAME_VALID) | True if the following altitude frame value is valid. | +| 24 | [ALT_FRAME](#ALT_FRAME) | 2 bit value representing altitude frame. 0: absolute, 1: relative home, 2: relative origin, 3: relative terrain | ### CAMERA_STATUS_TYPES {#CAMERA_STATUS_TYPES} -Value | Name | Description ---- | --- | --- -0 | [CAMERA_STATUS_TYPE_HEARTBEAT](#CAMERA_STATUS_TYPE_HEARTBEAT) | Camera heartbeat, announce camera component ID at 1Hz. -1 | [CAMERA_STATUS_TYPE_TRIGGER](#CAMERA_STATUS_TYPE_TRIGGER) | Camera image triggered. -2 | [CAMERA_STATUS_TYPE_DISCONNECT](#CAMERA_STATUS_TYPE_DISCONNECT) | Camera connection lost. -3 | [CAMERA_STATUS_TYPE_ERROR](#CAMERA_STATUS_TYPE_ERROR) | Camera unknown error. -4 | [CAMERA_STATUS_TYPE_LOWBATT](#CAMERA_STATUS_TYPE_LOWBATT) | Camera battery low. Parameter p1 shows reported voltage. -5 | [CAMERA_STATUS_TYPE_LOWSTORE](#CAMERA_STATUS_TYPE_LOWSTORE) | Camera storage low. Parameter p1 shows reported shots remaining. -6 | [CAMERA_STATUS_TYPE_LOWSTOREV](#CAMERA_STATUS_TYPE_LOWSTOREV) | Camera storage low. Parameter p1 shows reported video minutes remaining. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------ | +| 0 | [CAMERA_STATUS_TYPE_HEARTBEAT](#CAMERA_STATUS_TYPE_HEARTBEAT) | Camera heartbeat, announce camera component ID at 1Hz. | +| 1 | [CAMERA_STATUS_TYPE_TRIGGER](#CAMERA_STATUS_TYPE_TRIGGER) | Camera image triggered. | +| 2 | [CAMERA_STATUS_TYPE_DISCONNECT](#CAMERA_STATUS_TYPE_DISCONNECT) | Camera connection lost. | +| 3 | [CAMERA_STATUS_TYPE_ERROR](#CAMERA_STATUS_TYPE_ERROR) | Camera unknown error. | +| 4 | [CAMERA_STATUS_TYPE_LOWBATT](#CAMERA_STATUS_TYPE_LOWBATT) | Camera battery low. Parameter p1 shows reported voltage. | +| 5 | [CAMERA_STATUS_TYPE_LOWSTORE](#CAMERA_STATUS_TYPE_LOWSTORE) | Camera storage low. Parameter p1 shows reported shots remaining. | +| 6 | [CAMERA_STATUS_TYPE_LOWSTOREV](#CAMERA_STATUS_TYPE_LOWSTOREV) | Camera storage low. Parameter p1 shows reported video minutes remaining. | ### CAMERA_FEEDBACK_FLAGS {#CAMERA_FEEDBACK_FLAGS} -Value | Name | Description ---- | --- | --- -0 | [CAMERA_FEEDBACK_PHOTO](#CAMERA_FEEDBACK_PHOTO) | Shooting photos, not video. -1 | [CAMERA_FEEDBACK_VIDEO](#CAMERA_FEEDBACK_VIDEO) | Shooting video, not stills. -2 | [CAMERA_FEEDBACK_BADEXPOSURE](#CAMERA_FEEDBACK_BADEXPOSURE) | Unable to achieve requested exposure (e.g. shutter speed too low). -3 | [CAMERA_FEEDBACK_CLOSEDLOOP](#CAMERA_FEEDBACK_CLOSEDLOOP) | Closed loop feedback from camera, we know for sure it has successfully taken a picture. -4 | [CAMERA_FEEDBACK_OPENLOOP](#CAMERA_FEEDBACK_OPENLOOP) | Open loop camera, an image trigger has been requested but we can't know for sure it has successfully taken a picture. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| 0 | [CAMERA_FEEDBACK_PHOTO](#CAMERA_FEEDBACK_PHOTO) | Shooting photos, not video. | +| 1 | [CAMERA_FEEDBACK_VIDEO](#CAMERA_FEEDBACK_VIDEO) | Shooting video, not stills. | +| 2 | [CAMERA_FEEDBACK_BADEXPOSURE](#CAMERA_FEEDBACK_BADEXPOSURE) | Unable to achieve requested exposure (e.g. shutter speed too low). | +| 3 | [CAMERA_FEEDBACK_CLOSEDLOOP](#CAMERA_FEEDBACK_CLOSEDLOOP) | Closed loop feedback from camera, we know for sure it has successfully taken a picture. | +| 4 | [CAMERA_FEEDBACK_OPENLOOP](#CAMERA_FEEDBACK_OPENLOOP) | Open loop camera, an image trigger has been requested but we can't know for sure it has successfully taken a picture. | ### MAV_MODE_GIMBAL {#MAV_MODE_GIMBAL} -Value | Name | Description ---- | --- | --- -0 | [MAV_MODE_GIMBAL_UNINITIALIZED](#MAV_MODE_GIMBAL_UNINITIALIZED) | Gimbal is powered on but has not started initializing yet. -1 | [MAV_MODE_GIMBAL_CALIBRATING_PITCH](#MAV_MODE_GIMBAL_CALIBRATING_PITCH) | Gimbal is currently running calibration on the pitch axis. -2 | [MAV_MODE_GIMBAL_CALIBRATING_ROLL](#MAV_MODE_GIMBAL_CALIBRATING_ROLL) | Gimbal is currently running calibration on the roll axis. -3 | [MAV_MODE_GIMBAL_CALIBRATING_YAW](#MAV_MODE_GIMBAL_CALIBRATING_YAW) | Gimbal is currently running calibration on the yaw axis. -4 | [MAV_MODE_GIMBAL_INITIALIZED](#MAV_MODE_GIMBAL_INITIALIZED) | Gimbal has finished calibrating and initializing, but is relaxed pending reception of first rate command from copter. -5 | [MAV_MODE_GIMBAL_ACTIVE](#MAV_MODE_GIMBAL_ACTIVE) | Gimbal is actively stabilizing. -6 | [MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT](#MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT) | Gimbal is relaxed because it missed more than 10 expected rate command messages in a row. Gimbal will move back to active mode when it receives a new rate command. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_MODE_GIMBAL_UNINITIALIZED](#MAV_MODE_GIMBAL_UNINITIALIZED) | Gimbal is powered on but has not started initializing yet. | +| 1 | [MAV_MODE_GIMBAL_CALIBRATING_PITCH](#MAV_MODE_GIMBAL_CALIBRATING_PITCH) | Gimbal is currently running calibration on the pitch axis. | +| 2 | [MAV_MODE_GIMBAL_CALIBRATING_ROLL](#MAV_MODE_GIMBAL_CALIBRATING_ROLL) | Gimbal is currently running calibration on the roll axis. | +| 3 | [MAV_MODE_GIMBAL_CALIBRATING_YAW](#MAV_MODE_GIMBAL_CALIBRATING_YAW) | Gimbal is currently running calibration on the yaw axis. | +| 4 | [MAV_MODE_GIMBAL_INITIALIZED](#MAV_MODE_GIMBAL_INITIALIZED) | Gimbal has finished calibrating and initializing, but is relaxed pending reception of first rate command from copter. | +| 5 | [MAV_MODE_GIMBAL_ACTIVE](#MAV_MODE_GIMBAL_ACTIVE) | Gimbal is actively stabilizing. | +| 6 | [MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT](#MAV_MODE_GIMBAL_RATE_CMD_TIMEOUT) | Gimbal is relaxed because it missed more than 10 expected rate command messages in a row. Gimbal will move back to active mode when it receives a new rate command. | ### GIMBAL_AXIS {#GIMBAL_AXIS} -Value | Name | Description ---- | --- | --- -0 | [GIMBAL_AXIS_YAW](#GIMBAL_AXIS_YAW) | Gimbal yaw axis. -1 | [GIMBAL_AXIS_PITCH](#GIMBAL_AXIS_PITCH) | Gimbal pitch axis. -2 | [GIMBAL_AXIS_ROLL](#GIMBAL_AXIS_ROLL) | Gimbal roll axis. +| Value | Name | Description | +| ------------------------------- | --------------------------------------- | ------------------ | +| 0 | [GIMBAL_AXIS_YAW](#GIMBAL_AXIS_YAW) | Gimbal yaw axis. | +| 1 | [GIMBAL_AXIS_PITCH](#GIMBAL_AXIS_PITCH) | Gimbal pitch axis. | +| 2 | [GIMBAL_AXIS_ROLL](#GIMBAL_AXIS_ROLL) | Gimbal roll axis. | ### GIMBAL_AXIS_CALIBRATION_STATUS {#GIMBAL_AXIS_CALIBRATION_STATUS} -Value | Name | Description ---- | --- | --- -0 | [GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS](#GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS) | Axis calibration is in progress. -1 | [GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED](#GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED) | Axis calibration succeeded. -2 | [GIMBAL_AXIS_CALIBRATION_STATUS_FAILED](#GIMBAL_AXIS_CALIBRATION_STATUS_FAILED) | Axis calibration failed. +| Value | Name | Description | +| -------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -------------------------------- | +| 0 | [GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS](#GIMBAL_AXIS_CALIBRATION_STATUS_IN_PROGRESS) | Axis calibration is in progress. | +| 1 | [GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED](#GIMBAL_AXIS_CALIBRATION_STATUS_SUCCEEDED) | Axis calibration succeeded. | +| 2 | [GIMBAL_AXIS_CALIBRATION_STATUS_FAILED](#GIMBAL_AXIS_CALIBRATION_STATUS_FAILED) | Axis calibration failed. | ### GIMBAL_AXIS_CALIBRATION_REQUIRED {#GIMBAL_AXIS_CALIBRATION_REQUIRED} -Value | Name | Description ---- | --- | --- -0 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN](#GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN) | Whether or not this axis requires calibration is unknown at this time. -1 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE](#GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE) | This axis requires calibration. -2 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE](#GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE) | This axis does not require calibration. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | +| 0 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN](#GIMBAL_AXIS_CALIBRATION_REQUIRED_UNKNOWN) | Whether or not this axis requires calibration is unknown at this time. | +| 1 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE](#GIMBAL_AXIS_CALIBRATION_REQUIRED_TRUE) | This axis requires calibration. | +| 2 | [GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE](#GIMBAL_AXIS_CALIBRATION_REQUIRED_FALSE) | This axis does not require calibration. | ### GOPRO_HEARTBEAT_STATUS {#GOPRO_HEARTBEAT_STATUS} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_HEARTBEAT_STATUS_DISCONNECTED](#GOPRO_HEARTBEAT_STATUS_DISCONNECTED) | No GoPro connected. -1 | [GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE](#GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE) | The detected GoPro is not HeroBus compatible. -2 | [GOPRO_HEARTBEAT_STATUS_CONNECTED](#GOPRO_HEARTBEAT_STATUS_CONNECTED) | A HeroBus compatible GoPro is connected. -3 | [GOPRO_HEARTBEAT_STATUS_ERROR](#GOPRO_HEARTBEAT_STATUS_ERROR) | An unrecoverable error was encountered with the connected GoPro, it may require a power cycle. +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| 0 | [GOPRO_HEARTBEAT_STATUS_DISCONNECTED](#GOPRO_HEARTBEAT_STATUS_DISCONNECTED) | No GoPro connected. | +| 1 | [GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE](#GOPRO_HEARTBEAT_STATUS_INCOMPATIBLE) | The detected GoPro is not HeroBus compatible. | +| 2 | [GOPRO_HEARTBEAT_STATUS_CONNECTED](#GOPRO_HEARTBEAT_STATUS_CONNECTED) | A HeroBus compatible GoPro is connected. | +| 3 | [GOPRO_HEARTBEAT_STATUS_ERROR](#GOPRO_HEARTBEAT_STATUS_ERROR) | An unrecoverable error was encountered with the connected GoPro, it may require a power cycle. | ### GOPRO_HEARTBEAT_FLAGS {#GOPRO_HEARTBEAT_FLAGS} -(Bitmask) +(Bitmask) -Value | Name | Description ---- | --- | --- -1 | [GOPRO_FLAG_RECORDING](#GOPRO_FLAG_RECORDING) | GoPro is currently recording. +| Value | Name | Description | +| ---------------------------------- | --------------------------------------------- | ----------------------------- | +| 1 | [GOPRO_FLAG_RECORDING](#GOPRO_FLAG_RECORDING) | GoPro is currently recording. | ### GOPRO_REQUEST_STATUS {#GOPRO_REQUEST_STATUS} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_REQUEST_SUCCESS](#GOPRO_REQUEST_SUCCESS) | The write message with ID indicated succeeded. -1 | [GOPRO_REQUEST_FAILED](#GOPRO_REQUEST_FAILED) | The write message with ID indicated failed. +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | ---------------------------------------------- | +| 0 | [GOPRO_REQUEST_SUCCESS](#GOPRO_REQUEST_SUCCESS) | The write message with ID indicated succeeded. | +| 1 | [GOPRO_REQUEST_FAILED](#GOPRO_REQUEST_FAILED) | The write message with ID indicated failed. | ### GOPRO_COMMAND {#GOPRO_COMMAND} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_COMMAND_POWER](#GOPRO_COMMAND_POWER) | (Get/Set). -1 | [GOPRO_COMMAND_CAPTURE_MODE](#GOPRO_COMMAND_CAPTURE_MODE) | (Get/Set). -2 | [GOPRO_COMMAND_SHUTTER](#GOPRO_COMMAND_SHUTTER) | (___/Set). -3 | [GOPRO_COMMAND_BATTERY](#GOPRO_COMMAND_BATTERY) | (Get/___). -4 | [GOPRO_COMMAND_MODEL](#GOPRO_COMMAND_MODEL) | (Get/___). -5 | [GOPRO_COMMAND_VIDEO_SETTINGS](#GOPRO_COMMAND_VIDEO_SETTINGS) | (Get/Set). -6 | [GOPRO_COMMAND_LOW_LIGHT](#GOPRO_COMMAND_LOW_LIGHT) | (Get/Set). -7 | [GOPRO_COMMAND_PHOTO_RESOLUTION](#GOPRO_COMMAND_PHOTO_RESOLUTION) | (Get/Set). -8 | [GOPRO_COMMAND_PHOTO_BURST_RATE](#GOPRO_COMMAND_PHOTO_BURST_RATE) | (Get/Set). -9 | [GOPRO_COMMAND_PROTUNE](#GOPRO_COMMAND_PROTUNE) | (Get/Set). -10 | [GOPRO_COMMAND_PROTUNE_WHITE_BALANCE](#GOPRO_COMMAND_PROTUNE_WHITE_BALANCE) | (Get/Set) Hero 3+ Only. -11 | [GOPRO_COMMAND_PROTUNE_COLOUR](#GOPRO_COMMAND_PROTUNE_COLOUR) | (Get/Set) Hero 3+ Only. -12 | [GOPRO_COMMAND_PROTUNE_GAIN](#GOPRO_COMMAND_PROTUNE_GAIN) | (Get/Set) Hero 3+ Only. -13 | [GOPRO_COMMAND_PROTUNE_SHARPNESS](#GOPRO_COMMAND_PROTUNE_SHARPNESS) | (Get/Set) Hero 3+ Only. -14 | [GOPRO_COMMAND_PROTUNE_EXPOSURE](#GOPRO_COMMAND_PROTUNE_EXPOSURE) | (Get/Set) Hero 3+ Only. -15 | [GOPRO_COMMAND_TIME](#GOPRO_COMMAND_TIME) | (Get/Set). -16 | [GOPRO_COMMAND_CHARGING](#GOPRO_COMMAND_CHARGING) | (Get/Set). +| Value | Name | Description | +| -------------------------------------------------- | --------------------------------------------------------------------------- | ----------------------- | +| 0 | [GOPRO_COMMAND_POWER](#GOPRO_COMMAND_POWER) | (Get/Set). | +| 1 | [GOPRO_COMMAND_CAPTURE_MODE](#GOPRO_COMMAND_CAPTURE_MODE) | (Get/Set). | +| 2 | [GOPRO_COMMAND_SHUTTER](#GOPRO_COMMAND_SHUTTER) | (\_\_\_/Set). | +| 3 | [GOPRO_COMMAND_BATTERY](#GOPRO_COMMAND_BATTERY) | (Get/\_\_\_). | +| 4 | [GOPRO_COMMAND_MODEL](#GOPRO_COMMAND_MODEL) | (Get/\_\_\_). | +| 5 | [GOPRO_COMMAND_VIDEO_SETTINGS](#GOPRO_COMMAND_VIDEO_SETTINGS) | (Get/Set). | +| 6 | [GOPRO_COMMAND_LOW_LIGHT](#GOPRO_COMMAND_LOW_LIGHT) | (Get/Set). | +| 7 | [GOPRO_COMMAND_PHOTO_RESOLUTION](#GOPRO_COMMAND_PHOTO_RESOLUTION) | (Get/Set). | +| 8 | [GOPRO_COMMAND_PHOTO_BURST_RATE](#GOPRO_COMMAND_PHOTO_BURST_RATE) | (Get/Set). | +| 9 | [GOPRO_COMMAND_PROTUNE](#GOPRO_COMMAND_PROTUNE) | (Get/Set). | +| 10 | [GOPRO_COMMAND_PROTUNE_WHITE_BALANCE](#GOPRO_COMMAND_PROTUNE_WHITE_BALANCE) | (Get/Set) Hero 3+ Only. | +| 11 | [GOPRO_COMMAND_PROTUNE_COLOUR](#GOPRO_COMMAND_PROTUNE_COLOUR) | (Get/Set) Hero 3+ Only. | +| 12 | [GOPRO_COMMAND_PROTUNE_GAIN](#GOPRO_COMMAND_PROTUNE_GAIN) | (Get/Set) Hero 3+ Only. | +| 13 | [GOPRO_COMMAND_PROTUNE_SHARPNESS](#GOPRO_COMMAND_PROTUNE_SHARPNESS) | (Get/Set) Hero 3+ Only. | +| 14 | [GOPRO_COMMAND_PROTUNE_EXPOSURE](#GOPRO_COMMAND_PROTUNE_EXPOSURE) | (Get/Set) Hero 3+ Only. | +| 15 | [GOPRO_COMMAND_TIME](#GOPRO_COMMAND_TIME) | (Get/Set). | +| 16 | [GOPRO_COMMAND_CHARGING](#GOPRO_COMMAND_CHARGING) | (Get/Set). | ### GOPRO_CAPTURE_MODE {#GOPRO_CAPTURE_MODE} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_CAPTURE_MODE_VIDEO](#GOPRO_CAPTURE_MODE_VIDEO) | Video mode. -1 | [GOPRO_CAPTURE_MODE_PHOTO](#GOPRO_CAPTURE_MODE_PHOTO) | Photo mode. -2 | [GOPRO_CAPTURE_MODE_BURST](#GOPRO_CAPTURE_MODE_BURST) | Burst mode, Hero 3+ only. -3 | [GOPRO_CAPTURE_MODE_TIME_LAPSE](#GOPRO_CAPTURE_MODE_TIME_LAPSE) | Time lapse mode, Hero 3+ only. -4 | [GOPRO_CAPTURE_MODE_MULTI_SHOT](#GOPRO_CAPTURE_MODE_MULTI_SHOT) | Multi shot mode, Hero 4 only. -5 | [GOPRO_CAPTURE_MODE_PLAYBACK](#GOPRO_CAPTURE_MODE_PLAYBACK) | Playback mode, Hero 4 only, silver only except when LCD or HDMI is connected to black. -6 | [GOPRO_CAPTURE_MODE_SETUP](#GOPRO_CAPTURE_MODE_SETUP) | Playback mode, Hero 4 only. -255 | [GOPRO_CAPTURE_MODE_UNKNOWN](#GOPRO_CAPTURE_MODE_UNKNOWN) | Mode not yet known. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| 0 | [GOPRO_CAPTURE_MODE_VIDEO](#GOPRO_CAPTURE_MODE_VIDEO) | Video mode. | +| 1 | [GOPRO_CAPTURE_MODE_PHOTO](#GOPRO_CAPTURE_MODE_PHOTO) | Photo mode. | +| 2 | [GOPRO_CAPTURE_MODE_BURST](#GOPRO_CAPTURE_MODE_BURST) | Burst mode, Hero 3+ only. | +| 3 | [GOPRO_CAPTURE_MODE_TIME_LAPSE](#GOPRO_CAPTURE_MODE_TIME_LAPSE) | Time lapse mode, Hero 3+ only. | +| 4 | [GOPRO_CAPTURE_MODE_MULTI_SHOT](#GOPRO_CAPTURE_MODE_MULTI_SHOT) | Multi shot mode, Hero 4 only. | +| 5 | [GOPRO_CAPTURE_MODE_PLAYBACK](#GOPRO_CAPTURE_MODE_PLAYBACK) | Playback mode, Hero 4 only, silver only except when LCD or HDMI is connected to black. | +| 6 | [GOPRO_CAPTURE_MODE_SETUP](#GOPRO_CAPTURE_MODE_SETUP) | Playback mode, Hero 4 only. | +| 255 | [GOPRO_CAPTURE_MODE_UNKNOWN](#GOPRO_CAPTURE_MODE_UNKNOWN) | Mode not yet known. | ### GOPRO_RESOLUTION {#GOPRO_RESOLUTION} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_RESOLUTION_480p](#GOPRO_RESOLUTION_480p) | 848 x 480 (480p). -1 | [GOPRO_RESOLUTION_720p](#GOPRO_RESOLUTION_720p) | 1280 x 720 (720p). -2 | [GOPRO_RESOLUTION_960p](#GOPRO_RESOLUTION_960p) | 1280 x 960 (960p). -3 | [GOPRO_RESOLUTION_1080p](#GOPRO_RESOLUTION_1080p) | 1920 x 1080 (1080p). -4 | [GOPRO_RESOLUTION_1440p](#GOPRO_RESOLUTION_1440p) | 1920 x 1440 (1440p). -5 | [GOPRO_RESOLUTION_2_7k_17_9](#GOPRO_RESOLUTION_2_7k_17_9) | 2704 x 1440 (2.7k-17:9). -6 | [GOPRO_RESOLUTION_2_7k_16_9](#GOPRO_RESOLUTION_2_7k_16_9) | 2704 x 1524 (2.7k-16:9). -7 | [GOPRO_RESOLUTION_2_7k_4_3](#GOPRO_RESOLUTION_2_7k_4_3) | 2704 x 2028 (2.7k-4:3). -8 | [GOPRO_RESOLUTION_4k_16_9](#GOPRO_RESOLUTION_4k_16_9) | 3840 x 2160 (4k-16:9). -9 | [GOPRO_RESOLUTION_4k_17_9](#GOPRO_RESOLUTION_4k_17_9) | 4096 x 2160 (4k-17:9). -10 | [GOPRO_RESOLUTION_720p_SUPERVIEW](#GOPRO_RESOLUTION_720p_SUPERVIEW) | 1280 x 720 (720p-SuperView). -11 | [GOPRO_RESOLUTION_1080p_SUPERVIEW](#GOPRO_RESOLUTION_1080p_SUPERVIEW) | 1920 x 1080 (1080p-SuperView). -12 | [GOPRO_RESOLUTION_2_7k_SUPERVIEW](#GOPRO_RESOLUTION_2_7k_SUPERVIEW) | 2704 x 1520 (2.7k-SuperView). -13 | [GOPRO_RESOLUTION_4k_SUPERVIEW](#GOPRO_RESOLUTION_4k_SUPERVIEW) | 3840 x 2160 (4k-SuperView). +| Value | Name | Description | +| ----------------------------------------------- | --------------------------------------------------------------------- | ------------------------------ | +| 0 | [GOPRO_RESOLUTION_480p](#GOPRO_RESOLUTION_480p) | 848 x 480 (480p). | +| 1 | [GOPRO_RESOLUTION_720p](#GOPRO_RESOLUTION_720p) | 1280 x 720 (720p). | +| 2 | [GOPRO_RESOLUTION_960p](#GOPRO_RESOLUTION_960p) | 1280 x 960 (960p). | +| 3 | [GOPRO_RESOLUTION_1080p](#GOPRO_RESOLUTION_1080p) | 1920 x 1080 (1080p). | +| 4 | [GOPRO_RESOLUTION_1440p](#GOPRO_RESOLUTION_1440p) | 1920 x 1440 (1440p). | +| 5 | [GOPRO_RESOLUTION_2_7k_17_9](#GOPRO_RESOLUTION_2_7k_17_9) | 2704 x 1440 (2.7k-17:9). | +| 6 | [GOPRO_RESOLUTION_2_7k_16_9](#GOPRO_RESOLUTION_2_7k_16_9) | 2704 x 1524 (2.7k-16:9). | +| 7 | [GOPRO_RESOLUTION_2_7k_4_3](#GOPRO_RESOLUTION_2_7k_4_3) | 2704 x 2028 (2.7k-4:3). | +| 8 | [GOPRO_RESOLUTION_4k_16_9](#GOPRO_RESOLUTION_4k_16_9) | 3840 x 2160 (4k-16:9). | +| 9 | [GOPRO_RESOLUTION_4k_17_9](#GOPRO_RESOLUTION_4k_17_9) | 4096 x 2160 (4k-17:9). | +| 10 | [GOPRO_RESOLUTION_720p_SUPERVIEW](#GOPRO_RESOLUTION_720p_SUPERVIEW) | 1280 x 720 (720p-SuperView). | +| 11 | [GOPRO_RESOLUTION_1080p_SUPERVIEW](#GOPRO_RESOLUTION_1080p_SUPERVIEW) | 1920 x 1080 (1080p-SuperView). | +| 12 | [GOPRO_RESOLUTION_2_7k_SUPERVIEW](#GOPRO_RESOLUTION_2_7k_SUPERVIEW) | 2704 x 1520 (2.7k-SuperView). | +| 13 | [GOPRO_RESOLUTION_4k_SUPERVIEW](#GOPRO_RESOLUTION_4k_SUPERVIEW) | 3840 x 2160 (4k-SuperView). | ### GOPRO_FRAME_RATE {#GOPRO_FRAME_RATE} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_FRAME_RATE_12](#GOPRO_FRAME_RATE_12) | 12 FPS. -1 | [GOPRO_FRAME_RATE_15](#GOPRO_FRAME_RATE_15) | 15 FPS. -2 | [GOPRO_FRAME_RATE_24](#GOPRO_FRAME_RATE_24) | 24 FPS. -3 | [GOPRO_FRAME_RATE_25](#GOPRO_FRAME_RATE_25) | 25 FPS. -4 | [GOPRO_FRAME_RATE_30](#GOPRO_FRAME_RATE_30) | 30 FPS. -5 | [GOPRO_FRAME_RATE_48](#GOPRO_FRAME_RATE_48) | 48 FPS. -6 | [GOPRO_FRAME_RATE_50](#GOPRO_FRAME_RATE_50) | 50 FPS. -7 | [GOPRO_FRAME_RATE_60](#GOPRO_FRAME_RATE_60) | 60 FPS. -8 | [GOPRO_FRAME_RATE_80](#GOPRO_FRAME_RATE_80) | 80 FPS. -9 | [GOPRO_FRAME_RATE_90](#GOPRO_FRAME_RATE_90) | 90 FPS. -10 | [GOPRO_FRAME_RATE_100](#GOPRO_FRAME_RATE_100) | 100 FPS. -11 | [GOPRO_FRAME_RATE_120](#GOPRO_FRAME_RATE_120) | 120 FPS. -12 | [GOPRO_FRAME_RATE_240](#GOPRO_FRAME_RATE_240) | 240 FPS. -13 | [GOPRO_FRAME_RATE_12_5](#GOPRO_FRAME_RATE_12_5) | 12.5 FPS. +| Value | Name | Description | +| ------------------------------------ | ----------------------------------------------- | ----------- | +| 0 | [GOPRO_FRAME_RATE_12](#GOPRO_FRAME_RATE_12) | 12 FPS. | +| 1 | [GOPRO_FRAME_RATE_15](#GOPRO_FRAME_RATE_15) | 15 FPS. | +| 2 | [GOPRO_FRAME_RATE_24](#GOPRO_FRAME_RATE_24) | 24 FPS. | +| 3 | [GOPRO_FRAME_RATE_25](#GOPRO_FRAME_RATE_25) | 25 FPS. | +| 4 | [GOPRO_FRAME_RATE_30](#GOPRO_FRAME_RATE_30) | 30 FPS. | +| 5 | [GOPRO_FRAME_RATE_48](#GOPRO_FRAME_RATE_48) | 48 FPS. | +| 6 | [GOPRO_FRAME_RATE_50](#GOPRO_FRAME_RATE_50) | 50 FPS. | +| 7 | [GOPRO_FRAME_RATE_60](#GOPRO_FRAME_RATE_60) | 60 FPS. | +| 8 | [GOPRO_FRAME_RATE_80](#GOPRO_FRAME_RATE_80) | 80 FPS. | +| 9 | [GOPRO_FRAME_RATE_90](#GOPRO_FRAME_RATE_90) | 90 FPS. | +| 10 | [GOPRO_FRAME_RATE_100](#GOPRO_FRAME_RATE_100) | 100 FPS. | +| 11 | [GOPRO_FRAME_RATE_120](#GOPRO_FRAME_RATE_120) | 120 FPS. | +| 12 | [GOPRO_FRAME_RATE_240](#GOPRO_FRAME_RATE_240) | 240 FPS. | +| 13 | [GOPRO_FRAME_RATE_12_5](#GOPRO_FRAME_RATE_12_5) | 12.5 FPS. | ### GOPRO_FIELD_OF_VIEW {#GOPRO_FIELD_OF_VIEW} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_FIELD_OF_VIEW_WIDE](#GOPRO_FIELD_OF_VIEW_WIDE) | 0x00: Wide. -1 | [GOPRO_FIELD_OF_VIEW_MEDIUM](#GOPRO_FIELD_OF_VIEW_MEDIUM) | 0x01: Medium. -2 | [GOPRO_FIELD_OF_VIEW_NARROW](#GOPRO_FIELD_OF_VIEW_NARROW) | 0x02: Narrow. +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ------------- | +| 0 | [GOPRO_FIELD_OF_VIEW_WIDE](#GOPRO_FIELD_OF_VIEW_WIDE) | 0x00: Wide. | +| 1 | [GOPRO_FIELD_OF_VIEW_MEDIUM](#GOPRO_FIELD_OF_VIEW_MEDIUM) | 0x01: Medium. | +| 2 | [GOPRO_FIELD_OF_VIEW_NARROW](#GOPRO_FIELD_OF_VIEW_NARROW) | 0x02: Narrow. | ### GOPRO_VIDEO_SETTINGS_FLAGS {#GOPRO_VIDEO_SETTINGS_FLAGS} -(Bitmask) +(Bitmask) -Value | Name | Description ---- | --- | --- -1 | [GOPRO_VIDEO_SETTINGS_TV_MODE](#GOPRO_VIDEO_SETTINGS_TV_MODE) | 0=NTSC, 1=PAL. +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | -------------- | +| 1 | [GOPRO_VIDEO_SETTINGS_TV_MODE](#GOPRO_VIDEO_SETTINGS_TV_MODE) | 0=NTSC, 1=PAL. | ### GOPRO_PHOTO_RESOLUTION {#GOPRO_PHOTO_RESOLUTION} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM](#GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM) | 5MP Medium. -1 | [GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM](#GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM) | 7MP Medium. -2 | [GOPRO_PHOTO_RESOLUTION_7MP_WIDE](#GOPRO_PHOTO_RESOLUTION_7MP_WIDE) | 7MP Wide. -3 | [GOPRO_PHOTO_RESOLUTION_10MP_WIDE](#GOPRO_PHOTO_RESOLUTION_10MP_WIDE) | 10MP Wide. -4 | [GOPRO_PHOTO_RESOLUTION_12MP_WIDE](#GOPRO_PHOTO_RESOLUTION_12MP_WIDE) | 12MP Wide. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ----------- | +| 0 | [GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM](#GOPRO_PHOTO_RESOLUTION_5MP_MEDIUM) | 5MP Medium. | +| 1 | [GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM](#GOPRO_PHOTO_RESOLUTION_7MP_MEDIUM) | 7MP Medium. | +| 2 | [GOPRO_PHOTO_RESOLUTION_7MP_WIDE](#GOPRO_PHOTO_RESOLUTION_7MP_WIDE) | 7MP Wide. | +| 3 | [GOPRO_PHOTO_RESOLUTION_10MP_WIDE](#GOPRO_PHOTO_RESOLUTION_10MP_WIDE) | 10MP Wide. | +| 4 | [GOPRO_PHOTO_RESOLUTION_12MP_WIDE](#GOPRO_PHOTO_RESOLUTION_12MP_WIDE) | 12MP Wide. | ### GOPRO_PROTUNE_WHITE_BALANCE {#GOPRO_PROTUNE_WHITE_BALANCE} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PROTUNE_WHITE_BALANCE_AUTO](#GOPRO_PROTUNE_WHITE_BALANCE_AUTO) | Auto. -1 | [GOPRO_PROTUNE_WHITE_BALANCE_3000K](#GOPRO_PROTUNE_WHITE_BALANCE_3000K) | 3000K. -2 | [GOPRO_PROTUNE_WHITE_BALANCE_5500K](#GOPRO_PROTUNE_WHITE_BALANCE_5500K) | 5500K. -3 | [GOPRO_PROTUNE_WHITE_BALANCE_6500K](#GOPRO_PROTUNE_WHITE_BALANCE_6500K) | 6500K. -4 | [GOPRO_PROTUNE_WHITE_BALANCE_RAW](#GOPRO_PROTUNE_WHITE_BALANCE_RAW) | Camera Raw. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ----------- | +| 0 | [GOPRO_PROTUNE_WHITE_BALANCE_AUTO](#GOPRO_PROTUNE_WHITE_BALANCE_AUTO) | Auto. | +| 1 | [GOPRO_PROTUNE_WHITE_BALANCE_3000K](#GOPRO_PROTUNE_WHITE_BALANCE_3000K) | 3000K. | +| 2 | [GOPRO_PROTUNE_WHITE_BALANCE_5500K](#GOPRO_PROTUNE_WHITE_BALANCE_5500K) | 5500K. | +| 3 | [GOPRO_PROTUNE_WHITE_BALANCE_6500K](#GOPRO_PROTUNE_WHITE_BALANCE_6500K) | 6500K. | +| 4 | [GOPRO_PROTUNE_WHITE_BALANCE_RAW](#GOPRO_PROTUNE_WHITE_BALANCE_RAW) | Camera Raw. | ### GOPRO_PROTUNE_COLOUR {#GOPRO_PROTUNE_COLOUR} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PROTUNE_COLOUR_STANDARD](#GOPRO_PROTUNE_COLOUR_STANDARD) | Auto. -1 | [GOPRO_PROTUNE_COLOUR_NEUTRAL](#GOPRO_PROTUNE_COLOUR_NEUTRAL) | Neutral. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ----------- | +| 0 | [GOPRO_PROTUNE_COLOUR_STANDARD](#GOPRO_PROTUNE_COLOUR_STANDARD) | Auto. | +| 1 | [GOPRO_PROTUNE_COLOUR_NEUTRAL](#GOPRO_PROTUNE_COLOUR_NEUTRAL) | Neutral. | ### GOPRO_PROTUNE_GAIN {#GOPRO_PROTUNE_GAIN} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PROTUNE_GAIN_400](#GOPRO_PROTUNE_GAIN_400) | ISO 400. -1 | [GOPRO_PROTUNE_GAIN_800](#GOPRO_PROTUNE_GAIN_800) | ISO 800 (Only Hero 4). -2 | [GOPRO_PROTUNE_GAIN_1600](#GOPRO_PROTUNE_GAIN_1600) | ISO 1600. -3 | [GOPRO_PROTUNE_GAIN_3200](#GOPRO_PROTUNE_GAIN_3200) | ISO 3200 (Only Hero 4). -4 | [GOPRO_PROTUNE_GAIN_6400](#GOPRO_PROTUNE_GAIN_6400) | ISO 6400. +| Value | Name | Description | +| ------------------------------------- | --------------------------------------------------- | ----------------------- | +| 0 | [GOPRO_PROTUNE_GAIN_400](#GOPRO_PROTUNE_GAIN_400) | ISO 400. | +| 1 | [GOPRO_PROTUNE_GAIN_800](#GOPRO_PROTUNE_GAIN_800) | ISO 800 (Only Hero 4). | +| 2 | [GOPRO_PROTUNE_GAIN_1600](#GOPRO_PROTUNE_GAIN_1600) | ISO 1600. | +| 3 | [GOPRO_PROTUNE_GAIN_3200](#GOPRO_PROTUNE_GAIN_3200) | ISO 3200 (Only Hero 4). | +| 4 | [GOPRO_PROTUNE_GAIN_6400](#GOPRO_PROTUNE_GAIN_6400) | ISO 6400. | ### GOPRO_PROTUNE_SHARPNESS {#GOPRO_PROTUNE_SHARPNESS} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PROTUNE_SHARPNESS_LOW](#GOPRO_PROTUNE_SHARPNESS_LOW) | Low Sharpness. -1 | [GOPRO_PROTUNE_SHARPNESS_MEDIUM](#GOPRO_PROTUNE_SHARPNESS_MEDIUM) | Medium Sharpness. -2 | [GOPRO_PROTUNE_SHARPNESS_HIGH](#GOPRO_PROTUNE_SHARPNESS_HIGH) | High Sharpness. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ----------------- | +| 0 | [GOPRO_PROTUNE_SHARPNESS_LOW](#GOPRO_PROTUNE_SHARPNESS_LOW) | Low Sharpness. | +| 1 | [GOPRO_PROTUNE_SHARPNESS_MEDIUM](#GOPRO_PROTUNE_SHARPNESS_MEDIUM) | Medium Sharpness. | +| 2 | [GOPRO_PROTUNE_SHARPNESS_HIGH](#GOPRO_PROTUNE_SHARPNESS_HIGH) | High Sharpness. | ### GOPRO_PROTUNE_EXPOSURE {#GOPRO_PROTUNE_EXPOSURE} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_PROTUNE_EXPOSURE_NEG_5_0](#GOPRO_PROTUNE_EXPOSURE_NEG_5_0) | -5.0 EV (Hero 3+ Only). -1 | [GOPRO_PROTUNE_EXPOSURE_NEG_4_5](#GOPRO_PROTUNE_EXPOSURE_NEG_4_5) | -4.5 EV (Hero 3+ Only). -2 | [GOPRO_PROTUNE_EXPOSURE_NEG_4_0](#GOPRO_PROTUNE_EXPOSURE_NEG_4_0) | -4.0 EV (Hero 3+ Only). -3 | [GOPRO_PROTUNE_EXPOSURE_NEG_3_5](#GOPRO_PROTUNE_EXPOSURE_NEG_3_5) | -3.5 EV (Hero 3+ Only). -4 | [GOPRO_PROTUNE_EXPOSURE_NEG_3_0](#GOPRO_PROTUNE_EXPOSURE_NEG_3_0) | -3.0 EV (Hero 3+ Only). -5 | [GOPRO_PROTUNE_EXPOSURE_NEG_2_5](#GOPRO_PROTUNE_EXPOSURE_NEG_2_5) | -2.5 EV (Hero 3+ Only). -6 | [GOPRO_PROTUNE_EXPOSURE_NEG_2_0](#GOPRO_PROTUNE_EXPOSURE_NEG_2_0) | -2.0 EV. -7 | [GOPRO_PROTUNE_EXPOSURE_NEG_1_5](#GOPRO_PROTUNE_EXPOSURE_NEG_1_5) | -1.5 EV. -8 | [GOPRO_PROTUNE_EXPOSURE_NEG_1_0](#GOPRO_PROTUNE_EXPOSURE_NEG_1_0) | -1.0 EV. -9 | [GOPRO_PROTUNE_EXPOSURE_NEG_0_5](#GOPRO_PROTUNE_EXPOSURE_NEG_0_5) | -0.5 EV. -10 | [GOPRO_PROTUNE_EXPOSURE_ZERO](#GOPRO_PROTUNE_EXPOSURE_ZERO) | 0.0 EV. -11 | [GOPRO_PROTUNE_EXPOSURE_POS_0_5](#GOPRO_PROTUNE_EXPOSURE_POS_0_5) | +0.5 EV. -12 | [GOPRO_PROTUNE_EXPOSURE_POS_1_0](#GOPRO_PROTUNE_EXPOSURE_POS_1_0) | +1.0 EV. -13 | [GOPRO_PROTUNE_EXPOSURE_POS_1_5](#GOPRO_PROTUNE_EXPOSURE_POS_1_5) | +1.5 EV. -14 | [GOPRO_PROTUNE_EXPOSURE_POS_2_0](#GOPRO_PROTUNE_EXPOSURE_POS_2_0) | +2.0 EV. -15 | [GOPRO_PROTUNE_EXPOSURE_POS_2_5](#GOPRO_PROTUNE_EXPOSURE_POS_2_5) | +2.5 EV (Hero 3+ Only). -16 | [GOPRO_PROTUNE_EXPOSURE_POS_3_0](#GOPRO_PROTUNE_EXPOSURE_POS_3_0) | +3.0 EV (Hero 3+ Only). -17 | [GOPRO_PROTUNE_EXPOSURE_POS_3_5](#GOPRO_PROTUNE_EXPOSURE_POS_3_5) | +3.5 EV (Hero 3+ Only). -18 | [GOPRO_PROTUNE_EXPOSURE_POS_4_0](#GOPRO_PROTUNE_EXPOSURE_POS_4_0) | +4.0 EV (Hero 3+ Only). -19 | [GOPRO_PROTUNE_EXPOSURE_POS_4_5](#GOPRO_PROTUNE_EXPOSURE_POS_4_5) | +4.5 EV (Hero 3+ Only). -20 | [GOPRO_PROTUNE_EXPOSURE_POS_5_0](#GOPRO_PROTUNE_EXPOSURE_POS_5_0) | +5.0 EV (Hero 3+ Only). +| Value | Name | Description | +| --------------------------------------------- | ----------------------------------------------------------------- | ----------------------- | +| 0 | [GOPRO_PROTUNE_EXPOSURE_NEG_5_0](#GOPRO_PROTUNE_EXPOSURE_NEG_5_0) | -5.0 EV (Hero 3+ Only). | +| 1 | [GOPRO_PROTUNE_EXPOSURE_NEG_4_5](#GOPRO_PROTUNE_EXPOSURE_NEG_4_5) | -4.5 EV (Hero 3+ Only). | +| 2 | [GOPRO_PROTUNE_EXPOSURE_NEG_4_0](#GOPRO_PROTUNE_EXPOSURE_NEG_4_0) | -4.0 EV (Hero 3+ Only). | +| 3 | [GOPRO_PROTUNE_EXPOSURE_NEG_3_5](#GOPRO_PROTUNE_EXPOSURE_NEG_3_5) | -3.5 EV (Hero 3+ Only). | +| 4 | [GOPRO_PROTUNE_EXPOSURE_NEG_3_0](#GOPRO_PROTUNE_EXPOSURE_NEG_3_0) | -3.0 EV (Hero 3+ Only). | +| 5 | [GOPRO_PROTUNE_EXPOSURE_NEG_2_5](#GOPRO_PROTUNE_EXPOSURE_NEG_2_5) | -2.5 EV (Hero 3+ Only). | +| 6 | [GOPRO_PROTUNE_EXPOSURE_NEG_2_0](#GOPRO_PROTUNE_EXPOSURE_NEG_2_0) | -2.0 EV. | +| 7 | [GOPRO_PROTUNE_EXPOSURE_NEG_1_5](#GOPRO_PROTUNE_EXPOSURE_NEG_1_5) | -1.5 EV. | +| 8 | [GOPRO_PROTUNE_EXPOSURE_NEG_1_0](#GOPRO_PROTUNE_EXPOSURE_NEG_1_0) | -1.0 EV. | +| 9 | [GOPRO_PROTUNE_EXPOSURE_NEG_0_5](#GOPRO_PROTUNE_EXPOSURE_NEG_0_5) | -0.5 EV. | +| 10 | [GOPRO_PROTUNE_EXPOSURE_ZERO](#GOPRO_PROTUNE_EXPOSURE_ZERO) | 0.0 EV. | +| 11 | [GOPRO_PROTUNE_EXPOSURE_POS_0_5](#GOPRO_PROTUNE_EXPOSURE_POS_0_5) | +0.5 EV. | +| 12 | [GOPRO_PROTUNE_EXPOSURE_POS_1_0](#GOPRO_PROTUNE_EXPOSURE_POS_1_0) | +1.0 EV. | +| 13 | [GOPRO_PROTUNE_EXPOSURE_POS_1_5](#GOPRO_PROTUNE_EXPOSURE_POS_1_5) | +1.5 EV. | +| 14 | [GOPRO_PROTUNE_EXPOSURE_POS_2_0](#GOPRO_PROTUNE_EXPOSURE_POS_2_0) | +2.0 EV. | +| 15 | [GOPRO_PROTUNE_EXPOSURE_POS_2_5](#GOPRO_PROTUNE_EXPOSURE_POS_2_5) | +2.5 EV (Hero 3+ Only). | +| 16 | [GOPRO_PROTUNE_EXPOSURE_POS_3_0](#GOPRO_PROTUNE_EXPOSURE_POS_3_0) | +3.0 EV (Hero 3+ Only). | +| 17 | [GOPRO_PROTUNE_EXPOSURE_POS_3_5](#GOPRO_PROTUNE_EXPOSURE_POS_3_5) | +3.5 EV (Hero 3+ Only). | +| 18 | [GOPRO_PROTUNE_EXPOSURE_POS_4_0](#GOPRO_PROTUNE_EXPOSURE_POS_4_0) | +4.0 EV (Hero 3+ Only). | +| 19 | [GOPRO_PROTUNE_EXPOSURE_POS_4_5](#GOPRO_PROTUNE_EXPOSURE_POS_4_5) | +4.5 EV (Hero 3+ Only). | +| 20 | [GOPRO_PROTUNE_EXPOSURE_POS_5_0](#GOPRO_PROTUNE_EXPOSURE_POS_5_0) | +5.0 EV (Hero 3+ Only). | ### GOPRO_CHARGING {#GOPRO_CHARGING} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_CHARGING_DISABLED](#GOPRO_CHARGING_DISABLED) | Charging disabled. -1 | [GOPRO_CHARGING_ENABLED](#GOPRO_CHARGING_ENABLED) | Charging enabled. +| Value | Name | Description | +| ------------------------------------- | --------------------------------------------------- | ------------------ | +| 0 | [GOPRO_CHARGING_DISABLED](#GOPRO_CHARGING_DISABLED) | Charging disabled. | +| 1 | [GOPRO_CHARGING_ENABLED](#GOPRO_CHARGING_ENABLED) | Charging enabled. | ### GOPRO_MODEL {#GOPRO_MODEL} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_MODEL_UNKNOWN](#GOPRO_MODEL_UNKNOWN) | Unknown gopro model. -1 | [GOPRO_MODEL_HERO_3_PLUS_SILVER](#GOPRO_MODEL_HERO_3_PLUS_SILVER) | Hero 3+ Silver (HeroBus not supported by GoPro). -2 | [GOPRO_MODEL_HERO_3_PLUS_BLACK](#GOPRO_MODEL_HERO_3_PLUS_BLACK) | Hero 3+ Black. -3 | [GOPRO_MODEL_HERO_4_SILVER](#GOPRO_MODEL_HERO_4_SILVER) | Hero 4 Silver. -4 | [GOPRO_MODEL_HERO_4_BLACK](#GOPRO_MODEL_HERO_4_BLACK) | Hero 4 Black. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------ | +| 0 | [GOPRO_MODEL_UNKNOWN](#GOPRO_MODEL_UNKNOWN) | Unknown gopro model. | +| 1 | [GOPRO_MODEL_HERO_3_PLUS_SILVER](#GOPRO_MODEL_HERO_3_PLUS_SILVER) | Hero 3+ Silver (HeroBus not supported by GoPro). | +| 2 | [GOPRO_MODEL_HERO_3_PLUS_BLACK](#GOPRO_MODEL_HERO_3_PLUS_BLACK) | Hero 3+ Black. | +| 3 | [GOPRO_MODEL_HERO_4_SILVER](#GOPRO_MODEL_HERO_4_SILVER) | Hero 4 Silver. | +| 4 | [GOPRO_MODEL_HERO_4_BLACK](#GOPRO_MODEL_HERO_4_BLACK) | Hero 4 Black. | ### GOPRO_BURST_RATE {#GOPRO_BURST_RATE} -Value | Name | Description ---- | --- | --- -0 | [GOPRO_BURST_RATE_3_IN_1_SECOND](#GOPRO_BURST_RATE_3_IN_1_SECOND) | 3 Shots / 1 Second. -1 | [GOPRO_BURST_RATE_5_IN_1_SECOND](#GOPRO_BURST_RATE_5_IN_1_SECOND) | 5 Shots / 1 Second. -2 | [GOPRO_BURST_RATE_10_IN_1_SECOND](#GOPRO_BURST_RATE_10_IN_1_SECOND) | 10 Shots / 1 Second. -3 | [GOPRO_BURST_RATE_10_IN_2_SECOND](#GOPRO_BURST_RATE_10_IN_2_SECOND) | 10 Shots / 2 Second. -4 | [GOPRO_BURST_RATE_10_IN_3_SECOND](#GOPRO_BURST_RATE_10_IN_3_SECOND) | 10 Shots / 3 Second (Hero 4 Only). -5 | [GOPRO_BURST_RATE_30_IN_1_SECOND](#GOPRO_BURST_RATE_30_IN_1_SECOND) | 30 Shots / 1 Second. -6 | [GOPRO_BURST_RATE_30_IN_2_SECOND](#GOPRO_BURST_RATE_30_IN_2_SECOND) | 30 Shots / 2 Second. -7 | [GOPRO_BURST_RATE_30_IN_3_SECOND](#GOPRO_BURST_RATE_30_IN_3_SECOND) | 30 Shots / 3 Second. -8 | [GOPRO_BURST_RATE_30_IN_6_SECOND](#GOPRO_BURST_RATE_30_IN_6_SECOND) | 30 Shots / 6 Second. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------- | +| 0 | [GOPRO_BURST_RATE_3_IN_1_SECOND](#GOPRO_BURST_RATE_3_IN_1_SECOND) | 3 Shots / 1 Second. | +| 1 | [GOPRO_BURST_RATE_5_IN_1_SECOND](#GOPRO_BURST_RATE_5_IN_1_SECOND) | 5 Shots / 1 Second. | +| 2 | [GOPRO_BURST_RATE_10_IN_1_SECOND](#GOPRO_BURST_RATE_10_IN_1_SECOND) | 10 Shots / 1 Second. | +| 3 | [GOPRO_BURST_RATE_10_IN_2_SECOND](#GOPRO_BURST_RATE_10_IN_2_SECOND) | 10 Shots / 2 Second. | +| 4 | [GOPRO_BURST_RATE_10_IN_3_SECOND](#GOPRO_BURST_RATE_10_IN_3_SECOND) | 10 Shots / 3 Second (Hero 4 Only). | +| 5 | [GOPRO_BURST_RATE_30_IN_1_SECOND](#GOPRO_BURST_RATE_30_IN_1_SECOND) | 30 Shots / 1 Second. | +| 6 | [GOPRO_BURST_RATE_30_IN_2_SECOND](#GOPRO_BURST_RATE_30_IN_2_SECOND) | 30 Shots / 2 Second. | +| 7 | [GOPRO_BURST_RATE_30_IN_3_SECOND](#GOPRO_BURST_RATE_30_IN_3_SECOND) | 30 Shots / 3 Second. | +| 8 | [GOPRO_BURST_RATE_30_IN_6_SECOND](#GOPRO_BURST_RATE_30_IN_6_SECOND) | 30 Shots / 6 Second. | ### MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL {#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL} -Value | Name | Description ---- | --- | --- -0 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW) | Switch Low. -1 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE) | Switch Middle. -2 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH) | Switch High. +| Value | Name | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -------------- | +| 0 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_LOW) | Switch Low. | +| 1 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_MIDDLE) | Switch Middle. | +| 2 | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL_HIGH) | Switch High. | ### LED_CONTROL_PATTERN {#LED_CONTROL_PATTERN} -Value | Name | Description ---- | --- | --- -0 | [LED_CONTROL_PATTERN_OFF](#LED_CONTROL_PATTERN_OFF) | LED patterns off (return control to regular vehicle control). -1 | [LED_CONTROL_PATTERN_FIRMWAREUPDATE](#LED_CONTROL_PATTERN_FIRMWAREUPDATE) | LEDs show pattern during firmware update. -255 | [LED_CONTROL_PATTERN_CUSTOM](#LED_CONTROL_PATTERN_CUSTOM) | Custom Pattern using custom bytes fields. +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | ------------------------------------------------------------- | +| 0 | [LED_CONTROL_PATTERN_OFF](#LED_CONTROL_PATTERN_OFF) | LED patterns off (return control to regular vehicle control). | +| 1 | [LED_CONTROL_PATTERN_FIRMWAREUPDATE](#LED_CONTROL_PATTERN_FIRMWAREUPDATE) | LEDs show pattern during firmware update. | +| 255 | [LED_CONTROL_PATTERN_CUSTOM](#LED_CONTROL_PATTERN_CUSTOM) | Custom Pattern using custom bytes fields. | ### EKF_STATUS_FLAGS {#EKF_STATUS_FLAGS} (Bitmask) Flags in [EKF_STATUS](#EKF_STATUS) message. -Value | Name | Description ---- | --- | --- -1 | [EKF_ATTITUDE](#EKF_ATTITUDE) | Set if EKF's attitude estimate is good. -2 | [EKF_VELOCITY_HORIZ](#EKF_VELOCITY_HORIZ) | Set if EKF's horizontal velocity estimate is good. -4 | [EKF_VELOCITY_VERT](#EKF_VELOCITY_VERT) | Set if EKF's vertical velocity estimate is good. -8 | [EKF_POS_HORIZ_REL](#EKF_POS_HORIZ_REL) | Set if EKF's horizontal position (relative) estimate is good. -16 | [EKF_POS_HORIZ_ABS](#EKF_POS_HORIZ_ABS) | Set if EKF's horizontal position (absolute) estimate is good. -32 | [EKF_POS_VERT_ABS](#EKF_POS_VERT_ABS) | Set if EKF's vertical position (absolute) estimate is good. -64 | [EKF_POS_VERT_AGL](#EKF_POS_VERT_AGL) | Set if EKF's vertical position (above ground) estimate is good. -128 | [EKF_CONST_POS_MODE](#EKF_CONST_POS_MODE) | EKF is in constant position mode and does not know it's absolute or relative position. -256 | [EKF_PRED_POS_HORIZ_REL](#EKF_PRED_POS_HORIZ_REL) | Set if EKF's predicted horizontal position (relative) estimate is good. -512 | [EKF_PRED_POS_HORIZ_ABS](#EKF_PRED_POS_HORIZ_ABS) | Set if EKF's predicted horizontal position (absolute) estimate is good. -1024 | [EKF_UNINITIALIZED](#EKF_UNINITIALIZED) | Set if EKF has never been healthy. -32768 | [EKF_GPS_GLITCHING](#EKF_GPS_GLITCHING) | Set if EKF believes the GPS input data is faulty. +| Value | Name | Description | +| -------------------------------------- | ------------------------------------------------- | -------------------------------------------------------------------------------------- | +| 1 | [EKF_ATTITUDE](#EKF_ATTITUDE) | Set if EKF's attitude estimate is good. | +| 2 | [EKF_VELOCITY_HORIZ](#EKF_VELOCITY_HORIZ) | Set if EKF's horizontal velocity estimate is good. | +| 4 | [EKF_VELOCITY_VERT](#EKF_VELOCITY_VERT) | Set if EKF's vertical velocity estimate is good. | +| 8 | [EKF_POS_HORIZ_REL](#EKF_POS_HORIZ_REL) | Set if EKF's horizontal position (relative) estimate is good. | +| 16 | [EKF_POS_HORIZ_ABS](#EKF_POS_HORIZ_ABS) | Set if EKF's horizontal position (absolute) estimate is good. | +| 32 | [EKF_POS_VERT_ABS](#EKF_POS_VERT_ABS) | Set if EKF's vertical position (absolute) estimate is good. | +| 64 | [EKF_POS_VERT_AGL](#EKF_POS_VERT_AGL) | Set if EKF's vertical position (above ground) estimate is good. | +| 128 | [EKF_CONST_POS_MODE](#EKF_CONST_POS_MODE) | EKF is in constant position mode and does not know it's absolute or relative position. | +| 256 | [EKF_PRED_POS_HORIZ_REL](#EKF_PRED_POS_HORIZ_REL) | Set if EKF's predicted horizontal position (relative) estimate is good. | +| 512 | [EKF_PRED_POS_HORIZ_ABS](#EKF_PRED_POS_HORIZ_ABS) | Set if EKF's predicted horizontal position (absolute) estimate is good. | +| 1024 | [EKF_UNINITIALIZED](#EKF_UNINITIALIZED) | Set if EKF has never been healthy. | +| 32768 | [EKF_GPS_GLITCHING](#EKF_GPS_GLITCHING) | Set if EKF believes the GPS input data is faulty. | ### PID_TUNING_AXIS {#PID_TUNING_AXIS} -Value | Name | Description ---- | --- | --- -1 | [PID_TUNING_ROLL](#PID_TUNING_ROLL) | -2 | [PID_TUNING_PITCH](#PID_TUNING_PITCH) | -3 | [PID_TUNING_YAW](#PID_TUNING_YAW) | -4 | [PID_TUNING_ACCZ](#PID_TUNING_ACCZ) | -5 | [PID_TUNING_STEER](#PID_TUNING_STEER) | -6 | [PID_TUNING_LANDING](#PID_TUNING_LANDING) | -7 | [PID_TUNING_WHEEL_LEFT](#PID_TUNING_WHEEL_LEFT) | Left wheel rate. -8 | [PID_TUNING_WHEEL_RIGHT](#PID_TUNING_WHEEL_RIGHT) | Right wheel rate. -9 | [PID_TUNING_SAIL_HEEL](#PID_TUNING_SAIL_HEEL) | Sailboat heel to mainsail. -10 | [PID_TUNING_VEL_NORTH](#PID_TUNING_VEL_NORTH) | Velocity north. -11 | [PID_TUNING_VEL_EAST](#PID_TUNING_VEL_EAST) | Velocity east. -12 | [PID_TUNING_VEL_DOWN](#PID_TUNING_VEL_DOWN) | Velocity down. -13 | [PID_TUNING_POS_NORTH](#PID_TUNING_POS_NORTH) | Position north. -14 | [PID_TUNING_POS_EAST](#PID_TUNING_POS_EAST) | Position east. -15 | [PID_TUNING_POS_DOWN](#PID_TUNING_POS_DOWN) | Position down. -16 | [PID_TUNING_YAW_ANGLE](#PID_TUNING_YAW_ANGLE) | Yaw angle. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | -------------------------- | +| 1 | [PID_TUNING_ROLL](#PID_TUNING_ROLL) | +| 2 | [PID_TUNING_PITCH](#PID_TUNING_PITCH) | +| 3 | [PID_TUNING_YAW](#PID_TUNING_YAW) | +| 4 | [PID_TUNING_ACCZ](#PID_TUNING_ACCZ) | +| 5 | [PID_TUNING_STEER](#PID_TUNING_STEER) | +| 6 | [PID_TUNING_LANDING](#PID_TUNING_LANDING) | +| 7 | [PID_TUNING_WHEEL_LEFT](#PID_TUNING_WHEEL_LEFT) | Left wheel rate. | +| 8 | [PID_TUNING_WHEEL_RIGHT](#PID_TUNING_WHEEL_RIGHT) | Right wheel rate. | +| 9 | [PID_TUNING_SAIL_HEEL](#PID_TUNING_SAIL_HEEL) | Sailboat heel to mainsail. | +| 10 | [PID_TUNING_VEL_NORTH](#PID_TUNING_VEL_NORTH) | Velocity north. | +| 11 | [PID_TUNING_VEL_EAST](#PID_TUNING_VEL_EAST) | Velocity east. | +| 12 | [PID_TUNING_VEL_DOWN](#PID_TUNING_VEL_DOWN) | Velocity down. | +| 13 | [PID_TUNING_POS_NORTH](#PID_TUNING_POS_NORTH) | Position north. | +| 14 | [PID_TUNING_POS_EAST](#PID_TUNING_POS_EAST) | Position east. | +| 15 | [PID_TUNING_POS_DOWN](#PID_TUNING_POS_DOWN) | Position down. | +| 16 | [PID_TUNING_YAW_ANGLE](#PID_TUNING_YAW_ANGLE) | Yaw angle. | ### MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS {#MAV_REMOTE_LOG_DATA_BLOCK_COMMANDS} Special ACK block numbers control activation of dataflash log streaming. -Value | Name | Description ---- | --- | --- -2147483645 | [MAV_REMOTE_LOG_DATA_BLOCK_STOP](#MAV_REMOTE_LOG_DATA_BLOCK_STOP) | UAV to stop sending DataFlash blocks. -2147483646 | [MAV_REMOTE_LOG_DATA_BLOCK_START](#MAV_REMOTE_LOG_DATA_BLOCK_START) | UAV to start sending DataFlash blocks. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------- | -------------------------------------- | +| 2147483645 | [MAV_REMOTE_LOG_DATA_BLOCK_STOP](#MAV_REMOTE_LOG_DATA_BLOCK_STOP) | UAV to stop sending DataFlash blocks. | +| 2147483646 | [MAV_REMOTE_LOG_DATA_BLOCK_START](#MAV_REMOTE_LOG_DATA_BLOCK_START) | UAV to start sending DataFlash blocks. | ### MAV_REMOTE_LOG_DATA_BLOCK_STATUSES {#MAV_REMOTE_LOG_DATA_BLOCK_STATUSES} Possible remote log data block statuses. -Value | Name | Description ---- | --- | --- -0 | [MAV_REMOTE_LOG_DATA_BLOCK_NACK](#MAV_REMOTE_LOG_DATA_BLOCK_NACK) | This block has NOT been received. -1 | [MAV_REMOTE_LOG_DATA_BLOCK_ACK](#MAV_REMOTE_LOG_DATA_BLOCK_ACK) | This block has been received. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | --------------------------------- | +| 0 | [MAV_REMOTE_LOG_DATA_BLOCK_NACK](#MAV_REMOTE_LOG_DATA_BLOCK_NACK) | This block has NOT been received. | +| 1 | [MAV_REMOTE_LOG_DATA_BLOCK_ACK](#MAV_REMOTE_LOG_DATA_BLOCK_ACK) | This block has been received. | ### DEVICE_OP_BUSTYPE {#DEVICE_OP_BUSTYPE} Bus types for device operations. -Value | Name | Description ---- | --- | --- -0 | [DEVICE_OP_BUSTYPE_I2C](#DEVICE_OP_BUSTYPE_I2C) | I2C Device operation. -1 | [DEVICE_OP_BUSTYPE_SPI](#DEVICE_OP_BUSTYPE_SPI) | SPI Device operation. +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | --------------------- | +| 0 | [DEVICE_OP_BUSTYPE_I2C](#DEVICE_OP_BUSTYPE_I2C) | I2C Device operation. | +| 1 | [DEVICE_OP_BUSTYPE_SPI](#DEVICE_OP_BUSTYPE_SPI) | SPI Device operation. | ### DEEPSTALL_STAGE {#DEEPSTALL_STAGE} Deepstall flight stage. -Value | Name | Description ---- | --- | --- -0 | [DEEPSTALL_STAGE_FLY_TO_LANDING](#DEEPSTALL_STAGE_FLY_TO_LANDING) | Flying to the landing point. -1 | [DEEPSTALL_STAGE_ESTIMATE_WIND](#DEEPSTALL_STAGE_ESTIMATE_WIND) | Building an estimate of the wind. -2 | [DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT](#DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT) | Waiting to breakout of the loiter to fly the approach. -3 | [DEEPSTALL_STAGE_FLY_TO_ARC](#DEEPSTALL_STAGE_FLY_TO_ARC) | Flying to the first arc point to turn around to the landing point. -4 | [DEEPSTALL_STAGE_ARC](#DEEPSTALL_STAGE_ARC) | Turning around back to the deepstall landing point. -5 | [DEEPSTALL_STAGE_APPROACH](#DEEPSTALL_STAGE_APPROACH) | Approaching the landing point. -6 | [DEEPSTALL_STAGE_LAND](#DEEPSTALL_STAGE_LAND) | Stalling and steering towards the land point. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------ | +| 0 | [DEEPSTALL_STAGE_FLY_TO_LANDING](#DEEPSTALL_STAGE_FLY_TO_LANDING) | Flying to the landing point. | +| 1 | [DEEPSTALL_STAGE_ESTIMATE_WIND](#DEEPSTALL_STAGE_ESTIMATE_WIND) | Building an estimate of the wind. | +| 2 | [DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT](#DEEPSTALL_STAGE_WAIT_FOR_BREAKOUT) | Waiting to breakout of the loiter to fly the approach. | +| 3 | [DEEPSTALL_STAGE_FLY_TO_ARC](#DEEPSTALL_STAGE_FLY_TO_ARC) | Flying to the first arc point to turn around to the landing point. | +| 4 | [DEEPSTALL_STAGE_ARC](#DEEPSTALL_STAGE_ARC) | Turning around back to the deepstall landing point. | +| 5 | [DEEPSTALL_STAGE_APPROACH](#DEEPSTALL_STAGE_APPROACH) | Approaching the landing point. | +| 6 | [DEEPSTALL_STAGE_LAND](#DEEPSTALL_STAGE_LAND) | Stalling and steering towards the land point. | ### PLANE_MODE {#PLANE_MODE} A mapping of plane flight modes for custom_mode field of heartbeat. -Value | Name | Description ---- | --- | --- -0 | [PLANE_MODE_MANUAL](#PLANE_MODE_MANUAL) | MANUAL -1 | [PLANE_MODE_CIRCLE](#PLANE_MODE_CIRCLE) | CIRCLE -2 | [PLANE_MODE_STABILIZE](#PLANE_MODE_STABILIZE) | STABILIZE -3 | [PLANE_MODE_TRAINING](#PLANE_MODE_TRAINING) | TRAINING -4 | [PLANE_MODE_ACRO](#PLANE_MODE_ACRO) | ACRO -5 | [PLANE_MODE_FLY_BY_WIRE_A](#PLANE_MODE_FLY_BY_WIRE_A) | FBWA -6 | [PLANE_MODE_FLY_BY_WIRE_B](#PLANE_MODE_FLY_BY_WIRE_B) | FBWB -7 | [PLANE_MODE_CRUISE](#PLANE_MODE_CRUISE) | CRUISE -8 | [PLANE_MODE_AUTOTUNE](#PLANE_MODE_AUTOTUNE) | AUTOTUNE -10 | [PLANE_MODE_AUTO](#PLANE_MODE_AUTO) | AUTO -11 | [PLANE_MODE_RTL](#PLANE_MODE_RTL) | RTL -12 | [PLANE_MODE_LOITER](#PLANE_MODE_LOITER) | LOITER -13 | [PLANE_MODE_TAKEOFF](#PLANE_MODE_TAKEOFF) | TAKEOFF -14 | [PLANE_MODE_AVOID_ADSB](#PLANE_MODE_AVOID_ADSB) | AVOID ADSB -15 | [PLANE_MODE_GUIDED](#PLANE_MODE_GUIDED) | GUIDED -16 | [PLANE_MODE_INITIALIZING](#PLANE_MODE_INITIALIZING) | INITIALISING -17 | [PLANE_MODE_QSTABILIZE](#PLANE_MODE_QSTABILIZE) | QSTABILIZE -18 | [PLANE_MODE_QHOVER](#PLANE_MODE_QHOVER) | QHOVER -19 | [PLANE_MODE_QLOITER](#PLANE_MODE_QLOITER) | QLOITER -20 | [PLANE_MODE_QLAND](#PLANE_MODE_QLAND) | QLAND -21 | [PLANE_MODE_QRTL](#PLANE_MODE_QRTL) | QRTL -22 | [PLANE_MODE_QAUTOTUNE](#PLANE_MODE_QAUTOTUNE) | QAUTOTUNE -23 | [PLANE_MODE_QACRO](#PLANE_MODE_QACRO) | QACRO -24 | [PLANE_MODE_THERMAL](#PLANE_MODE_THERMAL) | THERMAL -25 | [PLANE_MODE_LOITER_ALT_QLAND](#PLANE_MODE_LOITER_ALT_QLAND) | LOITER2QLAND -26 | [PLANE_MODE_AUTOLAND](#PLANE_MODE_AUTOLAND) | AUTOLAND +| Value | Name | Description | +| ------------------------------------------ | ----------------------------------------------------------- | ------------ | +| 0 | [PLANE_MODE_MANUAL](#PLANE_MODE_MANUAL) | MANUAL | +| 1 | [PLANE_MODE_CIRCLE](#PLANE_MODE_CIRCLE) | CIRCLE | +| 2 | [PLANE_MODE_STABILIZE](#PLANE_MODE_STABILIZE) | STABILIZE | +| 3 | [PLANE_MODE_TRAINING](#PLANE_MODE_TRAINING) | TRAINING | +| 4 | [PLANE_MODE_ACRO](#PLANE_MODE_ACRO) | ACRO | +| 5 | [PLANE_MODE_FLY_BY_WIRE_A](#PLANE_MODE_FLY_BY_WIRE_A) | FBWA | +| 6 | [PLANE_MODE_FLY_BY_WIRE_B](#PLANE_MODE_FLY_BY_WIRE_B) | FBWB | +| 7 | [PLANE_MODE_CRUISE](#PLANE_MODE_CRUISE) | CRUISE | +| 8 | [PLANE_MODE_AUTOTUNE](#PLANE_MODE_AUTOTUNE) | AUTOTUNE | +| 10 | [PLANE_MODE_AUTO](#PLANE_MODE_AUTO) | AUTO | +| 11 | [PLANE_MODE_RTL](#PLANE_MODE_RTL) | RTL | +| 12 | [PLANE_MODE_LOITER](#PLANE_MODE_LOITER) | LOITER | +| 13 | [PLANE_MODE_TAKEOFF](#PLANE_MODE_TAKEOFF) | TAKEOFF | +| 14 | [PLANE_MODE_AVOID_ADSB](#PLANE_MODE_AVOID_ADSB) | AVOID ADSB | +| 15 | [PLANE_MODE_GUIDED](#PLANE_MODE_GUIDED) | GUIDED | +| 16 | [PLANE_MODE_INITIALIZING](#PLANE_MODE_INITIALIZING) | INITIALISING | +| 17 | [PLANE_MODE_QSTABILIZE](#PLANE_MODE_QSTABILIZE) | QSTABILIZE | +| 18 | [PLANE_MODE_QHOVER](#PLANE_MODE_QHOVER) | QHOVER | +| 19 | [PLANE_MODE_QLOITER](#PLANE_MODE_QLOITER) | QLOITER | +| 20 | [PLANE_MODE_QLAND](#PLANE_MODE_QLAND) | QLAND | +| 21 | [PLANE_MODE_QRTL](#PLANE_MODE_QRTL) | QRTL | +| 22 | [PLANE_MODE_QAUTOTUNE](#PLANE_MODE_QAUTOTUNE) | QAUTOTUNE | +| 23 | [PLANE_MODE_QACRO](#PLANE_MODE_QACRO) | QACRO | +| 24 | [PLANE_MODE_THERMAL](#PLANE_MODE_THERMAL) | THERMAL | +| 25 | [PLANE_MODE_LOITER_ALT_QLAND](#PLANE_MODE_LOITER_ALT_QLAND) | LOITER2QLAND | +| 26 | [PLANE_MODE_AUTOLAND](#PLANE_MODE_AUTOLAND) | AUTOLAND | ### COPTER_MODE {#COPTER_MODE} A mapping of copter flight modes for custom_mode field of heartbeat. -Value | Name | Description ---- | --- | --- -0 | [COPTER_MODE_STABILIZE](#COPTER_MODE_STABILIZE) | STABILIZE -1 | [COPTER_MODE_ACRO](#COPTER_MODE_ACRO) | ACRO -2 | [COPTER_MODE_ALT_HOLD](#COPTER_MODE_ALT_HOLD) | ALT HOLD -3 | [COPTER_MODE_AUTO](#COPTER_MODE_AUTO) | AUTO -4 | [COPTER_MODE_GUIDED](#COPTER_MODE_GUIDED) | GUIDED -5 | [COPTER_MODE_LOITER](#COPTER_MODE_LOITER) | LOITER -6 | [COPTER_MODE_RTL](#COPTER_MODE_RTL) | RTL -7 | [COPTER_MODE_CIRCLE](#COPTER_MODE_CIRCLE) | CIRCLE -9 | [COPTER_MODE_LAND](#COPTER_MODE_LAND) | LAND -11 | [COPTER_MODE_DRIFT](#COPTER_MODE_DRIFT) | DRIFT -13 | [COPTER_MODE_SPORT](#COPTER_MODE_SPORT) | SPORT -14 | [COPTER_MODE_FLIP](#COPTER_MODE_FLIP) | FLIP -15 | [COPTER_MODE_AUTOTUNE](#COPTER_MODE_AUTOTUNE) | AUTOTUNE -16 | [COPTER_MODE_POSHOLD](#COPTER_MODE_POSHOLD) | POSHOLD -17 | [COPTER_MODE_BRAKE](#COPTER_MODE_BRAKE) | BRAKE -18 | [COPTER_MODE_THROW](#COPTER_MODE_THROW) | THROW -19 | [COPTER_MODE_AVOID_ADSB](#COPTER_MODE_AVOID_ADSB) | AVOID ADSB -20 | [COPTER_MODE_GUIDED_NOGPS](#COPTER_MODE_GUIDED_NOGPS) | GUIDED NOGPS -21 | [COPTER_MODE_SMART_RTL](#COPTER_MODE_SMART_RTL) | SMARTRTL -22 | [COPTER_MODE_FLOWHOLD](#COPTER_MODE_FLOWHOLD) | FLOWHOLD -23 | [COPTER_MODE_FOLLOW](#COPTER_MODE_FOLLOW) | FOLLOW -24 | [COPTER_MODE_ZIGZAG](#COPTER_MODE_ZIGZAG) | ZIGZAG -25 | [COPTER_MODE_SYSTEMID](#COPTER_MODE_SYSTEMID) | SYSTEMID -26 | [COPTER_MODE_AUTOROTATE](#COPTER_MODE_AUTOROTATE) | AUTOROTATE -27 | [COPTER_MODE_AUTO_RTL](#COPTER_MODE_AUTO_RTL) | AUTO RTL -28 | [COPTER_MODE_TURTLE](#COPTER_MODE_TURTLE) | TURTLE -29 | [COPTER_MODE_RATE_ACRO](#COPTER_MODE_RATE_ACRO) | [RATE_ACRO](#RATE_ACRO) +| Value | Name | Description | +| --------------------------------------- | ----------------------------------------------------- | ----------------------- | +| 0 | [COPTER_MODE_STABILIZE](#COPTER_MODE_STABILIZE) | STABILIZE | +| 1 | [COPTER_MODE_ACRO](#COPTER_MODE_ACRO) | ACRO | +| 2 | [COPTER_MODE_ALT_HOLD](#COPTER_MODE_ALT_HOLD) | ALT HOLD | +| 3 | [COPTER_MODE_AUTO](#COPTER_MODE_AUTO) | AUTO | +| 4 | [COPTER_MODE_GUIDED](#COPTER_MODE_GUIDED) | GUIDED | +| 5 | [COPTER_MODE_LOITER](#COPTER_MODE_LOITER) | LOITER | +| 6 | [COPTER_MODE_RTL](#COPTER_MODE_RTL) | RTL | +| 7 | [COPTER_MODE_CIRCLE](#COPTER_MODE_CIRCLE) | CIRCLE | +| 9 | [COPTER_MODE_LAND](#COPTER_MODE_LAND) | LAND | +| 11 | [COPTER_MODE_DRIFT](#COPTER_MODE_DRIFT) | DRIFT | +| 13 | [COPTER_MODE_SPORT](#COPTER_MODE_SPORT) | SPORT | +| 14 | [COPTER_MODE_FLIP](#COPTER_MODE_FLIP) | FLIP | +| 15 | [COPTER_MODE_AUTOTUNE](#COPTER_MODE_AUTOTUNE) | AUTOTUNE | +| 16 | [COPTER_MODE_POSHOLD](#COPTER_MODE_POSHOLD) | POSHOLD | +| 17 | [COPTER_MODE_BRAKE](#COPTER_MODE_BRAKE) | BRAKE | +| 18 | [COPTER_MODE_THROW](#COPTER_MODE_THROW) | THROW | +| 19 | [COPTER_MODE_AVOID_ADSB](#COPTER_MODE_AVOID_ADSB) | AVOID ADSB | +| 20 | [COPTER_MODE_GUIDED_NOGPS](#COPTER_MODE_GUIDED_NOGPS) | GUIDED NOGPS | +| 21 | [COPTER_MODE_SMART_RTL](#COPTER_MODE_SMART_RTL) | SMARTRTL | +| 22 | [COPTER_MODE_FLOWHOLD](#COPTER_MODE_FLOWHOLD) | FLOWHOLD | +| 23 | [COPTER_MODE_FOLLOW](#COPTER_MODE_FOLLOW) | FOLLOW | +| 24 | [COPTER_MODE_ZIGZAG](#COPTER_MODE_ZIGZAG) | ZIGZAG | +| 25 | [COPTER_MODE_SYSTEMID](#COPTER_MODE_SYSTEMID) | SYSTEMID | +| 26 | [COPTER_MODE_AUTOROTATE](#COPTER_MODE_AUTOROTATE) | AUTOROTATE | +| 27 | [COPTER_MODE_AUTO_RTL](#COPTER_MODE_AUTO_RTL) | AUTO RTL | +| 28 | [COPTER_MODE_TURTLE](#COPTER_MODE_TURTLE) | TURTLE | +| 29 | [COPTER_MODE_RATE_ACRO](#COPTER_MODE_RATE_ACRO) | [RATE_ACRO](#RATE_ACRO) | ### SUB_MODE {#SUB_MODE} A mapping of sub flight modes for custom_mode field of heartbeat. -Value | Name | Description ---- | --- | --- -0 | [SUB_MODE_STABILIZE](#SUB_MODE_STABILIZE) | STABILIZE -1 | [SUB_MODE_ACRO](#SUB_MODE_ACRO) | ACRO -2 | [SUB_MODE_ALT_HOLD](#SUB_MODE_ALT_HOLD) | ALT HOLD -3 | [SUB_MODE_AUTO](#SUB_MODE_AUTO) | AUTO -4 | [SUB_MODE_GUIDED](#SUB_MODE_GUIDED) | GUIDED -7 | [SUB_MODE_CIRCLE](#SUB_MODE_CIRCLE) | CIRCLE -9 | [SUB_MODE_SURFACE](#SUB_MODE_SURFACE) | SURFACE -16 | [SUB_MODE_POSHOLD](#SUB_MODE_POSHOLD) | POSHOLD -19 | [SUB_MODE_MANUAL](#SUB_MODE_MANUAL) | MANUAL -20 | [SUB_MODE_MOTORDETECT](#SUB_MODE_MOTORDETECT) | MOTORDETECT -21 | [SUB_MODE_SURFTRAK](#SUB_MODE_SURFTRAK) | SURFTRAK +| Value | Name | Description | +| ----------------------------------- | --------------------------------------------- | ----------- | +| 0 | [SUB_MODE_STABILIZE](#SUB_MODE_STABILIZE) | STABILIZE | +| 1 | [SUB_MODE_ACRO](#SUB_MODE_ACRO) | ACRO | +| 2 | [SUB_MODE_ALT_HOLD](#SUB_MODE_ALT_HOLD) | ALT HOLD | +| 3 | [SUB_MODE_AUTO](#SUB_MODE_AUTO) | AUTO | +| 4 | [SUB_MODE_GUIDED](#SUB_MODE_GUIDED) | GUIDED | +| 7 | [SUB_MODE_CIRCLE](#SUB_MODE_CIRCLE) | CIRCLE | +| 9 | [SUB_MODE_SURFACE](#SUB_MODE_SURFACE) | SURFACE | +| 16 | [SUB_MODE_POSHOLD](#SUB_MODE_POSHOLD) | POSHOLD | +| 19 | [SUB_MODE_MANUAL](#SUB_MODE_MANUAL) | MANUAL | +| 20 | [SUB_MODE_MOTORDETECT](#SUB_MODE_MOTORDETECT) | MOTORDETECT | +| 21 | [SUB_MODE_SURFTRAK](#SUB_MODE_SURFTRAK) | SURFTRAK | ### ROVER_MODE {#ROVER_MODE} A mapping of rover flight modes for custom_mode field of heartbeat. -Value | Name | Description ---- | --- | --- -0 | [ROVER_MODE_MANUAL](#ROVER_MODE_MANUAL) | MANUAL -1 | [ROVER_MODE_ACRO](#ROVER_MODE_ACRO) | ACRO -3 | [ROVER_MODE_STEERING](#ROVER_MODE_STEERING) | STEERING -4 | [ROVER_MODE_HOLD](#ROVER_MODE_HOLD) | HOLD -5 | [ROVER_MODE_LOITER](#ROVER_MODE_LOITER) | LOITER -6 | [ROVER_MODE_FOLLOW](#ROVER_MODE_FOLLOW) | FOLLOW -7 | [ROVER_MODE_SIMPLE](#ROVER_MODE_SIMPLE) | SIMPLE -8 | [ROVER_MODE_DOCK](#ROVER_MODE_DOCK) | DOCK -9 | [ROVER_MODE_CIRCLE](#ROVER_MODE_CIRCLE) | CIRCLE -10 | [ROVER_MODE_AUTO](#ROVER_MODE_AUTO) | AUTO -11 | [ROVER_MODE_RTL](#ROVER_MODE_RTL) | RTL -12 | [ROVER_MODE_SMART_RTL](#ROVER_MODE_SMART_RTL) | SMART RTL -15 | [ROVER_MODE_GUIDED](#ROVER_MODE_GUIDED) | GUIDED -16 | [ROVER_MODE_INITIALIZING](#ROVER_MODE_INITIALIZING) | INITIALISING +| Value | Name | Description | +| -------------------------------------- | --------------------------------------------------- | ------------ | +| 0 | [ROVER_MODE_MANUAL](#ROVER_MODE_MANUAL) | MANUAL | +| 1 | [ROVER_MODE_ACRO](#ROVER_MODE_ACRO) | ACRO | +| 3 | [ROVER_MODE_STEERING](#ROVER_MODE_STEERING) | STEERING | +| 4 | [ROVER_MODE_HOLD](#ROVER_MODE_HOLD) | HOLD | +| 5 | [ROVER_MODE_LOITER](#ROVER_MODE_LOITER) | LOITER | +| 6 | [ROVER_MODE_FOLLOW](#ROVER_MODE_FOLLOW) | FOLLOW | +| 7 | [ROVER_MODE_SIMPLE](#ROVER_MODE_SIMPLE) | SIMPLE | +| 8 | [ROVER_MODE_DOCK](#ROVER_MODE_DOCK) | DOCK | +| 9 | [ROVER_MODE_CIRCLE](#ROVER_MODE_CIRCLE) | CIRCLE | +| 10 | [ROVER_MODE_AUTO](#ROVER_MODE_AUTO) | AUTO | +| 11 | [ROVER_MODE_RTL](#ROVER_MODE_RTL) | RTL | +| 12 | [ROVER_MODE_SMART_RTL](#ROVER_MODE_SMART_RTL) | SMART RTL | +| 15 | [ROVER_MODE_GUIDED](#ROVER_MODE_GUIDED) | GUIDED | +| 16 | [ROVER_MODE_INITIALIZING](#ROVER_MODE_INITIALIZING) | INITIALISING | ### TRACKER_MODE {#TRACKER_MODE} A mapping of antenna tracker flight modes for custom_mode field of heartbeat. -Value | Name | Description ---- | --- | --- -0 | [TRACKER_MODE_MANUAL](#TRACKER_MODE_MANUAL) | MANUAL -1 | [TRACKER_MODE_STOP](#TRACKER_MODE_STOP) | STOP -2 | [TRACKER_MODE_SCAN](#TRACKER_MODE_SCAN) | SCAN -3 | [TRACKER_MODE_SERVO_TEST](#TRACKER_MODE_SERVO_TEST) | SERVO TEST -4 | [TRACKER_MODE_GUIDED](#TRACKER_MODE_GUIDED) | GUIDED -10 | [TRACKER_MODE_AUTO](#TRACKER_MODE_AUTO) | AUTO -16 | [TRACKER_MODE_INITIALIZING](#TRACKER_MODE_INITIALIZING) | INITIALISING +| Value | Name | Description | +| ---------------------------------------- | ------------------------------------------------------- | ------------ | +| 0 | [TRACKER_MODE_MANUAL](#TRACKER_MODE_MANUAL) | MANUAL | +| 1 | [TRACKER_MODE_STOP](#TRACKER_MODE_STOP) | STOP | +| 2 | [TRACKER_MODE_SCAN](#TRACKER_MODE_SCAN) | SCAN | +| 3 | [TRACKER_MODE_SERVO_TEST](#TRACKER_MODE_SERVO_TEST) | SERVO TEST | +| 4 | [TRACKER_MODE_GUIDED](#TRACKER_MODE_GUIDED) | GUIDED | +| 10 | [TRACKER_MODE_AUTO](#TRACKER_MODE_AUTO) | AUTO | +| 16 | [TRACKER_MODE_INITIALIZING](#TRACKER_MODE_INITIALIZING) | INITIALISING | ### OSD_PARAM_CONFIG_TYPE {#OSD_PARAM_CONFIG_TYPE} The type of parameter for the OSD parameter editor. -Value | Name | Description ---- | --- | --- -0 | [OSD_PARAM_NONE](#OSD_PARAM_NONE) | -1 | [OSD_PARAM_SERIAL_PROTOCOL](#OSD_PARAM_SERIAL_PROTOCOL) | -2 | [OSD_PARAM_SERVO_FUNCTION](#OSD_PARAM_SERVO_FUNCTION) | -3 | [OSD_PARAM_AUX_FUNCTION](#OSD_PARAM_AUX_FUNCTION) | -4 | [OSD_PARAM_FLIGHT_MODE](#OSD_PARAM_FLIGHT_MODE) | -5 | [OSD_PARAM_FAILSAFE_ACTION](#OSD_PARAM_FAILSAFE_ACTION) | -6 | [OSD_PARAM_FAILSAFE_ACTION_1](#OSD_PARAM_FAILSAFE_ACTION_1) | -7 | [OSD_PARAM_FAILSAFE_ACTION_2](#OSD_PARAM_FAILSAFE_ACTION_2) | -8 | [OSD_PARAM_NUM_TYPES](#OSD_PARAM_NUM_TYPES) | +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ----------- | +| 0 | [OSD_PARAM_NONE](#OSD_PARAM_NONE) | +| 1 | [OSD_PARAM_SERIAL_PROTOCOL](#OSD_PARAM_SERIAL_PROTOCOL) | +| 2 | [OSD_PARAM_SERVO_FUNCTION](#OSD_PARAM_SERVO_FUNCTION) | +| 3 | [OSD_PARAM_AUX_FUNCTION](#OSD_PARAM_AUX_FUNCTION) | +| 4 | [OSD_PARAM_FLIGHT_MODE](#OSD_PARAM_FLIGHT_MODE) | +| 5 | [OSD_PARAM_FAILSAFE_ACTION](#OSD_PARAM_FAILSAFE_ACTION) | +| 6 | [OSD_PARAM_FAILSAFE_ACTION_1](#OSD_PARAM_FAILSAFE_ACTION_1) | +| 7 | [OSD_PARAM_FAILSAFE_ACTION_2](#OSD_PARAM_FAILSAFE_ACTION_2) | +| 8 | [OSD_PARAM_NUM_TYPES](#OSD_PARAM_NUM_TYPES) | ### OSD_PARAM_CONFIG_ERROR {#OSD_PARAM_CONFIG_ERROR} The error type for the OSD parameter editor. -Value | Name | Description ---- | --- | --- -0 | [OSD_PARAM_SUCCESS](#OSD_PARAM_SUCCESS) | -1 | [OSD_PARAM_INVALID_SCREEN](#OSD_PARAM_INVALID_SCREEN) | -2 | [OSD_PARAM_INVALID_PARAMETER_INDEX](#OSD_PARAM_INVALID_PARAMETER_INDEX) | -3 | [OSD_PARAM_INVALID_PARAMETER](#OSD_PARAM_INVALID_PARAMETER) | +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ----------- | +| 0 | [OSD_PARAM_SUCCESS](#OSD_PARAM_SUCCESS) | +| 1 | [OSD_PARAM_INVALID_SCREEN](#OSD_PARAM_INVALID_SCREEN) | +| 2 | [OSD_PARAM_INVALID_PARAMETER_INDEX](#OSD_PARAM_INVALID_PARAMETER_INDEX) | +| 3 | [OSD_PARAM_INVALID_PARAMETER](#OSD_PARAM_INVALID_PARAMETER) | ## Commands (MAV_CMD) {#mav_commands} @@ -1686,136 +1614,127 @@ Value | Name | Description Mission command to wait for an altitude or downwards vertical speed. This is meant for high altitude balloon launches, allowing the aircraft to be idle until either an altitude is reached or a negative vertical speed is reached (indicating early balloon burst). The wiggle time is how often to wiggle the control surfaces to prevent them seizing up. -Param (Label) | Description | Units ---- | --- | --- -1 (Altitude) | Altitude. | m -2 (Descent Speed) | Descent speed. | m/s -3 (Wiggle Time) | How long to wiggle the control surfaces to prevent them seizing up. | s -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| ----------------- | ------------------------------------------------------------------- | ----- | +| 1 (Altitude) | Altitude. | m | +| 2 (Descent Speed) | Descent speed. | m/s | +| 3 (Wiggle Time) | How long to wiggle the control surfaces to prevent them seizing up. | s | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_SET_RESUME_REPEAT_DIST (215) {#MAV_CMD_DO_SET_RESUME_REPEAT_DIST} Set the distance to be repeated on mission resume -Param (Label) | Description | Units ---- | --- | --- -1 (Distance) | Distance. | m -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 1 (Distance) | Distance. | m | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_SPRAYER (216) {#MAV_CMD_DO_SPRAYER} Control attached liquid sprayer -Param (Label) | Description | Values ---- | --- | --- -1 (Sprayer Enable) | 0: disable sprayer. 1: enable sprayer. | min: 0 max: 1 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------------ | -------------------------------------- | -------------------- | +| 1 (Sprayer Enable) | 0: disable sprayer. 1: enable sprayer. | min: 0 max: 1 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_SEND_SCRIPT_MESSAGE (217) {#MAV_CMD_DO_SEND_SCRIPT_MESSAGE} Pass instructions onto scripting, a script should be checking for a new command -Param (Label) | Description | Values ---- | --- | --- -1 (ID) | uint16 ID value to be passed to scripting | min: 0 max: 65535 inc: 1 -2 (param 1) | float value to be passed to scripting | -3 (param 2) | float value to be passed to scripting | -4 (param 3) | float value to be passed to scripting | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------- | ----------------------------------------- | ------------------------ | +| 1 (ID) | uint16 ID value to be passed to scripting | min: 0 max: 65535 inc: 1 | +| 2 (param 1) | float value to be passed to scripting | +| 3 (param 2) | float value to be passed to scripting | +| 4 (param 3) | float value to be passed to scripting | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_AUX_FUNCTION (218) {#MAV_CMD_DO_AUX_FUNCTION} Execute auxiliary function -Param (Label) | Description | Values ---- | --- | --- -1 (AuxiliaryFunction) | Auxiliary Function. | -2 (SwitchPosition) | Switch Level. | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| --------------------- | ------------------- | ----------------------------------------------------------------------------- | +| 1 (AuxiliaryFunction) | Auxiliary Function. | +| 2 (SwitchPosition) | Switch Level. | [MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL](#MAV_CMD_DO_AUX_FUNCTION_SWITCH_LEVEL) | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_POWER_OFF_INITIATED (42000) {#MAV_CMD_POWER_OFF_INITIATED} A system wide power-off event has been initiated. -Param (Label) | Description ---- | --- -1 | Empty. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SOLO_BTN_FLY_CLICK (42001) {#MAV_CMD_SOLO_BTN_FLY_CLICK} FLY button has been clicked. -Param (Label) | Description ---- | --- -1 | Empty. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SOLO_BTN_FLY_HOLD (42002) {#MAV_CMD_SOLO_BTN_FLY_HOLD} FLY button has been held for 1.5 seconds. -Param (Label) | Description | Units ---- | --- | --- -1 (Takeoff Altitude) | Takeoff altitude. | m -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| -------------------- | ----------------- | ----- | +| 1 (Takeoff Altitude) | Takeoff altitude. | m | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SOLO_BTN_PAUSE_CLICK (42003) {#MAV_CMD_SOLO_BTN_PAUSE_CLICK} PAUSE button has been clicked. -Param (Label) | Description | Values ---- | --- | --- -1 (Shot Mode) | 1 if Solo is in a shot mode, 0 otherwise. | min: 0 max: 1 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------- | ----------------------------------------- | -------------------- | +| 1 (Shot Mode) | 1 if Solo is in a shot mode, 0 otherwise. | min: 0 max: 1 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_FIXED_MAG_CAL (42004) {#MAV_CMD_FIXED_MAG_CAL} @@ -1823,318 +1742,295 @@ Magnetometer calibration based on fixed position in earth field given by inclination, declination and intensity. -Param (Label) | Description | Units ---- | --- | --- -1 (Declination) | Magnetic declination. | deg -2 (Inclination) | Magnetic inclination. | deg -3 (Intensity) | Magnetic intensity. | mgauss -4 (Yaw) | Yaw. | deg -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| --------------- | --------------------- | ------ | +| 1 (Declination) | Magnetic declination. | deg | +| 2 (Inclination) | Magnetic inclination. | deg | +| 3 (Intensity) | Magnetic intensity. | mgauss | +| 4 (Yaw) | Yaw. | deg | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_FIXED_MAG_CAL_FIELD (42005) {#MAV_CMD_FIXED_MAG_CAL_FIELD} Magnetometer calibration based on fixed expected field values. -Param (Label) | Description | Units ---- | --- | --- -1 (Field X) | Field strength X. | mgauss -2 (Field Y) | Field strength Y. | mgauss -3 (Field Z) | Field strength Z. | mgauss -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| ------------- | ----------------- | ------ | +| 1 (Field X) | Field strength X. | mgauss | +| 2 (Field Y) | Field strength Y. | mgauss | +| 3 (Field Z) | Field strength Z. | mgauss | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SET_EKF_SOURCE_SET (42007) {#MAV_CMD_SET_EKF_SOURCE_SET} Set EKF sensor source set. -Param (Label) | Description | Values ---- | --- | --- -1 (SourceSetId) | Source Set Id. | min: 1 max: 3 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| --------------- | -------------- | -------------------- | +| 1 (SourceSetId) | Source Set Id. | min: 1 max: 3 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_START_MAG_CAL (42424) {#MAV_CMD_DO_START_MAG_CAL} Initiate a magnetometer calibration. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Magnetometers Bitmask) | Bitmask of magnetometers to calibrate. Use 0 to calibrate all sensors that can be started (sensors may not start if disabled, unhealthy, etc.). The command will NACK if calibration does not start for a sensor explicitly specified by the bitmask. | min: 0 max: 255 inc: 1 | -2 (Retry on Failure) | Automatically retry on failure (0=no retry, 1=retry). | min: 0 max: 1 inc: 1 | -3 (Autosave) | Save without user input (0=require input, 1=autosave). | min: 0 max: 1 inc: 1 | -4 (Delay) | Delay. | | s -5 (Autoreboot) | Autoreboot (0=user reboot, 1=autoreboot). | min: 0 max: 1 inc: 1 | -6 | Empty. | | -7 | Empty. | | - +| Param (Label) | Description | Values | Units | +| ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (Magnetometers Bitmask) | Bitmask of magnetometers to calibrate. Use 0 to calibrate all sensors that can be started (sensors may not start if disabled, unhealthy, etc.). The command will NACK if calibration does not start for a sensor explicitly specified by the bitmask. | min: 0 max: 255 inc: 1 | +| 2 (Retry on Failure) | Automatically retry on failure (0=no retry, 1=retry). | min: 0 max: 1 inc: 1 | +| 3 (Autosave) | Save without user input (0=require input, 1=autosave). | min: 0 max: 1 inc: 1 | +| 4 (Delay) | Delay. | | s | +| 5 (Autoreboot) | Autoreboot (0=user reboot, 1=autoreboot). | min: 0 max: 1 inc: 1 | +| 6 | Empty. | | +| 7 | Empty. | | ### MAV_CMD_DO_ACCEPT_MAG_CAL (42425) {#MAV_CMD_DO_ACCEPT_MAG_CAL} Accept a magnetometer calibration. -Param (Label) | Description | Values ---- | --- | --- -1 (Magnetometers Bitmask) | Bitmask of magnetometers that calibration is accepted (0 means all). | min: 0 max: 255 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------------------- | -------------------------------------------------------------------- | ---------------------- | +| 1 (Magnetometers Bitmask) | Bitmask of magnetometers that calibration is accepted (0 means all). | min: 0 max: 255 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_CANCEL_MAG_CAL (42426) {#MAV_CMD_DO_CANCEL_MAG_CAL} Cancel a running magnetometer calibration. -Param (Label) | Description | Values ---- | --- | --- -1 (Magnetometers Bitmask) | Bitmask of magnetometers to cancel a running calibration (0 means all). | min: 0 max: 255 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------------------- | ----------------------------------------------------------------------- | ---------------------- | +| 1 (Magnetometers Bitmask) | Bitmask of magnetometers to cancel a running calibration (0 means all). | min: 0 max: 255 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SET_FACTORY_TEST_MODE (42427) {#MAV_CMD_SET_FACTORY_TEST_MODE} Command autopilot to get into factory test/diagnostic mode. -Param (Label) | Description | Values ---- | --- | --- -1 (Test Mode) | 0: activate test mode, 1: exit test mode. | min: 0 max: 1 inc: 1 -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------- | ----------------------------------------- | -------------------- | +| 1 (Test Mode) | 0: activate test mode, 1: exit test mode. | min: 0 max: 1 inc: 1 | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_SEND_BANNER (42428) {#MAV_CMD_DO_SEND_BANNER} Reply with the version banner. -Param (Label) | Description ---- | --- -1 | Empty. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_ACCELCAL_VEHICLE_POS (42429) {#MAV_CMD_ACCELCAL_VEHICLE_POS} Used when doing accelerometer calibration. When sent to the GCS tells it what position to put the vehicle in. When sent to the vehicle says what position the vehicle is in. -Param (Label) | Description | Values ---- | --- | --- -1 (Position) | Position. | [ACCELCAL_VEHICLE_POS](#ACCELCAL_VEHICLE_POS) -2 | Empty. | -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------- | ----------- | --------------------------------------------- | +| 1 (Position) | Position. | [ACCELCAL_VEHICLE_POS](#ACCELCAL_VEHICLE_POS) | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_GIMBAL_RESET (42501) {#MAV_CMD_GIMBAL_RESET} Causes the gimbal to reset and boot as if it was just powered on. -Param (Label) | Description ---- | --- -1 | Empty. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_GIMBAL_AXIS_CALIBRATION_STATUS (42502) {#MAV_CMD_GIMBAL_AXIS_CALIBRATION_STATUS} Reports progress and success or failure of gimbal axis calibration procedure. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Axis) | Gimbal axis we're reporting calibration progress for. | [GIMBAL_AXIS](#GIMBAL_AXIS) | -2 (Progress) | Current calibration progress for this axis. | min: 0 max: 100 | % -3 (Status) | Status of the calibration. | [GIMBAL_AXIS_CALIBRATION_STATUS](#GIMBAL_AXIS_CALIBRATION_STATUS) | -4 | Empty. | | -5 | Empty. | | -6 | Empty. | | -7 | Empty. | | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------------------------------------------------- | ----------------------------------------------------------------- | ----- | +| 1 (Axis) | Gimbal axis we're reporting calibration progress for. | [GIMBAL_AXIS](#GIMBAL_AXIS) | +| 2 (Progress) | Current calibration progress for this axis. | min: 0 max: 100 | % | +| 3 (Status) | Status of the calibration. | [GIMBAL_AXIS_CALIBRATION_STATUS](#GIMBAL_AXIS_CALIBRATION_STATUS) | +| 4 | Empty. | | +| 5 | Empty. | | +| 6 | Empty. | | +| 7 | Empty. | | ### MAV_CMD_GIMBAL_REQUEST_AXIS_CALIBRATION (42503) {#MAV_CMD_GIMBAL_REQUEST_AXIS_CALIBRATION} Starts commutation calibration on the gimbal. -Param (Label) | Description ---- | --- -1 | Empty. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_GIMBAL_FULL_RESET (42505) {#MAV_CMD_GIMBAL_FULL_RESET} Erases gimbal application and parameters. -Param (Label) | Description ---- | --- -1 | Magic number. -2 | Magic number. -3 | Magic number. -4 | Magic number. -5 | Magic number. -6 | Magic number. -7 | Magic number. - +| Param (Label) | Description | +| ------------- | ------------- | +| 1 | Magic number. | +| 2 | Magic number. | +| 3 | Magic number. | +| 4 | Magic number. | +| 5 | Magic number. | +| 6 | Magic number. | +| 7 | Magic number. | ### MAV_CMD_FLASH_BOOTLOADER (42650) {#MAV_CMD_FLASH_BOOTLOADER} Update the bootloader -Param (Label) | Description | Values ---- | --- | --- -1 | Empty | -2 | Empty | -3 | Empty | -4 | Empty | -5 (Magic Number) | Magic number - set to 290876 to actually flash | inc: 1 -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ---------------- | ---------------------------------------------- | ------ | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 (Magic Number) | Magic number - set to 290876 to actually flash | inc: 1 | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_BATTERY_RESET (42651) {#MAV_CMD_BATTERY_RESET} Reset battery capacity for batteries that accumulate consumed battery via integration. -Param (Label) | Description | Values ---- | --- | --- -1 (battery mask) | Bitmask of batteries to reset. Least significant bit is for the first battery. | -2 (percentage) | Battery percentage remaining to set. | min: 0 max: 100 inc: 1 - +| Param (Label) | Description | Values | +| ---------------- | ------------------------------------------------------------------------------ | ---------------------- | +| 1 (battery mask) | Bitmask of batteries to reset. Least significant bit is for the first battery. | +| 2 (percentage) | Battery percentage remaining to set. | min: 0 max: 100 inc: 1 | ### MAV_CMD_DEBUG_TRAP (42700) {#MAV_CMD_DEBUG_TRAP} Issue a trap signal to the autopilot process, presumably to enter the debugger. -Param (Label) | Description ---- | --- -1 | Magic number - set to 32451 to actually trap. -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | --------------------------------------------- | +| 1 | Magic number - set to 32451 to actually trap. | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_SCRIPTING (42701) {#MAV_CMD_SCRIPTING} Control onboard scripting. -Param (Label) | Description | Values ---- | --- | --- -1 | Scripting command to execute | [SCRIPTING_CMD](#SCRIPTING_CMD) - +| Param (Label) | Description | Values | +| ------------- | ---------------------------- | ------------------------------- | +| 1 | Scripting command to execute | [SCRIPTING_CMD](#SCRIPTING_CMD) | ### MAV_CMD_NAV_SCRIPT_TIME (42702) {#MAV_CMD_NAV_SCRIPT_TIME} Scripting command as NAV command with wait for completion. -Param (Label) | Description | Units ---- | --- | --- -1 (command) | integer command number (0 to 255) | -2 (timeout) | timeout for operation in seconds. Zero means no timeout (0 to 255) | s -3 (arg1) | argument1. | -4 (arg2) | argument2. | -5 (arg3) | argument3. | -6 (arg4) | argument4. | -7 | Empty | - +| Param (Label) | Description | Units | +| ------------- | ------------------------------------------------------------------ | ----- | +| 1 (command) | integer command number (0 to 255) | +| 2 (timeout) | timeout for operation in seconds. Zero means no timeout (0 to 255) | s | +| 3 (arg1) | argument1. | +| 4 (arg2) | argument2. | +| 5 (arg3) | argument3. | +| 6 (arg4) | argument4. | +| 7 | Empty | ### MAV_CMD_NAV_ATTITUDE_TIME (42703) {#MAV_CMD_NAV_ATTITUDE_TIME} Maintain an attitude for a specified time. -Param (Label) | Description | Units ---- | --- | --- -1 (time) | Time to maintain specified attitude and climb rate | s -2 (roll) | Roll angle in degrees (positive is lean right, negative is lean left) | deg -3 (pitch) | Pitch angle in degrees (positive is lean back, negative is lean forward) | deg -4 (yaw) | Yaw angle | deg -5 (climb_rate) | Climb rate | m/s -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Units | +| -------------- | ------------------------------------------------------------------------ | ----- | +| 1 (time) | Time to maintain specified attitude and climb rate | s | +| 2 (roll) | Roll angle in degrees (positive is lean right, negative is lean left) | deg | +| 3 (pitch) | Pitch angle in degrees (positive is lean back, negative is lean forward) | deg | +| 4 (yaw) | Yaw angle | deg | +| 5 (climb_rate) | Climb rate | m/s | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_GUIDED_CHANGE_SPEED (43000) {#MAV_CMD_GUIDED_CHANGE_SPEED} Change flight speed at a given rate. This slews the vehicle at a controllable rate between it's previous speed and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (speed type) | Airspeed or groundspeed. | [SPEED_TYPE](#SPEED_TYPE) | -2 (speed target) | Target Speed | | m/s -3 (speed rate-of-change) | Acceleration rate, 0 to take effect instantly | | m/s/s -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------------------ | --------------------------------------------- | ------------------------- | ----- | +| 1 (speed type) | Airspeed or groundspeed. | [SPEED_TYPE](#SPEED_TYPE) | +| 2 (speed target) | Target Speed | | m/s | +| 3 (speed rate-of-change) | Acceleration rate, 0 to take effect instantly | | m/s/s | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_GUIDED_CHANGE_ALTITUDE (43001) {#MAV_CMD_GUIDED_CHANGE_ALTITUDE} Change target altitude at a given rate. This slews the vehicle at a controllable rate between it's previous altitude and the new one. (affects GUIDED only. Outside GUIDED, aircraft ignores these commands. Designed for onboard companion-computer command-and-control, not normally operator/GCS control.) -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 | Empty | | -2 | Empty | | -3 (alt rate-of-change) | Rate of change, toward new altitude. 0 for maximum rate change. Positive numbers only, as negative numbers will not converge on the new target alt. | min: 0 | m/s -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 (target alt) | Target Altitude | | m - +| Param (Label) | Description | Values | Units | +| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----- | +| 1 | Empty | | +| 2 | Empty | | +| 3 (alt rate-of-change) | Rate of change, toward new altitude. 0 for maximum rate change. Positive numbers only, as negative numbers will not converge on the new target alt. | min: 0 | m/s | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 (target alt) | Target Altitude | | m | ### MAV_CMD_SET_HAGL (43005) {#MAV_CMD_SET_HAGL} Provide a value for height above ground level. This can be used for things like fixed wing and VTOL landing. -Param (Label) | Description | Units ---- | --- | --- -1 (hagl) | Height above ground level. | m -2 (accuracy) | estimated one standard deviation accuracy of the measurement. Set to NaN if not known. | m -3 (timeout) | Timeout for this data. The flight controller should only consider this data valid within the timeout window. | s -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - - +| Param (Label) | Description | Units | +| ------------- | ------------------------------------------------------------------------------------------------------------ | ----- | +| 1 (hagl) | Height above ground level. | m | +| 2 (accuracy) | estimated one standard deviation accuracy of the measurement. Set to NaN if not known. | m | +| 3 (timeout) | Timeout for this data. The flight controller should only consider this data valid within the timeout window. | s | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | diff --git a/en/messages/common.md b/en/messages/common.md index 730b843d8..8763b8cba 100644 --- a/en/messages/common.md +++ b/en/messages/common.md @@ -2,7 +2,7 @@ # MAVLINK Common Message Set (common.xml) -The MAVLink *common* message set contains *standard* definitions that are managed by the MAVLink project. +The MAVLink _common_ message set contains _standard_ definitions that are managed by the MAVLink project. The definitions cover functionality that is considered useful to most ground control stations and autopilots. MAVLink-compatible systems are expected to use these definitions where possible (if an appropriate message exists) rather than rolling out variants in their own [dialects](../messages/README.md). @@ -25,6 +25,7 @@ span.warning { color: red; } + **Protocol dialect:** 0 **Protocol version:** 3 @@ -35,11 +36,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 231 | 3 -[Enums](#enumerated-types) | 150 | 9 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 231 | 3 | +| [Enums](#enumerated-types) | 150 | 9 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -49,39 +50,37 @@ The following sections list all entities in the dialect (both included and defin The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html -Field Name | Type | Values | Description ---- | --- | --- | --- -type | `uint8_t` | [MAV_TYPE](#MAV_TYPE) | Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. -autopilot | `uint8_t` | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. -base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode bitmap. -custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags -system_status | `uint8_t` | [MAV_STATE](#MAV_STATE) | System status flag. -mavlink_version | `uint8_t_mavlink_version` | | MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version - +| Field Name | Type | Values | Description | +| --------------- | ------------------------- | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| type | `uint8_t` | [MAV_TYPE](#MAV_TYPE) | Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. | +| autopilot | `uint8_t` | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. | +| base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode bitmap. | +| custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags | +| system_status | `uint8_t` | [MAV_STATE](#MAV_STATE) | System status flag. | +| mavlink_version | `uint8_t_mavlink_version` | | MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version | ### SYS_STATUS (1) {#SYS_STATUS} Sensor and subsystem status information. Provides a compact representation of sensor/subsystem status and a few other basic statistics. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -onboard_control_sensors_present | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. -onboard_control_sensors_enabled | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. -onboard_control_sensors_health | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. -load | `uint16_t` | d% | | Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 -voltage_battery | `uint16_t` | mV | invalid:UINT16_MAX | Battery voltage, UINT16_MAX: Voltage not sent by autopilot. Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. -current_battery | `int16_t` | cA | invalid:-1 | Battery current, -1: Current not sent by autopilot. Value may overflow/rollover for very high currents (> 327.67A). Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. -battery_remaining | `int8_t` | % | invalid:-1 | Battery energy remaining, -1: Battery remaining energy not sent by autopilot. Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. -drop_rate_comm | `uint16_t` | c% | | Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) -errors_comm | `uint16_t` | | | Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) -errors_count1 | `uint16_t` | | | Autopilot-specific errors -errors_count2 | `uint16_t` | | | Autopilot-specific errors -errors_count3 | `uint16_t` | | | Autopilot-specific errors -errors_count4 | `uint16_t` | | | Autopilot-specific errors -onboard_control_sensors_present_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. -onboard_control_sensors_enabled_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. -onboard_control_sensors_health_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------------------------------- | ---------- | ----- | ----------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| onboard_control_sensors_present | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. | +| onboard_control_sensors_enabled | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. | +| onboard_control_sensors_health | `uint32_t` | | [MAV_SYS_STATUS_SENSOR](#MAV_SYS_STATUS_SENSOR) | Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. | +| load | `uint16_t` | d% | | Maximum usage in percent of the mainloop time. Values: [0-1000] - should always be below 1000 | +| voltage_battery | `uint16_t` | mV | invalid:UINT16_MAX | Battery voltage, UINT16_MAX: Voltage not sent by autopilot. Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. | +| current_battery | `int16_t` | cA | invalid:-1 | Battery current, -1: Current not sent by autopilot. Value may overflow/rollover for very high currents (> 327.67A). Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. | +| battery_remaining | `int8_t` | % | invalid:-1 | Battery energy remaining, -1: Battery remaining energy not sent by autopilot. Value is ambiguous on multi-battery systems. [BATTERY_STATUS](#BATTERY_STATUS) is a recommended alternative. | +| drop_rate_comm | `uint16_t` | c% | | Communication drop rate, (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) | +| errors_comm | `uint16_t` | | | Communication errors (UART, I2C, SPI, CAN), dropped packets on all links (packets that were corrupted on reception on the MAV) | +| errors_count1 | `uint16_t` | | | Autopilot-specific errors | +| errors_count2 | `uint16_t` | | | Autopilot-specific errors | +| errors_count3 | `uint16_t` | | | Autopilot-specific errors | +| errors_count4 | `uint16_t` | | | Autopilot-specific errors | +| onboard_control_sensors_present_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors are present. Value of 0: not present. Value of 1: present. | +| onboard_control_sensors_enabled_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors are enabled: Value of 0: not enabled. Value of 1: enabled. | +| onboard_control_sensors_health_extended ++ | `uint32_t` | | [MAV_SYS_STATUS_SENSOR_EXTENDED](#MAV_SYS_STATUS_SENSOR_EXTENDED) | Bitmap showing which onboard controllers and sensors have an error (or are operational). Value of 0: error. Value of 1: healthy. | ### SYSTEM_TIME (2) {#SYSTEM_TIME} @@ -92,11 +91,10 @@ Components that are using a less reliable time source, such as a battery-backed This allows more broadly accurate date stamping of logs, and so on. If precise time synchronization is needed then use TIMESYNC instead. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_unix_usec | `uint64_t` | us | Timestamp (UNIX epoch time). -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | ----------------------------------- | +| time_unix_usec | `uint64_t` | us | Timestamp (UNIX epoch time). | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | ### PING (4) — [SUP] {#PING} @@ -104,45 +102,41 @@ time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). 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. The ping microservice is documented at https://mavlink.io/en/services/ping.html -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -seq | `uint32_t` | | PING sequence -target_system | `uint8_t` | | 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system -target_component | `uint8_t` | | 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| seq | `uint32_t` | | PING sequence | +| target_system | `uint8_t` | | 0: request ping from all receiving systems. If greater than 0: message is a ping response and number is the system id of the requesting system | +| target_component | `uint8_t` | | 0: request ping from all receiving components. If greater than 0: message is a ping response and number is the component id of the requesting component. | ### CHANGE_OPERATOR_CONTROL (5) {#CHANGE_OPERATOR_CONTROL} Request to control this MAV -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System the GCS requests control for -control_request | `uint8_t` | 0: request control of this MAV, 1: Release control of this MAV -version | `uint8_t` | 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. -passkey | `char[25]` | Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" - +| Field Name | Type | Description | +| --------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | System the GCS requests control for | +| control_request | `uint8_t` | 0: request control of this MAV, 1: Release control of this MAV | +| version | `uint8_t` | 0: key as plaintext, 1-255: future, different hashing/encryption variants. The GCS should in general use the safest mode possible initially and then gradually move down the encryption level if it gets a NACK message indicating an encryption mismatch. | +| passkey | `char[25]` | Password / Key, depending on version plaintext or encrypted. 25 or less characters, NULL terminated. The characters may involve A-Z, a-z, 0-9, and "!?,.-" | ### CHANGE_OPERATOR_CONTROL_ACK (6) {#CHANGE_OPERATOR_CONTROL_ACK} Accept / deny control of this MAV -Field Name | Type | Description ---- | --- | --- -gcs_system_id | `uint8_t` | ID of the GCS this message -control_request | `uint8_t` | 0: request control of this MAV, 1: Release control of this MAV -ack | `uint8_t` | 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control - +| Field Name | Type | Description | +| --------------- | --------- | -------------------------------------------------------------------------------------------------------------- | +| gcs_system_id | `uint8_t` | ID of the GCS this message | +| control_request | `uint8_t` | 0: request control of this MAV, 1: Release control of this MAV | +| ack | `uint8_t` | 0: ACK, 1: NACK: Wrong passkey, 2: NACK: Unsupported passkey encryption method, 3: NACK: Already under control | ### AUTH_KEY (7) {#AUTH_KEY} 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 ---- | --- | --- -key | `char[32]` | key - +| Field Name | Type | Description | +| ---------- | ---------- | ----------- | +| key | `char[32]` | key | ### LINK_NODE_STATUS (8) — [WIP] {#LINK_NODE_STATUS} @@ -150,20 +144,19 @@ key | `char[32]` | key Status generated in each node in the communication chain and injected into MAVLink stream. -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | ms | Timestamp (time since system boot). -tx_buf | `uint8_t` | % | Remaining free transmit buffer space -rx_buf | `uint8_t` | % | Remaining free receive buffer space -tx_rate | `uint32_t` | bytes/s | Transmit rate -rx_rate | `uint32_t` | bytes/s | Receive rate -rx_parse_err | `uint16_t` | bytes | Number of bytes that could not be parsed correctly. -tx_overflows | `uint16_t` | bytes | Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX -rx_overflows | `uint16_t` | bytes | Receive buffer overflows. This number wraps around as it reaches UINT16_MAX -messages_sent | `uint32_t` | | Messages sent -messages_received | `uint32_t` | | Messages received (estimated from counting seq) -messages_lost | `uint32_t` | | Messages lost (estimated from counting seq) - +| Field Name | Type | Units | Description | +| ----------------- | ---------- | ------- | ---------------------------------------------------------------------------- | +| timestamp | `uint64_t` | ms | Timestamp (time since system boot). | +| tx_buf | `uint8_t` | % | Remaining free transmit buffer space | +| rx_buf | `uint8_t` | % | Remaining free receive buffer space | +| tx_rate | `uint32_t` | bytes/s | Transmit rate | +| rx_rate | `uint32_t` | bytes/s | Receive rate | +| rx_parse_err | `uint16_t` | bytes | Number of bytes that could not be parsed correctly. | +| tx_overflows | `uint16_t` | bytes | Transmit buffer overflows. This number wraps around as it reaches UINT16_MAX | +| rx_overflows | `uint16_t` | bytes | Receive buffer overflows. This number wraps around as it reaches UINT16_MAX | +| messages_sent | `uint32_t` | | Messages sent | +| messages_received | `uint32_t` | | Messages received (estimated from counting seq) | +| messages_lost | `uint32_t` | | Messages lost (estimated from counting seq) | ### SET_MODE (11) — [SUP] {#SET_MODE} @@ -171,47 +164,43 @@ messages_lost | `uint32_t` | | Messages lost (estimated from counting seq) Set the system mode, as defined by enum [MAV_MODE_FLAG](#MAV_MODE_FLAG). There is no target component id as the mode is by definition for the overall aircraft, not only for one component. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | The system setting the mode -base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | The new base mode. -custom_mode | `uint32_t` | | The new autopilot-specific mode. This field can be ignored by an autopilot. - +| Field Name | Type | Values | Description | +| ------------- | ---------- | ------------------------------- | --------------------------------------------------------------------------- | +| target_system | `uint8_t` | | The system setting the mode | +| base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | The new base mode. | +| custom_mode | `uint32_t` | | The new autopilot-specific mode. This field can be ignored by an autopilot. | ### PARAM_REQUEST_READ (20) {#PARAM_REQUEST_READ} 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 https://mavlink.io/en/services/parameter.html for a full documentation of QGroundControl and IMU code. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -param_id | `char[16]` | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_index | `int16_t` | Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) - +| Field Name | Type | Description | +| ---------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| param_id | `char[16]` | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_index | `int16_t` | Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored) | ### PARAM_REQUEST_LIST (21) {#PARAM_REQUEST_LIST} Request all parameters of this component. After this request, all parameters are emitted. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID - +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### PARAM_VALUE (22) {#PARAM_VALUE} 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. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html -Field Name | Type | Values | Description ---- | --- | --- | --- -param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_value | `float` | | Onboard parameter value -param_type | `uint8_t` | [MAV_PARAM_TYPE](#MAV_PARAM_TYPE) | Onboard parameter type. -param_count | `uint16_t` | | Total number of onboard parameters -param_index | `uint16_t` | | Index of this onboard parameter - +| Field Name | Type | Values | Description | +| ----------- | ---------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_value | `float` | | Onboard parameter value | +| param_type | `uint8_t` | [MAV_PARAM_TYPE](#MAV_PARAM_TYPE) | Onboard parameter type. | +| param_count | `uint16_t` | | Total number of onboard parameters | +| param_index | `uint16_t` | | Index of this onboard parameter | ### PARAM_SET (23) {#PARAM_SET} @@ -219,14 +208,13 @@ Set a parameter value (write new value to permanent storage). The receiving component should acknowledge the new parameter value by broadcasting a [PARAM_VALUE](#PARAM_VALUE) message (broadcasting ensures that multiple GCS all have an up-to-date list of all parameters). If the sending GCS did not receive a [PARAM_VALUE](#PARAM_VALUE) within its timeout time, it should re-send the [PARAM_SET](#PARAM_SET) message. The parameter microservice is documented at https://mavlink.io/en/services/parameter.html. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_value | `float` | | Onboard parameter value -param_type | `uint8_t` | [MAV_PARAM_TYPE](#MAV_PARAM_TYPE) | Onboard parameter type. - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| param_id | `char[16]` | | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_value | `float` | | Onboard parameter value | +| param_type | `uint8_t` | [MAV_PARAM_TYPE](#MAV_PARAM_TYPE) | Onboard parameter type. | ### GPS_RAW_INT (24) {#GPS_RAW_INT} @@ -234,258 +222,243 @@ 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_INT](#GLOBAL_POSITION_INT) for the global position estimate. -Field Name | Type | Units | Multiplier | Values | Description ---- | --- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -fix_type | `uint8_t` | | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS fix type. -lat | `int32_t` | degE7 | | | Latitude (WGS84, EGM96 ellipsoid) -lon | `int32_t` | degE7 | | | Longitude (WGS84, EGM96 ellipsoid) -alt | `int32_t` | mm | | | Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. -eph | `uint16_t` | | 1E-2 | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -epv | `uint16_t` | | 1E-2 | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -vel | `uint16_t` | cm/s | | invalid:UINT16_MAX | GPS ground speed. If unknown, set to: UINT16_MAX -cog | `uint16_t` | cdeg | | invalid:UINT16_MAX | Course over ground (NOT heading, but direction of movement) in degrees * 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX -satellites_visible | `uint8_t` | | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX -alt_ellipsoid ++ | `int32_t` | mm | | | Altitude (above WGS84, EGM96 ellipsoid). Positive for up. -h_acc ++ | `uint32_t` | mm | | | Position uncertainty. -v_acc ++ | `uint32_t` | mm | | | Altitude uncertainty. -vel_acc ++ | `uint32_t` | mm/s | | | Speed uncertainty. -hdg_acc ++ | `uint32_t` | degE5 | | | Heading / track uncertainty -yaw ++ | `uint16_t` | cdeg | | invalid:0 | Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. - +| Field Name | Type | Units | Multiplier | Values | Description | +| ----------------------------------------------------------------------------- | ---------- | ----- | ---------- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| fix_type | `uint8_t` | | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS fix type. | +| lat | `int32_t` | degE7 | | | Latitude (WGS84, EGM96 ellipsoid) | +| lon | `int32_t` | degE7 | | | Longitude (WGS84, EGM96 ellipsoid) | +| alt | `int32_t` | mm | | | Altitude (MSL). Positive for up. Note that virtually all GPS modules provide the MSL altitude in addition to the WGS84 altitude. | +| eph | `uint16_t` | | 1E-2 | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| epv | `uint16_t` | | 1E-2 | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| vel | `uint16_t` | cm/s | | invalid:UINT16_MAX | GPS ground speed. If unknown, set to: UINT16_MAX | +| cog | `uint16_t` | cdeg | | invalid:UINT16_MAX | Course over ground (NOT heading, but direction of movement) in degrees \* 100, 0.0..359.99 degrees. If unknown, set to: UINT16_MAX | +| satellites_visible | `uint8_t` | | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX | +| alt_ellipsoid ++ | `int32_t` | mm | | | Altitude (above WGS84, EGM96 ellipsoid). Positive for up. | +| h_acc ++ | `uint32_t` | mm | | | Position uncertainty. | +| v_acc ++ | `uint32_t` | mm | | | Altitude uncertainty. | +| vel_acc ++ | `uint32_t` | mm/s | | | Speed uncertainty. | +| hdg_acc ++ | `uint32_t` | degE5 | | | Heading / track uncertainty | +| yaw ++ | `uint16_t` | cdeg | | invalid:0 | Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. | ### GPS_STATUS (25) {#GPS_STATUS} 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_INT](#GLOBAL_POSITION_INT) for the global position estimate. This message can contain information for up to 20 satellites. -Field Name | Type | Units | Multiplier | Description ---- | --- | --- | --- | --- -satellites_visible | `uint8_t` | | | Number of satellites visible -satellite_prn | `uint8_t[20]` | | | Global satellite ID -satellite_used | `uint8_t[20]` | | | 0: Satellite not used, 1: used for localization -satellite_elevation | `uint8_t[20]` | deg | | Elevation (0: right on top of receiver, 90: on the horizon) of satellite -satellite_azimuth | `uint8_t[20]` | deg | 360/255 | Direction of satellite, 0: 0 deg, 255: 360 deg. -satellite_snr | `uint8_t[20]` | dB | | Signal to noise ratio of satellite - +| Field Name | Type | Units | Multiplier | Description | +| ------------------- | ------------- | ----- | ---------- | ------------------------------------------------------------------------ | +| satellites_visible | `uint8_t` | | | Number of satellites visible | +| satellite_prn | `uint8_t[20]` | | | Global satellite ID | +| satellite_used | `uint8_t[20]` | | | 0: Satellite not used, 1: used for localization | +| satellite_elevation | `uint8_t[20]` | deg | | Elevation (0: right on top of receiver, 90: on the horizon) of satellite | +| satellite_azimuth | `uint8_t[20]` | deg | 360/255 | Direction of satellite, 0: 0 deg, 255: 360 deg. | +| satellite_snr | `uint8_t[20]` | dB | | Signal to noise ratio of satellite | ### SCALED_IMU (26) {#SCALED_IMU} The RAW IMU readings for the usual 9DOF sensor setup. This message should contain the scaled values to the described units -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -xacc | `int16_t` | mG | X acceleration -yacc | `int16_t` | mG | Y acceleration -zacc | `int16_t` | mG | Z acceleration -xgyro | `int16_t` | mrad/s | Angular speed around X axis -ygyro | `int16_t` | mrad/s | Angular speed around Y axis -zgyro | `int16_t` | mrad/s | Angular speed around Z axis -xmag | `int16_t` | mgauss | X Magnetic field -ymag | `int16_t` | mgauss | Y Magnetic field -zmag | `int16_t` | mgauss | Z Magnetic field -temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ------ | ---------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| xacc | `int16_t` | mG | X acceleration | +| yacc | `int16_t` | mG | Y acceleration | +| zacc | `int16_t` | mG | Z acceleration | +| xgyro | `int16_t` | mrad/s | Angular speed around X axis | +| ygyro | `int16_t` | mrad/s | Angular speed around Y axis | +| zgyro | `int16_t` | mrad/s | Angular speed around Z axis | +| xmag | `int16_t` | mgauss | X Magnetic field | +| ymag | `int16_t` | mgauss | Y Magnetic field | +| zmag | `int16_t` | mgauss | Z Magnetic field | +| temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). | ### RAW_IMU (27) {#RAW_IMU} The RAW IMU readings for a 9DOF sensor, which is identified by the id (default IMU1). This message should always contain the true raw values without any scaling to allow data capture and system debugging. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -xacc | `int16_t` | | X acceleration (raw) -yacc | `int16_t` | | Y acceleration (raw) -zacc | `int16_t` | | Z acceleration (raw) -xgyro | `int16_t` | | Angular speed around X axis (raw) -ygyro | `int16_t` | | Angular speed around Y axis (raw) -zgyro | `int16_t` | | Angular speed around Z axis (raw) -xmag | `int16_t` | | X Magnetic field (raw) -ymag | `int16_t` | | Y Magnetic field (raw) -zmag | `int16_t` | | Z Magnetic field (raw) -id ++ | `uint8_t` | | Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| xacc | `int16_t` | | X acceleration (raw) | +| yacc | `int16_t` | | Y acceleration (raw) | +| zacc | `int16_t` | | Z acceleration (raw) | +| xgyro | `int16_t` | | Angular speed around X axis (raw) | +| ygyro | `int16_t` | | Angular speed around Y axis (raw) | +| zgyro | `int16_t` | | Angular speed around Z axis (raw) | +| xmag | `int16_t` | | X Magnetic field (raw) | +| ymag | `int16_t` | | Y Magnetic field (raw) | +| zmag | `int16_t` | | Z Magnetic field (raw) | +| id ++ | `uint8_t` | | Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). | ### RAW_PRESSURE (28) {#RAW_PRESSURE} 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 | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -press_abs | `int16_t` | | Absolute pressure (raw) -press_diff1 | `int16_t` | | Differential pressure 1 (raw, 0 if nonexistent) -press_diff2 | `int16_t` | | Differential pressure 2 (raw, 0 if nonexistent) -temperature | `int16_t` | | Raw Temperature measurement (raw) - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| press_abs | `int16_t` | | Absolute pressure (raw) | +| press_diff1 | `int16_t` | | Differential pressure 1 (raw, 0 if nonexistent) | +| press_diff2 | `int16_t` | | Differential pressure 2 (raw, 0 if nonexistent) | +| temperature | `int16_t` | | Raw Temperature measurement (raw) | ### SCALED_PRESSURE (29) {#SCALED_PRESSURE} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -press_abs | `float` | hPa | Absolute pressure -press_diff | `float` | hPa | Differential pressure 1 -temperature | `int16_t` | cdegC | Absolute pressure temperature -temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------------- | ---------- | ----- | ---------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| press_abs | `float` | hPa | Absolute pressure | +| press_diff | `float` | hPa | Differential pressure 1 | +| temperature | `int16_t` | cdegC | Absolute pressure temperature | +| temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. | ### ATTITUDE (30) {#ATTITUDE} The attitude in the aeronautical frame (right-handed, Z-down, Y-right, X-front, ZYX, intrinsic). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -roll | `float` | rad | Roll angle (-pi..+pi) -pitch | `float` | rad | Pitch angle (-pi..+pi) -yaw | `float` | rad | Yaw angle (-pi..+pi) -rollspeed | `float` | rad/s | Roll angular speed -pitchspeed | `float` | rad/s | Pitch angular speed -yawspeed | `float` | rad/s | Yaw angular speed - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ----------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| roll | `float` | rad | Roll angle (-pi..+pi) | +| pitch | `float` | rad | Pitch angle (-pi..+pi) | +| yaw | `float` | rad | Yaw angle (-pi..+pi) | +| rollspeed | `float` | rad/s | Roll angular speed | +| pitchspeed | `float` | rad/s | Pitch angular speed | +| yawspeed | `float` | rad/s | Yaw angular speed | ### ATTITUDE_QUATERNION (31) {#ATTITUDE_QUATERNION} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -q1 | `float` | | Quaternion component 1, w (1 in null-rotation) -q2 | `float` | | Quaternion component 2, x (0 in null-rotation) -q3 | `float` | | Quaternion component 3, y (0 in null-rotation) -q4 | `float` | | Quaternion component 4, z (0 in null-rotation) -rollspeed | `float` | rad/s | Roll angular speed -pitchspeed | `float` | rad/s | Pitch angular speed -yawspeed | `float` | rad/s | Yaw angular speed -repr_offset_q ++ | `float[4]` | | Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. - +| Field Name | Type | Units | Description | +| ----------------------------------------------------------------------------- | ---------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| q1 | `float` | | Quaternion component 1, w (1 in null-rotation) | +| q2 | `float` | | Quaternion component 2, x (0 in null-rotation) | +| q3 | `float` | | Quaternion component 3, y (0 in null-rotation) | +| q4 | `float` | | Quaternion component 4, z (0 in null-rotation) | +| rollspeed | `float` | rad/s | Roll angular speed | +| pitchspeed | `float` | rad/s | Pitch angular speed | +| yawspeed | `float` | rad/s | Yaw angular speed | +| repr_offset_q ++ | `float[4]` | | Rotation offset by which the attitude quaternion and angular speed vector should be rotated for user display (quaternion with [w, x, y, z] order, zero-rotation is [1, 0, 0, 0], send [0, 0, 0, 0] if field not supported). This field is intended for systems in which the reference attitude may change during flight. For example, tailsitters VTOLs rotate their reference attitude by 90 degrees between hover mode and fixed wing mode, thus repr_offset_q is equal to [1, 0, 0, 0] in hover mode and equal to [0.7071, 0, 0.7071, 0] in fixed wing mode. | ### LOCAL_POSITION_NED (32) {#LOCAL_POSITION_NED} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -x | `float` | m | X Position -y | `float` | m | Y Position -z | `float` | m | Z Position -vx | `float` | m/s | X Speed -vy | `float` | m/s | Y Speed -vz | `float` | m/s | Z Speed - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ----------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| x | `float` | m | X Position | +| y | `float` | m | Y Position | +| z | `float` | m | Z Position | +| vx | `float` | m/s | X Speed | +| vy | `float` | m/s | Y Speed | +| vz | `float` | m/s | Z Speed | ### GLOBAL_POSITION_INT (33) — \[from: [standard](../messages/standard.md#GLOBAL_POSITION_INT)\] {#GLOBAL_POSITION_INT} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -lat | `int32_t` | degE7 | Latitude, expressed -lon | `int32_t` | degE7 | Longitude, expressed -alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. -relative_alt | `int32_t` | mm | Altitude above home -vx | `int16_t` | cm/s | Ground X Speed (Latitude, positive north) -vy | `int16_t` | cm/s | Ground Y Speed (Longitude, positive east) -vz | `int16_t` | cm/s | Ground Z Speed (Altitude, positive down) -hdg | `uint16_t` | cdeg | Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | -------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| lat | `int32_t` | degE7 | Latitude, expressed | +| lon | `int32_t` | degE7 | Longitude, expressed | +| alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. | +| relative_alt | `int32_t` | mm | Altitude above home | +| vx | `int16_t` | cm/s | Ground X Speed (Latitude, positive north) | +| vy | `int16_t` | cm/s | Ground Y Speed (Longitude, positive east) | +| vz | `int16_t` | cm/s | Ground Z Speed (Altitude, positive down) | +| hdg | `uint16_t` | cdeg | Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX | ### RC_CHANNELS_SCALED (34) {#RC_CHANNELS_SCALED} The scaled values of the RC channels received: (-100%) -10000, (0%) 0, (100%) 10000. Channels that are inactive should be set to INT16_MAX. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. -chan1_scaled | `int16_t` | | RC channel 1 value scaled. -chan2_scaled | `int16_t` | | RC channel 2 value scaled. -chan3_scaled | `int16_t` | | RC channel 3 value scaled. -chan4_scaled | `int16_t` | | RC channel 4 value scaled. -chan5_scaled | `int16_t` | | RC channel 5 value scaled. -chan6_scaled | `int16_t` | | RC channel 6 value scaled. -chan7_scaled | `int16_t` | | RC channel 7 value scaled. -chan8_scaled | `int16_t` | | RC channel 8 value scaled. -rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | --------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. | +| chan1_scaled | `int16_t` | | RC channel 1 value scaled. | +| chan2_scaled | `int16_t` | | RC channel 2 value scaled. | +| chan3_scaled | `int16_t` | | RC channel 3 value scaled. | +| chan4_scaled | `int16_t` | | RC channel 4 value scaled. | +| chan5_scaled | `int16_t` | | RC channel 5 value scaled. | +| chan6_scaled | `int16_t` | | RC channel 6 value scaled. | +| chan7_scaled | `int16_t` | | RC channel 7 value scaled. | +| chan8_scaled | `int16_t` | | RC channel 8 value scaled. | +| rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | ### RC_CHANNELS_RAW (35) {#RC_CHANNELS_RAW} The RAW values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. -chan1_raw | `uint16_t` | us | RC channel 1 value. -chan2_raw | `uint16_t` | us | RC channel 2 value. -chan3_raw | `uint16_t` | us | RC channel 3 value. -chan4_raw | `uint16_t` | us | RC channel 4 value. -chan5_raw | `uint16_t` | us | RC channel 5 value. -chan6_raw | `uint16_t` | us | RC channel 6 value. -chan7_raw | `uint16_t` | us | RC channel 7 value. -chan8_raw | `uint16_t` | us | RC channel 8 value. -rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | --------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX. | +| chan1_raw | `uint16_t` | us | RC channel 1 value. | +| chan2_raw | `uint16_t` | us | RC channel 2 value. | +| chan3_raw | `uint16_t` | us | RC channel 3 value. | +| chan4_raw | `uint16_t` | us | RC channel 4 value. | +| chan5_raw | `uint16_t` | us | RC channel 5 value. | +| chan6_raw | `uint16_t` | us | RC channel 6 value. | +| chan7_raw | `uint16_t` | us | RC channel 7 value. | +| chan8_raw | `uint16_t` | us | RC channel 8 value. | +| rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | ### SERVO_OUTPUT_RAW (36) {#SERVO_OUTPUT_RAW} Superseded by [ACTUATOR_OUTPUT_STATUS](#ACTUATOR_OUTPUT_STATUS). The RAW values of the servo outputs (for RC input from the remote, use the [RC_CHANNELS](#RC_CHANNELS) messages). The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint32_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -servo1_raw | `uint16_t` | us | Servo output 1 value -servo2_raw | `uint16_t` | us | Servo output 2 value -servo3_raw | `uint16_t` | us | Servo output 3 value -servo4_raw | `uint16_t` | us | Servo output 4 value -servo5_raw | `uint16_t` | us | Servo output 5 value -servo6_raw | `uint16_t` | us | Servo output 6 value -servo7_raw | `uint16_t` | us | Servo output 7 value -servo8_raw | `uint16_t` | us | Servo output 8 value -servo9_raw ++ | `uint16_t` | us | Servo output 9 value -servo10_raw ++ | `uint16_t` | us | Servo output 10 value -servo11_raw ++ | `uint16_t` | us | Servo output 11 value -servo12_raw ++ | `uint16_t` | us | Servo output 12 value -servo13_raw ++ | `uint16_t` | us | Servo output 13 value -servo14_raw ++ | `uint16_t` | us | Servo output 14 value -servo15_raw ++ | `uint16_t` | us | Servo output 15 value -servo16_raw ++ | `uint16_t` | us | Servo output 16 value - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint32_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| port | `uint8_t` | | Servo output port (set of 8 outputs = 1 port). Flight stacks running on Pixhawk should use: 0 = MAIN, 1 = AUX.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| servo1_raw | `uint16_t` | us | Servo output 1 value | +| servo2_raw | `uint16_t` | us | Servo output 2 value | +| servo3_raw | `uint16_t` | us | Servo output 3 value | +| servo4_raw | `uint16_t` | us | Servo output 4 value | +| servo5_raw | `uint16_t` | us | Servo output 5 value | +| servo6_raw | `uint16_t` | us | Servo output 6 value | +| servo7_raw | `uint16_t` | us | Servo output 7 value | +| servo8_raw | `uint16_t` | us | Servo output 8 value | +| servo9_raw ++ | `uint16_t` | us | Servo output 9 value | +| servo10_raw ++ | `uint16_t` | us | Servo output 10 value | +| servo11_raw ++ | `uint16_t` | us | Servo output 11 value | +| servo12_raw ++ | `uint16_t` | us | Servo output 12 value | +| servo13_raw ++ | `uint16_t` | us | Servo output 13 value | +| servo14_raw ++ | `uint16_t` | us | Servo output 14 value | +| servo15_raw ++ | `uint16_t` | us | Servo output 15 value | +| servo16_raw ++ | `uint16_t` | us | Servo output 16 value | ### MISSION_REQUEST_PARTIAL_LIST (37) {#MISSION_REQUEST_PARTIAL_LIST} Request a partial list of mission items from the system/component. https://mavlink.io/en/services/mission.html. If start and end index are the same, just send one waypoint. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -start_index | `int16_t` | | Start index -end_index | `int16_t` | | End index, -1 by default (-1: send list to end). Else a valid index of the list -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | --------- | ------------------------------------- | ------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| start_index | `int16_t` | | Start index | +| end_index | `int16_t` | | End index, -1 by default (-1: send list to end). Else a valid index of the list | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_WRITE_PARTIAL_LIST (38) {#MISSION_WRITE_PARTIAL_LIST} 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 | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -start_index | `int16_t` | | Start index. Must be smaller / equal to the largest index of the current onboard list. -end_index | `int16_t` | | End index, equal or greater than start index. -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | --------- | ------------------------------------- | -------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| start_index | `int16_t` | | Start index. Must be smaller / equal to the largest index of the current onboard list. | +| end_index | `int16_t` | | End index, equal or greater than start index. | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_ITEM (39) — [DEP] {#MISSION_ITEM} @@ -496,24 +469,23 @@ 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). NaN may be used to indicate an optional/default value (e.g. to use the system's current latitude or yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -seq | `uint16_t` | | Sequence -frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the waypoint. -command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the waypoint. -current | `uint8_t` | | false:0, true:1 -autocontinue | `uint8_t` | | Autocontinue to next waypoint. 0: false, 1: true. Set false to pause mission after the item completes. -param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum -param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum -param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum -param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum -x | `float` | | PARAM5 / local: X coordinate, global: latitude -y | `float` | | PARAM6 / local: Y coordinate, global: longitude -z | `float` | | PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| seq | `uint16_t` | | Sequence | +| frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the waypoint. | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the waypoint. | +| current | `uint8_t` | | false:0, true:1 | +| autocontinue | `uint8_t` | | Autocontinue to next waypoint. 0: false, 1: true. Set false to pause mission after the item completes. | +| param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum | +| param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum | +| param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum | +| param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum | +| x | `float` | | PARAM5 / local: X coordinate, global: latitude | +| y | `float` | | PARAM6 / local: Y coordinate, global: longitude | +| z | `float` | | PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame). | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_REQUEST (40) — [DEP] {#MISSION_REQUEST} @@ -521,13 +493,12 @@ z | `float` | | PARAM7 / local: Z coordinate, global: altitude (relative or abso 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](#MISSION_ITEM) message. https://mavlink.io/en/services/mission.html -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -seq | `uint16_t` | | Sequence -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ------------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| seq | `uint16_t` | | Sequence | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_SET_CURRENT (41) — [SUP] {#MISSION_SET_CURRENT} @@ -541,12 +512,11 @@ This message may trigger a mission state-machine change on some systems: for exa If the system is in mission mode, on those systems this command might therefore start, restart or resume the mission. If the system is not in mission mode this message must not trigger a switch to mission mode. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -seq | `uint16_t` | Sequence - +| Field Name | Type | Description | +| ---------------- | ---------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| seq | `uint16_t` | Sequence | ### MISSION_CURRENT (42) {#MISSION_CURRENT} @@ -554,73 +524,67 @@ Message that announces the sequence number of the current target mission item (t This message should be streamed all the time (nominally at 1Hz). This message should be emitted following a call to [MAV_CMD_DO_SET_MISSION_CURRENT](#MAV_CMD_DO_SET_MISSION_CURRENT) or [MISSION_SET_CURRENT](#MISSION_SET_CURRENT). -Field Name | Type | Values | Description ---- | --- | --- | --- -seq | `uint16_t` | | Sequence -total ++ | `uint16_t` | invalid:UINT16_MAX | Total number of mission items on vehicle (on last item, sequence == total). If the autopilot stores its home location as part of the mission this will be excluded from the total. 0: Not supported, UINT16_MAX if no mission is present on the vehicle. -mission_state ++ | `uint8_t` | invalid:0 [MISSION_STATE](#MISSION_STATE) | Mission state machine state. [MISSION_STATE_UNKNOWN](#MISSION_STATE_UNKNOWN) if state reporting not supported. -mission_mode ++ | `uint8_t` | invalid:0 | Vehicle is in a mode that can execute mission items or suspended. 0: Unknown, 1: In mission mode, 2: Suspended (not in mission mode). -mission_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle mission plan, or 0 if IDs are not supported or there is no mission loaded. GCS can use this to track changes to the mission plan type. The same value is returned on mission upload (in the [MISSION_ACK](#MISSION_ACK)). -fence_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle fence plan, or 0 if IDs are not supported or there is no fence loaded. GCS can use this to track changes to the fence plan type. The same value is returned on fence upload (in the [MISSION_ACK](#MISSION_ACK)). -rally_points_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle rally point plan, or 0 if IDs are not supported or there are no rally points loaded. GCS can use this to track changes to the rally point plan type. The same value is returned on rally point upload (in the [MISSION_ACK](#MISSION_ACK)). - +| Field Name | Type | Values | Description | +| ------------------------------------------------------------------------------- | ---------- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| seq | `uint16_t` | | Sequence | +| total ++ | `uint16_t` | invalid:UINT16_MAX | Total number of mission items on vehicle (on last item, sequence == total). If the autopilot stores its home location as part of the mission this will be excluded from the total. 0: Not supported, UINT16_MAX if no mission is present on the vehicle. | +| mission_state ++ | `uint8_t` | invalid:0 [MISSION_STATE](#MISSION_STATE) | Mission state machine state. [MISSION_STATE_UNKNOWN](#MISSION_STATE_UNKNOWN) if state reporting not supported. | +| mission_mode ++ | `uint8_t` | invalid:0 | Vehicle is in a mode that can execute mission items or suspended. 0: Unknown, 1: In mission mode, 2: Suspended (not in mission mode). | +| mission_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle mission plan, or 0 if IDs are not supported or there is no mission loaded. GCS can use this to track changes to the mission plan type. The same value is returned on mission upload (in the [MISSION_ACK](#MISSION_ACK)). | +| fence_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle fence plan, or 0 if IDs are not supported or there is no fence loaded. GCS can use this to track changes to the fence plan type. The same value is returned on fence upload (in the [MISSION_ACK](#MISSION_ACK)). | +| rally_points_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle rally point plan, or 0 if IDs are not supported or there are no rally points loaded. GCS can use this to track changes to the rally point plan type. The same value is returned on rally point upload (in the [MISSION_ACK](#MISSION_ACK)). | ### MISSION_REQUEST_LIST (43) {#MISSION_REQUEST_LIST} Request the overall list of mission items from the system/component. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | --------- | ------------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_COUNT (44) {#MISSION_COUNT} This message is emitted as response to [MISSION_REQUEST_LIST](#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 waypoints. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -count | `uint16_t` | | Number of mission items in the sequence -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. -opaque_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle mission, fence, or rally point plan (on download from vehicle).
This field is used when downloading a plan from a vehicle to a GCS.
0 on upload to the vehicle from GCS.
0 if plan ids are not supported.
The current on-vehicle plan ids are streamed in `[MISSION_CURRENT](#MISSION_CURRENT)`, allowing a GCS to determine if any part of the plan has changed and needs to be re-uploaded.
The ids are recalculated by the vehicle when any part of the on-vehicle plan changes (when a new plan is uploaded, the vehicle returns the new id to the GCS in [MISSION_ACK](#MISSION_ACK)). - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| count | `uint16_t` | | Number of mission items in the sequence | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | +| opaque_id ++ | `uint32_t` | invalid:0 | Id of current on-vehicle mission, fence, or rally point plan (on download from vehicle).
This field is used when downloading a plan from a vehicle to a GCS.
0 on upload to the vehicle from GCS.
0 if plan ids are not supported.
The current on-vehicle plan ids are streamed in `[MISSION_CURRENT](#MISSION_CURRENT)`, allowing a GCS to determine if any part of the plan has changed and needs to be re-uploaded.
The ids are recalculated by the vehicle when any part of the on-vehicle plan changes (when a new plan is uploaded, the vehicle returns the new id to the GCS in [MISSION_ACK](#MISSION_ACK)). | ### MISSION_CLEAR_ALL (45) {#MISSION_CLEAR_ALL} Delete all mission items at once. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | --------- | ------------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### MISSION_ITEM_REACHED (46) {#MISSION_ITEM_REACHED} 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 waypoint. -Field Name | Type | Description ---- | --- | --- -seq | `uint16_t` | Sequence - +| Field Name | Type | Description | +| ---------- | ---------- | ----------- | +| seq | `uint16_t` | Sequence | ### MISSION_ACK (47) {#MISSION_ACK} Acknowledgment message during waypoint 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 | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -type | `uint8_t` | [MAV_MISSION_RESULT](#MAV_MISSION_RESULT) | Mission result. -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. -opaque_id ++ | `uint32_t` | invalid:0 | Id of new on-vehicle mission, fence, or rally point plan (on upload to vehicle).
The id is calculated and returned by a vehicle when a new plan is uploaded by a GCS.
The only requirement on the id is that it must change when there is any change to the on-vehicle plan type (there is no requirement that the id be globally unique).
0 on download from the vehicle to the GCS (on download the ID is set in [MISSION_COUNT](#MISSION_COUNT)).
0 if plan ids are not supported.
The current on-vehicle plan ids are streamed in `[MISSION_CURRENT](#MISSION_CURRENT)`, allowing a GCS to determine if any part of the plan has changed and needs to be re-uploaded. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| type | `uint8_t` | [MAV_MISSION_RESULT](#MAV_MISSION_RESULT) | Mission result. | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | +| opaque_id ++ | `uint32_t` | invalid:0 | Id of new on-vehicle mission, fence, or rally point plan (on upload to vehicle).
The id is calculated and returned by a vehicle when a new plan is uploaded by a GCS.
The only requirement on the id is that it must change when there is any change to the on-vehicle plan type (there is no requirement that the id be globally unique).
0 on download from the vehicle to the GCS (on download the ID is set in [MISSION_COUNT](#MISSION_COUNT)).
0 if plan ids are not supported.
The current on-vehicle plan ids are streamed in `[MISSION_CURRENT](#MISSION_CURRENT)`, allowing a GCS to determine if any part of the plan has changed and needs to be re-uploaded. | ### SET_GPS_GLOBAL_ORIGIN (48) — [SUP] {#SET_GPS_GLOBAL_ORIGIN} @@ -628,199 +592,187 @@ type | `uint8_t` | [MAV_MISSION_RESULT](#MAV_MISSION_RESULT) | Mission result. Sets the GPS coordinates of the vehicle local origin (0,0,0) position. Vehicle should emit [GPS_GLOBAL_ORIGIN](#GPS_GLOBAL_ORIGIN) irrespective of whether the origin is changed. This enables transform between the local coordinate frame and the global (GPS) coordinate frame, which may be necessary when (for example) indoor and outdoor settings are connected and the MAV should move from in- to outdoor. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -latitude | `int32_t` | degE7 | Latitude (WGS84) -longitude | `int32_t` | degE7 | Longitude (WGS84) -altitude | `int32_t` | mm | Altitude (MSL). Positive for up. -time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ------------------------------------------------------------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| latitude | `int32_t` | degE7 | Latitude (WGS84) | +| longitude | `int32_t` | degE7 | Longitude (WGS84) | +| altitude | `int32_t` | mm | Altitude (MSL). Positive for up. | +| time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### GPS_GLOBAL_ORIGIN (49) {#GPS_GLOBAL_ORIGIN} Publishes the GPS coordinates of the vehicle local origin (0,0,0) position. Emitted whenever a new GPS-Local position mapping is requested or set - e.g. following [SET_GPS_GLOBAL_ORIGIN](#SET_GPS_GLOBAL_ORIGIN) message. -Field Name | Type | Units | Description ---- | --- | --- | --- -latitude | `int32_t` | degE7 | Latitude (WGS84) -longitude | `int32_t` | degE7 | Longitude (WGS84) -altitude | `int32_t` | mm | Altitude (MSL). Positive for up. -time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ------------------------------------------------------------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| latitude | `int32_t` | degE7 | Latitude (WGS84) | +| longitude | `int32_t` | degE7 | Longitude (WGS84) | +| altitude | `int32_t` | mm | Altitude (MSL). Positive for up. | +| time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### PARAM_MAP_RC (50) {#PARAM_MAP_RC} Bind a RC channel to a parameter. The parameter should change according to the RC channel value. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -param_id | `char[16]` | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_index | `int16_t` | Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. -parameter_rc_channel_index | `uint8_t` | Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. -param_value0 | `float` | Initial parameter value -scale | `float` | Scale, maps the RC range [-1, 1] to a parameter value -param_value_min | `float` | Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) -param_value_max | `float` | Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) - +| Field Name | Type | Description | +| -------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| param_id | `char[16]` | Onboard parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_index | `int16_t` | Parameter index. Send -1 to use the param ID field as identifier (else the param id will be ignored), send -2 to disable any existing map for this rc_channel_index. | +| parameter_rc_channel_index | `uint8_t` | Index of parameter RC channel. Not equal to the RC channel id. Typically corresponds to a potentiometer-knob on the RC. | +| param_value0 | `float` | Initial parameter value | +| scale | `float` | Scale, maps the RC range [-1, 1] to a parameter value | +| param_value_min | `float` | Minimum param value. The protocol does not define if this overwrites an onboard minimum value. (Depends on implementation) | +| param_value_max | `float` | Maximum param value. The protocol does not define if this overwrites an onboard maximum value. (Depends on implementation) | ### MISSION_REQUEST_INT (51) {#MISSION_REQUEST_INT} 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](#MISSION_ITEM_INT) message. https://mavlink.io/en/services/mission.html -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -seq | `uint16_t` | | Sequence -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ------------------------------------- | ------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| seq | `uint16_t` | | Sequence | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### SAFETY_SET_ALLOWED_AREA (54) {#SAFETY_SET_ALLOWED_AREA} 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/waypoints to accept and which to reject. Safety areas are often enforced by national or competition regulations. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. -p1x | `float` | m | | x position 1 / Latitude 1 -p1y | `float` | m | | y position 1 / Longitude 1 -p1z | `float` | m | | z position 1 / Altitude 1 -p2x | `float` | m | | x position 2 / Latitude 2 -p2y | `float` | m | | y position 2 / Longitude 2 -p2z | `float` | m | | z position 2 / Altitude 2 - +| Field Name | Type | Units | Values | Description | +| ---------------- | --------- | ----- | ----------------------- | ------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. | +| p1x | `float` | m | | x position 1 / Latitude 1 | +| p1y | `float` | m | | y position 1 / Longitude 1 | +| p1z | `float` | m | | z position 1 / Altitude 1 | +| p2x | `float` | m | | x position 2 / Latitude 2 | +| p2y | `float` | m | | y position 2 / Longitude 2 | +| p2z | `float` | m | | z position 2 / Altitude 2 | ### SAFETY_ALLOWED_AREA (55) {#SAFETY_ALLOWED_AREA} Read out the safety zone the MAV currently assumes. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. -p1x | `float` | m | | x position 1 / Latitude 1 -p1y | `float` | m | | y position 1 / Longitude 1 -p1z | `float` | m | | z position 1 / Altitude 1 -p2x | `float` | m | | x position 2 / Latitude 2 -p2y | `float` | m | | y position 2 / Longitude 2 -p2z | `float` | m | | z position 2 / Altitude 2 - +| Field Name | Type | Units | Values | Description | +| ---------- | --------- | ----- | ----------------------- | ------------------------------------------------------------------------------------------------------------- | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame. Can be either global, GPS, right-handed with Z axis up or local, right handed, Z axis down. | +| p1x | `float` | m | | x position 1 / Latitude 1 | +| p1y | `float` | m | | y position 1 / Longitude 1 | +| p1z | `float` | m | | z position 1 / Altitude 1 | +| p2x | `float` | m | | x position 2 / Latitude 2 | +| p2y | `float` | m | | y position 2 / Longitude 2 | +| p2z | `float` | m | | z position 2 / Altitude 2 | ### ATTITUDE_QUATERNION_COV (61) {#ATTITUDE_QUATERNION_COV} 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 | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -q | `float[4]` | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) -rollspeed | `float` | rad/s | Roll angular speed -pitchspeed | `float` | rad/s | Pitch angular speed -yawspeed | `float` | rad/s | Yaw angular speed -covariance | `float[9]` | | Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| q | `float[4]` | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) | +| rollspeed | `float` | rad/s | Roll angular speed | +| pitchspeed | `float` | rad/s | Pitch angular speed | +| yawspeed | `float` | rad/s | Yaw angular speed | +| covariance | `float[9]` | | Row-major representation of a 3x3 attitude covariance matrix (states: roll, pitch, yaw; first three entries are the first ROW, next three entries are the second row, etc.). If unknown, assign NaN value to first element in the array. | ### NAV_CONTROLLER_OUTPUT (62) {#NAV_CONTROLLER_OUTPUT} The state of the navigation and position controller. -Field Name | Type | Units | Description ---- | --- | --- | --- -nav_roll | `float` | deg | Current desired roll -nav_pitch | `float` | deg | Current desired pitch -nav_bearing | `int16_t` | deg | Current desired heading -target_bearing | `int16_t` | deg | Bearing to current waypoint/target -wp_dist | `uint16_t` | m | Distance to active waypoint -alt_error | `float` | m | Current altitude error -aspd_error | `float` | m/s | Current airspeed error -xtrack_error | `float` | m | Current crosstrack error on x-y plane - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | ------------------------------------- | +| nav_roll | `float` | deg | Current desired roll | +| nav_pitch | `float` | deg | Current desired pitch | +| nav_bearing | `int16_t` | deg | Current desired heading | +| target_bearing | `int16_t` | deg | Bearing to current waypoint/target | +| wp_dist | `uint16_t` | m | Distance to active waypoint | +| alt_error | `float` | m | Current altitude error | +| aspd_error | `float` | m/s | Current airspeed error | +| xtrack_error | `float` | m | Current crosstrack error on x-y plane | ### GLOBAL_POSITION_INT_COV (63) {#GLOBAL_POSITION_INT_COV} -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](#GLOBAL_POSITION_INT) message for a minimal subset. - -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -estimator_type | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Class id of the estimator this estimate originated from. -lat | `int32_t` | degE7 | | Latitude -lon | `int32_t` | degE7 | | Longitude -alt | `int32_t` | mm | | Altitude in meters above MSL -relative_alt | `int32_t` | mm | | Altitude above ground -vx | `float` | m/s | | Ground X Speed (Latitude) -vy | `float` | m/s | | Ground Y Speed (Longitude) -vz | `float` | m/s | | Ground Z Speed (Altitude) -covariance | `float[36]` | | invalid:[NaN:] | Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. - +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](#GLOBAL_POSITION_INT) message for a minimal subset. + +| Field Name | Type | Units | Values | Description | +| -------------- | ----------- | ----- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| estimator_type | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Class id of the estimator this estimate originated from. | +| lat | `int32_t` | degE7 | | Latitude | +| lon | `int32_t` | degE7 | | Longitude | +| alt | `int32_t` | mm | | Altitude in meters above MSL | +| relative_alt | `int32_t` | mm | | Altitude above ground | +| vx | `float` | m/s | | Ground X Speed (Latitude) | +| vy | `float` | m/s | | Ground Y Speed (Longitude) | +| vz | `float` | m/s | | Ground Z Speed (Altitude) | +| covariance | `float[36]` | | invalid:[NaN:] | Row-major representation of a 6x6 position and velocity 6x6 cross-covariance matrix (states: lat, lon, alt, vx, vy, vz; first six entries are the first ROW, next six entries are the second row, etc.). If unknown, assign NaN value to first element in the array. | ### LOCAL_POSITION_NED_COV (64) {#LOCAL_POSITION_NED_COV} 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 | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -estimator_type | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Class id of the estimator this estimate originated from. -x | `float` | m | | X Position -y | `float` | m | | Y Position -z | `float` | m | | Z Position -vx | `float` | m/s | | X Speed -vy | `float` | m/s | | Y Speed -vz | `float` | m/s | | Z Speed -ax | `float` | m/s/s | | X Acceleration -ay | `float` | m/s/s | | Y Acceleration -az | `float` | m/s/s | | Z Acceleration -covariance | `float[45]` | | invalid:[NaN:] | Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. - +| Field Name | Type | Units | Values | Description | +| -------------- | ----------- | ----- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| estimator_type | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Class id of the estimator this estimate originated from. | +| x | `float` | m | | X Position | +| y | `float` | m | | Y Position | +| z | `float` | m | | Z Position | +| vx | `float` | m/s | | X Speed | +| vy | `float` | m/s | | Y Speed | +| vz | `float` | m/s | | Z Speed | +| ax | `float` | m/s/s | | X Acceleration | +| ay | `float` | m/s/s | | Y Acceleration | +| az | `float` | m/s/s | | Z Acceleration | +| covariance | `float[45]` | | invalid:[NaN:] | Row-major representation of position, velocity and acceleration 9x9 cross-covariance matrix upper right triangle (states: x, y, z, vx, vy, vz, ax, ay, az; first nine entries are the first ROW, next eight entries are the second row, etc.). If unknown, assign NaN value to first element in the array. | ### RC_CHANNELS (65) {#RC_CHANNELS} -The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. - -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -chancount | `uint8_t` | | Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. -chan1_raw | `uint16_t` | us | RC channel 1 value. -chan2_raw | `uint16_t` | us | RC channel 2 value. -chan3_raw | `uint16_t` | us | RC channel 3 value. -chan4_raw | `uint16_t` | us | RC channel 4 value. -chan5_raw | `uint16_t` | us | RC channel 5 value. -chan6_raw | `uint16_t` | us | RC channel 6 value. -chan7_raw | `uint16_t` | us | RC channel 7 value. -chan8_raw | `uint16_t` | us | RC channel 8 value. -chan9_raw | `uint16_t` | us | RC channel 9 value. -chan10_raw | `uint16_t` | us | RC channel 10 value. -chan11_raw | `uint16_t` | us | RC channel 11 value. -chan12_raw | `uint16_t` | us | RC channel 12 value. -chan13_raw | `uint16_t` | us | RC channel 13 value. -chan14_raw | `uint16_t` | us | RC channel 14 value. -chan15_raw | `uint16_t` | us | RC channel 15 value. -chan16_raw | `uint16_t` | us | RC channel 16 value. -chan17_raw | `uint16_t` | us | RC channel 17 value. -chan18_raw | `uint16_t` | us | RC channel 18 value. -rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. - +The PPM values of the RC channels received. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. A value of UINT16_MAX implies the channel is unused. Individual receivers/transmitters might violate this specification. + +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| chancount | `uint8_t` | | Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available. | +| chan1_raw | `uint16_t` | us | RC channel 1 value. | +| chan2_raw | `uint16_t` | us | RC channel 2 value. | +| chan3_raw | `uint16_t` | us | RC channel 3 value. | +| chan4_raw | `uint16_t` | us | RC channel 4 value. | +| chan5_raw | `uint16_t` | us | RC channel 5 value. | +| chan6_raw | `uint16_t` | us | RC channel 6 value. | +| chan7_raw | `uint16_t` | us | RC channel 7 value. | +| chan8_raw | `uint16_t` | us | RC channel 8 value. | +| chan9_raw | `uint16_t` | us | RC channel 9 value. | +| chan10_raw | `uint16_t` | us | RC channel 10 value. | +| chan11_raw | `uint16_t` | us | RC channel 11 value. | +| chan12_raw | `uint16_t` | us | RC channel 12 value. | +| chan13_raw | `uint16_t` | us | RC channel 13 value. | +| chan14_raw | `uint16_t` | us | RC channel 14 value. | +| chan15_raw | `uint16_t` | us | RC channel 15 value. | +| chan16_raw | `uint16_t` | us | RC channel 16 value. | +| chan17_raw | `uint16_t` | us | RC channel 17 value. | +| chan18_raw | `uint16_t` | us | RC channel 18 value. | +| rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | ### REQUEST_DATA_STREAM (66) — [SUP] {#REQUEST_DATA_STREAM} -**SUPERSEDED:** Replaced By [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL) (2015-08) +**SUPERSEDED:** Replaced By [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL) (2015-08) Request a data stream. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | The target requested to send the message stream. -target_component | `uint8_t` | | | The target requested to send the message stream. -req_stream_id | `uint8_t` | | [MAV_DATA_STREAM](#MAV_DATA_STREAM) | The ID of the requested data stream. -req_message_rate | `uint16_t` | Hz | | The requested message rate -start_stop | `uint8_t` | | | 1 to start sending, 0 to stop sending. - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------- | ------------------------------------------------ | +| target_system | `uint8_t` | | | The target requested to send the message stream. | +| target_component | `uint8_t` | | | The target requested to send the message stream. | +| req_stream_id | `uint8_t` | | [MAV_DATA_STREAM](#MAV_DATA_STREAM) | The ID of the requested data stream. | +| req_message_rate | `uint16_t` | Hz | | The requested message rate | +| start_stop | `uint8_t` | | | 1 to start sending, 0 to stop sending. | ### DATA_STREAM (67) — [SUP] {#DATA_STREAM} @@ -828,12 +780,11 @@ start_stop | `uint8_t` | | | 1 to start sending, 0 to stop sending. Data stream status information. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -stream_id | `uint8_t` | | [MAV_DATA_STREAM](#MAV_DATA_STREAM) | The ID of the requested data stream. -message_rate | `uint16_t` | Hz | | The message rate -on_off | `uint8_t` | | | 1 stream is enabled, 0 stream is stopped. - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ----------------------------------- | ----------------------------------------- | +| stream_id | `uint8_t` | | [MAV_DATA_STREAM](#MAV_DATA_STREAM) | The ID of the requested data stream. | +| message_rate | `uint16_t` | Hz | | The message rate | +| on_off | `uint8_t` | | | 1 stream is enabled, 0 stream is stopped. | ### MANUAL_CONTROL (69) {#MANUAL_CONTROL} @@ -841,53 +792,51 @@ Manual (joystick) control message. This message represents movement axes and button using standard joystick axes nomenclature. Unused axes can be disabled and buttons states are transmitted as individual on/off bits of a bitmask. For more information see https://mavlink.io/en/services/manual_control.html -Field Name | Type | Description ---- | --- | --- -target | `uint8_t` | The system to be controlled. -x | `int16_t` | X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. -y | `int16_t` | Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. -z | `int16_t` | Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. -r | `int16_t` | R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with clockwise being 1000 and counter-clockwise being -1000, and the yaw of a vehicle. -buttons | `uint16_t` | A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. -buttons2 ++ | `uint16_t` | A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. -enabled_extensions ++ | `uint8_t` | Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll, bit 2: aux1, bit 3: aux2, bit 4: aux3, bit 5: aux4, bit 6: aux5, bit 7: aux6 -s ++ | `int16_t` | Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. -t ++ | `int16_t` | Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. -aux1 ++ | `int16_t` | Aux continuous input field 1. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 2 of enabled_extensions field is set. 0 if bit 2 is unset. -aux2 ++ | `int16_t` | Aux continuous input field 2. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 3 of enabled_extensions field is set. 0 if bit 3 is unset. -aux3 ++ | `int16_t` | Aux continuous input field 3. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 4 of enabled_extensions field is set. 0 if bit 4 is unset. -aux4 ++ | `int16_t` | Aux continuous input field 4. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 5 of enabled_extensions field is set. 0 if bit 5 is unset. -aux5 ++ | `int16_t` | Aux continuous input field 5. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 6 of enabled_extensions field is set. 0 if bit 6 is unset. -aux6 ++ | `int16_t` | Aux continuous input field 6. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 7 of enabled_extensions field is set. 0 if bit 7 is unset. - +| Field Name | Type | Description | +| ---------------------------------------------------------------------------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target | `uint8_t` | The system to be controlled. | +| x | `int16_t` | X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to forward(1000)-backward(-1000) movement on a joystick and the pitch of a vehicle. | +| y | `int16_t` | Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to left(-1000)-right(1000) movement on a joystick and the roll of a vehicle. | +| z | `int16_t` | Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a separate slider movement with maximum being 1000 and minimum being -1000 on a joystick and the thrust of a vehicle. Positive values are positive thrust, negative values are negative thrust. | +| r | `int16_t` | R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invalid. Generally corresponds to a twisting of the joystick, with clockwise being 1000 and counter-clockwise being -1000, and the yaw of a vehicle. | +| buttons | `uint16_t` | A bitfield corresponding to the joystick buttons' 0-15 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 1. | +| buttons2 ++ | `uint16_t` | A bitfield corresponding to the joystick buttons' 16-31 current state, 1 for pressed, 0 for released. The lowest bit corresponds to Button 16. | +| enabled_extensions ++ | `uint8_t` | Set bits to 1 to indicate which of the following extension fields contain valid data: bit 0: pitch, bit 1: roll, bit 2: aux1, bit 3: aux2, bit 4: aux3, bit 5: aux4, bit 6: aux5, bit 7: aux6 | +| s ++ | `int16_t` | Pitch-only-axis, normalized to the range [-1000,1000]. Generally corresponds to pitch on vehicles with additional degrees of freedom. Valid if bit 0 of enabled_extensions field is set. Set to 0 if invalid. | +| t ++ | `int16_t` | Roll-only-axis, normalized to the range [-1000,1000]. Generally corresponds to roll on vehicles with additional degrees of freedom. Valid if bit 1 of enabled_extensions field is set. Set to 0 if invalid. | +| aux1 ++ | `int16_t` | Aux continuous input field 1. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 2 of enabled_extensions field is set. 0 if bit 2 is unset. | +| aux2 ++ | `int16_t` | Aux continuous input field 2. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 3 of enabled_extensions field is set. 0 if bit 3 is unset. | +| aux3 ++ | `int16_t` | Aux continuous input field 3. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 4 of enabled_extensions field is set. 0 if bit 4 is unset. | +| aux4 ++ | `int16_t` | Aux continuous input field 4. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 5 of enabled_extensions field is set. 0 if bit 5 is unset. | +| aux5 ++ | `int16_t` | Aux continuous input field 5. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 6 of enabled_extensions field is set. 0 if bit 6 is unset. | +| aux6 ++ | `int16_t` | Aux continuous input field 6. Normalized in the range [-1000,1000]. Purpose defined by recipient. Valid data if bit 7 of enabled_extensions field is set. 0 if bit 7 is unset. | ### RC_CHANNELS_OVERRIDE (70) {#RC_CHANNELS_OVERRIDE} -The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels - -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -chan1_raw | `uint16_t` | us | RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan2_raw | `uint16_t` | us | RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan3_raw | `uint16_t` | us | RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan4_raw | `uint16_t` | us | RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan5_raw | `uint16_t` | us | RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan6_raw | `uint16_t` | us | RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan7_raw | `uint16_t` | us | RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan8_raw | `uint16_t` | us | RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. -chan9_raw ++ | `uint16_t` | us | RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan10_raw ++ | `uint16_t` | us | RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan11_raw ++ | `uint16_t` | us | RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan12_raw ++ | `uint16_t` | us | RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan13_raw ++ | `uint16_t` | us | RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan14_raw ++ | `uint16_t` | us | RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan15_raw ++ | `uint16_t` | us | RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan16_raw ++ | `uint16_t` | us | RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan17_raw ++ | `uint16_t` | us | RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. -chan18_raw ++ | `uint16_t` | us | RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. - +The RAW values of the RC channels sent to the MAV to override info received from the RC radio. The standard PPM modulation is as follows: 1000 microseconds: 0%, 2000 microseconds: 100%. Individual receivers/transmitters might violate this specification. Note carefully the semantic differences between the first 8 channels and the subsequent channels + +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| chan1_raw | `uint16_t` | us | RC channel 1 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan2_raw | `uint16_t` | us | RC channel 2 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan3_raw | `uint16_t` | us | RC channel 3 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan4_raw | `uint16_t` | us | RC channel 4 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan5_raw | `uint16_t` | us | RC channel 5 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan6_raw | `uint16_t` | us | RC channel 6 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan7_raw | `uint16_t` | us | RC channel 7 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan8_raw | `uint16_t` | us | RC channel 8 value. A value of UINT16_MAX means to ignore this field. A value of 0 means to release this channel back to the RC radio. | +| chan9_raw ++ | `uint16_t` | us | RC channel 9 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan10_raw ++ | `uint16_t` | us | RC channel 10 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan11_raw ++ | `uint16_t` | us | RC channel 11 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan12_raw ++ | `uint16_t` | us | RC channel 12 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan13_raw ++ | `uint16_t` | us | RC channel 13 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan14_raw ++ | `uint16_t` | us | RC channel 14 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan15_raw ++ | `uint16_t` | us | RC channel 15 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan16_raw ++ | `uint16_t` | us | RC channel 16 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan17_raw ++ | `uint16_t` | us | RC channel 17 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | +| chan18_raw ++ | `uint16_t` | us | RC channel 18 value. A value of 0 or UINT16_MAX means to ignore this field. A value of UINT16_MAX-1 means to release this channel back to the RC radio. | ### MISSION_ITEM_INT (73) {#MISSION_ITEM_INT} @@ -895,92 +844,87 @@ 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). NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). See also https://mavlink.io/en/services/mission.html. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -seq | `uint16_t` | | Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). -frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the waypoint. -command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the waypoint. -current | `uint8_t` | | false:0, true:1 -autocontinue | `uint8_t` | | Autocontinue to next waypoint. 0: false, 1: true. Set false to pause mission after the item completes. -param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum -param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum -param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum -param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum -x | `int32_t` | | PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 -y | `int32_t` | | PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 -z | `float` | | PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. -mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. - +| Field Name | Type | Values | Description | +| ---------------------------------------------------------------------------- | ---------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| seq | `uint16_t` | | Waypoint ID (sequence number). Starts at zero. Increases monotonically for each waypoint, no gaps in the sequence (0,1,2,3,4). | +| frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the waypoint. | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the waypoint. | +| current | `uint8_t` | | false:0, true:1 | +| autocontinue | `uint8_t` | | Autocontinue to next waypoint. 0: false, 1: true. Set false to pause mission after the item completes. | +| param1 | `float` | | PARAM1, see [MAV_CMD](#mav_commands) enum | +| param2 | `float` | | PARAM2, see [MAV_CMD](#mav_commands) enum | +| param3 | `float` | | PARAM3, see [MAV_CMD](#mav_commands) enum | +| param4 | `float` | | PARAM4, see [MAV_CMD](#mav_commands) enum | +| x | `int32_t` | | PARAM5 / local: x position in meters _1e4, global: latitude in degrees_ 10^7 | +| y | `int32_t` | | PARAM6 / y position: local: x position in meters *1e4, global: longitude in degrees*10^7 | +| z | `float` | | PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame. | +| mission_type ++ | `uint8_t` | [MAV_MISSION_TYPE](#MAV_MISSION_TYPE) | Mission type. | ### VFR_HUD (74) {#VFR_HUD} Metrics typically displayed on a HUD for fixed wing aircraft. -Field Name | Type | Units | Description ---- | --- | --- | --- -airspeed | `float` | m/s | Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. -groundspeed | `float` | m/s | Current ground speed. -heading | `int16_t` | deg | Current heading in compass units (0-360, 0=north). -throttle | `uint16_t` | % | Current throttle setting (0 to 100). -alt | `float` | m | Current altitude (MSL). -climb | `float` | m/s | Current climb rate. - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| airspeed | `float` | m/s | Vehicle speed in form appropriate for vehicle type. For standard aircraft this is typically calibrated airspeed (CAS) or indicated airspeed (IAS) - either of which can be used by a pilot to estimate stall speed. | +| groundspeed | `float` | m/s | Current ground speed. | +| heading | `int16_t` | deg | Current heading in compass units (0-360, 0=north). | +| throttle | `uint16_t` | % | Current throttle setting (0 to 100). | +| alt | `float` | m | Current altitude (MSL). | +| climb | `float` | m/s | Current climb rate. | ### COMMAND_INT (75) {#COMMAND_INT} Send a command with up to seven parameters to the MAV, where params 5 and 6 are integers and the other values are floats. This is preferred over [COMMAND_LONG](#COMMAND_LONG) as it allows the [MAV_FRAME](#MAV_FRAME) to be specified for interpreting positional information, such as altitude. [COMMAND_INT](#COMMAND_INT) is also preferred when sending latitude and longitude data in params 5 and 6, as it allows for greater precision. Param 5 and 6 encode positional data as scaled integers, where the scaling depends on the actual command value. NaN or INT32_MAX may be used in float/integer params (respectively) to indicate optional/default values (e.g. to use the component's current latitude, yaw rather than a specific value). The command microservice is documented at https://mavlink.io/en/services/command.html -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the COMMAND. -command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the mission item. -current | `uint8_t` | | Not used. -autocontinue | `uint8_t` | | Not used (set 0). -param1 | `float` | invalid:NaN | PARAM1, see [MAV_CMD](#mav_commands) enum -param2 | `float` | invalid:NaN | PARAM2, see [MAV_CMD](#mav_commands) enum -param3 | `float` | invalid:NaN | PARAM3, see [MAV_CMD](#mav_commands) enum -param4 | `float` | invalid:NaN | PARAM4, see [MAV_CMD](#mav_commands) enum -x | `int32_t` | invalid:INT32_MAX | PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 -y | `int32_t` | invalid:INT32_MAX | PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7 -z | `float` | invalid:NaN | PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ------------------------ | ------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| frame | `uint8_t` | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the COMMAND. | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | The scheduled action for the mission item. | +| current | `uint8_t` | | Not used. | +| autocontinue | `uint8_t` | | Not used (set 0). | +| param1 | `float` | invalid:NaN | PARAM1, see [MAV_CMD](#mav_commands) enum | +| param2 | `float` | invalid:NaN | PARAM2, see [MAV_CMD](#mav_commands) enum | +| param3 | `float` | invalid:NaN | PARAM3, see [MAV_CMD](#mav_commands) enum | +| param4 | `float` | invalid:NaN | PARAM4, see [MAV_CMD](#mav_commands) enum | +| x | `int32_t` | invalid:INT32_MAX | PARAM5 / local: x position in meters _1e4, global: latitude in degrees_ 10^7 | +| y | `int32_t` | invalid:INT32_MAX | PARAM6 / local: y position in meters _1e4, global: longitude in degrees_ 10^7 | +| z | `float` | invalid:NaN | PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame). | ### COMMAND_LONG (76) {#COMMAND_LONG} Send a command with up to seven parameters to the MAV. [COMMAND_INT](#COMMAND_INT) is generally preferred when sending [MAV_CMD](#mav_commands) commands that include positional information; it offers higher precision and allows the [MAV_FRAME](#MAV_FRAME) to be specified (which may otherwise be ambiguous, particularly for altitude). The command microservice is documented at https://mavlink.io/en/services/command.html -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System which should execute the command -target_component | `uint8_t` | | Component which should execute the command, 0 for all components -command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID (of command to send). -confirmation | `uint8_t` | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) -param1 | `float` | invalid:NaN | Parameter 1 (for the specific command). -param2 | `float` | invalid:NaN | Parameter 2 (for the specific command). -param3 | `float` | invalid:NaN | Parameter 3 (for the specific command). -param4 | `float` | invalid:NaN | Parameter 4 (for the specific command). -param5 | `float` | invalid:NaN | Parameter 5 (for the specific command). -param6 | `float` | invalid:NaN | Parameter 6 (for the specific command). -param7 | `float` | invalid:NaN | Parameter 7 (for the specific command). - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ------------------------ | ------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System which should execute the command | +| target_component | `uint8_t` | | Component which should execute the command, 0 for all components | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID (of command to send). | +| confirmation | `uint8_t` | | 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) | +| param1 | `float` | invalid:NaN | Parameter 1 (for the specific command). | +| param2 | `float` | invalid:NaN | Parameter 2 (for the specific command). | +| param3 | `float` | invalid:NaN | Parameter 3 (for the specific command). | +| param4 | `float` | invalid:NaN | Parameter 4 (for the specific command). | +| param5 | `float` | invalid:NaN | Parameter 5 (for the specific command). | +| param6 | `float` | invalid:NaN | Parameter 6 (for the specific command). | +| param7 | `float` | invalid:NaN | Parameter 7 (for the specific command). | ### COMMAND_ACK (77) {#COMMAND_ACK} Report status of a command. Includes feedback whether the command was executed. The command microservice is documented at https://mavlink.io/en/services/command.html -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -command | `uint16_t` | | [MAV_CMD](#mav_commands) | Command ID (of acknowledged command). -result | `uint8_t` | | [MAV_RESULT](#MAV_RESULT) | Result of command. -progress ++ | `uint8_t` | % | invalid:UINT8_MAX | The progress percentage when result is [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS). Values: [0-100], or UINT8_MAX if the progress is unknown. -result_param2 ++ | `int32_t` | | | Additional result information. Can be set with a command-specific enum containing command-specific error reasons for why the command might be denied. If used, the associated enum must be documented in the corresponding [MAV_CMD](#mav_commands) (this enum should have a 0 value to indicate "unused" or "unknown"). -target_system ++ | `uint8_t` | | | System ID of the target recipient. This is the ID of the system that sent the command for which this [COMMAND_ACK](#COMMAND_ACK) is an acknowledgement. -target_component ++ | `uint8_t` | | | Component ID of the target recipient. This is the ID of the system that sent the command for which this [COMMAND_ACK](#COMMAND_ACK) is an acknowledgement. - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ---------- | ----- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| command | `uint16_t` | | [MAV_CMD](#mav_commands) | Command ID (of acknowledged command). | +| result | `uint8_t` | | [MAV_RESULT](#MAV_RESULT) | Result of command. | +| progress ++ | `uint8_t` | % | invalid:UINT8_MAX | The progress percentage when result is [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS). Values: [0-100], or UINT8_MAX if the progress is unknown. | +| result_param2 ++ | `int32_t` | | | Additional result information. Can be set with a command-specific enum containing command-specific error reasons for why the command might be denied. If used, the associated enum must be documented in the corresponding [MAV_CMD](#mav_commands) (this enum should have a 0 value to indicate "unused" or "unknown"). | +| target_system ++ | `uint8_t` | | | System ID of the target recipient. This is the ID of the system that sent the command for which this [COMMAND_ACK](#COMMAND_ACK) is an acknowledgement. | +| target_component ++ | `uint8_t` | | | Component ID of the target recipient. This is the ID of the system that sent the command for which this [COMMAND_ACK](#COMMAND_ACK) is an acknowledgement. | ### COMMAND_CANCEL (80) — [WIP] {#COMMAND_CANCEL} @@ -988,167 +932,158 @@ result | `uint8_t` | | [MAV_RESULT](#MAV_RESULT) | Result of command. Cancel a long running command. The target system should respond with a [COMMAND_ACK](#COMMAND_ACK) to the original command with result=MAV_RESULT_CANCELLED if the long running process was cancelled. If it has already completed, the cancel action can be ignored. The cancel action can be retried until some sort of acknowledgement to the original command has been received. The command microservice is documented at https://mavlink.io/en/services/command.html -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System executing long running command. Should not be broadcast (0). -target_component | `uint8_t` | | Component executing long running command. -command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID (of command to cancel). - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ------------------------ | ------------------------------------------------------------------- | +| target_system | `uint8_t` | | System executing long running command. Should not be broadcast (0). | +| target_component | `uint8_t` | | Component executing long running command. | +| command | `uint16_t` | [MAV_CMD](#mav_commands) | Command ID (of command to cancel). | ### MANUAL_SETPOINT (81) {#MANUAL_SETPOINT} Setpoint in roll, pitch, yaw and thrust from the operator -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -roll | `float` | rad/s | Desired roll rate -pitch | `float` | rad/s | Desired pitch rate -yaw | `float` | rad/s | Desired yaw rate -thrust | `float` | | Collective thrust, normalized to 0 .. 1 -mode_switch | `uint8_t` | | Flight mode switch position, 0.. 255 -manual_override_switch | `uint8_t` | | Override mode switch position, 0.. 255 - +| Field Name | Type | Units | Description | +| ---------------------- | ---------- | ----- | --------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| roll | `float` | rad/s | Desired roll rate | +| pitch | `float` | rad/s | Desired pitch rate | +| yaw | `float` | rad/s | Desired yaw rate | +| thrust | `float` | | Collective thrust, normalized to 0 .. 1 | +| mode_switch | `uint8_t` | | Flight mode switch position, 0.. 255 | +| manual_override_switch | `uint8_t` | | Override mode switch position, 0.. 255 | ### SET_ATTITUDE_TARGET (82) {#SET_ATTITUDE_TARGET} Sets a desired vehicle attitude. Used by an external controller to command the vehicle (manual controller or other system). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -type_mask | `uint8_t` | | [ATTITUDE_TARGET_TYPEMASK](#ATTITUDE_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -q | `float[4]` | | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) from [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) to [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) -body_roll_rate | `float` | rad/s | | Body roll rate -body_pitch_rate | `float` | rad/s | | Body pitch rate -body_yaw_rate | `float` | rad/s | | Body yaw rate -thrust | `float` | | | Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse thrust) -thrust_body ++ | `float[3]` | | | 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 - +| Field Name | Type | Units | Values | Description | +| --------------------------------------------------------------------------- | ---------- | ----- | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| type_mask | `uint8_t` | | [ATTITUDE_TARGET_TYPEMASK](#ATTITUDE_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| q | `float[4]` | | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) from [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) to [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) | +| body_roll_rate | `float` | rad/s | | Body roll rate | +| body_pitch_rate | `float` | rad/s | | Body pitch rate | +| body_yaw_rate | `float` | rad/s | | Body yaw rate | +| thrust | `float` | | | Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse thrust) | +| thrust_body ++ | `float[3]` | | | 3D thrust setpoint in the body NED frame, normalized to -1 .. 1 | ### ATTITUDE_TARGET (83) {#ATTITUDE_TARGET} Reports the current commanded attitude of the vehicle as specified by the autopilot. This should match the commands sent in a [SET_ATTITUDE_TARGET](#SET_ATTITUDE_TARGET) message if the vehicle is being controlled this way. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -type_mask | `uint8_t` | | [ATTITUDE_TARGET_TYPEMASK](#ATTITUDE_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -q | `float[4]` | | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -body_roll_rate | `float` | rad/s | | Body roll rate -body_pitch_rate | `float` | rad/s | | Body pitch rate -body_yaw_rate | `float` | rad/s | | Body yaw rate -thrust | `float` | | | Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse thrust) - +| Field Name | Type | Units | Values | Description | +| --------------- | ---------- | ----- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| type_mask | `uint8_t` | | [ATTITUDE_TARGET_TYPEMASK](#ATTITUDE_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| q | `float[4]` | | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| body_roll_rate | `float` | rad/s | | Body roll rate | +| body_pitch_rate | `float` | rad/s | | Body pitch rate | +| body_yaw_rate | `float` | rad/s | | Body yaw rate | +| thrust | `float` | | | Collective thrust, normalized to 0 .. 1 (-1 .. 1 for vehicles capable of reverse thrust) | ### SET_POSITION_TARGET_LOCAL_NED (84) {#SET_POSITION_TARGET_LOCAL_NED} 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 | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) = 1, [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) = 7, [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) = 8, [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) = 9 -type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -x | `float` | m | | X Position in NED frame -y | `float` | m | | Y Position in NED frame -z | `float` | m | | Z Position in NED frame (note, altitude is negative in NED) -vx | `float` | m/s | | X velocity in NED frame -vy | `float` | m/s | | Y velocity in NED frame -vz | `float` | m/s | | Z velocity in NED frame -afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -yaw | `float` | rad | | yaw setpoint -yaw_rate | `float` | rad/s | | yaw rate setpoint - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) = 1, [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) = 7, [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) = 8, [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) = 9 | +| type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| x | `float` | m | | X Position in NED frame | +| y | `float` | m | | Y Position in NED frame | +| z | `float` | m | | Z Position in NED frame (note, altitude is negative in NED) | +| vx | `float` | m/s | | X velocity in NED frame | +| vy | `float` | m/s | | Y velocity in NED frame | +| vz | `float` | m/s | | Z velocity in NED frame | +| afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| yaw | `float` | rad | | yaw setpoint | +| yaw_rate | `float` | rad/s | | yaw rate setpoint | ### POSITION_TARGET_LOCAL_NED (85) {#POSITION_TARGET_LOCAL_NED} 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](#SET_POSITION_TARGET_LOCAL_NED) if the vehicle is being controlled this way. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) = 1, [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) = 7, [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) = 8, [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) = 9 -type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -x | `float` | m | | X Position in NED frame -y | `float` | m | | Y Position in NED frame -z | `float` | m | | Z Position in NED frame (note, altitude is negative in NED) -vx | `float` | m/s | | X velocity in NED frame -vy | `float` | m/s | | Y velocity in NED frame -vz | `float` | m/s | | Z velocity in NED frame -afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -yaw | `float` | rad | | yaw setpoint -yaw_rate | `float` | rad/s | | yaw rate setpoint - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) = 1, [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) = 7, [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) = 8, [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) = 9 | +| type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| x | `float` | m | | X Position in NED frame | +| y | `float` | m | | Y Position in NED frame | +| z | `float` | m | | Z Position in NED frame (note, altitude is negative in NED) | +| vx | `float` | m/s | | X velocity in NED frame | +| vy | `float` | m/s | | Y velocity in NED frame | +| vz | `float` | m/s | | Z velocity in NED frame | +| afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| yaw | `float` | rad | | yaw setpoint | +| yaw_rate | `float` | rad/s | | yaw rate setpoint | ### SET_POSITION_TARGET_GLOBAL_INT (86) {#SET_POSITION_TARGET_GLOBAL_INT} 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 | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) = 0, [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) = 3, [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) = 10 ([MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT), [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT), [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) are allowed synonyms, but have been deprecated) -type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -lat_int | `int32_t` | degE7 | | Latitude in WGS84 frame -lon_int | `int32_t` | degE7 | | Longitude in WGS84 frame -alt | `float` | m | | Altitude (MSL, Relative to home, or AGL - depending on frame) -vx | `float` | m/s | | X velocity in NED frame -vy | `float` | m/s | | Y velocity in NED frame -vz | `float` | m/s | | Z velocity in NED frame -afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -yaw | `float` | rad | | yaw setpoint -yaw_rate | `float` | rad/s | | yaw rate setpoint - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) = 0, [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) = 3, [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) = 10 ([MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT), [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT), [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) are allowed synonyms, but have been deprecated) | +| type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| lat_int | `int32_t` | degE7 | | Latitude in WGS84 frame | +| lon_int | `int32_t` | degE7 | | Longitude in WGS84 frame | +| alt | `float` | m | | Altitude (MSL, Relative to home, or AGL - depending on frame) | +| vx | `float` | m/s | | X velocity in NED frame | +| vy | `float` | m/s | | Y velocity in NED frame | +| vz | `float` | m/s | | Z velocity in NED frame | +| afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| yaw | `float` | rad | | yaw setpoint | +| yaw_rate | `float` | rad/s | | yaw rate setpoint | ### POSITION_TARGET_GLOBAL_INT (87) {#POSITION_TARGET_GLOBAL_INT} 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](#SET_POSITION_TARGET_GLOBAL_INT) if the vehicle is being controlled this way. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. -coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) = 0, [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) = 3, [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) = 10 ([MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT), [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT), [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) are allowed synonyms, but have been deprecated) -type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. -lat_int | `int32_t` | degE7 | | Latitude in WGS84 frame -lon_int | `int32_t` | degE7 | | Longitude in WGS84 frame -alt | `float` | m | | Altitude (MSL, AGL or relative to home altitude, depending on frame) -vx | `float` | m/s | | X velocity in NED frame -vy | `float` | m/s | | Y velocity in NED frame -vz | `float` | m/s | | Z velocity in NED frame -afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N -yaw | `float` | rad | | yaw setpoint -yaw_rate | `float` | rad/s | | yaw rate setpoint - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). The rationale for the timestamp in the setpoint is to allow the system to compensate for the transport delay of the setpoint. This allows the system to compensate processing latency. | +| coordinate_frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Valid options are: [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) = 0, [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) = 3, [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) = 10 ([MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT), [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT), [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) are allowed synonyms, but have been deprecated) | +| type_mask | `uint16_t` | | [POSITION_TARGET_TYPEMASK](#POSITION_TARGET_TYPEMASK) | Bitmap to indicate which dimensions should be ignored by the vehicle. | +| lat_int | `int32_t` | degE7 | | Latitude in WGS84 frame | +| lon_int | `int32_t` | degE7 | | Longitude in WGS84 frame | +| alt | `float` | m | | Altitude (MSL, AGL or relative to home altitude, depending on frame) | +| vx | `float` | m/s | | X velocity in NED frame | +| vy | `float` | m/s | | Y velocity in NED frame | +| vz | `float` | m/s | | Z velocity in NED frame | +| afx | `float` | m/s/s | | X acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afy | `float` | m/s/s | | Y acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| afz | `float` | m/s/s | | Z acceleration or force (if bit 10 of type_mask is set) in NED frame in meter / s^2 or N | +| yaw | `float` | rad | | yaw setpoint | +| yaw_rate | `float` | rad/s | | yaw rate setpoint | ### LOCAL_POSITION_NED_SYSTEM_GLOBAL_OFFSET (89) {#LOCAL_POSITION_NED_SYSTEM_GLOBAL_OFFSET} The offset in X, Y, Z and yaw between the [LOCAL_POSITION_NED](#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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -x | `float` | m | X Position -y | `float` | m | Y Position -z | `float` | m | Z Position -roll | `float` | rad | Roll -pitch | `float` | rad | Pitch -yaw | `float` | rad | Yaw - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ----------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| x | `float` | m | X Position | +| y | `float` | m | Y Position | +| z | `float` | m | Z Position | +| roll | `float` | rad | Roll | +| pitch | `float` | rad | Pitch | +| yaw | `float` | rad | Yaw | ### HIL_STATE (90) — [SUP] {#HIL_STATE} @@ -1156,286 +1091,271 @@ yaw | `float` | rad | Yaw Sent from simulation to autopilot. This packet is useful for high throughput applications such as hardware in the loop simulations. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -roll | `float` | rad | Roll angle -pitch | `float` | rad | Pitch angle -yaw | `float` | rad | Yaw angle -rollspeed | `float` | rad/s | Body frame roll / phi angular speed -pitchspeed | `float` | rad/s | Body frame pitch / theta angular speed -yawspeed | `float` | rad/s | Body frame yaw / psi angular speed -lat | `int32_t` | degE7 | Latitude -lon | `int32_t` | degE7 | Longitude -alt | `int32_t` | mm | Altitude -vx | `int16_t` | cm/s | Ground X Speed (Latitude) -vy | `int16_t` | cm/s | Ground Y Speed (Longitude) -vz | `int16_t` | cm/s | Ground Z Speed (Altitude) -xacc | `int16_t` | mG | X acceleration -yacc | `int16_t` | mG | Y acceleration -zacc | `int16_t` | mG | Z acceleration - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| roll | `float` | rad | Roll angle | +| pitch | `float` | rad | Pitch angle | +| yaw | `float` | rad | Yaw angle | +| rollspeed | `float` | rad/s | Body frame roll / phi angular speed | +| pitchspeed | `float` | rad/s | Body frame pitch / theta angular speed | +| yawspeed | `float` | rad/s | Body frame yaw / psi angular speed | +| lat | `int32_t` | degE7 | Latitude | +| lon | `int32_t` | degE7 | Longitude | +| alt | `int32_t` | mm | Altitude | +| vx | `int16_t` | cm/s | Ground X Speed (Latitude) | +| vy | `int16_t` | cm/s | Ground Y Speed (Longitude) | +| vz | `int16_t` | cm/s | Ground Z Speed (Altitude) | +| xacc | `int16_t` | mG | X acceleration | +| yacc | `int16_t` | mG | Y acceleration | +| zacc | `int16_t` | mG | Z acceleration | ### HIL_CONTROLS (91) {#HIL_CONTROLS} Sent from autopilot to simulation. Hardware in the loop control outputs. Alternative to [HIL_ACTUATOR_CONTROLS](#HIL_ACTUATOR_CONTROLS). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -roll_ailerons | `float` | | | Control output -1 .. 1 -pitch_elevator | `float` | | | Control output -1 .. 1 -yaw_rudder | `float` | | | Control output -1 .. 1 -throttle | `float` | | | Throttle 0 .. 1 -aux1 | `float` | | | Aux 1, -1 .. 1 -aux2 | `float` | | | Aux 2, -1 .. 1 -aux3 | `float` | | | Aux 3, -1 .. 1 -aux4 | `float` | | | Aux 4, -1 .. 1 -mode | `uint8_t` | | [MAV_MODE](#MAV_MODE) | System mode. -nav_mode | `uint8_t` | | | Navigation mode ([MAV_NAV_MODE](#MAV_NAV_MODE)) - +| Field Name | Type | Units | Values | Description | +| -------------- | ---------- | ----- | --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| roll_ailerons | `float` | | | Control output -1 .. 1 | +| pitch_elevator | `float` | | | Control output -1 .. 1 | +| yaw_rudder | `float` | | | Control output -1 .. 1 | +| throttle | `float` | | | Throttle 0 .. 1 | +| aux1 | `float` | | | Aux 1, -1 .. 1 | +| aux2 | `float` | | | Aux 2, -1 .. 1 | +| aux3 | `float` | | | Aux 3, -1 .. 1 | +| aux4 | `float` | | | Aux 4, -1 .. 1 | +| mode | `uint8_t` | | [MAV_MODE](#MAV_MODE) | System mode. | +| nav_mode | `uint8_t` | | | Navigation mode ([MAV_NAV_MODE](#MAV_NAV_MODE)) | ### HIL_RC_INPUTS_RAW (92) {#HIL_RC_INPUTS_RAW} 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 | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -chan1_raw | `uint16_t` | us | RC channel 1 value -chan2_raw | `uint16_t` | us | RC channel 2 value -chan3_raw | `uint16_t` | us | RC channel 3 value -chan4_raw | `uint16_t` | us | RC channel 4 value -chan5_raw | `uint16_t` | us | RC channel 5 value -chan6_raw | `uint16_t` | us | RC channel 6 value -chan7_raw | `uint16_t` | us | RC channel 7 value -chan8_raw | `uint16_t` | us | RC channel 8 value -chan9_raw | `uint16_t` | us | RC channel 9 value -chan10_raw | `uint16_t` | us | RC channel 10 value -chan11_raw | `uint16_t` | us | RC channel 11 value -chan12_raw | `uint16_t` | us | RC channel 12 value -rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| chan1_raw | `uint16_t` | us | RC channel 1 value | +| chan2_raw | `uint16_t` | us | RC channel 2 value | +| chan3_raw | `uint16_t` | us | RC channel 3 value | +| chan4_raw | `uint16_t` | us | RC channel 4 value | +| chan5_raw | `uint16_t` | us | RC channel 5 value | +| chan6_raw | `uint16_t` | us | RC channel 6 value | +| chan7_raw | `uint16_t` | us | RC channel 7 value | +| chan8_raw | `uint16_t` | us | RC channel 8 value | +| chan9_raw | `uint16_t` | us | RC channel 9 value | +| chan10_raw | `uint16_t` | us | RC channel 10 value | +| chan11_raw | `uint16_t` | us | RC channel 11 value | +| chan12_raw | `uint16_t` | us | RC channel 12 value | +| rssi | `uint8_t` | | Receive signal strength indicator in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | ### HIL_ACTUATOR_CONTROLS (93) {#HIL_ACTUATOR_CONTROLS} Sent from autopilot to simulation. Hardware in the loop control outputs. Alternative to [HIL_CONTROLS](#HIL_CONTROLS). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -controls | `float[16]` | | | Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. -mode | `uint8_t` | | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode. Includes arming state. -flags | `uint64_t` | | [HIL_ACTUATOR_CONTROLS_FLAGS](#HIL_ACTUATOR_CONTROLS_FLAGS) | Flags bitmask. - +| Field Name | Type | Units | Values | Description | +| ---------- | ----------- | ----- | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| controls | `float[16]` | | | Control outputs -1 .. 1. Channel assignment depends on the simulated hardware. | +| mode | `uint8_t` | | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode. Includes arming state. | +| flags | `uint64_t` | | [HIL_ACTUATOR_CONTROLS_FLAGS](#HIL_ACTUATOR_CONTROLS_FLAGS) | Flags bitmask. | ### OPTICAL_FLOW (100) {#OPTICAL_FLOW} Optical flow from a flow sensor (e.g. optical mouse sensor) -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -sensor_id | `uint8_t` | | Sensor ID -flow_x | `int16_t` | dpix | Flow in x-sensor direction -flow_y | `int16_t` | dpix | Flow in y-sensor direction -flow_comp_m_x | `float` | m/s | Flow in x-sensor direction, angular-speed compensated -flow_comp_m_y | `float` | m/s | Flow in y-sensor direction, angular-speed compensated -quality | `uint8_t` | | Optical flow quality / confidence. 0: bad, 255: maximum quality -ground_distance | `float` | m | Ground distance. Positive value: distance known. Negative value: Unknown distance -flow_rate_x ++ | `float` | rad/s | Flow rate about X axis -flow_rate_y ++ | `float` | rad/s | Flow rate about Y axis - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| sensor_id | `uint8_t` | | Sensor ID | +| flow_x | `int16_t` | dpix | Flow in x-sensor direction | +| flow_y | `int16_t` | dpix | Flow in y-sensor direction | +| flow_comp_m_x | `float` | m/s | Flow in x-sensor direction, angular-speed compensated | +| flow_comp_m_y | `float` | m/s | Flow in y-sensor direction, angular-speed compensated | +| quality | `uint8_t` | | Optical flow quality / confidence. 0: bad, 255: maximum quality | +| ground_distance | `float` | m | Ground distance. Positive value: distance known. Negative value: Unknown distance | +| flow_rate_x ++ | `float` | rad/s | Flow rate about X axis | +| flow_rate_y ++ | `float` | rad/s | Flow rate about Y axis | ### GLOBAL_VISION_POSITION_ESTIMATE (101) {#GLOBAL_VISION_POSITION_ESTIMATE} Global position/attitude estimate from a vision source. -Field Name | Type | Units | Description ---- | --- | --- | --- -usec | `uint64_t` | us | Timestamp (UNIX time or since system boot) -x | `float` | m | Global X position -y | `float` | m | Global Y position -z | `float` | m | Global Z position -roll | `float` | rad | Roll angle -pitch | `float` | rad | Pitch angle -yaw | `float` | rad | Yaw angle -covariance ++ | `float[21]` | | Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. -reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. - +| Field Name | Type | Units | Description | +| ----------------------------------------------------------------------------- | ----------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| usec | `uint64_t` | us | Timestamp (UNIX time or since system boot) | +| x | `float` | m | Global X position | +| y | `float` | m | Global Y position | +| z | `float` | m | Global Z position | +| roll | `float` | rad | Roll angle | +| pitch | `float` | rad | Pitch angle | +| yaw | `float` | rad | Yaw angle | +| covariance ++ | `float[21]` | | Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x_global, y_global, z_global, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | +| reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. | ### VISION_POSITION_ESTIMATE (102) {#VISION_POSITION_ESTIMATE} Local position/attitude estimate from a vision source. -Field Name | Type | Units | Description ---- | --- | --- | --- -usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) -x | `float` | m | Local X position -y | `float` | m | Local Y position -z | `float` | m | Local Z position -roll | `float` | rad | Roll angle -pitch | `float` | rad | Pitch angle -yaw | `float` | rad | Yaw angle -covariance ++ | `float[21]` | | Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. -reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. - +| Field Name | Type | Units | Description | +| ----------------------------------------------------------------------------- | ----------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) | +| x | `float` | m | Local X position | +| y | `float` | m | Local Y position | +| z | `float` | m | Local Z position | +| roll | `float` | rad | Roll angle | +| pitch | `float` | rad | Pitch angle | +| yaw | `float` | rad | Yaw angle | +| covariance ++ | `float[21]` | | Row-major representation of pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | +| reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. | ### VISION_SPEED_ESTIMATE (103) {#VISION_SPEED_ESTIMATE} Speed estimate from a vision source. -Field Name | Type | Units | Description ---- | --- | --- | --- -usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) -x | `float` | m/s | Global X speed -y | `float` | m/s | Global Y speed -z | `float` | m/s | Global Z speed -covariance ++ | `float[9]` | | Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. -reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. - +| Field Name | Type | Units | Description | +| ----------------------------------------------------------------------------- | ---------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) | +| x | `float` | m/s | Global X speed | +| y | `float` | m/s | Global Y speed | +| z | `float` | m/s | Global Z speed | +| covariance ++ | `float[9]` | | Row-major representation of 3x3 linear velocity covariance matrix (states: vx, vy, vz; 1st three entries - 1st row, etc.). If unknown, assign NaN value to first element in the array. | +| reset_counter ++ | `uint8_t` | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. | ### VICON_POSITION_ESTIMATE (104) {#VICON_POSITION_ESTIMATE} Global position estimate from a Vicon motion system source. -Field Name | Type | Units | Description ---- | --- | --- | --- -usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) -x | `float` | m | Global X position -y | `float` | m | Global Y position -z | `float` | m | Global Z position -roll | `float` | rad | Roll angle -pitch | `float` | rad | Pitch angle -yaw | `float` | rad | Yaw angle -covariance ++ | `float[21]` | | Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------- | ----------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| usec | `uint64_t` | us | Timestamp (UNIX time or time since system boot) | +| x | `float` | m | Global X position | +| y | `float` | m | Global Y position | +| z | `float` | m | Global Z position | +| roll | `float` | rad | Roll angle | +| pitch | `float` | rad | Pitch angle | +| yaw | `float` | rad | Yaw angle | +| covariance ++ | `float[21]` | | Row-major representation of 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | ### HIGHRES_IMU (105) {#HIGHRES_IMU} The IMU readings in SI units in NED body frame -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -xacc | `float` | m/s/s | | X acceleration -yacc | `float` | m/s/s | | Y acceleration -zacc | `float` | m/s/s | | Z acceleration -xgyro | `float` | rad/s | | Angular speed around X axis -ygyro | `float` | rad/s | | Angular speed around Y axis -zgyro | `float` | rad/s | | Angular speed around Z axis -xmag | `float` | gauss | | X Magnetic field -ymag | `float` | gauss | | Y Magnetic field -zmag | `float` | gauss | | Z Magnetic field -abs_pressure | `float` | hPa | | Absolute pressure -diff_pressure | `float` | hPa | | Differential pressure -pressure_alt | `float` | | | Altitude calculated from pressure -temperature | `float` | degC | | Temperature -fields_updated | `uint16_t` | | [HIGHRES_IMU_UPDATED_FLAGS](#HIGHRES_IMU_UPDATED_FLAGS) | Bitmap for fields that have updated since last message -id ++ | `uint8_t` | | | Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------ | ---------- | ----- | ------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| xacc | `float` | m/s/s | | X acceleration | +| yacc | `float` | m/s/s | | Y acceleration | +| zacc | `float` | m/s/s | | Z acceleration | +| xgyro | `float` | rad/s | | Angular speed around X axis | +| ygyro | `float` | rad/s | | Angular speed around Y axis | +| zgyro | `float` | rad/s | | Angular speed around Z axis | +| xmag | `float` | gauss | | X Magnetic field | +| ymag | `float` | gauss | | Y Magnetic field | +| zmag | `float` | gauss | | Z Magnetic field | +| abs_pressure | `float` | hPa | | Absolute pressure | +| diff_pressure | `float` | hPa | | Differential pressure | +| pressure_alt | `float` | | | Altitude calculated from pressure | +| temperature | `float` | degC | | Temperature | +| fields_updated | `uint16_t` | | [HIGHRES_IMU_UPDATED_FLAGS](#HIGHRES_IMU_UPDATED_FLAGS) | Bitmap for fields that have updated since last message | +| id ++ | `uint8_t` | | | Id. Ids are numbered from 0 and map to IMUs numbered from 1 (e.g. IMU1 will have a message with id=0)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | ### OPTICAL_FLOW_RAD (106) {#OPTICAL_FLOW_RAD} Optical flow from an angular rate flow sensor (e.g. PX4FLOW or mouse sensor) -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -sensor_id | `uint8_t` | | Sensor ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -integration_time_us | `uint32_t` | us | Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. -integrated_x | `float` | rad | Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) -integrated_y | `float` | rad | Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) -integrated_xgyro | `float` | rad | RH rotation around X axis -integrated_ygyro | `float` | rad | RH rotation around Y axis -integrated_zgyro | `float` | rad | RH rotation around Z axis -temperature | `int16_t` | cdegC | Temperature -quality | `uint8_t` | | Optical flow quality / confidence. 0: no valid flow, 255: maximum quality -time_delta_distance_us | `uint32_t` | us | Time since the distance was sampled. -distance | `float` | m | Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. - +| Field Name | Type | Units | Description | +| ---------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| sensor_id | `uint8_t` | | Sensor ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| integration_time_us | `uint32_t` | us | Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. | +| integrated_x | `float` | rad | Flow around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) | +| integrated_y | `float` | rad | Flow around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) | +| integrated_xgyro | `float` | rad | RH rotation around X axis | +| integrated_ygyro | `float` | rad | RH rotation around Y axis | +| integrated_zgyro | `float` | rad | RH rotation around Z axis | +| temperature | `int16_t` | cdegC | Temperature | +| quality | `uint8_t` | | Optical flow quality / confidence. 0: no valid flow, 255: maximum quality | +| time_delta_distance_us | `uint32_t` | us | Time since the distance was sampled. | +| distance | `float` | m | Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. | ### HIL_SENSOR (107) {#HIL_SENSOR} The IMU readings in SI units in NED body frame -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -xacc | `float` | m/s/s | | X acceleration -yacc | `float` | m/s/s | | Y acceleration -zacc | `float` | m/s/s | | Z acceleration -xgyro | `float` | rad/s | | Angular speed around X axis in body frame -ygyro | `float` | rad/s | | Angular speed around Y axis in body frame -zgyro | `float` | rad/s | | Angular speed around Z axis in body frame -xmag | `float` | gauss | | X Magnetic field -ymag | `float` | gauss | | Y Magnetic field -zmag | `float` | gauss | | Z Magnetic field -abs_pressure | `float` | hPa | | Absolute pressure -diff_pressure | `float` | hPa | | Differential pressure (airspeed) -pressure_alt | `float` | | | Altitude calculated from pressure -temperature | `float` | degC | | Temperature -fields_updated | `uint32_t` | | [HIL_SENSOR_UPDATED_FLAGS](#HIL_SENSOR_UPDATED_FLAGS) | Bitmap for fields that have updated since last message -id ++ | `uint8_t` | | | Sensor ID (zero indexed). Used for multiple sensor inputs - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------ | ---------- | ----- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| xacc | `float` | m/s/s | | X acceleration | +| yacc | `float` | m/s/s | | Y acceleration | +| zacc | `float` | m/s/s | | Z acceleration | +| xgyro | `float` | rad/s | | Angular speed around X axis in body frame | +| ygyro | `float` | rad/s | | Angular speed around Y axis in body frame | +| zgyro | `float` | rad/s | | Angular speed around Z axis in body frame | +| xmag | `float` | gauss | | X Magnetic field | +| ymag | `float` | gauss | | Y Magnetic field | +| zmag | `float` | gauss | | Z Magnetic field | +| abs_pressure | `float` | hPa | | Absolute pressure | +| diff_pressure | `float` | hPa | | Differential pressure (airspeed) | +| pressure_alt | `float` | | | Altitude calculated from pressure | +| temperature | `float` | degC | | Temperature | +| fields_updated | `uint32_t` | | [HIL_SENSOR_UPDATED_FLAGS](#HIL_SENSOR_UPDATED_FLAGS) | Bitmap for fields that have updated since last message | +| id ++ | `uint8_t` | | | Sensor ID (zero indexed). Used for multiple sensor inputs | ### SIM_STATE (108) {#SIM_STATE} Status of simulation environment, if used -Field Name | Type | Units | Description ---- | --- | --- | --- -q1 | `float` | | True attitude quaternion component 1, w (1 in null-rotation) -q2 | `float` | | True attitude quaternion component 2, x (0 in null-rotation) -q3 | `float` | | True attitude quaternion component 3, y (0 in null-rotation) -q4 | `float` | | True attitude quaternion component 4, z (0 in null-rotation) -roll | `float` | rad | Attitude roll expressed as Euler angles, not recommended except for human-readable outputs -pitch | `float` | rad | Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs -yaw | `float` | rad | Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs -xacc | `float` | m/s/s | X acceleration -yacc | `float` | m/s/s | Y acceleration -zacc | `float` | m/s/s | Z acceleration -xgyro | `float` | rad/s | Angular speed around X axis -ygyro | `float` | rad/s | Angular speed around Y axis -zgyro | `float` | rad/s | Angular speed around Z axis -lat | `float` | deg | Latitude (lower precision). Both this and the lat_int field should be set. -lon | `float` | deg | Longitude (lower precision). Both this and the lon_int field should be set. -alt | `float` | m | Altitude -std_dev_horz | `float` | | Horizontal position standard deviation -std_dev_vert | `float` | | Vertical position standard deviation -vn | `float` | m/s | True velocity in north direction in earth-fixed NED frame -ve | `float` | m/s | True velocity in east direction in earth-fixed NED frame -vd | `float` | m/s | True velocity in down direction in earth-fixed NED frame -lat_int ++ | `int32_t` | degE7 | Latitude (higher precision). If 0, recipients should use the lat field value (otherwise this field is preferred). -lon_int ++ | `int32_t` | degE7 | Longitude (higher precision). If 0, recipients should use the lon field value (otherwise this field is preferred). - +| Field Name | Type | Units | Description | +| ----------------------------------------------------------------------- | --------- | ----- | ------------------------------------------------------------------------------------------------------------------ | +| q1 | `float` | | True attitude quaternion component 1, w (1 in null-rotation) | +| q2 | `float` | | True attitude quaternion component 2, x (0 in null-rotation) | +| q3 | `float` | | True attitude quaternion component 3, y (0 in null-rotation) | +| q4 | `float` | | True attitude quaternion component 4, z (0 in null-rotation) | +| roll | `float` | rad | Attitude roll expressed as Euler angles, not recommended except for human-readable outputs | +| pitch | `float` | rad | Attitude pitch expressed as Euler angles, not recommended except for human-readable outputs | +| yaw | `float` | rad | Attitude yaw expressed as Euler angles, not recommended except for human-readable outputs | +| xacc | `float` | m/s/s | X acceleration | +| yacc | `float` | m/s/s | Y acceleration | +| zacc | `float` | m/s/s | Z acceleration | +| xgyro | `float` | rad/s | Angular speed around X axis | +| ygyro | `float` | rad/s | Angular speed around Y axis | +| zgyro | `float` | rad/s | Angular speed around Z axis | +| lat | `float` | deg | Latitude (lower precision). Both this and the lat_int field should be set. | +| lon | `float` | deg | Longitude (lower precision). Both this and the lon_int field should be set. | +| alt | `float` | m | Altitude | +| std_dev_horz | `float` | | Horizontal position standard deviation | +| std_dev_vert | `float` | | Vertical position standard deviation | +| vn | `float` | m/s | True velocity in north direction in earth-fixed NED frame | +| ve | `float` | m/s | True velocity in east direction in earth-fixed NED frame | +| vd | `float` | m/s | True velocity in down direction in earth-fixed NED frame | +| lat_int ++ | `int32_t` | degE7 | Latitude (higher precision). If 0, recipients should use the lat field value (otherwise this field is preferred). | +| lon_int ++ | `int32_t` | degE7 | Longitude (higher precision). If 0, recipients should use the lon field value (otherwise this field is preferred). | ### RADIO_STATUS (109) {#RADIO_STATUS} Status generated by radio and injected into MAVLink stream. -Field Name | Type | Units | Description ---- | --- | --- | --- -rssi | `uint8_t` | | Local (message sender) received signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. -remrssi | `uint8_t` | | Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. -txbuf | `uint8_t` | % | Remaining free transmitter buffer space. -noise | `uint8_t` | | Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. -remnoise | `uint8_t` | | Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. -rxerrors | `uint16_t` | | Count of radio packet receive errors (since boot). -fixed | `uint16_t` | | Count of error corrected radio packets (since boot). - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | +| rssi | `uint8_t` | | Local (message sender) received signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | +| remrssi | `uint8_t` | | Remote (message receiver) signal strength indication in device-dependent units/scale. Values: [0-254], UINT8_MAX: invalid/unknown. | +| txbuf | `uint8_t` | % | Remaining free transmitter buffer space. | +| noise | `uint8_t` | | Local background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. | +| remnoise | `uint8_t` | | Remote background noise level. These are device dependent RSSI values (scale as approx 2x dB on SiK radios). Values: [0-254], UINT8_MAX: invalid/unknown. | +| rxerrors | `uint16_t` | | Count of radio packet receive errors (since boot). | +| fixed | `uint16_t` | | Count of error corrected radio packets (since boot). | ### FILE_TRANSFER_PROTOCOL (110) {#FILE_TRANSFER_PROTOCOL} File transfer protocol message: https://mavlink.io/en/services/ftp.html. -Field Name | Type | Description ---- | --- | --- -target_network | `uint8_t` | Network ID (0 for broadcast) -target_system | `uint8_t` | System ID (0 for broadcast) -target_component | `uint8_t` | Component ID (0 for broadcast) -payload | `uint8_t[251]` | Variable length payload. The content/format of this block is defined in https://mavlink.io/en/services/ftp.html. The length is defined by the remaining message length when subtracting the header and other fields. See also [MAV_FTP_OPCODE](#MAV_FTP_OPCODE) and [MAV_FTP_ERR](#MAV_FTP_ERR). - +| Field Name | Type | Description | +| ---------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_network | `uint8_t` | Network ID (0 for broadcast) | +| target_system | `uint8_t` | System ID (0 for broadcast) | +| target_component | `uint8_t` | Component ID (0 for broadcast) | +| payload | `uint8_t[251]` | Variable length payload. The content/format of this block is defined in https://mavlink.io/en/services/ftp.html. The length is defined by the remaining message length when subtracting the header and other fields. See also [MAV_FTP_OPCODE](#MAV_FTP_OPCODE) and [MAV_FTP_ERR](#MAV_FTP_ERR). | ### TIMESYNC (111) {#TIMESYNC} @@ -1449,23 +1369,21 @@ Timestamps are UNIX Epoch time or time since system boot in nanoseconds (the tim The message sequence is repeated numerous times with results being filtered/averaged to estimate the offset. See also: https://mavlink.io/en/services/timesync.html. -Field Name | Type | Units | Description ---- | --- | --- | --- -tc1 | `int64_t` | ns | Time sync timestamp 1. Syncing: 0. Responding: Timestamp of responding component. -ts1 | `int64_t` | ns | Time sync timestamp 2. Timestamp of syncing component (mirrored in response). -target_system ++ | `uint8_t` | | Target system id. Request: 0 (broadcast) or id of specific system. Response must contain system id of the requesting component. -target_component ++ | `uint8_t` | | Target component id. Request: 0 (broadcast) or id of specific component. Response must contain component id of the requesting component. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------- | --------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| tc1 | `int64_t` | ns | Time sync timestamp 1. Syncing: 0. Responding: Timestamp of responding component. | +| ts1 | `int64_t` | ns | Time sync timestamp 2. Timestamp of syncing component (mirrored in response). | +| target_system ++ | `uint8_t` | | Target system id. Request: 0 (broadcast) or id of specific system. Response must contain system id of the requesting component. | +| target_component ++ | `uint8_t` | | Target component id. Request: 0 (broadcast) or id of specific component. Response must contain component id of the requesting component. | ### CAMERA_TRIGGER (112) {#CAMERA_TRIGGER} Camera-IMU triggering and synchronisation message. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -seq | `uint32_t` | | Image frame sequence - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | Timestamp for image frame (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| seq | `uint32_t` | | Image frame sequence | ### HIL_GPS (113) {#HIL_GPS} @@ -1473,87 +1391,83 @@ 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_INT](#GLOBAL_POSITION_INT) for the global position estimate. -Field Name | Type | Units | Multiplier | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -fix_type | `uint8_t` | | | 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. -lat | `int32_t` | degE7 | | Latitude (WGS84) -lon | `int32_t` | degE7 | | Longitude (WGS84) -alt | `int32_t` | mm | | Altitude (MSL). Positive for up. -eph | `uint16_t` | | 1E-2 | GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -epv | `uint16_t` | | 1E-2 | GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -vel | `uint16_t` | cm/s | | GPS ground speed. If unknown, set to: UINT16_MAX -vn | `int16_t` | cm/s | | GPS velocity in north direction in earth-fixed NED frame -ve | `int16_t` | cm/s | | GPS velocity in east direction in earth-fixed NED frame -vd | `int16_t` | cm/s | | GPS velocity in down direction in earth-fixed NED frame -cog | `uint16_t` | cdeg | | Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX -satellites_visible | `uint8_t` | | | Number of satellites visible. If unknown, set to UINT8_MAX -id ++ | `uint8_t` | | | GPS ID (zero indexed). Used for multiple GPS inputs -yaw ++ | `uint16_t` | cdeg | | Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north - +| Field Name | Type | Units | Multiplier | Description | +| ------------------------------------------------------------------- | ---------- | ----- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| fix_type | `uint8_t` | | | 0-1: no fix, 2: 2D fix, 3: 3D fix. Some applications will not use the value of this field unless it is at least two, so always correctly fill in the fix. | +| lat | `int32_t` | degE7 | | Latitude (WGS84) | +| lon | `int32_t` | degE7 | | Longitude (WGS84) | +| alt | `int32_t` | mm | | Altitude (MSL). Positive for up. | +| eph | `uint16_t` | | 1E-2 | GPS HDOP horizontal dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| epv | `uint16_t` | | 1E-2 | GPS VDOP vertical dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| vel | `uint16_t` | cm/s | | GPS ground speed. If unknown, set to: UINT16_MAX | +| vn | `int16_t` | cm/s | | GPS velocity in north direction in earth-fixed NED frame | +| ve | `int16_t` | cm/s | | GPS velocity in east direction in earth-fixed NED frame | +| vd | `int16_t` | cm/s | | GPS velocity in down direction in earth-fixed NED frame | +| cog | `uint16_t` | cdeg | | Course over ground (NOT heading, but direction of movement), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX | +| satellites_visible | `uint8_t` | | | Number of satellites visible. If unknown, set to UINT8_MAX | +| id ++ | `uint8_t` | | | GPS ID (zero indexed). Used for multiple GPS inputs | +| yaw ++ | `uint16_t` | cdeg | | Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north | ### HIL_OPTICAL_FLOW (114) {#HIL_OPTICAL_FLOW} Simulated optical flow from a flow sensor (e.g. PX4FLOW or optical mouse sensor) -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -sensor_id | `uint8_t` | | Sensor ID -integration_time_us | `uint32_t` | us | Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. -integrated_x | `float` | rad | Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) -integrated_y | `float` | rad | Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) -integrated_xgyro | `float` | rad | RH rotation around X axis -integrated_ygyro | `float` | rad | RH rotation around Y axis -integrated_zgyro | `float` | rad | RH rotation around Z axis -temperature | `int16_t` | cdegC | Temperature -quality | `uint8_t` | | Optical flow quality / confidence. 0: no valid flow, 255: maximum quality -time_delta_distance_us | `uint32_t` | us | Time since the distance was sampled. -distance | `float` | m | Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. - +| Field Name | Type | Units | Description | +| ---------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| sensor_id | `uint8_t` | | Sensor ID | +| integration_time_us | `uint32_t` | us | Integration time. Divide integrated_x and integrated_y by the integration time to obtain average flow. The integration time also indicates the. | +| integrated_x | `float` | rad | Flow in radians around X axis (Sensor RH rotation about the X axis induces a positive flow. Sensor linear motion along the positive Y axis induces a negative flow.) | +| integrated_y | `float` | rad | Flow in radians around Y axis (Sensor RH rotation about the Y axis induces a positive flow. Sensor linear motion along the positive X axis induces a positive flow.) | +| integrated_xgyro | `float` | rad | RH rotation around X axis | +| integrated_ygyro | `float` | rad | RH rotation around Y axis | +| integrated_zgyro | `float` | rad | RH rotation around Z axis | +| temperature | `int16_t` | cdegC | Temperature | +| quality | `uint8_t` | | Optical flow quality / confidence. 0: no valid flow, 255: maximum quality | +| time_delta_distance_us | `uint32_t` | us | Time since the distance was sampled. | +| distance | `float` | m | Distance to the center of the flow field. Positive value (including zero): distance known. Negative value: Unknown distance. | ### HIL_STATE_QUATERNION (115) {#HIL_STATE_QUATERNION} Sent from simulation to autopilot, avoids in contrast to [HIL_STATE](#HIL_STATE) singularities. This packet is useful for high throughput applications such as hardware in the loop simulations. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -attitude_quaternion | `float[4]` | | Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) -rollspeed | `float` | rad/s | Body frame roll / phi angular speed -pitchspeed | `float` | rad/s | Body frame pitch / theta angular speed -yawspeed | `float` | rad/s | Body frame yaw / psi angular speed -lat | `int32_t` | degE7 | Latitude -lon | `int32_t` | degE7 | Longitude -alt | `int32_t` | mm | Altitude -vx | `int16_t` | cm/s | Ground X Speed (Latitude) -vy | `int16_t` | cm/s | Ground Y Speed (Longitude) -vz | `int16_t` | cm/s | Ground Z Speed (Altitude) -ind_airspeed | `uint16_t` | cm/s | Indicated airspeed -true_airspeed | `uint16_t` | cm/s | True airspeed -xacc | `int16_t` | mG | X acceleration -yacc | `int16_t` | mG | Y acceleration -zacc | `int16_t` | mG | Z acceleration - +| Field Name | Type | Units | Description | +| ------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| attitude_quaternion | `float[4]` | | Vehicle attitude expressed as normalized quaternion in w, x, y, z order (with 1 0 0 0 being the null-rotation) | +| rollspeed | `float` | rad/s | Body frame roll / phi angular speed | +| pitchspeed | `float` | rad/s | Body frame pitch / theta angular speed | +| yawspeed | `float` | rad/s | Body frame yaw / psi angular speed | +| lat | `int32_t` | degE7 | Latitude | +| lon | `int32_t` | degE7 | Longitude | +| alt | `int32_t` | mm | Altitude | +| vx | `int16_t` | cm/s | Ground X Speed (Latitude) | +| vy | `int16_t` | cm/s | Ground Y Speed (Longitude) | +| vz | `int16_t` | cm/s | Ground Z Speed (Altitude) | +| ind_airspeed | `uint16_t` | cm/s | Indicated airspeed | +| true_airspeed | `uint16_t` | cm/s | True airspeed | +| xacc | `int16_t` | mG | X acceleration | +| yacc | `int16_t` | mG | Y acceleration | +| zacc | `int16_t` | mG | Z acceleration | ### SCALED_IMU2 (116) {#SCALED_IMU2} The RAW IMU readings for secondary 9DOF sensor setup. This message should contain the scaled values to the described units -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -xacc | `int16_t` | mG | X acceleration -yacc | `int16_t` | mG | Y acceleration -zacc | `int16_t` | mG | Z acceleration -xgyro | `int16_t` | mrad/s | Angular speed around X axis -ygyro | `int16_t` | mrad/s | Angular speed around Y axis -zgyro | `int16_t` | mrad/s | Angular speed around Z axis -xmag | `int16_t` | mgauss | X Magnetic field -ymag | `int16_t` | mgauss | Y Magnetic field -zmag | `int16_t` | mgauss | Z Magnetic field -temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ------ | ---------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| xacc | `int16_t` | mG | X acceleration | +| yacc | `int16_t` | mG | Y acceleration | +| zacc | `int16_t` | mG | Z acceleration | +| xgyro | `int16_t` | mrad/s | Angular speed around X axis | +| ygyro | `int16_t` | mrad/s | Angular speed around Y axis | +| zgyro | `int16_t` | mrad/s | Angular speed around Z axis | +| xmag | `int16_t` | mgauss | X Magnetic field | +| ymag | `int16_t` | mgauss | Y Magnetic field | +| zmag | `int16_t` | mgauss | Z Magnetic field | +| temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). | ### LOG_REQUEST_LIST (117) {#LOG_REQUEST_LIST} @@ -1564,71 +1478,65 @@ If there are no log files available this request shall be answered with one [LOG [LOG_ENTRY](#LOG_ENTRY) messages can start with id 1 or 0. The ground station needs to be able to process either. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -start | `uint16_t` | First log id (0 for first available) -end | `uint16_t` | Last log id (0xffff for last available) - +| Field Name | Type | Description | +| ---------------- | ---------- | --------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| start | `uint16_t` | First log id (0 for first available) | +| end | `uint16_t` | Last log id (0xffff for last available) | ### LOG_ENTRY (118) {#LOG_ENTRY} Reply to [LOG_REQUEST_LIST](#LOG_REQUEST_LIST) -Field Name | Type | Units | Description ---- | --- | --- | --- -id | `uint16_t` | | Log id -num_logs | `uint16_t` | | Total number of logs -last_log_num | `uint16_t` | | High log number -time_utc | `uint32_t` | s | UTC timestamp of log since 1970, or 0 if not available -size | `uint32_t` | bytes | Size of the log (may be approximate) - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ------------------------------------------------------ | +| id | `uint16_t` | | Log id | +| num_logs | `uint16_t` | | Total number of logs | +| last_log_num | `uint16_t` | | High log number | +| time_utc | `uint32_t` | s | UTC timestamp of log since 1970, or 0 if not available | +| size | `uint32_t` | bytes | Size of the log (may be approximate) | ### LOG_REQUEST_DATA (119) {#LOG_REQUEST_DATA} Request a chunk of a log -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -id | `uint16_t` | | Log id (from [LOG_ENTRY](#LOG_ENTRY) reply) -ofs | `uint32_t` | | Offset into the log -count | `uint32_t` | bytes | Number of bytes - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| id | `uint16_t` | | Log id (from [LOG_ENTRY](#LOG_ENTRY) reply) | +| ofs | `uint32_t` | | Offset into the log | +| count | `uint32_t` | bytes | Number of bytes | ### LOG_DATA (120) {#LOG_DATA} Reply to [LOG_REQUEST_DATA](#LOG_REQUEST_DATA) -Field Name | Type | Units | Description ---- | --- | --- | --- -id | `uint16_t` | | Log id (from [LOG_ENTRY](#LOG_ENTRY) reply) -ofs | `uint32_t` | | Offset into the log -count | `uint8_t` | bytes | Number of bytes (zero for end of log) -data | `uint8_t[90]` | | log data - +| Field Name | Type | Units | Description | +| ---------- | ------------- | ----- | ------------------------------------------- | +| id | `uint16_t` | | Log id (from [LOG_ENTRY](#LOG_ENTRY) reply) | +| ofs | `uint32_t` | | Offset into the log | +| count | `uint8_t` | bytes | Number of bytes (zero for end of log) | +| data | `uint8_t[90]` | | log data | ### LOG_ERASE (121) {#LOG_ERASE} Erase all logs -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID - +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### LOG_REQUEST_END (122) {#LOG_REQUEST_END} Stop log transfer and resume normal logging -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID - +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### GPS_INJECT_DATA (123) — [SUP] {#GPS_INJECT_DATA} @@ -1636,561 +1544,528 @@ target_component | `uint8_t` | Component ID Data for injecting into the onboard GPS (used for DGPS) -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -len | `uint8_t` | bytes | Data length -data | `uint8_t[110]` | | Raw data (110 is enough for 12 satellites of RTCMv2) - +| Field Name | Type | Units | Description | +| ---------------- | -------------- | ----- | ---------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| len | `uint8_t` | bytes | Data length | +| data | `uint8_t[110]` | | Raw data (110 is enough for 12 satellites of RTCMv2) | ### GPS2_RAW (124) {#GPS2_RAW} Second GPS data. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -fix_type | `uint8_t` | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS fix type. -lat | `int32_t` | degE7 | | Latitude (WGS84) -lon | `int32_t` | degE7 | | Longitude (WGS84) -alt | `int32_t` | mm | | Altitude (MSL). Positive for up. -eph | `uint16_t` | | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -epv | `uint16_t` | | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless * 100). If unknown, set to: UINT16_MAX -vel | `uint16_t` | cm/s | invalid:UINT16_MAX | GPS ground speed. If unknown, set to: UINT16_MAX -cog | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX -satellites_visible | `uint8_t` | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX -dgps_numch | `uint8_t` | | | Number of DGPS satellites -dgps_age | `uint32_t` | ms | | Age of DGPS info -yaw ++ | `uint16_t` | cdeg | invalid:0 | Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. -alt_ellipsoid ++ | `int32_t` | mm | | Altitude (above WGS84, EGM96 ellipsoid). Positive for up. -h_acc ++ | `uint32_t` | mm | | Position uncertainty. -v_acc ++ | `uint32_t` | mm | | Altitude uncertainty. -vel_acc ++ | `uint32_t` | mm/s | | Speed uncertainty. -hdg_acc ++ | `uint32_t` | degE5 | | Heading / track uncertainty - +| Field Name | Type | Units | Values | Description | +| ----------------------------------------------------------------------------- | ---------- | ----- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| fix_type | `uint8_t` | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS fix type. | +| lat | `int32_t` | degE7 | | Latitude (WGS84) | +| lon | `int32_t` | degE7 | | Longitude (WGS84) | +| alt | `int32_t` | mm | | Altitude (MSL). Positive for up. | +| eph | `uint16_t` | | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| epv | `uint16_t` | | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless \* 100). If unknown, set to: UINT16_MAX | +| vel | `uint16_t` | cm/s | invalid:UINT16_MAX | GPS ground speed. If unknown, set to: UINT16_MAX | +| cog | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground (NOT heading, but direction of movement): 0.0..359.99 degrees. If unknown, set to: UINT16_MAX | +| satellites_visible | `uint8_t` | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX | +| dgps_numch | `uint8_t` | | | Number of DGPS satellites | +| dgps_age | `uint32_t` | ms | | Age of DGPS info | +| yaw ++ | `uint16_t` | cdeg | invalid:0 | Yaw in earth frame from north. Use 0 if this GPS does not provide yaw. Use UINT16_MAX if this GPS is configured to provide yaw and is currently unable to provide it. Use 36000 for north. | +| alt_ellipsoid ++ | `int32_t` | mm | | Altitude (above WGS84, EGM96 ellipsoid). Positive for up. | +| h_acc ++ | `uint32_t` | mm | | Position uncertainty. | +| v_acc ++ | `uint32_t` | mm | | Altitude uncertainty. | +| vel_acc ++ | `uint32_t` | mm/s | | Speed uncertainty. | +| hdg_acc ++ | `uint32_t` | degE5 | | Heading / track uncertainty | ### POWER_STATUS (125) {#POWER_STATUS} Power supply status -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -Vcc | `uint16_t` | mV | | 5V rail voltage. -Vservo | `uint16_t` | mV | | Servo rail voltage. -flags | `uint16_t` | | [MAV_POWER_STATUS](#MAV_POWER_STATUS) | Bitmap of power supply status flags. - +| Field Name | Type | Units | Values | Description | +| ---------- | ---------- | ----- | ------------------------------------- | ------------------------------------ | +| Vcc | `uint16_t` | mV | | 5V rail voltage. | +| Vservo | `uint16_t` | mV | | Servo rail voltage. | +| flags | `uint16_t` | | [MAV_POWER_STATUS](#MAV_POWER_STATUS) | Bitmap of power supply status flags. | ### SERIAL_CONTROL (126) {#SERIAL_CONTROL} 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 | Units | Values | Description ---- | --- | --- | --- | --- -device | `uint8_t` | | [SERIAL_CONTROL_DEV](#SERIAL_CONTROL_DEV) | Serial control device type. -flags | `uint8_t` | | [SERIAL_CONTROL_FLAG](#SERIAL_CONTROL_FLAG) | Bitmap of serial control flags. -timeout | `uint16_t` | ms | | Timeout for reply data -baudrate | `uint32_t` | bits/s | | Baudrate of transfer. Zero means no change. -count | `uint8_t` | bytes | | how many bytes in this transfer -data | `uint8_t[70]` | | | serial data -target_system ++ | `uint8_t` | | | System ID -target_component ++ | `uint8_t` | | | Component ID - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ------------- | ------ | ------------------------------------------- | ------------------------------------------- | +| device | `uint8_t` | | [SERIAL_CONTROL_DEV](#SERIAL_CONTROL_DEV) | Serial control device type. | +| flags | `uint8_t` | | [SERIAL_CONTROL_FLAG](#SERIAL_CONTROL_FLAG) | Bitmap of serial control flags. | +| timeout | `uint16_t` | ms | | Timeout for reply data | +| baudrate | `uint32_t` | bits/s | | Baudrate of transfer. Zero means no change. | +| count | `uint8_t` | bytes | | how many bytes in this transfer | +| data | `uint8_t[70]` | | | serial data | +| target_system ++ | `uint8_t` | | | System ID | +| target_component ++ | `uint8_t` | | | Component ID | ### GPS_RTK (127) {#GPS_RTK} RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_last_baseline_ms | `uint32_t` | ms | | Time since boot of last baseline message received. -rtk_receiver_id | `uint8_t` | | | Identification of connected RTK receiver. -wn | `uint16_t` | | | GPS Week Number of last baseline -tow | `uint32_t` | ms | | GPS Time of Week of last baseline -rtk_health | `uint8_t` | | | GPS-specific health report for RTK data. -rtk_rate | `uint8_t` | Hz | | Rate of baseline messages being received by GPS -nsats | `uint8_t` | | | Current number of sats used for RTK calculation. -baseline_coords_type | `uint8_t` | | [RTK_BASELINE_COORDINATE_SYSTEM](#RTK_BASELINE_COORDINATE_SYSTEM) | Coordinate system of baseline -baseline_a_mm | `int32_t` | mm | | Current baseline in ECEF x or NED north component. -baseline_b_mm | `int32_t` | mm | | Current baseline in ECEF y or NED east component. -baseline_c_mm | `int32_t` | mm | | Current baseline in ECEF z or NED down component. -accuracy | `uint32_t` | | | Current estimate of baseline accuracy. -iar_num_hypotheses | `int32_t` | | | Current number of integer ambiguity hypotheses. - +| Field Name | Type | Units | Values | Description | +| --------------------- | ---------- | ----- | ----------------------------------------------------------------- | -------------------------------------------------- | +| time_last_baseline_ms | `uint32_t` | ms | | Time since boot of last baseline message received. | +| rtk_receiver_id | `uint8_t` | | | Identification of connected RTK receiver. | +| wn | `uint16_t` | | | GPS Week Number of last baseline | +| tow | `uint32_t` | ms | | GPS Time of Week of last baseline | +| rtk_health | `uint8_t` | | | GPS-specific health report for RTK data. | +| rtk_rate | `uint8_t` | Hz | | Rate of baseline messages being received by GPS | +| nsats | `uint8_t` | | | Current number of sats used for RTK calculation. | +| baseline_coords_type | `uint8_t` | | [RTK_BASELINE_COORDINATE_SYSTEM](#RTK_BASELINE_COORDINATE_SYSTEM) | Coordinate system of baseline | +| baseline_a_mm | `int32_t` | mm | | Current baseline in ECEF x or NED north component. | +| baseline_b_mm | `int32_t` | mm | | Current baseline in ECEF y or NED east component. | +| baseline_c_mm | `int32_t` | mm | | Current baseline in ECEF z or NED down component. | +| accuracy | `uint32_t` | | | Current estimate of baseline accuracy. | +| iar_num_hypotheses | `int32_t` | | | Current number of integer ambiguity hypotheses. | ### GPS2_RTK (128) {#GPS2_RTK} RTK GPS data. Gives information on the relative baseline calculation the GPS is reporting -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_last_baseline_ms | `uint32_t` | ms | | Time since boot of last baseline message received. -rtk_receiver_id | `uint8_t` | | | Identification of connected RTK receiver. -wn | `uint16_t` | | | GPS Week Number of last baseline -tow | `uint32_t` | ms | | GPS Time of Week of last baseline -rtk_health | `uint8_t` | | | GPS-specific health report for RTK data. -rtk_rate | `uint8_t` | Hz | | Rate of baseline messages being received by GPS -nsats | `uint8_t` | | | Current number of sats used for RTK calculation. -baseline_coords_type | `uint8_t` | | [RTK_BASELINE_COORDINATE_SYSTEM](#RTK_BASELINE_COORDINATE_SYSTEM) | Coordinate system of baseline -baseline_a_mm | `int32_t` | mm | | Current baseline in ECEF x or NED north component. -baseline_b_mm | `int32_t` | mm | | Current baseline in ECEF y or NED east component. -baseline_c_mm | `int32_t` | mm | | Current baseline in ECEF z or NED down component. -accuracy | `uint32_t` | | | Current estimate of baseline accuracy. -iar_num_hypotheses | `int32_t` | | | Current number of integer ambiguity hypotheses. - +| Field Name | Type | Units | Values | Description | +| --------------------- | ---------- | ----- | ----------------------------------------------------------------- | -------------------------------------------------- | +| time_last_baseline_ms | `uint32_t` | ms | | Time since boot of last baseline message received. | +| rtk_receiver_id | `uint8_t` | | | Identification of connected RTK receiver. | +| wn | `uint16_t` | | | GPS Week Number of last baseline | +| tow | `uint32_t` | ms | | GPS Time of Week of last baseline | +| rtk_health | `uint8_t` | | | GPS-specific health report for RTK data. | +| rtk_rate | `uint8_t` | Hz | | Rate of baseline messages being received by GPS | +| nsats | `uint8_t` | | | Current number of sats used for RTK calculation. | +| baseline_coords_type | `uint8_t` | | [RTK_BASELINE_COORDINATE_SYSTEM](#RTK_BASELINE_COORDINATE_SYSTEM) | Coordinate system of baseline | +| baseline_a_mm | `int32_t` | mm | | Current baseline in ECEF x or NED north component. | +| baseline_b_mm | `int32_t` | mm | | Current baseline in ECEF y or NED east component. | +| baseline_c_mm | `int32_t` | mm | | Current baseline in ECEF z or NED down component. | +| accuracy | `uint32_t` | | | Current estimate of baseline accuracy. | +| iar_num_hypotheses | `int32_t` | | | Current number of integer ambiguity hypotheses. | ### SCALED_IMU3 (129) {#SCALED_IMU3} The RAW IMU readings for 3rd 9DOF sensor setup. This message should contain the scaled values to the described units -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -xacc | `int16_t` | mG | X acceleration -yacc | `int16_t` | mG | Y acceleration -zacc | `int16_t` | mG | Z acceleration -xgyro | `int16_t` | mrad/s | Angular speed around X axis -ygyro | `int16_t` | mrad/s | Angular speed around Y axis -zgyro | `int16_t` | mrad/s | Angular speed around Z axis -xmag | `int16_t` | mgauss | X Magnetic field -ymag | `int16_t` | mgauss | Y Magnetic field -zmag | `int16_t` | mgauss | Z Magnetic field -temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). - +| Field Name | Type | Units | Description | +| --------------------------------------------------------------------------- | ---------- | ------ | ---------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| xacc | `int16_t` | mG | X acceleration | +| yacc | `int16_t` | mG | Y acceleration | +| zacc | `int16_t` | mG | Z acceleration | +| xgyro | `int16_t` | mrad/s | Angular speed around X axis | +| ygyro | `int16_t` | mrad/s | Angular speed around Y axis | +| zgyro | `int16_t` | mrad/s | Angular speed around Z axis | +| xmag | `int16_t` | mgauss | X Magnetic field | +| ymag | `int16_t` | mgauss | Y Magnetic field | +| zmag | `int16_t` | mgauss | Z Magnetic field | +| temperature ++ | `int16_t` | cdegC | Temperature, 0: IMU does not provide temperature values. If the IMU is at 0C it must send 1 (0.01C). | ### DATA_TRANSMISSION_HANDSHAKE (130) {#DATA_TRANSMISSION_HANDSHAKE} Handshake message to initiate, control and stop image streaming when using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -type | `uint8_t` | | [MAVLINK_DATA_STREAM_TYPE](#MAVLINK_DATA_STREAM_TYPE) | Type of requested/acknowledged data. -size | `uint32_t` | bytes | | total data size (set on ACK only). -width | `uint16_t` | | | Width of a matrix or image. -height | `uint16_t` | | | Height of a matrix or image. -packets | `uint16_t` | | | Number of packets being sent (set on ACK only). -payload | `uint8_t` | bytes | | Payload size per packet (normally 253 byte, see DATA field size in message [ENCAPSULATED_DATA](#ENCAPSULATED_DATA)) (set on ACK only). -jpg_quality | `uint8_t` | % | | JPEG quality. Values: [1-100]. - +| Field Name | Type | Units | Values | Description | +| ----------- | ---------- | ----- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | +| type | `uint8_t` | | [MAVLINK_DATA_STREAM_TYPE](#MAVLINK_DATA_STREAM_TYPE) | Type of requested/acknowledged data. | +| size | `uint32_t` | bytes | | total data size (set on ACK only). | +| width | `uint16_t` | | | Width of a matrix or image. | +| height | `uint16_t` | | | Height of a matrix or image. | +| packets | `uint16_t` | | | Number of packets being sent (set on ACK only). | +| payload | `uint8_t` | bytes | | Payload size per packet (normally 253 byte, see DATA field size in message [ENCAPSULATED_DATA](#ENCAPSULATED_DATA)) (set on ACK only). | +| jpg_quality | `uint8_t` | % | | JPEG quality. Values: [1-100]. | ### ENCAPSULATED_DATA (131) {#ENCAPSULATED_DATA} Data packet for images sent using the Image Transmission Protocol: https://mavlink.io/en/services/image_transmission.html. -Field Name | Type | Description ---- | --- | --- -seqnr | `uint16_t` | sequence number (starting with 0 on every transmission) -data | `uint8_t[253]` | image data bytes - +| Field Name | Type | Description | +| ---------- | -------------- | ------------------------------------------------------- | +| seqnr | `uint16_t` | sequence number (starting with 0 on every transmission) | +| data | `uint8_t[253]` | image data bytes | ### DISTANCE_SENSOR (132) {#DISTANCE_SENSOR} Distance sensor information for an onboard rangefinder. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -min_distance | `uint16_t` | cm | | Minimum distance the sensor can measure -max_distance | `uint16_t` | cm | | Maximum distance the sensor can measure -current_distance | `uint16_t` | cm | | Current distance reading -type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Type of distance sensor. -id | `uint8_t` | | | Onboard ID of the sensor
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -orientation | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | Direction the sensor faces. downward-facing: [ROTATION_PITCH_270](#ROTATION_PITCH_270), upward-facing: [ROTATION_PITCH_90](#ROTATION_PITCH_90), backward-facing: [ROTATION_PITCH_180](#ROTATION_PITCH_180), forward-facing: [ROTATION_NONE](#ROTATION_NONE), left-facing: [ROTATION_YAW_90](#ROTATION_YAW_90), right-facing: [ROTATION_YAW_270](#ROTATION_YAW_270) -covariance | `uint8_t` | cm^2 | invalid:UINT8_MAX | Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. -horizontal_fov ++ | `float` | rad | invalid:0 | Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. -vertical_fov ++ | `float` | rad | invalid:0 | Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. -quaternion ++ | `float[4]` | | invalid:[0] | Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to [MAV_SENSOR_ROTATION_CUSTOM](#MAV_SENSOR_ROTATION_CUSTOM). Set it to 0 if invalid." -signal_quality ++ | `uint8_t` | % | invalid:0 | Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------------ | ---------- | ----- | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| min_distance | `uint16_t` | cm | | Minimum distance the sensor can measure | +| max_distance | `uint16_t` | cm | | Maximum distance the sensor can measure | +| current_distance | `uint16_t` | cm | | Current distance reading | +| type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Type of distance sensor. | +| id | `uint8_t` | | | Onboard ID of the sensor
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| orientation | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | Direction the sensor faces. downward-facing: [ROTATION_PITCH_270](#ROTATION_PITCH_270), upward-facing: [ROTATION_PITCH_90](#ROTATION_PITCH_90), backward-facing: [ROTATION_PITCH_180](#ROTATION_PITCH_180), forward-facing: [ROTATION_NONE](#ROTATION_NONE), left-facing: [ROTATION_YAW_90](#ROTATION_YAW_90), right-facing: [ROTATION_YAW_270](#ROTATION_YAW_270) | +| covariance | `uint8_t` | cm^2 | invalid:UINT8_MAX | Measurement variance. Max standard deviation is 6cm. UINT8_MAX if unknown. | +| horizontal_fov ++ | `float` | rad | invalid:0 | Horizontal Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. | +| vertical_fov ++ | `float` | rad | invalid:0 | Vertical Field of View (angle) where the distance measurement is valid and the field of view is known. Otherwise this is set to 0. | +| quaternion ++ | `float[4]` | | invalid:[0] | Quaternion of the sensor orientation in vehicle body frame (w, x, y, z order, zero-rotation is 1, 0, 0, 0). Zero-rotation is along the vehicle body x-axis. This field is required if the orientation is set to [MAV_SENSOR_ROTATION_CUSTOM](#MAV_SENSOR_ROTATION_CUSTOM). Set it to 0 if invalid." | +| signal_quality ++ | `uint8_t` | % | invalid:0 | Signal quality of the sensor. Specific to each sensor type, representing the relation of the signal strength with the target reflectivity, distance, size or aspect, but normalised as a percentage. 0 = unknown/unset signal quality, 1 = invalid signal, 100 = perfect signal. | ### TERRAIN_REQUEST (133) {#TERRAIN_REQUEST} Request for terrain data and terrain status. See terrain protocol docs: https://mavlink.io/en/services/terrain.html -Field Name | Type | Units | Description ---- | --- | --- | --- -lat | `int32_t` | degE7 | Latitude of SW corner of first grid -lon | `int32_t` | degE7 | Longitude of SW corner of first grid -grid_spacing | `uint16_t` | m | Grid spacing -mask | `uint64_t` | | Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ---------------------------------------------------------------------- | +| lat | `int32_t` | degE7 | Latitude of SW corner of first grid | +| lon | `int32_t` | degE7 | Longitude of SW corner of first grid | +| grid_spacing | `uint16_t` | m | Grid spacing | +| mask | `uint64_t` | | Bitmask of requested 4x4 grids (row major 8x7 array of grids, 56 bits) | ### TERRAIN_DATA (134) {#TERRAIN_DATA} Terrain data sent from GCS. The lat/lon and grid_spacing must be the same as a lat/lon from a [TERRAIN_REQUEST](#TERRAIN_REQUEST). See terrain protocol docs: https://mavlink.io/en/services/terrain.html -Field Name | Type | Units | Description ---- | --- | --- | --- -lat | `int32_t` | degE7 | Latitude of SW corner of first grid -lon | `int32_t` | degE7 | Longitude of SW corner of first grid -grid_spacing | `uint16_t` | m | Grid spacing -gridbit | `uint8_t` | | bit within the terrain request mask -data | `int16_t[16]` | m | Terrain data MSL - +| Field Name | Type | Units | Description | +| ------------ | ------------- | ----- | ------------------------------------ | +| lat | `int32_t` | degE7 | Latitude of SW corner of first grid | +| lon | `int32_t` | degE7 | Longitude of SW corner of first grid | +| grid_spacing | `uint16_t` | m | Grid spacing | +| gridbit | `uint8_t` | | bit within the terrain request mask | +| data | `int16_t[16]` | m | Terrain data MSL | ### TERRAIN_CHECK (135) {#TERRAIN_CHECK} Request that the vehicle report terrain height at the given location (expected response is a [TERRAIN_REPORT](#TERRAIN_REPORT)). Used by GCS to check if vehicle has all terrain data needed for a mission. -Field Name | Type | Units | Description ---- | --- | --- | --- -lat | `int32_t` | degE7 | Latitude -lon | `int32_t` | degE7 | Longitude - +| Field Name | Type | Units | Description | +| ---------- | --------- | ----- | ----------- | +| lat | `int32_t` | degE7 | Latitude | +| lon | `int32_t` | degE7 | Longitude | ### TERRAIN_REPORT (136) {#TERRAIN_REPORT} Streamed from drone to report progress of terrain map download (initiated by [TERRAIN_REQUEST](#TERRAIN_REQUEST)), or sent as a response to a [TERRAIN_CHECK](#TERRAIN_CHECK) request. See terrain protocol docs: https://mavlink.io/en/services/terrain.html -Field Name | Type | Units | Description ---- | --- | --- | --- -lat | `int32_t` | degE7 | Latitude -lon | `int32_t` | degE7 | Longitude -spacing | `uint16_t` | | grid spacing (zero if terrain at this location unavailable) -terrain_height | `float` | m | Terrain height MSL -current_height | `float` | m | Current vehicle height above lat/lon terrain height -pending | `uint16_t` | | Number of 4x4 terrain blocks waiting to be received or read from disk -loaded | `uint16_t` | | Number of 4x4 terrain blocks in memory - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | --------------------------------------------------------------------- | +| lat | `int32_t` | degE7 | Latitude | +| lon | `int32_t` | degE7 | Longitude | +| spacing | `uint16_t` | | grid spacing (zero if terrain at this location unavailable) | +| terrain_height | `float` | m | Terrain height MSL | +| current_height | `float` | m | Current vehicle height above lat/lon terrain height | +| pending | `uint16_t` | | Number of 4x4 terrain blocks waiting to be received or read from disk | +| loaded | `uint16_t` | | Number of 4x4 terrain blocks in memory | ### SCALED_PRESSURE2 (137) {#SCALED_PRESSURE2} Barometer readings for 2nd barometer -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -press_abs | `float` | hPa | Absolute pressure -press_diff | `float` | hPa | Differential pressure -temperature | `int16_t` | cdegC | Absolute pressure temperature -temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------------- | ---------- | ----- | ---------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| press_abs | `float` | hPa | Absolute pressure | +| press_diff | `float` | hPa | Differential pressure | +| temperature | `int16_t` | cdegC | Absolute pressure temperature | +| temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. | ### ATT_POS_MOCAP (138) {#ATT_POS_MOCAP} Motion capture attitude and position -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -q | `float[4]` | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -x | `float` | m | X position (NED) -y | `float` | m | Y position (NED) -z | `float` | m | Z position (NED) -covariance ++ | `float[21]` | | Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------- | ----------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| q | `float[4]` | | Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| x | `float` | m | X position (NED) | +| y | `float` | m | Y position (NED) | +| z | `float` | m | Z position (NED) | +| covariance ++ | `float[21]` | | Row-major representation of a pose 6x6 cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | ### SET_ACTUATOR_CONTROL_TARGET (139) {#SET_ACTUATOR_CONTROL_TARGET} Set the vehicle attitude and body angular rates. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -group_mlx | `uint8_t` | | Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -controls | `float[8]` | | Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| group_mlx | `uint8_t` | | Actuator group. The "\_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| controls | `float[8]` | | Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. | ### ACTUATOR_CONTROL_TARGET (140) {#ACTUATOR_CONTROL_TARGET} Set the vehicle attitude and body angular rates. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -group_mlx | `uint8_t` | | Actuator group. The "_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. -controls | `float[8]` | | Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| group_mlx | `uint8_t` | | Actuator group. The "\_mlx" indicates this is a multi-instance message and a MAVLink parser should use this field to difference between instances. | +| controls | `float[8]` | | Actuator controls. Normed to -1..+1 where 0 is neutral position. Throttle for single rotation direction motors is 0..1, negative range for reverse direction. Standard mapping for attitude controls (group 0): (index 0-7): roll, pitch, yaw, throttle, flaps, spoilers, airbrakes, landing gear. Load a pass-through mixer to repurpose them as generic outputs. | ### ALTITUDE (141) {#ALTITUDE} The current system altitude. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -altitude_monotonic | `float` | m | This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. -altitude_amsl | `float` | m | This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is *not* the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. -altitude_local | `float` | m | This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. -altitude_relative | `float` | m | This is the altitude above the home position. It resets on each change of the current home position. -altitude_terrain | `float` | m | This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. -bottom_clearance | `float` | m | This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. - +| Field Name | Type | Units | Description | +| ------------------ | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| altitude_monotonic | `float` | m | This altitude measure is initialized on system boot and monotonic (it is never reset, but represents the local altitude change). The only guarantee on this field is that it will never be reset and is consistent within a flight. The recommended value for this field is the uncorrected barometric altitude at boot time. This altitude will also drift and vary between flights. | +| altitude_amsl | `float` | m | This altitude measure is strictly above mean sea level and might be non-monotonic (it might reset on events like GPS lock or when a new QNH value is set). It should be the altitude to which global altitude waypoints are compared to. Note that it is _not_ the GPS altitude, however, most GPS modules already output MSL by default and not the WGS84 altitude. | +| altitude_local | `float` | m | This is the local altitude in the local coordinate frame. It is not the altitude above home, but in reference to the coordinate origin (0, 0, 0). It is up-positive. | +| altitude_relative | `float` | m | This is the altitude above the home position. It resets on each change of the current home position. | +| altitude_terrain | `float` | m | This is the altitude above terrain. It might be fed by a terrain database or an altimeter. Values smaller than -1000 should be interpreted as unknown. | +| bottom_clearance | `float` | m | This is not the altitude, but the clear space below the system according to the fused clearance estimate. It generally should max out at the maximum range of e.g. the laser altimeter. It is generally a moving target. A negative value indicates no measurement available. | ### RESOURCE_REQUEST (142) {#RESOURCE_REQUEST} The autopilot is requesting a resource (file, binary, other type of data) -Field Name | Type | Description ---- | --- | --- -request_id | `uint8_t` | Request ID. This ID should be reused when sending back URI contents -uri_type | `uint8_t` | The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary -uri | `uint8_t[120]` | The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) -transfer_type | `uint8_t` | The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. -storage | `uint8_t[120]` | The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). - +| Field Name | Type | Description | +| ------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| request_id | `uint8_t` | Request ID. This ID should be reused when sending back URI contents | +| uri_type | `uint8_t` | The type of requested URI. 0 = a file via URL. 1 = a UAVCAN binary | +| uri | `uint8_t[120]` | The requested unique resource identifier (URI). It is not necessarily a straight domain name (depends on the URI type enum) | +| transfer_type | `uint8_t` | The way the autopilot wants to receive the URI. 0 = MAVLink FTP. 1 = binary stream. | +| storage | `uint8_t[120]` | The storage path the autopilot wants the URI to be stored in. Will only be valid if the transfer_type has a storage associated (e.g. MAVLink FTP). | ### SCALED_PRESSURE3 (143) {#SCALED_PRESSURE3} Barometer readings for 3rd barometer -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -press_abs | `float` | hPa | Absolute pressure -press_diff | `float` | hPa | Differential pressure -temperature | `int16_t` | cdegC | Absolute pressure temperature -temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------------- | ---------- | ----- | ---------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| press_abs | `float` | hPa | Absolute pressure | +| press_diff | `float` | hPa | Differential pressure | +| temperature | `int16_t` | cdegC | Absolute pressure temperature | +| temperature_press_diff ++ | `int16_t` | cdegC | Differential pressure temperature (0, if not available). Report values of 0 (or 1) as 1 cdegC. | ### FOLLOW_TARGET (144) {#FOLLOW_TARGET} Current motion information from a designated system -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | ms | Timestamp (time since system boot). -est_capabilities | `uint8_t` | | bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) -lat | `int32_t` | degE7 | Latitude (WGS84) -lon | `int32_t` | degE7 | Longitude (WGS84) -alt | `float` | m | Altitude (MSL) -vel | `float[3]` | m/s | target velocity (0,0,0) for unknown -acc | `float[3]` | m/s/s | linear target acceleration (0,0,0) for unknown -attitude_q | `float[4]` | | (0 0 0 0 for unknown) -rates | `float[3]` | | (0 0 0 for unknown) -position_cov | `float[3]` | | eph epv -custom_state | `uint64_t` | | button states or switches of a tracker device - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------------------------------------------------- | +| timestamp | `uint64_t` | ms | Timestamp (time since system boot). | +| est_capabilities | `uint8_t` | | bit positions for tracker reporting capabilities (POS = 0, VEL = 1, ACCEL = 2, ATT + RATES = 3) | +| lat | `int32_t` | degE7 | Latitude (WGS84) | +| lon | `int32_t` | degE7 | Longitude (WGS84) | +| alt | `float` | m | Altitude (MSL) | +| vel | `float[3]` | m/s | target velocity (0,0,0) for unknown | +| acc | `float[3]` | m/s/s | linear target acceleration (0,0,0) for unknown | +| attitude_q | `float[4]` | | (0 0 0 0 for unknown) | +| rates | `float[3]` | | (0 0 0 for unknown) | +| position_cov | `float[3]` | | eph epv | +| custom_state | `uint64_t` | | button states or switches of a tracker device | ### CONTROL_SYSTEM_STATE (146) {#CONTROL_SYSTEM_STATE} The smoothed, monotonic system state used to feed the control loops of the system. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -x_acc | `float` | m/s/s | X acceleration in body frame -y_acc | `float` | m/s/s | Y acceleration in body frame -z_acc | `float` | m/s/s | Z acceleration in body frame -x_vel | `float` | m/s | X velocity in body frame -y_vel | `float` | m/s | Y velocity in body frame -z_vel | `float` | m/s | Z velocity in body frame -x_pos | `float` | m | X position in local frame -y_pos | `float` | m | Y position in local frame -z_pos | `float` | m | Z position in local frame -airspeed | `float` | m/s | Airspeed, set to -1 if unknown -vel_variance | `float[3]` | | Variance of body velocity estimate -pos_variance | `float[3]` | | Variance in local position -q | `float[4]` | | The attitude, represented as Quaternion -roll_rate | `float` | rad/s | Angular rate in roll axis -pitch_rate | `float` | rad/s | Angular rate in pitch axis -yaw_rate | `float` | rad/s | Angular rate in yaw axis - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| x_acc | `float` | m/s/s | X acceleration in body frame | +| y_acc | `float` | m/s/s | Y acceleration in body frame | +| z_acc | `float` | m/s/s | Z acceleration in body frame | +| x_vel | `float` | m/s | X velocity in body frame | +| y_vel | `float` | m/s | Y velocity in body frame | +| z_vel | `float` | m/s | Z velocity in body frame | +| x_pos | `float` | m | X position in local frame | +| y_pos | `float` | m | Y position in local frame | +| z_pos | `float` | m | Z position in local frame | +| airspeed | `float` | m/s | Airspeed, set to -1 if unknown | +| vel_variance | `float[3]` | | Variance of body velocity estimate | +| pos_variance | `float[3]` | | Variance in local position | +| q | `float[4]` | | The attitude, represented as Quaternion | +| roll_rate | `float` | rad/s | Angular rate in roll axis | +| pitch_rate | `float` | rad/s | Angular rate in pitch axis | +| yaw_rate | `float` | rad/s | Angular rate in yaw axis | ### BATTERY_STATUS (147) {#BATTERY_STATUS} Battery information. Updates GCS with flight controller battery status. Smart batteries also use this message, but may additionally send [BATTERY_INFO](#BATTERY_INFO). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery -type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery -temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature of the battery. INT16_MAX for unknown temperature. -voltages | `uint16_t[10]` | mV | invalid:[UINT16_MAX] | Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 * (UINT16_MAX - 1). -current_battery | `int16_t` | cA | invalid:-1 | Battery current, -1: autopilot does not measure the current. Value may overflow/rollover for very high currents (> 327.67A) -current_consumed | `int32_t` | mAh | invalid:-1 | Consumed charge, -1: autopilot does not provide consumption estimate -energy_consumed | `int32_t` | hJ | invalid:-1 | Consumed energy, -1: autopilot does not provide energy consumption estimate -battery_remaining | `int8_t` | % | invalid:-1 | Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. -time_remaining ++ | `int32_t` | s | invalid:0 | Remaining battery time, 0: autopilot does not provide remaining battery time estimate -charge_state ++ | `uint8_t` | | [MAV_BATTERY_CHARGE_STATE](#MAV_BATTERY_CHARGE_STATE) | State for extent of discharge, provided by autopilot for warning or external reactions -voltages_ext ++ | `uint16_t[4]` | mV | invalid:[0] | Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. -mode ++ | `uint8_t` | | [MAV_BATTERY_MODE](#MAV_BATTERY_MODE) | Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. -fault_bitmask ++ | `uint32_t` | | [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT) | Fault/health indications. These should be set when charge_state is [MAV_BATTERY_CHARGE_STATE_FAILED](#MAV_BATTERY_CHARGE_STATE_FAILED) or [MAV_BATTERY_CHARGE_STATE_UNHEALTHY](#MAV_BATTERY_CHARGE_STATE_UNHEALTHY) (if not, fault reporting is not supported). - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------------ | -------------- | ----- | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery | +| type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery | +| temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature of the battery. INT16_MAX for unknown temperature. | +| voltages | `uint16_t[10]` | mV | invalid:[UINT16_MAX] | Battery voltage of cells 1 to 10 (see voltages_ext for cells 11-14). Cells in this field above the valid cell count for this battery should have the UINT16_MAX value. If individual cell voltages are unknown or not measured for this battery, then the overall battery voltage should be filled in cell 0, with all others set to UINT16_MAX. If the voltage of the battery is greater than (UINT16_MAX - 1), then cell 0 should be set to (UINT16_MAX - 1), and cell 1 to the remaining voltage. This can be extended to multiple cells if the total voltage is greater than 2 \* (UINT16_MAX - 1). | +| current_battery | `int16_t` | cA | invalid:-1 | Battery current, -1: autopilot does not measure the current. Value may overflow/rollover for very high currents (> 327.67A) | +| current_consumed | `int32_t` | mAh | invalid:-1 | Consumed charge, -1: autopilot does not provide consumption estimate | +| energy_consumed | `int32_t` | hJ | invalid:-1 | Consumed energy, -1: autopilot does not provide energy consumption estimate | +| battery_remaining | `int8_t` | % | invalid:-1 | Remaining battery energy. Values: [0-100], -1: autopilot does not estimate the remaining battery. | +| time_remaining ++ | `int32_t` | s | invalid:0 | Remaining battery time, 0: autopilot does not provide remaining battery time estimate | +| charge_state ++ | `uint8_t` | | [MAV_BATTERY_CHARGE_STATE](#MAV_BATTERY_CHARGE_STATE) | State for extent of discharge, provided by autopilot for warning or external reactions | +| voltages_ext ++ | `uint16_t[4]` | mV | invalid:[0] | Battery voltages for cells 11 to 14. Cells above the valid cell count for this battery should have a value of 0, where zero indicates not supported (note, this is different than for the voltages field and allows empty byte truncation). If the measured value is 0 then 1 should be sent instead. | +| mode ++ | `uint8_t` | | [MAV_BATTERY_MODE](#MAV_BATTERY_MODE) | Battery mode. Default (0) is that battery mode reporting is not supported or battery is in normal-use mode. | +| fault_bitmask ++ | `uint32_t` | | [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT) | Fault/health indications. These should be set when charge_state is [MAV_BATTERY_CHARGE_STATE_FAILED](#MAV_BATTERY_CHARGE_STATE_FAILED) or [MAV_BATTERY_CHARGE_STATE_UNHEALTHY](#MAV_BATTERY_CHARGE_STATE_UNHEALTHY) (if not, fault reporting is not supported). | ### AUTOPILOT_VERSION (148) — \[from: [standard](../messages/standard.md#AUTOPILOT_VERSION)\] {#AUTOPILOT_VERSION} Version and capability of autopilot software. This should be emitted in response to a request with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Values | Description ---- | --- | --- | --- -capabilities | `uint64_t` | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Bitmap of capabilities -flight_sw_version | `uint32_t` | | Firmware version number.
The field must be encoded as 4 bytes, where each byte (shown from MSB to LSB) is part of a semantic version: (major) (minor) (patch) ([FIRMWARE_VERSION_TYPE](#FIRMWARE_VERSION_TYPE)). -middleware_sw_version | `uint32_t` | | Middleware version number -os_sw_version | `uint32_t` | | Operating system version number -board_version | `uint32_t` | | HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify a board type from an enumeration stored at https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt and with extensive additions at https://github.com/ArduPilot/ardupilot/blob/master/Tools/AP_Bootloader/board_types.txt -flight_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -middleware_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -os_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -vendor_id | `uint16_t` | | ID of the board vendor -product_id | `uint16_t` | | ID of the product -uid | `uint64_t` | | UID if provided by hardware (see uid2) -uid2 ++ | `uint8_t[18]` | | UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) - +| Field Name | Type | Values | Description | +| -------------------------------------------------------------------- | ------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| capabilities | `uint64_t` | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Bitmap of capabilities | +| flight_sw_version | `uint32_t` | | Firmware version number.
The field must be encoded as 4 bytes, where each byte (shown from MSB to LSB) is part of a semantic version: (major) (minor) (patch) ([FIRMWARE_VERSION_TYPE](#FIRMWARE_VERSION_TYPE)). | +| middleware_sw_version | `uint32_t` | | Middleware version number | +| os_sw_version | `uint32_t` | | Operating system version number | +| board_version | `uint32_t` | | HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify a board type from an enumeration stored at https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt and with extensive additions at https://github.com/ArduPilot/ardupilot/blob/master/Tools/AP_Bootloader/board_types.txt | +| flight_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| middleware_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| os_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| vendor_id | `uint16_t` | | ID of the board vendor | +| product_id | `uint16_t` | | ID of the product | +| uid | `uint64_t` | | UID if provided by hardware (see uid2) | +| uid2 ++ | `uint8_t[18]` | | UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) | ### LANDING_TARGET (149) {#LANDING_TARGET} The location of a landing target. See: https://mavlink.io/en/services/landing_target.html -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -target_num | `uint8_t` | | | The ID of the target if multiple targets are present -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame used for following fields. -angle_x | `float` | rad | | X-axis angular offset of the target from the center of the image -angle_y | `float` | rad | | Y-axis angular offset of the target from the center of the image -distance | `float` | m | | Distance to the target from the vehicle -size_x | `float` | rad | | Size of target along x-axis -size_y | `float` | rad | | Size of target along y-axis -x ++ | `float` | m | | X Position of the landing target in [MAV_FRAME](#MAV_FRAME) -y ++ | `float` | m | | Y Position of the landing target in [MAV_FRAME](#MAV_FRAME) -z ++ | `float` | m | | Z Position of the landing target in [MAV_FRAME](#MAV_FRAME) -q ++ | `float[4]` | | | Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -type ++ | `uint8_t` | | [LANDING_TARGET_TYPE](#LANDING_TARGET_TYPE) | Type of landing target -position_valid ++ | `uint8_t` | | default:0 [MAV_BOOL](#MAV_BOOL) | Position fields (x, y, z, q, type) contain valid target position information ([MAV_BOOL_FALSE](#MAV_BOOL_FALSE): invalid values). Values not equal to 0 or 1 are invalid. - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------------ | ---------- | ----- | ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| target_num | `uint8_t` | | | The ID of the target if multiple targets are present | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame used for following fields. | +| angle_x | `float` | rad | | X-axis angular offset of the target from the center of the image | +| angle_y | `float` | rad | | Y-axis angular offset of the target from the center of the image | +| distance | `float` | m | | Distance to the target from the vehicle | +| size_x | `float` | rad | | Size of target along x-axis | +| size_y | `float` | rad | | Size of target along y-axis | +| x ++ | `float` | m | | X Position of the landing target in [MAV_FRAME](#MAV_FRAME) | +| y ++ | `float` | m | | Y Position of the landing target in [MAV_FRAME](#MAV_FRAME) | +| z ++ | `float` | m | | Z Position of the landing target in [MAV_FRAME](#MAV_FRAME) | +| q ++ | `float[4]` | | | Quaternion of landing target orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| type ++ | `uint8_t` | | [LANDING_TARGET_TYPE](#LANDING_TARGET_TYPE) | Type of landing target | +| position_valid ++ | `uint8_t` | | default:0 [MAV_BOOL](#MAV_BOOL) | Position fields (x, y, z, q, type) contain valid target position information ([MAV_BOOL_FALSE](#MAV_BOOL_FALSE): invalid values). Values not equal to 0 or 1 are invalid. | ### FENCE_STATUS (162) {#FENCE_STATUS} Status of geo-fencing. Sent in extended status stream when fencing enabled. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -breach_status | `uint8_t` | | | Breach status (0 if currently inside fence, 1 if outside). -breach_count | `uint16_t` | | | Number of fence breaches. -breach_type | `uint8_t` | | [FENCE_BREACH](#FENCE_BREACH) | Last breach type. -breach_time | `uint32_t` | ms | | Time (since boot) of last breach. -breach_mitigation ++ | `uint8_t` | | [FENCE_MITIGATE](#FENCE_MITIGATE) | Active action to prevent fence breach - +| Field Name | Type | Units | Values | Description | +| --------------------------------------------------------------------------------- | ---------- | ----- | --------------------------------- | ---------------------------------------------------------- | +| breach_status | `uint8_t` | | | Breach status (0 if currently inside fence, 1 if outside). | +| breach_count | `uint16_t` | | | Number of fence breaches. | +| breach_type | `uint8_t` | | [FENCE_BREACH](#FENCE_BREACH) | Last breach type. | +| breach_time | `uint32_t` | ms | | Time (since boot) of last breach. | +| breach_mitigation ++ | `uint8_t` | | [FENCE_MITIGATE](#FENCE_MITIGATE) | Active action to prevent fence breach | ### MAG_CAL_REPORT (192) {#MAG_CAL_REPORT} Reports results of completed compass calibration. Sent until [MAG_CAL_ACK](#MAG_CAL_ACK) received. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -compass_id | `uint8_t` | | | Compass being calibrated.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -cal_mask | `uint8_t` | | | Bitmask of compasses being calibrated. -cal_status | `uint8_t` | | [MAG_CAL_STATUS](#MAG_CAL_STATUS) | Calibration Status. -autosaved | `uint8_t` | | | 0=requires a [MAV_CMD_DO_ACCEPT_MAG_CAL](#MAV_CMD_DO_ACCEPT_MAG_CAL), 1=saved to parameters. -fitness | `float` | mgauss | | RMS milligauss residuals. -ofs_x | `float` | | | X offset. -ofs_y | `float` | | | Y offset. -ofs_z | `float` | | | Z offset. -diag_x | `float` | | | X diagonal (matrix 11). -diag_y | `float` | | | Y diagonal (matrix 22). -diag_z | `float` | | | Z diagonal (matrix 33). -offdiag_x | `float` | | | X off-diagonal (matrix 12 and 21). -offdiag_y | `float` | | | Y off-diagonal (matrix 13 and 31). -offdiag_z | `float` | | | Z off-diagonal (matrix 32 and 23). -orientation_confidence ++ | `float` | | | Confidence in orientation (higher is better). -old_orientation ++ | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | orientation before calibration. -new_orientation ++ | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | orientation after calibration. -scale_factor ++ | `float` | | | field radius correction factor - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------------- | --------- | ------ | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| compass_id | `uint8_t` | | | Compass being calibrated.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| cal_mask | `uint8_t` | | | Bitmask of compasses being calibrated. | +| cal_status | `uint8_t` | | [MAG_CAL_STATUS](#MAG_CAL_STATUS) | Calibration Status. | +| autosaved | `uint8_t` | | | 0=requires a [MAV_CMD_DO_ACCEPT_MAG_CAL](#MAV_CMD_DO_ACCEPT_MAG_CAL), 1=saved to parameters. | +| fitness | `float` | mgauss | | RMS milligauss residuals. | +| ofs_x | `float` | | | X offset. | +| ofs_y | `float` | | | Y offset. | +| ofs_z | `float` | | | Z offset. | +| diag_x | `float` | | | X diagonal (matrix 11). | +| diag_y | `float` | | | Y diagonal (matrix 22). | +| diag_z | `float` | | | Z diagonal (matrix 33). | +| offdiag_x | `float` | | | X off-diagonal (matrix 12 and 21). | +| offdiag_y | `float` | | | Y off-diagonal (matrix 13 and 31). | +| offdiag_z | `float` | | | Z off-diagonal (matrix 32 and 23). | +| orientation_confidence ++ | `float` | | | Confidence in orientation (higher is better). | +| old_orientation ++ | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | orientation before calibration. | +| new_orientation ++ | `uint8_t` | | [MAV_SENSOR_ORIENTATION](#MAV_SENSOR_ORIENTATION) | orientation after calibration. | +| scale_factor ++ | `float` | | | field radius correction factor | ### EFI_STATUS (225) {#EFI_STATUS} EFI status output -Field Name | Type | Units | Description ---- | --- | --- | --- -health | `uint8_t` | | EFI health status -ecu_index | `float` | | ECU index -rpm | `float` | | RPM -fuel_consumed | `float` | cm^3 | Fuel consumed -fuel_flow | `float` | cm^3/min | Fuel flow rate -engine_load | `float` | % | Engine load -throttle_position | `float` | % | Throttle position -spark_dwell_time | `float` | ms | Spark dwell time -barometric_pressure | `float` | kPa | Barometric pressure -intake_manifold_pressure | `float` | kPa | Intake manifold pressure( -intake_manifold_temperature | `float` | degC | Intake manifold temperature -cylinder_head_temperature | `float` | degC | Cylinder head temperature -ignition_timing | `float` | deg | Ignition timing (Crank angle degrees) -injection_time | `float` | ms | Injection time -exhaust_gas_temperature | `float` | degC | Exhaust gas temperature -throttle_out | `float` | % | Output throttle -pt_compensation | `float` | | Pressure/temperature compensation -ignition_voltage ++ | `float` | V | Supply voltage to EFI sparking system. Zero in this value means "unknown", so if the supply voltage really is zero volts use 0.0001 instead. -fuel_pressure ++ | `float` | kPa | Fuel pressure. Zero in this value means "unknown", so if the fuel pressure really is zero kPa use 0.0001 instead. - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------- | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------- | +| health | `uint8_t` | | EFI health status | +| ecu_index | `float` | | ECU index | +| rpm | `float` | | RPM | +| fuel_consumed | `float` | cm^3 | Fuel consumed | +| fuel_flow | `float` | cm^3/min | Fuel flow rate | +| engine_load | `float` | % | Engine load | +| throttle_position | `float` | % | Throttle position | +| spark_dwell_time | `float` | ms | Spark dwell time | +| barometric_pressure | `float` | kPa | Barometric pressure | +| intake_manifold_pressure | `float` | kPa | Intake manifold pressure( | +| intake_manifold_temperature | `float` | degC | Intake manifold temperature | +| cylinder_head_temperature | `float` | degC | Cylinder head temperature | +| ignition_timing | `float` | deg | Ignition timing (Crank angle degrees) | +| injection_time | `float` | ms | Injection time | +| exhaust_gas_temperature | `float` | degC | Exhaust gas temperature | +| throttle_out | `float` | % | Output throttle | +| pt_compensation | `float` | | Pressure/temperature compensation | +| ignition_voltage ++ | `float` | V | Supply voltage to EFI sparking system. Zero in this value means "unknown", so if the supply voltage really is zero volts use 0.0001 instead. | +| fuel_pressure ++ | `float` | kPa | Fuel pressure. Zero in this value means "unknown", so if the fuel pressure really is zero kPa use 0.0001 instead. | ### ESTIMATOR_STATUS (230) {#ESTIMATOR_STATUS} 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](#ESTIMATOR_STATUS_FLAGS) enum definition for further information. The innovation test ratios show the magnitude of the sensor innovation divided by the innovation check threshold. Under normal operation the innovation 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 | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -flags | `uint16_t` | | [ESTIMATOR_STATUS_FLAGS](#ESTIMATOR_STATUS_FLAGS) | Bitmap indicating which EKF outputs are valid. -vel_ratio | `float` | | | Velocity innovation test ratio -pos_horiz_ratio | `float` | | | Horizontal position innovation test ratio -pos_vert_ratio | `float` | | | Vertical position innovation test ratio -mag_ratio | `float` | | | Magnetometer innovation test ratio -hagl_ratio | `float` | | | Height above terrain innovation test ratio -tas_ratio | `float` | | | True airspeed innovation test ratio -pos_horiz_accuracy | `float` | m | | Horizontal position 1-STD accuracy relative to the EKF local origin -pos_vert_accuracy | `float` | m | | Vertical position 1-STD accuracy relative to the EKF local origin - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| flags | `uint16_t` | | [ESTIMATOR_STATUS_FLAGS](#ESTIMATOR_STATUS_FLAGS) | Bitmap indicating which EKF outputs are valid. | +| vel_ratio | `float` | | | Velocity innovation test ratio | +| pos_horiz_ratio | `float` | | | Horizontal position innovation test ratio | +| pos_vert_ratio | `float` | | | Vertical position innovation test ratio | +| mag_ratio | `float` | | | Magnetometer innovation test ratio | +| hagl_ratio | `float` | | | Height above terrain innovation test ratio | +| tas_ratio | `float` | | | True airspeed innovation test ratio | +| pos_horiz_accuracy | `float` | m | | Horizontal position 1-STD accuracy relative to the EKF local origin | +| pos_vert_accuracy | `float` | m | | Vertical position 1-STD accuracy relative to the EKF local origin | ### WIND_COV (231) {#WIND_COV} Wind estimate from vehicle. Note that despite the name, this message does not actually contain any covariances but instead variability and accuracy fields in terms of standard deviation (1-STD). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -wind_x | `float` | m/s | Wind in North (NED) direction (NAN if unknown) -wind_y | `float` | m/s | Wind in East (NED) direction (NAN if unknown) -wind_z | `float` | m/s | Wind in down (NED) direction (NAN if unknown) -var_horiz | `float` | m/s | Variability of wind in XY, 1-STD estimated from a 1 Hz lowpassed wind estimate (NAN if unknown) -var_vert | `float` | m/s | Variability of wind in Z, 1-STD estimated from a 1 Hz lowpassed wind estimate (NAN if unknown) -wind_alt | `float` | m | Altitude (MSL) that this measurement was taken at (NAN if unknown) -horiz_accuracy | `float` | m/s | Horizontal speed 1-STD accuracy (0 if unknown) -vert_accuracy | `float` | m/s | Vertical speed 1-STD accuracy (0 if unknown) - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| wind_x | `float` | m/s | Wind in North (NED) direction (NAN if unknown) | +| wind_y | `float` | m/s | Wind in East (NED) direction (NAN if unknown) | +| wind_z | `float` | m/s | Wind in down (NED) direction (NAN if unknown) | +| var_horiz | `float` | m/s | Variability of wind in XY, 1-STD estimated from a 1 Hz lowpassed wind estimate (NAN if unknown) | +| var_vert | `float` | m/s | Variability of wind in Z, 1-STD estimated from a 1 Hz lowpassed wind estimate (NAN if unknown) | +| wind_alt | `float` | m | Altitude (MSL) that this measurement was taken at (NAN if unknown) | +| horiz_accuracy | `float` | m/s | Horizontal speed 1-STD accuracy (0 if unknown) | +| vert_accuracy | `float` | m/s | Vertical speed 1-STD accuracy (0 if unknown) | ### GPS_INPUT (232) {#GPS_INPUT} -GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. - -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -gps_id | `uint8_t` | | | ID of the GPS for multiple GPS inputs
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -ignore_flags | `uint16_t` | | [GPS_INPUT_IGNORE_FLAGS](#GPS_INPUT_IGNORE_FLAGS) | Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. -time_week_ms | `uint32_t` | ms | | GPS time (from start of GPS week) -time_week | `uint16_t` | | | GPS week number -fix_type | `uint8_t` | | | 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK -lat | `int32_t` | degE7 | | Latitude (WGS84) -lon | `int32_t` | degE7 | | Longitude (WGS84) -alt | `float` | m | | Altitude (MSL). Positive for up. -hdop | `float` | | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX -vdop | `float` | | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX -vn | `float` | m/s | | GPS velocity in north direction in earth-fixed NED frame -ve | `float` | m/s | | GPS velocity in east direction in earth-fixed NED frame -vd | `float` | m/s | | GPS velocity in down direction in earth-fixed NED frame -speed_accuracy | `float` | m/s | | GPS speed accuracy -horiz_accuracy | `float` | m | | GPS horizontal accuracy -vert_accuracy | `float` | m | | GPS vertical accuracy -satellites_visible | `uint8_t` | | | Number of satellites visible. -yaw ++ | `uint16_t` | cdeg | | Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north - +GPS sensor input message. This is a raw sensor value sent by the GPS. This is NOT the global position estimate of the system. + +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| gps_id | `uint8_t` | | | ID of the GPS for multiple GPS inputs
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| ignore_flags | `uint16_t` | | [GPS_INPUT_IGNORE_FLAGS](#GPS_INPUT_IGNORE_FLAGS) | Bitmap indicating which GPS input flags fields to ignore. All other fields must be provided. | +| time_week_ms | `uint32_t` | ms | | GPS time (from start of GPS week) | +| time_week | `uint16_t` | | | GPS week number | +| fix_type | `uint8_t` | | | 0-1: no fix, 2: 2D fix, 3: 3D fix. 4: 3D with DGPS. 5: 3D with RTK | +| lat | `int32_t` | degE7 | | Latitude (WGS84) | +| lon | `int32_t` | degE7 | | Longitude (WGS84) | +| alt | `float` | m | | Altitude (MSL). Positive for up. | +| hdop | `float` | | invalid:UINT16_MAX | GPS HDOP horizontal dilution of position (unitless). If unknown, set to: UINT16_MAX | +| vdop | `float` | | invalid:UINT16_MAX | GPS VDOP vertical dilution of position (unitless). If unknown, set to: UINT16_MAX | +| vn | `float` | m/s | | GPS velocity in north direction in earth-fixed NED frame | +| ve | `float` | m/s | | GPS velocity in east direction in earth-fixed NED frame | +| vd | `float` | m/s | | GPS velocity in down direction in earth-fixed NED frame | +| speed_accuracy | `float` | m/s | | GPS speed accuracy | +| horiz_accuracy | `float` | m | | GPS horizontal accuracy | +| vert_accuracy | `float` | m | | GPS vertical accuracy | +| satellites_visible | `uint8_t` | | | Number of satellites visible. | +| yaw ++ | `uint16_t` | cdeg | | Yaw of vehicle relative to Earth's North, zero means not available, use 36000 for north | ### GPS_RTCM_DATA (233) {#GPS_RTCM_DATA} RTCM message for injecting into the onboard GPS (used for DGPS) -Field Name | Type | Units | Description ---- | --- | --- | --- -flags | `uint8_t` | | LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. -len | `uint8_t` | bytes | data length -data | `uint8_t[180]` | | RTCM message (may be fragmented) - +| Field Name | Type | Units | Description | +| ---------- | -------------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| flags | `uint8_t` | | LSB: 1 means message is fragmented, next 2 bits are the fragment ID, the remaining 5 bits are used for the sequence ID. Messages are only to be flushed to the GPS when the entire message has been reconstructed on the autopilot. The fragment ID specifies which order the fragments should be assembled into a buffer, while the sequence ID is used to detect a mismatch between different buffers. The buffer is considered fully reconstructed when either all 4 fragments are present, or all the fragments before the first fragment with a non full payload is received. This management is used to ensure that normal GPS operation doesn't corrupt RTCM data, and to recover from a unreliable transport delivery order. | +| len | `uint8_t` | bytes | data length | +| data | `uint8_t[180]` | | RTCM message (may be fragmented) | ### HIGH_LATENCY (234) — [SUP] {#HIGH_LATENCY} @@ -2198,83 +2073,80 @@ data | `uint8_t[180]` | | RTCM message (may be fragmented) Message appropriate for high latency connections like Iridium -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -base_mode | `uint8_t` | | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | Bitmap of enabled system modes. -custom_mode | `uint32_t` | | | A bitfield for use for autopilot-specific flags. -landed_state | `uint8_t` | | [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. -roll | `int16_t` | cdeg | | roll -pitch | `int16_t` | cdeg | | pitch -heading | `uint16_t` | cdeg | | heading -throttle | `int8_t` | % | | throttle (percentage) -heading_sp | `int16_t` | cdeg | | heading setpoint -latitude | `int32_t` | degE7 | | Latitude -longitude | `int32_t` | degE7 | | Longitude -altitude_amsl | `int16_t` | m | | Altitude above mean sea level -altitude_sp | `int16_t` | m | | Altitude setpoint relative to the home position -airspeed | `uint8_t` | m/s | | airspeed -airspeed_sp | `uint8_t` | m/s | | airspeed setpoint -groundspeed | `uint8_t` | m/s | | groundspeed -climb_rate | `int8_t` | m/s | | climb rate -gps_nsat | `uint8_t` | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX -gps_fix_type | `uint8_t` | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS Fix type. -battery_remaining | `uint8_t` | % | | Remaining battery (percentage) -temperature | `int8_t` | degC | | Autopilot temperature (degrees C) -temperature_air | `int8_t` | degC | | Air temperature (degrees C) from airspeed sensor -failsafe | `uint8_t` | | | failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) -wp_num | `uint8_t` | | | current waypoint number -wp_distance | `uint16_t` | m | | distance to target - +| Field Name | Type | Units | Values | Description | +| ----------------- | ---------- | ----- | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | +| base_mode | `uint8_t` | | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | Bitmap of enabled system modes. | +| custom_mode | `uint32_t` | | | A bitfield for use for autopilot-specific flags. | +| landed_state | `uint8_t` | | [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. | +| roll | `int16_t` | cdeg | | roll | +| pitch | `int16_t` | cdeg | | pitch | +| heading | `uint16_t` | cdeg | | heading | +| throttle | `int8_t` | % | | throttle (percentage) | +| heading_sp | `int16_t` | cdeg | | heading setpoint | +| latitude | `int32_t` | degE7 | | Latitude | +| longitude | `int32_t` | degE7 | | Longitude | +| altitude_amsl | `int16_t` | m | | Altitude above mean sea level | +| altitude_sp | `int16_t` | m | | Altitude setpoint relative to the home position | +| airspeed | `uint8_t` | m/s | | airspeed | +| airspeed_sp | `uint8_t` | m/s | | airspeed setpoint | +| groundspeed | `uint8_t` | m/s | | groundspeed | +| climb_rate | `int8_t` | m/s | | climb rate | +| gps_nsat | `uint8_t` | | invalid:UINT8_MAX | Number of satellites visible. If unknown, set to UINT8_MAX | +| gps_fix_type | `uint8_t` | | [GPS_FIX_TYPE](#GPS_FIX_TYPE) | GPS Fix type. | +| battery_remaining | `uint8_t` | % | | Remaining battery (percentage) | +| temperature | `int8_t` | degC | | Autopilot temperature (degrees C) | +| temperature_air | `int8_t` | degC | | Air temperature (degrees C) from airspeed sensor | +| failsafe | `uint8_t` | | | failsafe (each bit represents a failsafe where 0=ok, 1=failsafe active (bit0:RC, bit1:batt, bit2:GPS, bit3:GCS, bit4:fence) | +| wp_num | `uint8_t` | | | current waypoint number | +| wp_distance | `uint16_t` | m | | distance to target | ### HIGH_LATENCY2 (235) {#HIGH_LATENCY2} Message appropriate for high latency connections like Iridium (version 2) -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -timestamp | `uint32_t` | ms | | Timestamp (milliseconds since boot or Unix epoch) -type | `uint8_t` | | [MAV_TYPE](#MAV_TYPE) | Type of the MAV (quadrotor, helicopter, etc.) -autopilot | `uint8_t` | | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. -custom_mode | `uint16_t` | | | A bitfield for use for autopilot-specific flags (2 byte version). -latitude | `int32_t` | degE7 | | Latitude -longitude | `int32_t` | degE7 | | Longitude -altitude | `int16_t` | m | | Altitude above mean sea level -target_altitude | `int16_t` | m | | Altitude setpoint -heading | `uint8_t` | deg/2 | | Heading -target_heading | `uint8_t` | deg/2 | | Heading setpoint -target_distance | `uint16_t` | dam | | Distance to target waypoint or position -throttle | `uint8_t` | % | | Throttle -airspeed | `uint8_t` | m/s*5 | | Airspeed -airspeed_sp | `uint8_t` | m/s*5 | | Airspeed setpoint -groundspeed | `uint8_t` | m/s*5 | | Groundspeed -windspeed | `uint8_t` | m/s*5 | | Windspeed -wind_heading | `uint8_t` | deg/2 | | Wind heading -eph | `uint8_t` | dm | | Maximum error horizontal position since last message -epv | `uint8_t` | dm | | Maximum error vertical position since last message -temperature_air | `int8_t` | degC | | Air temperature -climb_rate | `int8_t` | dm/s | | Maximum climb rate magnitude since last message -battery | `int8_t` | % | invalid:-1 | Battery level (-1 if field not provided). -wp_num | `uint16_t` | | | Current waypoint number -failure_flags | `uint16_t` | | [HL_FAILURE_FLAG](#HL_FAILURE_FLAG) | Bitmap of failure flags. -custom0 | `int8_t` | | | Field for custom payload. -custom1 | `int8_t` | | | Field for custom payload. -custom2 | `int8_t` | | | Field for custom payload. - +| Field Name | Type | Units | Values | Description | +| --------------- | ---------- | ------ | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint32_t` | ms | | Timestamp (milliseconds since boot or Unix epoch) | +| type | `uint8_t` | | [MAV_TYPE](#MAV_TYPE) | Type of the MAV (quadrotor, helicopter, etc.) | +| autopilot | `uint8_t` | | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. | +| custom_mode | `uint16_t` | | | A bitfield for use for autopilot-specific flags (2 byte version). | +| latitude | `int32_t` | degE7 | | Latitude | +| longitude | `int32_t` | degE7 | | Longitude | +| altitude | `int16_t` | m | | Altitude above mean sea level | +| target_altitude | `int16_t` | m | | Altitude setpoint | +| heading | `uint8_t` | deg/2 | | Heading | +| target_heading | `uint8_t` | deg/2 | | Heading setpoint | +| target_distance | `uint16_t` | dam | | Distance to target waypoint or position | +| throttle | `uint8_t` | % | | Throttle | +| airspeed | `uint8_t` | m/s\*5 | | Airspeed | +| airspeed_sp | `uint8_t` | m/s\*5 | | Airspeed setpoint | +| groundspeed | `uint8_t` | m/s\*5 | | Groundspeed | +| windspeed | `uint8_t` | m/s\*5 | | Windspeed | +| wind_heading | `uint8_t` | deg/2 | | Wind heading | +| eph | `uint8_t` | dm | | Maximum error horizontal position since last message | +| epv | `uint8_t` | dm | | Maximum error vertical position since last message | +| temperature_air | `int8_t` | degC | | Air temperature | +| climb_rate | `int8_t` | dm/s | | Maximum climb rate magnitude since last message | +| battery | `int8_t` | % | invalid:-1 | Battery level (-1 if field not provided). | +| wp_num | `uint16_t` | | | Current waypoint number | +| failure_flags | `uint16_t` | | [HL_FAILURE_FLAG](#HL_FAILURE_FLAG) | Bitmap of failure flags. | +| custom0 | `int8_t` | | | Field for custom payload. | +| custom1 | `int8_t` | | | Field for custom payload. | +| custom2 | `int8_t` | | | Field for custom payload. | ### VIBRATION (241) {#VIBRATION} Vibration levels and accelerometer clipping -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -vibration_x | `float` | | Vibration levels on X-axis -vibration_y | `float` | | Vibration levels on Y-axis -vibration_z | `float` | | Vibration levels on Z-axis -clipping_0 | `uint32_t` | | first accelerometer clipping count -clipping_1 | `uint32_t` | | second accelerometer clipping count -clipping_2 | `uint32_t` | | third accelerometer clipping count - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| vibration_x | `float` | | Vibration levels on X-axis | +| vibration_y | `float` | | Vibration levels on Y-axis | +| vibration_z | `float` | | Vibration levels on Z-axis | +| clipping_0 | `uint32_t` | | first accelerometer clipping count | +| clipping_1 | `uint32_t` | | second accelerometer clipping count | +| clipping_2 | `uint32_t` | | third accelerometer clipping count | ### HOME_POSITION (242) {#HOME_POSITION} @@ -2286,20 +2158,19 @@ Under normal conditions it describes the heading and terrain slope, which can be 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. Note: this message can be requested by sending the [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) with param1=242. -Field Name | Type | Units | Description ---- | --- | --- | --- -latitude | `int32_t` | degE7 | Latitude (WGS84) -longitude | `int32_t` | degE7 | Longitude (WGS84) -altitude | `int32_t` | mm | Altitude (MSL). Positive for up. -x | `float` | m | Local X position of this position in the local coordinate frame (NED) -y | `float` | m | Local Y position of this position in the local coordinate frame (NED) -z | `float` | m | Local Z position of this position in the local coordinate frame (NED: positive "down") -q | `float[4]` | | Quaternion indicating world-to-surface-normal and heading transformation of the takeoff position.
Used to indicate the heading and slope of the ground.
All fields should be set to NaN if an accurate quaternion for both heading and surface slope cannot be supplied. -approach_x | `float` | m | Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -approach_y | `float` | m | Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -approach_z | `float` | m | Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| latitude | `int32_t` | degE7 | Latitude (WGS84) | +| longitude | `int32_t` | degE7 | Longitude (WGS84) | +| altitude | `int32_t` | mm | Altitude (MSL). Positive for up. | +| x | `float` | m | Local X position of this position in the local coordinate frame (NED) | +| y | `float` | m | Local Y position of this position in the local coordinate frame (NED) | +| z | `float` | m | Local Z position of this position in the local coordinate frame (NED: positive "down") | +| q | `float[4]` | | Quaternion indicating world-to-surface-normal and heading transformation of the takeoff position.
Used to indicate the heading and slope of the ground.
All fields should be set to NaN if an accurate quaternion for both heading and surface slope cannot be supplied. | +| approach_x | `float` | m | Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| approach_y | `float` | m | Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| approach_z | `float` | m | Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### SET_HOME_POSITION (243) — [SUP] {#SET_HOME_POSITION} @@ -2313,21 +2184,20 @@ Under normal conditions it describes the heading and terrain slope, which can be 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. Note: the current home position may be emitted in a [HOME_POSITION](#HOME_POSITION) message on request (using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) with param1=242). -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -latitude | `int32_t` | degE7 | Latitude (WGS84) -longitude | `int32_t` | degE7 | Longitude (WGS84) -altitude | `int32_t` | mm | Altitude (MSL). Positive for up. -x | `float` | m | Local X position of this position in the local coordinate frame (NED) -y | `float` | m | Local Y position of this position in the local coordinate frame (NED) -z | `float` | m | Local Z position of this position in the local coordinate frame (NED: positive "down") -q | `float[4]` | | World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground -approach_x | `float` | m | Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -approach_y | `float` | m | Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -approach_z | `float` | m | Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. -time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID. | +| latitude | `int32_t` | degE7 | Latitude (WGS84) | +| longitude | `int32_t` | degE7 | Longitude (WGS84) | +| altitude | `int32_t` | mm | Altitude (MSL). Positive for up. | +| x | `float` | m | Local X position of this position in the local coordinate frame (NED) | +| y | `float` | m | Local Y position of this position in the local coordinate frame (NED) | +| z | `float` | m | Local Z position of this position in the local coordinate frame (NED: positive "down") | +| q | `float[4]` | | World to surface normal and heading transformation of the takeoff position. Used to indicate the heading and slope of the ground | +| approach_x | `float` | m | Local X position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| approach_y | `float` | m | Local Y position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| approach_z | `float` | m | Local Z position of the end of the approach vector. Multicopters should set this position based on their takeoff path. Grass-landing fixed wing aircraft should set it the same way as multicopters. Runway-landing fixed wing aircraft should set it to the opposite direction of the takeoff, assuming the takeoff happened from the threshold / touchdown zone. | +| time_usec ++ | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### MESSAGE_INTERVAL (244) {#MESSAGE_INTERVAL} @@ -2335,163 +2205,150 @@ The interval between messages for a particular MAVLink message ID. This message is sent in response to the [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) command with param1=244 (this message) and param2=message_id (the id of the message for which the interval is required). This interface replaces [DATA_STREAM](#DATA_STREAM). -Field Name | Type | Units | Description ---- | --- | --- | --- -message_id | `uint16_t` | | The ID of the requested MAVLink message. v1.0 is limited to 254 messages. -interval_us | `int32_t` | us | The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| message_id | `uint16_t` | | The ID of the requested MAVLink message. v1.0 is limited to 254 messages. | +| interval_us | `int32_t` | us | The interval between two messages. A value of -1 indicates this stream is disabled, 0 indicates it is not available, > 0 indicates the interval at which it is sent. | ### EXTENDED_SYS_STATE (245) {#EXTENDED_SYS_STATE} Provides state for additional features -Field Name | Type | Values | Description ---- | --- | --- | --- -vtol_state | `uint8_t` | [MAV_VTOL_STATE](#MAV_VTOL_STATE) | The VTOL state if applicable. Is set to [MAV_VTOL_STATE_UNDEFINED](#MAV_VTOL_STATE_UNDEFINED) if UAV is not in VTOL configuration. -landed_state | `uint8_t` | [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. - +| Field Name | Type | Values | Description | +| ------------ | --------- | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| vtol_state | `uint8_t` | [MAV_VTOL_STATE](#MAV_VTOL_STATE) | The VTOL state if applicable. Is set to [MAV_VTOL_STATE_UNDEFINED](#MAV_VTOL_STATE_UNDEFINED) if UAV is not in VTOL configuration. | +| landed_state | `uint8_t` | [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. | ### ADSB_VEHICLE (246) {#ADSB_VEHICLE} The location and information of an ADSB vehicle -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -ICAO_address | `uint32_t` | | | ICAO address -lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude -lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude -altitude_type | `uint8_t` | | [ADSB_ALTITUDE_TYPE](#ADSB_ALTITUDE_TYPE) | ADSB altitude type. -altitude | `int32_t` | mm | invalid:INT32_MAX | Altitude (ASL) -heading | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground -hor_velocity | `uint16_t` | cm/s | invalid:UINT16_MAX | The horizontal velocity -ver_velocity | `int16_t` | cm/s | invalid:INT16_MAX | The vertical velocity. Positive is up -callsign | `char[9]` | | | The callsign, 8+null -emitter_type | `uint8_t` | | [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) | ADSB emitter type. -tslc | `uint8_t` | s | | Time since last communication from the remote vehicle, in seconds. -flags | `uint16_t` | | [ADSB_FLAGS](#ADSB_FLAGS) | Bitmap to indicate various statuses including valid data fields -squawk | `uint16_t` | | | Squawk code. Note that the code is in decimal: e.g. 7700 (general emergency) is encoded as binary 0b0001_1110_0001_0100, not(!) as 0b0000_111_111_000_000 - +| Field Name | Type | Units | Values | Description | +| ------------- | ---------- | ----- | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | +| ICAO_address | `uint32_t` | | | ICAO address | +| lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude | +| lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude | +| altitude_type | `uint8_t` | | [ADSB_ALTITUDE_TYPE](#ADSB_ALTITUDE_TYPE) | ADSB altitude type. | +| altitude | `int32_t` | mm | invalid:INT32_MAX | Altitude (ASL) | +| heading | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground | +| hor_velocity | `uint16_t` | cm/s | invalid:UINT16_MAX | The horizontal velocity | +| ver_velocity | `int16_t` | cm/s | invalid:INT16_MAX | The vertical velocity. Positive is up | +| callsign | `char[9]` | | | The callsign, 8+null | +| emitter_type | `uint8_t` | | [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) | ADSB emitter type. | +| tslc | `uint8_t` | s | | Time since last communication from the remote vehicle, in seconds. | +| flags | `uint16_t` | | [ADSB_FLAGS](#ADSB_FLAGS) | Bitmap to indicate various statuses including valid data fields | +| squawk | `uint16_t` | | | Squawk code. Note that the code is in decimal: e.g. 7700 (general emergency) is encoded as binary 0b0001_1110_0001_0100, not(!) as 0b0000_111_111_000_000 | ### COLLISION (247) {#COLLISION} Information about a potential collision -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -src | `uint8_t` | | [MAV_COLLISION_SRC](#MAV_COLLISION_SRC) | Collision data source -id | `uint32_t` | | | Unique identifier, domain based on src field -action | `uint8_t` | | [MAV_COLLISION_ACTION](#MAV_COLLISION_ACTION) | Action that is being taken to avoid this collision -threat_level | `uint8_t` | | [MAV_COLLISION_THREAT_LEVEL](#MAV_COLLISION_THREAT_LEVEL) | How concerned the aircraft is about this collision -time_to_minimum_delta | `float` | s | | Estimated time until collision occurs -altitude_minimum_delta | `float` | m | | Closest vertical distance between vehicle and object -horizontal_minimum_delta | `float` | m | | Closest horizontal distance between vehicle and object - +| Field Name | Type | Units | Values | Description | +| ------------------------ | ---------- | ----- | --------------------------------------------------------- | ------------------------------------------------------ | +| src | `uint8_t` | | [MAV_COLLISION_SRC](#MAV_COLLISION_SRC) | Collision data source | +| id | `uint32_t` | | | Unique identifier, domain based on src field | +| action | `uint8_t` | | [MAV_COLLISION_ACTION](#MAV_COLLISION_ACTION) | Action that is being taken to avoid this collision | +| threat_level | `uint8_t` | | [MAV_COLLISION_THREAT_LEVEL](#MAV_COLLISION_THREAT_LEVEL) | How concerned the aircraft is about this collision | +| time_to_minimum_delta | `float` | s | | Estimated time until collision occurs | +| altitude_minimum_delta | `float` | m | | Closest vertical distance between vehicle and object | +| horizontal_minimum_delta | `float` | m | | Closest horizontal distance between vehicle and object | ### V2_EXTENSION (248) {#V2_EXTENSION} Message implementing parts of the V2 payload specs in V1 frames for transitional support. -Field Name | Type | Description ---- | --- | --- -target_network | `uint8_t` | Network ID (0 for broadcast) -target_system | `uint8_t` | System ID (0 for broadcast) -target_component | `uint8_t` | Component ID (0 for broadcast) -message_type | `uint16_t` | A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. -payload | `uint8_t[249]` | Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. - +| Field Name | Type | Description | +| ---------------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_network | `uint8_t` | Network ID (0 for broadcast) | +| target_system | `uint8_t` | System ID (0 for broadcast) | +| target_component | `uint8_t` | Component ID (0 for broadcast) | +| message_type | `uint16_t` | A code that identifies the software component that understands this message (analogous to USB device classes or mime type strings). If this code is less than 32768, it is considered a 'registered' protocol extension and the corresponding entry should be added to https://github.com/mavlink/mavlink/definition_files/extension_message_ids.xml. Software creators can register blocks of message IDs as needed (useful for GCS specific metadata, etc...). Message_types greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. | +| payload | `uint8_t[249]` | Variable length payload. The length must be encoded in the payload as part of the message_type protocol, e.g. by including the length as payload data, or by terminating the payload data with a non-zero marker. This is required in order to reconstruct zero-terminated payloads that are (or otherwise would be) trimmed by MAVLink 2 empty-byte truncation. The entire content of the payload block is opaque unless you understand the encoding message_type. The particular encoding used can be extension specific and might not always be documented as part of the MAVLink specification. | ### MEMORY_VECT (249) {#MEMORY_VECT} 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 ---- | --- | --- -address | `uint16_t` | Starting address of the debug variables -ver | `uint8_t` | Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below -type | `uint8_t` | Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 -value | `int8_t[32]` | Memory contents at specified address - +| Field Name | Type | Description | +| ---------- | ------------ | -------------------------------------------------------------------------------------------------------- | +| address | `uint16_t` | Starting address of the debug variables | +| ver | `uint8_t` | Version code of the type variable. 0=unknown, type ignored and assumed int16_t. 1=as below | +| type | `uint8_t` | Type code of the memory variables. for ver = 1: 0=16 x int16_t, 1=16 x uint16_t, 2=16 x Q15, 3=16 x 1Q14 | +| value | `int8_t[32]` | Memory contents at specified address | ### DEBUG_VECT (250) {#DEBUG_VECT} To debug something using a named 3D vector. -Field Name | Type | Units | Description ---- | --- | --- | --- -name | `char[10]` | | Name
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -x | `float` | | x -y | `float` | | y -z | `float` | | z - +| Field Name | Type | Units | Description | +| ---------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| name | `char[10]` | | Name
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| x | `float` | | x | +| y | `float` | | y | +| z | `float` | | z | ### NAMED_VALUE_FLOAT (251) {#NAMED_VALUE_FLOAT} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -value | `float` | | Floating point value - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| value | `float` | | Floating point value | ### NAMED_VALUE_INT (252) {#NAMED_VALUE_INT} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -value | `int32_t` | | Signed integer value - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| name | `char[10]` | | Name of the debug variable
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| value | `int32_t` | | Signed integer value | ### STATUSTEXT (253) {#STATUSTEXT} 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 | Values | Description ---- | --- | --- | --- -severity | `uint8_t` | [MAV_SEVERITY](#MAV_SEVERITY) | Severity of status. Relies on the definitions within RFC-5424. -text | `char[50]` | | Status text message, without null termination character. UTF-8 encoded. -id ++ | `uint16_t` | | Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. -chunk_seq ++ | `uint8_t` | | This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. - +| Field Name | Type | Values | Description | +| ------------------------------------------------------------------------- | ---------- | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| severity | `uint8_t` | [MAV_SEVERITY](#MAV_SEVERITY) | Severity of status. Relies on the definitions within RFC-5424. | +| text | `char[50]` | | Status text message, without null termination character. UTF-8 encoded. | +| id ++ | `uint16_t` | | Unique (opaque) identifier for this statustext message. May be used to reassemble a logical long-statustext message from a sequence of chunks. A value of zero indicates this is the only chunk in the sequence and the message can be emitted immediately. | +| chunk_seq ++ | `uint8_t` | | This chunk's sequence number; indexing is from zero. Any null character in the text field is taken to mean this was the last chunk. | ### DEBUG (254) {#DEBUG} 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -ind | `uint8_t` | | index of debug variable -value | `float` | | DEBUG value - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ----------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| ind | `uint8_t` | | index of debug variable | +| value | `float` | | DEBUG value | ### SETUP_SIGNING (256) {#SETUP_SIGNING} Setup a MAVLink2 signing key. If called with secret_key of all zero and zero initial_timestamp will disable signing -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | system id of the target -target_component | `uint8_t` | component ID of the target -secret_key | `uint8_t[32]` | signing key -initial_timestamp | `uint64_t` | initial timestamp - +| Field Name | Type | Description | +| ----------------- | ------------- | -------------------------- | +| target_system | `uint8_t` | system id of the target | +| target_component | `uint8_t` | component ID of the target | +| secret_key | `uint8_t[32]` | signing key | +| initial_timestamp | `uint64_t` | initial timestamp | ### BUTTON_CHANGE (257) {#BUTTON_CHANGE} Report button state change. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -last_change_ms | `uint32_t` | ms | Time of last change of button state. -state | `uint8_t` | | Bitmap for state of buttons. - +| Field Name | Type | Units | Description | +| -------------- | ---------- | ----- | ------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| last_change_ms | `uint32_t` | ms | Time of last change of button state. | +| state | `uint8_t` | | Bitmap for state of buttons. | ### PLAY_TUNE (258) — [SUP] {#PLAY_TUNE} @@ -2499,85 +2356,80 @@ state | `uint8_t` | | Bitmap for state of buttons. Control vehicle tone generation (buzzer). -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -tune | `char[30]` | tune in board specific format -tune2 ++ | `char[200]` | tune extension (appended to tune) - +| Field Name | Type | Description | +| --------------------------------------------------------------------- | ----------- | --------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| tune | `char[30]` | tune in board specific format | +| tune2 ++ | `char[200]` | tune extension (appended to tune) | ### CAMERA_INFORMATION (259) {#CAMERA_INFORMATION} Information about a camera. Can be requested with a [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) command. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -vendor_name | `uint8_t[32]` | | | Name of the camera vendor -model_name | `uint8_t[32]` | | | Name of the camera model -firmware_version | `uint32_t` | | invalid:0 | Version of the camera firmware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. Use 0 if not known. -focal_length | `float` | mm | invalid:NaN | Focal length. Use NaN if not known. -sensor_size_h | `float` | mm | invalid:NaN | Image sensor size horizontal. Use NaN if not known. -sensor_size_v | `float` | mm | invalid:NaN | Image sensor size vertical. Use NaN if not known. -resolution_h | `uint16_t` | pix | invalid:0 | Horizontal image resolution. Use 0 if not known. -resolution_v | `uint16_t` | pix | invalid:0 | Vertical image resolution. Use 0 if not known. -lens_id | `uint8_t` | | invalid:0 | Reserved for a lens ID. Use 0 if not known. -flags | `uint32_t` | | [CAMERA_CAP_FLAGS](#CAMERA_CAP_FLAGS) | Bitmap of camera capability flags. -cam_definition_version | `uint16_t` | | | Camera definition version (iteration). Use 0 if not known. -cam_definition_uri | `char[140]` | | | Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). The string needs to be zero terminated. Use a zero-length string if not known. -gimbal_device_id ++ | `uint8_t` | | invalid:0 | Gimbal id of a gimbal associated with this camera. This is the component id of the gimbal device, or 1-6 for non mavlink gimbals. Use 0 if no gimbal is associated with the camera. -camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ------------- | ----- | ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| vendor_name | `uint8_t[32]` | | | Name of the camera vendor | +| model_name | `uint8_t[32]` | | | Name of the camera model | +| firmware_version | `uint32_t` | | invalid:0 | Version of the camera firmware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. Use 0 if not known. | +| focal_length | `float` | mm | invalid:NaN | Focal length. Use NaN if not known. | +| sensor_size_h | `float` | mm | invalid:NaN | Image sensor size horizontal. Use NaN if not known. | +| sensor_size_v | `float` | mm | invalid:NaN | Image sensor size vertical. Use NaN if not known. | +| resolution_h | `uint16_t` | pix | invalid:0 | Horizontal image resolution. Use 0 if not known. | +| resolution_v | `uint16_t` | pix | invalid:0 | Vertical image resolution. Use 0 if not known. | +| lens_id | `uint8_t` | | invalid:0 | Reserved for a lens ID. Use 0 if not known. | +| flags | `uint32_t` | | [CAMERA_CAP_FLAGS](#CAMERA_CAP_FLAGS) | Bitmap of camera capability flags. | +| cam_definition_version | `uint16_t` | | | Camera definition version (iteration). Use 0 if not known. | +| cam_definition_uri | `char[140]` | | | Camera definition URI (if any, otherwise only basic functions will be available). HTTP- (http://) and MAVLink FTP- (mavlinkftp://) formatted URIs are allowed (and both must be supported by any GCS that implements the Camera Protocol). The definition file may be xz compressed, which will be indicated by the file extension .xml.xz (a GCS that implements the protocol must support decompressing the file). The string needs to be zero terminated. Use a zero-length string if not known. | +| gimbal_device_id ++ | `uint8_t` | | invalid:0 | Gimbal id of a gimbal associated with this camera. This is the component id of the gimbal device, or 1-6 for non mavlink gimbals. Use 0 if no gimbal is associated with the camera. | +| camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_SETTINGS (260) {#CAMERA_SETTINGS} Settings of a camera. Can be requested with a [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) command. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -mode_id | `uint8_t` | | [CAMERA_MODE](#CAMERA_MODE) | Camera mode -zoomLevel ++ | `float` | | invalid:NaN | Current zoom level as a percentage of the full range (0.0 to 100.0, NaN if not known) -focusLevel ++ | `float` | | invalid:NaN | Current focus level as a percentage of the full range (0.0 to 100.0, NaN if not known) -camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ---------- | ----- | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| mode_id | `uint8_t` | | [CAMERA_MODE](#CAMERA_MODE) | Camera mode | +| zoomLevel ++ | `float` | | invalid:NaN | Current zoom level as a percentage of the full range (0.0 to 100.0, NaN if not known) | +| focusLevel ++ | `float` | | invalid:NaN | Current focus level as a percentage of the full range (0.0 to 100.0, NaN if not known) | +| camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### STORAGE_INFORMATION (261) {#STORAGE_INFORMATION} Information about a storage medium. This message is sent in response to a request with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) and whenever the status of the storage changes ([STORAGE_STATUS](#STORAGE_STATUS)). Use [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE).param2 to indicate the index/id of requested storage: 0 for all, 1 for first, 2 for second, etc. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -storage_id | `uint8_t` | | | Storage ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -storage_count | `uint8_t` | | | Number of storage devices -status | `uint8_t` | | [STORAGE_STATUS](#STORAGE_STATUS) | Status of storage -total_capacity | `float` | MiB | | Total capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. -used_capacity | `float` | MiB | | Used capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. -available_capacity | `float` | MiB | | Available storage capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. -read_speed | `float` | MiB/s | | Read speed. -write_speed | `float` | MiB/s | | Write speed. -type ++ | `uint8_t` | | [STORAGE_TYPE](#STORAGE_TYPE) | Type of storage -name ++ | `char[32]` | | | Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. -storage_usage ++ | `uint8_t` | | [STORAGE_USAGE_FLAG](#STORAGE_USAGE_FLAG) | Flags indicating whether this instance is preferred storage for photos, videos, etc.
Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported).
This setting can then be overridden using [MAV_CMD_SET_STORAGE_USAGE](#MAV_CMD_SET_STORAGE_USAGE).
If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. - +| Field Name | Type | Units | Values | Description | +| ----------------------------------------------------------------------------- | ---------- | ----- | ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| storage_id | `uint8_t` | | | Storage ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| storage_count | `uint8_t` | | | Number of storage devices | +| status | `uint8_t` | | [STORAGE_STATUS](#STORAGE_STATUS) | Status of storage | +| total_capacity | `float` | MiB | | Total capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. | +| used_capacity | `float` | MiB | | Used capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. | +| available_capacity | `float` | MiB | | Available storage capacity. If storage is not ready ([STORAGE_STATUS_READY](#STORAGE_STATUS_READY)) value will be ignored. | +| read_speed | `float` | MiB/s | | Read speed. | +| write_speed | `float` | MiB/s | | Write speed. | +| type ++ | `uint8_t` | | [STORAGE_TYPE](#STORAGE_TYPE) | Type of storage | +| name ++ | `char[32]` | | | Textual storage name to be used in UI (microSD 1, Internal Memory, etc.) This is a NULL terminated string. If it is exactly 32 characters long, add a terminating NULL. If this string is empty, the generic type is shown to the user. | +| storage_usage ++ | `uint8_t` | | [STORAGE_USAGE_FLAG](#STORAGE_USAGE_FLAG) | Flags indicating whether this instance is preferred storage for photos, videos, etc.
Note: Implementations should initially set the flags on the system-default storage id used for saving media (if possible/supported).
This setting can then be overridden using [MAV_CMD_SET_STORAGE_USAGE](#MAV_CMD_SET_STORAGE_USAGE).
If the media usage flags are not set, a GCS may assume storage ID 1 is the default storage for all media types. | ### CAMERA_CAPTURE_STATUS (262) {#CAMERA_CAPTURE_STATUS} Information about the status of a capture. Can be requested with a [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) command. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -image_status | `uint8_t` | | Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) -video_status | `uint8_t` | | Current status of video capturing (0: idle, 1: capture in progress) -image_interval | `float` | s | Image capture interval -recording_time_ms | `uint32_t` | ms | Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. -available_capacity | `float` | MiB | Available storage capacity. -image_count ++ | `int32_t` | | Total number of images captured ('forever', or until reset using [MAV_CMD_STORAGE_FORMAT](#MAV_CMD_STORAGE_FORMAT)). -camera_device_id ++ | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| image_status | `uint8_t` | | Current status of image capturing (0: idle, 1: capture in progress, 2: interval set but idle, 3: interval set and capture in progress) | +| video_status | `uint8_t` | | Current status of video capturing (0: idle, 1: capture in progress) | +| image_interval | `float` | s | Image capture interval | +| recording_time_ms | `uint32_t` | ms | Elapsed time since recording started (0: Not supported/available). A GCS should compute recording time and use non-zero values of this field to correct any discrepancy. | +| available_capacity | `float` | MiB | Available storage capacity. | +| image_count ++ | `int32_t` | | Total number of images captured ('forever', or until reset using [MAV_CMD_STORAGE_FORMAT](#MAV_CMD_STORAGE_FORMAT)). | +| camera_device_id ++ | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_IMAGE_CAPTURED (263) {#CAMERA_IMAGE_CAPTURED} @@ -2590,20 +2442,19 @@ set to 0 (default) to send just the the message for the sequence number in param set to -1 to send the message for the sequence number in param 2 and all the following sequence numbers, set to the sequence number of the final message in the range. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -time_utc | `uint64_t` | us | invalid:0 | Timestamp (time since UNIX epoch) in UTC. 0 for unknown. -camera_id | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). Field name is usually camera_device_id. -lat | `int32_t` | degE7 | | Latitude where image was taken -lon | `int32_t` | degE7 | | Longitude where capture was taken -alt | `int32_t` | mm | | Altitude (MSL) where image was taken -relative_alt | `int32_t` | mm | | Altitude above ground -q | `float[4]` | | | Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -image_index | `int32_t` | | | Zero based index of this image (i.e. a new image will have index [CAMERA_CAPTURE_STATUS](#CAMERA_CAPTURE_STATUS).image count -1) -capture_result | `int8_t` | | [MAV_BOOL](#MAV_BOOL) | Image was captured successfully ([MAV_BOOL_TRUE](#MAV_BOOL_TRUE)). Values not equal to 0 or 1 are invalid. -file_url | `char[205]` | | | URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. - +| Field Name | Type | Units | Values | Description | +| -------------- | ----------- | ----- | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| time_utc | `uint64_t` | us | invalid:0 | Timestamp (time since UNIX epoch) in UTC. 0 for unknown. | +| camera_id | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). Field name is usually camera_device_id. | +| lat | `int32_t` | degE7 | | Latitude where image was taken | +| lon | `int32_t` | degE7 | | Longitude where capture was taken | +| alt | `int32_t` | mm | | Altitude (MSL) where image was taken | +| relative_alt | `int32_t` | mm | | Altitude above ground | +| q | `float[4]` | | | Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| image_index | `int32_t` | | | Zero based index of this image (i.e. a new image will have index [CAMERA_CAPTURE_STATUS](#CAMERA_CAPTURE_STATUS).image count -1) | +| capture_result | `int8_t` | | [MAV_BOOL](#MAV_BOOL) | Image was captured successfully ([MAV_BOOL_TRUE](#MAV_BOOL_TRUE)). Values not equal to 0 or 1 are invalid. | +| file_url | `char[205]` | | | URL of image taken. Either local storage or http://foo.jpg if camera provides an HTTP interface. | ### FLIGHT_INFORMATION (264) {#FLIGHT_INFORMATION} @@ -2614,14 +2465,13 @@ Takeoff and landing values reset to zero on arm. This can be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). Note, some fields are misnamed - timestamps are from boot (not UTC) and the flight_uuid is a sequence number. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -arming_time_utc | `uint64_t` | us | Timestamp at arming (since system boot). Set to 0 on boot. Set value on arming. Note, field is misnamed UTC. -takeoff_time_utc | `uint64_t` | us | Timestamp at takeoff (since system boot). Set to 0 at boot and on arming. Note, field is misnamed UTC. -flight_uuid | `uint64_t` | | Flight number. Note, field is misnamed UUID. -landing_time ++ | `uint32_t` | ms | Timestamp at landing (in ms since system boot). Set to 0 at boot and on arming. - +| Field Name | Type | Units | Description | +| ---------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| arming_time_utc | `uint64_t` | us | Timestamp at arming (since system boot). Set to 0 on boot. Set value on arming. Note, field is misnamed UTC. | +| takeoff_time_utc | `uint64_t` | us | Timestamp at takeoff (since system boot). Set to 0 at boot and on arming. Note, field is misnamed UTC. | +| flight_uuid | `uint64_t` | | Flight number. Note, field is misnamed UUID. | +| landing_time ++ | `uint32_t` | ms | Timestamp at landing (in ms since system boot). Set to 0 at boot and on arming. | ### MOUNT_ORIENTATION (265) — [SUP] {#MOUNT_ORIENTATION} @@ -2629,242 +2479,228 @@ flight_uuid | `uint64_t` | | Flight number. Note, field is misnamed UUID. Orientation of a mount -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -roll | `float` | deg | Roll in global frame (set to NaN for invalid). -pitch | `float` | deg | Pitch in global frame (set to NaN for invalid). -yaw | `float` | deg | Yaw relative to vehicle (set to NaN for invalid). -yaw_absolute ++ | `float` | deg | Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). - +| Field Name | Type | Units | Description | +| ---------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| roll | `float` | deg | Roll in global frame (set to NaN for invalid). | +| pitch | `float` | deg | Pitch in global frame (set to NaN for invalid). | +| yaw | `float` | deg | Yaw relative to vehicle (set to NaN for invalid). | +| yaw_absolute ++ | `float` | deg | Yaw in absolute frame relative to Earth's North, north is 0 (set to NaN for invalid). | ### LOGGING_DATA (266) {#LOGGING_DATA} A message containing logged data (see also [MAV_CMD_LOGGING_START](#MAV_CMD_LOGGING_START)) -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | system ID of the target -target_component | `uint8_t` | | component ID of the target -sequence | `uint16_t` | | sequence number (can wrap) -length | `uint8_t` | bytes | data length -first_message_offset | `uint8_t` | bytes | offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). -data | `uint8_t[249]` | | logged data - +| Field Name | Type | Units | Description | +| -------------------- | -------------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | system ID of the target | +| target_component | `uint8_t` | | component ID of the target | +| sequence | `uint16_t` | | sequence number (can wrap) | +| length | `uint8_t` | bytes | data length | +| first_message_offset | `uint8_t` | bytes | offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). | +| data | `uint8_t[249]` | | logged data | ### LOGGING_DATA_ACKED (267) {#LOGGING_DATA_ACKED} A message containing logged data which requires a [LOGGING_ACK](#LOGGING_ACK) to be sent back -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | system ID of the target -target_component | `uint8_t` | | component ID of the target -sequence | `uint16_t` | | sequence number (can wrap) -length | `uint8_t` | bytes | data length -first_message_offset | `uint8_t` | bytes | offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). -data | `uint8_t[249]` | | logged data - +| Field Name | Type | Units | Description | +| -------------------- | -------------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | system ID of the target | +| target_component | `uint8_t` | | component ID of the target | +| sequence | `uint16_t` | | sequence number (can wrap) | +| length | `uint8_t` | bytes | data length | +| first_message_offset | `uint8_t` | bytes | offset into data where first message starts. This can be used for recovery, when a previous message got lost (set to UINT8_MAX if no start exists). | +| data | `uint8_t[249]` | | logged data | ### LOGGING_ACK (268) {#LOGGING_ACK} An ack for a [LOGGING_DATA_ACKED](#LOGGING_DATA_ACKED) message -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | system ID of the target -target_component | `uint8_t` | component ID of the target -sequence | `uint16_t` | sequence number (must match the one in [LOGGING_DATA_ACKED](#LOGGING_DATA_ACKED)) - +| Field Name | Type | Description | +| ---------------- | ---------- | --------------------------------------------------------------------------------- | +| target_system | `uint8_t` | system ID of the target | +| target_component | `uint8_t` | component ID of the target | +| sequence | `uint16_t` | sequence number (must match the one in [LOGGING_DATA_ACKED](#LOGGING_DATA_ACKED)) | ### VIDEO_STREAM_INFORMATION (269) {#VIDEO_STREAM_INFORMATION} Information about video stream. It may be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE), where param2 indicates the video stream id: 0 for all streams, 1 for first, 2 for second, etc. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -stream_id | `uint8_t` | | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -count | `uint8_t` | | | Number of streams available. -type | `uint8_t` | | [VIDEO_STREAM_TYPE](#VIDEO_STREAM_TYPE) | Type of stream. -flags | `uint16_t` | | [VIDEO_STREAM_STATUS_FLAGS](#VIDEO_STREAM_STATUS_FLAGS) | Bitmap of stream status flags. -framerate | `float` | Hz | | Frame rate. -resolution_h | `uint16_t` | pix | | Horizontal resolution. -resolution_v | `uint16_t` | pix | | Vertical resolution. -bitrate | `uint32_t` | bits/s | | Bit rate. -rotation | `uint16_t` | deg | | Video image rotation clockwise. -hfov | `uint16_t` | deg | | Horizontal Field of view. -name | `char[32]` | | | Stream name. -uri | `char[160]` | | | Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). -encoding ++ | `uint8_t` | | [VIDEO_STREAM_ENCODING](#VIDEO_STREAM_ENCODING) | Encoding of stream. -camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ----------- | ------ | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| stream_id | `uint8_t` | | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| count | `uint8_t` | | | Number of streams available. | +| type | `uint8_t` | | [VIDEO_STREAM_TYPE](#VIDEO_STREAM_TYPE) | Type of stream. | +| flags | `uint16_t` | | [VIDEO_STREAM_STATUS_FLAGS](#VIDEO_STREAM_STATUS_FLAGS) | Bitmap of stream status flags. | +| framerate | `float` | Hz | | Frame rate. | +| resolution_h | `uint16_t` | pix | | Horizontal resolution. | +| resolution_v | `uint16_t` | pix | | Vertical resolution. | +| bitrate | `uint32_t` | bits/s | | Bit rate. | +| rotation | `uint16_t` | deg | | Video image rotation clockwise. | +| hfov | `uint16_t` | deg | | Horizontal Field of view. | +| name | `char[32]` | | | Stream name. | +| uri | `char[160]` | | | Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). | +| encoding ++ | `uint8_t` | | [VIDEO_STREAM_ENCODING](#VIDEO_STREAM_ENCODING) | Encoding of stream. | +| camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### VIDEO_STREAM_STATUS (270) {#VIDEO_STREAM_STATUS} Information about the status of a video stream. It may be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -stream_id | `uint8_t` | | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -flags | `uint16_t` | | [VIDEO_STREAM_STATUS_FLAGS](#VIDEO_STREAM_STATUS_FLAGS) | Bitmap of stream status flags -framerate | `float` | Hz | | Frame rate -resolution_h | `uint16_t` | pix | | Horizontal resolution -resolution_v | `uint16_t` | pix | | Vertical resolution -bitrate | `uint32_t` | bits/s | | Bit rate -rotation | `uint16_t` | deg | | Video image rotation clockwise -hfov | `uint16_t` | deg | | Horizontal Field of view -camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ---------- | ------ | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| stream_id | `uint8_t` | | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| flags | `uint16_t` | | [VIDEO_STREAM_STATUS_FLAGS](#VIDEO_STREAM_STATUS_FLAGS) | Bitmap of stream status flags | +| framerate | `float` | Hz | | Frame rate | +| resolution_h | `uint16_t` | pix | | Horizontal resolution | +| resolution_v | `uint16_t` | pix | | Vertical resolution | +| bitrate | `uint32_t` | bits/s | | Bit rate | +| rotation | `uint16_t` | deg | | Video image rotation clockwise | +| hfov | `uint16_t` | deg | | Horizontal Field of view | +| camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_FOV_STATUS (271) {#CAMERA_FOV_STATUS} Information about the field of view of a camera. Can be requested with a [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) command. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -lat_camera | `int32_t` | degE7 | Latitude of camera (INT32_MAX if unknown). -lon_camera | `int32_t` | degE7 | Longitude of camera (INT32_MAX if unknown). -alt_camera | `int32_t` | mm | Altitude (MSL) of camera (INT32_MAX if unknown). -lat_image | `int32_t` | degE7 | Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). -lon_image | `int32_t` | degE7 | Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). -alt_image | `int32_t` | mm | Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). -q | `float[4]` | | Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -hfov | `float` | deg | Horizontal field of view (NaN if unknown). -vfov | `float` | deg | Vertical field of view (NaN if unknown). -camera_device_id ++ | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| lat_camera | `int32_t` | degE7 | Latitude of camera (INT32_MAX if unknown). | +| lon_camera | `int32_t` | degE7 | Longitude of camera (INT32_MAX if unknown). | +| alt_camera | `int32_t` | mm | Altitude (MSL) of camera (INT32_MAX if unknown). | +| lat_image | `int32_t` | degE7 | Latitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). | +| lon_image | `int32_t` | degE7 | Longitude of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). | +| alt_image | `int32_t` | mm | Altitude (MSL) of center of image (INT32_MAX if unknown, INT32_MIN if at infinity, not intersecting with horizon). | +| q | `float[4]` | | Quaternion of camera orientation (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| hfov | `float` | deg | Horizontal field of view (NaN if unknown). | +| vfov | `float` | deg | Vertical field of view (NaN if unknown). | +| camera_device_id ++ | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_TRACKING_IMAGE_STATUS (275) {#CAMERA_TRACKING_IMAGE_STATUS} Camera tracking status, sent while in active tracking. Use [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL) to define message interval. -Field Name | Type | Values | Description ---- | --- | --- | --- -tracking_status | `uint8_t` | [CAMERA_TRACKING_STATUS_FLAGS](#CAMERA_TRACKING_STATUS_FLAGS) | Current tracking status -tracking_mode | `uint8_t` | [CAMERA_TRACKING_MODE](#CAMERA_TRACKING_MODE) | Current tracking mode -target_data | `uint8_t` | [CAMERA_TRACKING_TARGET_DATA](#CAMERA_TRACKING_TARGET_DATA) | Defines location of target data -point_x | `float` | invalid:NaN | Current tracked point x value if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is left, 1 is right), NAN if unknown -point_y | `float` | invalid:NaN | Current tracked point y value if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown -radius | `float` | invalid:NaN | Current tracked radius if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown -rec_top_x | `float` | invalid:NaN | Current tracked rectangle top x value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is left, 1 is right), NAN if unknown -rec_top_y | `float` | invalid:NaN | Current tracked rectangle top y value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown -rec_bottom_x | `float` | invalid:NaN | Current tracked rectangle bottom x value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is left, 1 is right), NAN if unknown -rec_bottom_y | `float` | invalid:NaN | Current tracked rectangle bottom y value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown -camera_device_id ++ | `uint8_t` | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Values | Description | +| -------------------------------------------------------------------------------- | --------- | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| tracking_status | `uint8_t` | [CAMERA_TRACKING_STATUS_FLAGS](#CAMERA_TRACKING_STATUS_FLAGS) | Current tracking status | +| tracking_mode | `uint8_t` | [CAMERA_TRACKING_MODE](#CAMERA_TRACKING_MODE) | Current tracking mode | +| target_data | `uint8_t` | [CAMERA_TRACKING_TARGET_DATA](#CAMERA_TRACKING_TARGET_DATA) | Defines location of target data | +| point_x | `float` | invalid:NaN | Current tracked point x value if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is left, 1 is right), NAN if unknown | +| point_y | `float` | invalid:NaN | Current tracked point y value if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown | +| radius | `float` | invalid:NaN | Current tracked radius if [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) (normalized 0..1, 0 is image left, 1 is image right), NAN if unknown | +| rec_top_x | `float` | invalid:NaN | Current tracked rectangle top x value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is left, 1 is right), NAN if unknown | +| rec_top_y | `float` | invalid:NaN | Current tracked rectangle top y value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown | +| rec_bottom_x | `float` | invalid:NaN | Current tracked rectangle bottom x value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is left, 1 is right), NAN if unknown | +| rec_bottom_y | `float` | invalid:NaN | Current tracked rectangle bottom y value if [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown | +| camera_device_id ++ | `uint8_t` | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_TRACKING_GEO_STATUS (276) {#CAMERA_TRACKING_GEO_STATUS} Camera tracking status, sent while in active tracking. Use [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL) to define message interval. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -tracking_status | `uint8_t` | | [CAMERA_TRACKING_STATUS_FLAGS](#CAMERA_TRACKING_STATUS_FLAGS) | Current tracking status -lat | `int32_t` | degE7 | | Latitude of tracked object -lon | `int32_t` | degE7 | | Longitude of tracked object -alt | `float` | m | | Altitude of tracked object(AMSL, WGS84) -h_acc | `float` | m | invalid:NaN | Horizontal accuracy. NAN if unknown -v_acc | `float` | m | invalid:NaN | Vertical accuracy. NAN if unknown -vel_n | `float` | m/s | invalid:NaN | North velocity of tracked object. NAN if unknown -vel_e | `float` | m/s | invalid:NaN | East velocity of tracked object. NAN if unknown -vel_d | `float` | m/s | invalid:NaN | Down velocity of tracked object. NAN if unknown -vel_acc | `float` | m/s | invalid:NaN | Velocity accuracy. NAN if unknown -dist | `float` | m | invalid:NaN | Distance between camera and tracked object. NAN if unknown -hdg | `float` | rad | invalid:NaN | Heading in radians, in NED. NAN if unknown -hdg_acc | `float` | rad | invalid:NaN | Accuracy of heading, in NED. NAN if unknown -camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | --------- | ----- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| tracking_status | `uint8_t` | | [CAMERA_TRACKING_STATUS_FLAGS](#CAMERA_TRACKING_STATUS_FLAGS) | Current tracking status | +| lat | `int32_t` | degE7 | | Latitude of tracked object | +| lon | `int32_t` | degE7 | | Longitude of tracked object | +| alt | `float` | m | | Altitude of tracked object(AMSL, WGS84) | +| h_acc | `float` | m | invalid:NaN | Horizontal accuracy. NAN if unknown | +| v_acc | `float` | m | invalid:NaN | Vertical accuracy. NAN if unknown | +| vel_n | `float` | m/s | invalid:NaN | North velocity of tracked object. NAN if unknown | +| vel_e | `float` | m/s | invalid:NaN | East velocity of tracked object. NAN if unknown | +| vel_d | `float` | m/s | invalid:NaN | Down velocity of tracked object. NAN if unknown | +| vel_acc | `float` | m/s | invalid:NaN | Velocity accuracy. NAN if unknown | +| dist | `float` | m | invalid:NaN | Distance between camera and tracked object. NAN if unknown | +| hdg | `float` | rad | invalid:NaN | Heading in radians, in NED. NAN if unknown | +| hdg_acc | `float` | rad | invalid:NaN | Accuracy of heading, in NED. NAN if unknown | +| camera_device_id ++ | `uint8_t` | | default:0 min:0 max:6 | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | ### CAMERA_THERMAL_RANGE (277) {#CAMERA_THERMAL_RANGE} Camera absolute thermal range. This can be streamed when the associated [VIDEO_STREAM_STATUS](#VIDEO_STREAM_STATUS) `flag` field bit [VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED](#VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED) is set, but a GCS may choose to only request it for the current active stream. Use [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL) to define message interval (param3 indicates the stream id of the current camera, or 0 for all streams, param4 indicates the target camera_device_id for autopilot-attached cameras or 0 for MAVLink cameras). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -stream_id | `uint8_t` | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -camera_device_id | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). -max | `float` | degC | Temperature max. -max_point_x | `float` | | Temperature max point x value (normalized 0..1, 0 is left, 1 is right), NAN if unknown. -max_point_y | `float` | | Temperature max point y value (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown. -min | `float` | degC | Temperature min. -min_point_x | `float` | | Temperature min point x value (normalized 0..1, 0 is left, 1 is right), NAN if unknown. -min_point_y | `float` | | Temperature min point y value (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| stream_id | `uint8_t` | | Video Stream ID (1 for first, 2 for second, etc.)
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| camera_device_id | `uint8_t` | | Camera id of a non-MAVLink camera attached to an autopilot (1-6). 0 if the component is a MAVLink camera (with its own component id). | +| max | `float` | degC | Temperature max. | +| max_point_x | `float` | | Temperature max point x value (normalized 0..1, 0 is left, 1 is right), NAN if unknown. | +| max_point_y | `float` | | Temperature max point y value (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown. | +| min | `float` | degC | Temperature min. | +| min_point_x | `float` | | Temperature min point x value (normalized 0..1, 0 is left, 1 is right), NAN if unknown. | +| min_point_y | `float` | | Temperature min point y value (normalized 0..1, 0 is top, 1 is bottom), NAN if unknown. | ### GIMBAL_MANAGER_INFORMATION (280) {#GIMBAL_MANAGER_INFORMATION} Information about a high level gimbal manager. This message should be requested by a ground station using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -cap_flags | `uint32_t` | | [GIMBAL_MANAGER_CAP_FLAGS](#GIMBAL_MANAGER_CAP_FLAGS) | Bitmap of gimbal capability flags. -gimbal_device_id | `uint8_t` | | | Gimbal device ID that this gimbal manager is responsible for. Component ID of gimbal device (or 1-6 for non-MAVLink gimbal).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -roll_min | `float` | rad | | Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) -roll_max | `float` | rad | | Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) -pitch_min | `float` | rad | | Minimum pitch angle (positive: up, negative: down) -pitch_max | `float` | rad | | Maximum pitch angle (positive: up, negative: down) -yaw_min | `float` | rad | | Minimum yaw angle (positive: to the right, negative: to the left) -yaw_max | `float` | rad | | Maximum yaw angle (positive: to the right, negative: to the left) - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| cap_flags | `uint32_t` | | [GIMBAL_MANAGER_CAP_FLAGS](#GIMBAL_MANAGER_CAP_FLAGS) | Bitmap of gimbal capability flags. | +| gimbal_device_id | `uint8_t` | | | Gimbal device ID that this gimbal manager is responsible for. Component ID of gimbal device (or 1-6 for non-MAVLink gimbal).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| roll_min | `float` | rad | | Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left) | +| roll_max | `float` | rad | | Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left) | +| pitch_min | `float` | rad | | Minimum pitch angle (positive: up, negative: down) | +| pitch_max | `float` | rad | | Maximum pitch angle (positive: up, negative: down) | +| yaw_min | `float` | rad | | Minimum yaw angle (positive: to the right, negative: to the left) | +| yaw_max | `float` | rad | | Maximum yaw angle (positive: to the right, negative: to the left) | ### GIMBAL_MANAGER_STATUS (281) {#GIMBAL_MANAGER_STATUS} Current status about a high level gimbal manager. This message should be broadcast at a low regular rate (e.g. 5Hz). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags currently applied. -gimbal_device_id | `uint8_t` | | | Gimbal device ID that this gimbal manager is responsible for. Component ID of gimbal device (or 1-6 for non-MAVLink gimbal).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -primary_control_sysid | `uint8_t` | | | System ID of MAVLink component with primary control, 0 for none. -primary_control_compid | `uint8_t` | | | Component ID of MAVLink component with primary control, 0 for none. -secondary_control_sysid | `uint8_t` | | | System ID of MAVLink component with secondary control, 0 for none. -secondary_control_compid | `uint8_t` | | | Component ID of MAVLink component with secondary control, 0 for none. - +| Field Name | Type | Units | Values | Description | +| ------------------------ | ---------- | ----- | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags currently applied. | +| gimbal_device_id | `uint8_t` | | | Gimbal device ID that this gimbal manager is responsible for. Component ID of gimbal device (or 1-6 for non-MAVLink gimbal).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| primary_control_sysid | `uint8_t` | | | System ID of MAVLink component with primary control, 0 for none. | +| primary_control_compid | `uint8_t` | | | Component ID of MAVLink component with primary control, 0 for none. | +| secondary_control_sysid | `uint8_t` | | | System ID of MAVLink component with secondary control, 0 for none. | +| secondary_control_compid | `uint8_t` | | | Component ID of MAVLink component with secondary control, 0 for none. | ### GIMBAL_MANAGER_SET_ATTITUDE (282) {#GIMBAL_MANAGER_SET_ATTITUDE} High level message to control a gimbal's attitude. This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags to use. -gimbal_device_id | `uint8_t` | | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag [GIMBAL_MANAGER_FLAGS_YAW_LOCK](#GIMBAL_MANAGER_FLAGS_YAW_LOCK) is set) -angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity, positive is rolling to the right, NaN to be ignored. -angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity, positive is pitching up, NaN to be ignored. -angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity, positive is yawing to the right, NaN to be ignored. - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags to use. | +| gimbal_device_id | `uint8_t` | | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is depends on whether the flag [GIMBAL_MANAGER_FLAGS_YAW_LOCK](#GIMBAL_MANAGER_FLAGS_YAW_LOCK) is set) | +| angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity, positive is rolling to the right, NaN to be ignored. | +| angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity, positive is pitching up, NaN to be ignored. | +| angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity, positive is yawing to the right, NaN to be ignored. | ### GIMBAL_DEVICE_INFORMATION (283) {#GIMBAL_DEVICE_INFORMATION} Information about a low level gimbal. This message should be requested by the gimbal manager or a ground station using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). The maximum angles and rates are the limits by hardware. However, the limits by software used are likely different/smaller and dependent on mode/settings/etc.. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -vendor_name | `char[32]` | | | Name of the gimbal vendor. -model_name | `char[32]` | | | Name of the gimbal model. -custom_name | `char[32]` | | | Custom name of the gimbal given to it by the user. -firmware_version | `uint32_t` | | | Version of the gimbal firmware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. -hardware_version | `uint32_t` | | | Version of the gimbal hardware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. -uid | `uint64_t` | | invalid:0 | UID of gimbal hardware (0 if unknown). -cap_flags | `uint16_t` | | [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Bitmap of gimbal capability flags. -custom_cap_flags | `uint16_t` | | | Bitmap for use for gimbal-specific capability flags. -roll_min | `float` | rad | invalid:NaN | Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left). NAN if unknown. -roll_max | `float` | rad | invalid:NaN | Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left). NAN if unknown. -pitch_min | `float` | rad | invalid:NaN | Minimum hardware pitch angle (positive: up, negative: down). NAN if unknown. -pitch_max | `float` | rad | invalid:NaN | Maximum hardware pitch angle (positive: up, negative: down). NAN if unknown. -yaw_min | `float` | rad | invalid:NaN | Minimum hardware yaw angle (positive: to the right, negative: to the left). NAN if unknown. -yaw_max | `float` | rad | invalid:NaN | Maximum hardware yaw angle (positive: to the right, negative: to the left). NAN if unknown. -gimbal_device_id ++ | `uint8_t` | | invalid:0 | This field is to be used if the gimbal manager and the gimbal device are the same component and hence have the same component ID. This field is then set to a number between 1-6. If the component ID is separate, this field is not required and must be set to 0. -cap_flags2 ++ | `uint32_t` | | invalid:0 [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Extended bitmap of gimbal capability flags (32 bit). For backwards compatibility, the lower 16 bits should also be set in cap_flags. Ground stations should prefer this field if non-zero. - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| vendor_name | `char[32]` | | | Name of the gimbal vendor. | +| model_name | `char[32]` | | | Name of the gimbal model. | +| custom_name | `char[32]` | | | Custom name of the gimbal given to it by the user. | +| firmware_version | `uint32_t` | | | Version of the gimbal firmware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. | +| hardware_version | `uint32_t` | | | Version of the gimbal hardware, encoded as: `(Dev & 0xff) << 24 + (Patch & 0xff) << 16 + (Minor & 0xff) << 8 + (Major & 0xff)`. | +| uid | `uint64_t` | | invalid:0 | UID of gimbal hardware (0 if unknown). | +| cap_flags | `uint16_t` | | [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Bitmap of gimbal capability flags. | +| custom_cap_flags | `uint16_t` | | | Bitmap for use for gimbal-specific capability flags. | +| roll_min | `float` | rad | invalid:NaN | Minimum hardware roll angle (positive: rolling to the right, negative: rolling to the left). NAN if unknown. | +| roll_max | `float` | rad | invalid:NaN | Maximum hardware roll angle (positive: rolling to the right, negative: rolling to the left). NAN if unknown. | +| pitch_min | `float` | rad | invalid:NaN | Minimum hardware pitch angle (positive: up, negative: down). NAN if unknown. | +| pitch_max | `float` | rad | invalid:NaN | Maximum hardware pitch angle (positive: up, negative: down). NAN if unknown. | +| yaw_min | `float` | rad | invalid:NaN | Minimum hardware yaw angle (positive: to the right, negative: to the left). NAN if unknown. | +| yaw_max | `float` | rad | invalid:NaN | Maximum hardware yaw angle (positive: to the right, negative: to the left). NAN if unknown. | +| gimbal_device_id ++ | `uint8_t` | | invalid:0 | This field is to be used if the gimbal manager and the gimbal device are the same component and hence have the same component ID. This field is then set to a number between 1-6. If the component ID is separate, this field is not required and must be set to 0. | +| cap_flags2 ++ | `uint32_t` | | invalid:0 [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Extended bitmap of gimbal capability flags (32 bit). For backwards compatibility, the lower 16 bits should also be set in cap_flags. Ground stations should prefer this field if non-zero. | ### GIMBAL_DEVICE_SET_ATTITUDE (284) {#GIMBAL_DEVICE_SET_ATTITUDE} @@ -2882,16 +2718,15 @@ Setting both [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW These rules are to ensure backwards compatibility. New implementations should always set either [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME) or [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -flags | `uint16_t` | | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Low level gimbal flags. -q | `float[4]` | | invalid:[NaN] | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame is described in the message description. Set fields to NaN to be ignored. -angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: rolling to the right). The frame is described in the message description. NaN to be ignored. -angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: pitching up). The frame is described in the message description. NaN to be ignored. -angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: yawing to the right). The frame is described in the message description. NaN to be ignored. - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| flags | `uint16_t` | | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Low level gimbal flags. | +| q | `float[4]` | | invalid:[NaN] | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame is described in the message description. Set fields to NaN to be ignored. | +| angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: rolling to the right). The frame is described in the message description. NaN to be ignored. | +| angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: pitching up). The frame is described in the message description. NaN to be ignored. | +| angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: yawing to the right). The frame is described in the message description. NaN to be ignored. | ### GIMBAL_DEVICE_ATTITUDE_STATUS (285) {#GIMBAL_DEVICE_ATTITUDE_STATUS} @@ -2906,80 +2741,76 @@ If the flag [GIMBAL_DEVICE_FLAGS_YAW_LOCK](#GIMBAL_DEVICE_FLAGS_YAW_LOCK) is set else they are relative to the vehicle heading (vehicle frame). Other conditions of the flags are not allowed. The quaternion and angular velocities in the other frame can be calculated from delta_yaw and delta_yaw_velocity as -q_earth = q_delta_yaw * q_vehicle and w_earth = w_delta_yaw_velocity + w_vehicle (if not NaN). +q_earth = q_delta_yaw \* q_vehicle and w_earth = w_delta_yaw_velocity + w_vehicle (if not NaN). If neither the [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME) nor the [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME) flag is set, then (for backwards compatibility) the data in the delta_yaw and delta_yaw_velocity fields are to be ignored. New implementations should always set either [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME) or [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME), and always should set delta_yaw and delta_yaw_velocity either to the proper value or NaN. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -flags | `uint16_t` | | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Current gimbal flags set. -q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame is described in the message description. -angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: rolling to the right). The frame is described in the message description. NaN if unknown. -angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: pitching up). The frame is described in the message description. NaN if unknown. -angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: yawing to the right). The frame is described in the message description. NaN if unknown. -failure_flags | `uint32_t` | | [GIMBAL_DEVICE_ERROR_FLAGS](#GIMBAL_DEVICE_ERROR_FLAGS) | Failure flags (0 for no failure) -delta_yaw ++ | `float` | rad | invalid:NAN | Yaw angle relating the quaternions in earth and body frames (see message description). NaN if unknown. -delta_yaw_velocity ++ | `float` | rad/s | invalid:NAN | Yaw angular velocity relating the angular velocities in earth and body frames (see message description). NaN if unknown. -gimbal_device_id ++ | `uint8_t` | | invalid:0 | This field is to be used if the gimbal manager and the gimbal device are the same component and hence have the same component ID. This field is then set a number between 1-6. If the component ID is separate, this field is not required and must be set to 0. - +| Field Name | Type | Units | Values | Description | +| ---------------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| flags | `uint16_t` | | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Current gimbal flags set. | +| q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame is described in the message description. | +| angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: rolling to the right). The frame is described in the message description. NaN if unknown. | +| angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: pitching up). The frame is described in the message description. NaN if unknown. | +| angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: yawing to the right). The frame is described in the message description. NaN if unknown. | +| failure_flags | `uint32_t` | | [GIMBAL_DEVICE_ERROR_FLAGS](#GIMBAL_DEVICE_ERROR_FLAGS) | Failure flags (0 for no failure) | +| delta_yaw ++ | `float` | rad | invalid:NAN | Yaw angle relating the quaternions in earth and body frames (see message description). NaN if unknown. | +| delta_yaw_velocity ++ | `float` | rad/s | invalid:NAN | Yaw angular velocity relating the angular velocities in earth and body frames (see message description). NaN if unknown. | +| gimbal_device_id ++ | `uint8_t` | | invalid:0 | This field is to be used if the gimbal manager and the gimbal device are the same component and hence have the same component ID. This field is then set a number between 1-6. If the component ID is separate, this field is not required and must be set to 0. | ### AUTOPILOT_STATE_FOR_GIMBAL_DEVICE (286) {#AUTOPILOT_STATE_FOR_GIMBAL_DEVICE} Low level message containing autopilot state relevant for a gimbal device. This message is to be sent from the autopilot to the gimbal device component. The data of this message are for the gimbal device's estimator corrections, in particular horizon compensation, as well as indicates autopilot control intentions, e.g. feed forward angular control in the z-axis. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -time_boot_us | `uint64_t` | us | | Timestamp (time since system boot). -q | `float[4]` | | | Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). -q_estimated_delay_us | `uint32_t` | us | invalid:0 | Estimated delay of the attitude data. 0 if unknown. -vx | `float` | m/s | invalid:NaN | X Speed in NED (North, East, Down). NAN if unknown. -vy | `float` | m/s | invalid:NaN | Y Speed in NED (North, East, Down). NAN if unknown. -vz | `float` | m/s | invalid:NaN | Z Speed in NED (North, East, Down). NAN if unknown. -v_estimated_delay_us | `uint32_t` | us | invalid:0 | Estimated delay of the speed data. 0 if unknown. -feed_forward_angular_velocity_z | `float` | rad/s | invalid:NaN | Feed forward Z component of angular velocity (positive: yawing to the right). NaN to be ignored. This is to indicate if the autopilot is actively yawing. -estimator_status | `uint16_t` | | [ESTIMATOR_STATUS_FLAGS](#ESTIMATOR_STATUS_FLAGS) | Bitmap indicating which estimator outputs are valid. -landed_state | `uint8_t` | | invalid:MAV_LANDED_STATE_UNDEFINED [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. -angular_velocity_z ++ | `float` | rad/s | invalid:0 | Z component of angular velocity in NED (North, East, Down). 0 if unknown. Use 0.00001 to represent a measured value of zero. - +| Field Name | Type | Units | Values | Description | +| ---------------------------------------------------------------------------------- | ---------- | ----- | ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| time_boot_us | `uint64_t` | us | | Timestamp (time since system boot). | +| q | `float[4]` | | | Quaternion components of autopilot attitude: w, x, y, z (1 0 0 0 is the null-rotation, Hamilton convention). | +| q_estimated_delay_us | `uint32_t` | us | invalid:0 | Estimated delay of the attitude data. 0 if unknown. | +| vx | `float` | m/s | invalid:NaN | X Speed in NED (North, East, Down). NAN if unknown. | +| vy | `float` | m/s | invalid:NaN | Y Speed in NED (North, East, Down). NAN if unknown. | +| vz | `float` | m/s | invalid:NaN | Z Speed in NED (North, East, Down). NAN if unknown. | +| v_estimated_delay_us | `uint32_t` | us | invalid:0 | Estimated delay of the speed data. 0 if unknown. | +| feed_forward_angular_velocity_z | `float` | rad/s | invalid:NaN | Feed forward Z component of angular velocity (positive: yawing to the right). NaN to be ignored. This is to indicate if the autopilot is actively yawing. | +| estimator_status | `uint16_t` | | [ESTIMATOR_STATUS_FLAGS](#ESTIMATOR_STATUS_FLAGS) | Bitmap indicating which estimator outputs are valid. | +| landed_state | `uint8_t` | | invalid:MAV_LANDED_STATE_UNDEFINED [MAV_LANDED_STATE](#MAV_LANDED_STATE) | The landed state. Is set to [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) if landed state is unknown. | +| angular_velocity_z ++ | `float` | rad/s | invalid:0 | Z component of angular velocity in NED (North, East, Down). 0 if unknown. Use 0.00001 to represent a measured value of zero. | ### GIMBAL_MANAGER_SET_PITCHYAW (287) {#GIMBAL_MANAGER_SET_PITCHYAW} Set gimbal manager pitch and yaw angles (high rate message). This message is to be sent to the gimbal manager (e.g. from a ground station) and will be ignored by gimbal devices. Angles and rates can be set to NaN according to use case. Use [MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW](#MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW) for low-rate adjustments that require confirmation. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags to use. -gimbal_device_id | `uint8_t` | | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -pitch | `float` | rad | invalid:NaN | Pitch angle (positive: up, negative: down, NaN to be ignored). -yaw | `float` | rad | invalid:NaN | Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). -pitch_rate | `float` | rad/s | invalid:NaN | Pitch angular rate (positive: up, negative: down, NaN to be ignored). -yaw_rate | `float` | rad/s | invalid:NaN | Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| flags | `uint32_t` | | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags to use. | +| gimbal_device_id | `uint8_t` | | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| pitch | `float` | rad | invalid:NaN | Pitch angle (positive: up, negative: down, NaN to be ignored). | +| yaw | `float` | rad | invalid:NaN | Yaw angle (positive: to the right, negative: to the left, NaN to be ignored). | +| pitch_rate | `float` | rad/s | invalid:NaN | Pitch angular rate (positive: up, negative: down, NaN to be ignored). | +| yaw_rate | `float` | rad/s | invalid:NaN | Yaw angular rate (positive: to the right, negative: to the left, NaN to be ignored). | ### GIMBAL_MANAGER_SET_MANUAL_CONTROL (288) {#GIMBAL_MANAGER_SET_MANUAL_CONTROL} High level message to control a gimbal manually. The angles or angular rates are unitless; the actual rates will depend on internal gimbal manager settings/configuration (e.g. set by parameters). This message is to be sent to the gimbal manager (e.g. from a ground station). Angles and rates can be set to NaN according to use case. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -flags | `uint32_t` | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags. -gimbal_device_id | `uint8_t` | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -pitch | `float` | invalid:NaN | Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). -yaw | `float` | invalid:NaN | Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). -pitch_rate | `float` | invalid:NaN | Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). -yaw_rate | `float` | invalid:NaN | Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| flags | `uint32_t` | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | High level gimbal manager flags. | +| gimbal_device_id | `uint8_t` | | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| pitch | `float` | invalid:NaN | Pitch angle unitless (-1..1, positive: up, negative: down, NaN to be ignored). | +| yaw | `float` | invalid:NaN | Yaw angle unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). | +| pitch_rate | `float` | invalid:NaN | Pitch angular rate unitless (-1..1, positive: up, negative: down, NaN to be ignored). | +| yaw_rate | `float` | invalid:NaN | Yaw angular rate unitless (-1..1, positive: to the right, negative: to the left, NaN to be ignored). | ### ESC_INFO (290) — [WIP] {#ESC_INFO} @@ -2987,18 +2818,17 @@ yaw_rate | `float` | invalid:NaN | Yaw angular rate unitless (-1..1, positive: t ESC information for lower rate streaming. Recommended streaming rate 1Hz. See [ESC_STATUS](#ESC_STATUS) for higher-rate ESC data. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -index | `uint8_t` | | | Index of the first ESC in this message (ESC are indexed in motor order). minValue = 0, maxValue = 60, increment = 4.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. -counter | `uint16_t` | | | Counter of data packets received. -count | `uint8_t` | | | Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. -connection_type | `uint8_t` | | [ESC_CONNECTION_TYPE](#ESC_CONNECTION_TYPE) | Connection type protocol for all ESC. -info | `uint8_t` | | | Information regarding online/offline status of each ESC. -failure_flags | `uint16_t[4]` | | [ESC_FAILURE_FLAGS](#ESC_FAILURE_FLAGS) | Bitmap of ESC failure flags. -error_count | `uint32_t[4]` | | | Number of reported errors by each ESC since boot. -temperature | `int16_t[4]` | cdegC | invalid:[INT16_MAX] | Temperature of each ESC. INT16_MAX: if data not supplied by ESC. - +| Field Name | Type | Units | Values | Description | +| --------------- | ------------- | ----- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| index | `uint8_t` | | | Index of the first ESC in this message (ESC are indexed in motor order). minValue = 0, maxValue = 60, increment = 4.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. | +| counter | `uint16_t` | | | Counter of data packets received. | +| count | `uint8_t` | | | Total number of ESCs in all messages of this type. Message fields with an index higher than this should be ignored because they contain invalid data. | +| connection_type | `uint8_t` | | [ESC_CONNECTION_TYPE](#ESC_CONNECTION_TYPE) | Connection type protocol for all ESC. | +| info | `uint8_t` | | | Information regarding online/offline status of each ESC. | +| failure_flags | `uint16_t[4]` | | [ESC_FAILURE_FLAGS](#ESC_FAILURE_FLAGS) | Bitmap of ESC failure flags. | +| error_count | `uint32_t[4]` | | | Number of reported errors by each ESC since boot. | +| temperature | `int16_t[4]` | cdegC | invalid:[INT16_MAX] | Temperature of each ESC. INT16_MAX: if data not supplied by ESC. | ### ESC_STATUS (291) — [WIP] {#ESC_STATUS} @@ -3006,60 +2836,56 @@ temperature | `int16_t[4]` | cdegC | invalid:[INT16_MAX] | Temperature of each E ESC information for higher rate streaming. Recommended streaming rate is ~10 Hz. Information that changes more slowly is sent in [ESC_INFO](#ESC_INFO). It should typically only be streamed on high-bandwidth links (i.e. to a companion computer). -Field Name | Type | Units | Description ---- | --- | --- | --- -index | `uint8_t` | | Index of the first ESC in this message (ESC are indexed in motor order). minValue = 0, maxValue = 60, increment = 4.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. -rpm | `int32_t[4]` | rpm | Reported motor RPM from each ESC (negative for reverse rotation). -voltage | `float[4]` | V | Voltage measured from each ESC. -current | `float[4]` | A | Current measured from each ESC. - +| Field Name | Type | Units | Description | +| ---------- | ------------ | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| index | `uint8_t` | | Index of the first ESC in this message (ESC are indexed in motor order). minValue = 0, maxValue = 60, increment = 4.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number. | +| rpm | `int32_t[4]` | rpm | Reported motor RPM from each ESC (negative for reverse rotation). | +| voltage | `float[4]` | V | Voltage measured from each ESC. | +| current | `float[4]` | A | Current measured from each ESC. | ### AIRSPEED (295) {#AIRSPEED} Airspeed information from a sensor. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Sensor ID.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -airspeed | `float` | m/s | | Calibrated airspeed (CAS). -temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature. -raw_press | `float` | hPa | invalid:NaN | Raw differential pressure. -flags | `uint8_t` | | [AIRSPEED_SENSOR_FLAGS](#AIRSPEED_SENSOR_FLAGS) | Airspeed sensor flags. - +| Field Name | Type | Units | Values | Description | +| ----------- | --------- | ----- | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Sensor ID.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| airspeed | `float` | m/s | | Calibrated airspeed (CAS). | +| temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature. | +| raw_press | `float` | hPa | invalid:NaN | Raw differential pressure. | +| flags | `uint8_t` | | [AIRSPEED_SENSOR_FLAGS](#AIRSPEED_SENSOR_FLAGS) | Airspeed sensor flags. | ### GLOBAL_POSITION_SENSOR (296) {#GLOBAL_POSITION_SENSOR} Reports measurement/estimate from a global position sensor. Used as navigation fusion source and optionally displayed in the UI. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | default:0 | System ID (ID of target system, normally autopilot and ground station). -target_component | `uint8_t` | | default:0 | Component ID (normally 0 for broadcast). -id | `uint8_t` | | | Sensor ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -time_usec | `uint64_t` | us | | Timestamp of message transmission (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -processing_time | `uint32_t` | us | | The time spent in processing the sensor data that is the basis for this position. The recipient can use this to improve time alignment of the data. This is the time between measurement (e.g. camera exposure time) and transmission of this message. Set to NaN if not known. -source | `uint8_t` | | [GLOBAL_POSITION_SRC](#GLOBAL_POSITION_SRC) | Source of position/estimate (such as GNSS, estimator, etc.) -flags | `uint8_t` | | [GLOBAL_POSITION_FLAGS](#GLOBAL_POSITION_FLAGS) | Status flags -lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude (WGS84) -lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude (WGS84) -alt_ellipsoid | `float` | m | invalid:NaN | Altitude (WGS84 elipsoid), preferred if available -alt | `float` | m | invalid:NaN | Altitude (MSL - position-system specific value) use if no alt_ellipsoid available -eph | `float` | m | invalid:NaN | Standard deviation of horizontal position error -epv | `float` | m | invalid:NaN | Standard deviation of vertical position error - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | default:0 | System ID (ID of target system, normally autopilot and ground station). | +| target_component | `uint8_t` | | default:0 | Component ID (normally 0 for broadcast). | +| id | `uint8_t` | | | Sensor ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| time_usec | `uint64_t` | us | | Timestamp of message transmission (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| processing_time | `uint32_t` | us | | The time spent in processing the sensor data that is the basis for this position. The recipient can use this to improve time alignment of the data. This is the time between measurement (e.g. camera exposure time) and transmission of this message. Set to NaN if not known. | +| source | `uint8_t` | | [GLOBAL_POSITION_SRC](#GLOBAL_POSITION_SRC) | Source of position/estimate (such as GNSS, estimator, etc.) | +| flags | `uint8_t` | | [GLOBAL_POSITION_FLAGS](#GLOBAL_POSITION_FLAGS) | Status flags | +| lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude (WGS84) | +| lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude (WGS84) | +| alt_ellipsoid | `float` | m | invalid:NaN | Altitude (WGS84 elipsoid), preferred if available | +| alt | `float` | m | invalid:NaN | Altitude (MSL - position-system specific value) use if no alt_ellipsoid available | +| eph | `float` | m | invalid:NaN | Standard deviation of horizontal position error | +| epv | `float` | m | invalid:NaN | Standard deviation of vertical position error | ### WIFI_CONFIG_AP (299) {#WIFI_CONFIG_AP} Configure WiFi AP SSID, password, and mode. This message is re-emitted as an acknowledgement by the AP. The message may also be explicitly requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) -Field Name | Type | Values | Description ---- | --- | --- | --- -ssid | `char[32]` | | Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. -password | `char[64]` | | Password. Blank for an open AP. MD5 hash when message is sent back as a response. -mode ++ | `int8_t` | [WIFI_CONFIG_AP_MODE](#WIFI_CONFIG_AP_MODE) | WiFi Mode. -response ++ | `int8_t` | [WIFI_CONFIG_AP_RESPONSE](#WIFI_CONFIG_AP_RESPONSE) | Message acceptance response (sent back to GS). - +| Field Name | Type | Values | Description | +| ------------------------------------------------------------------------ | ---------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | +| ssid | `char[32]` | | Name of Wi-Fi network (SSID). Blank to leave it unchanged when setting. Current SSID when sent back as a response. | +| password | `char[64]` | | Password. Blank for an open AP. MD5 hash when message is sent back as a response. | +| mode ++ | `int8_t` | [WIFI_CONFIG_AP_MODE](#WIFI_CONFIG_AP_MODE) | WiFi Mode. | +| response ++ | `int8_t` | [WIFI_CONFIG_AP_RESPONSE](#WIFI_CONFIG_AP_RESPONSE) | Message acceptance response (sent back to GS). | ### PROTOCOL_VERSION (300) — [DEP] {#PROTOCOL_VERSION} @@ -3067,53 +2893,50 @@ password | `char[64]` | | Password. Blank for an open AP. MD5 hash when message Version and capability of protocol version. This message can be requested with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) and is used as part of the handshaking to establish which MAVLink version should be used on the network. Every node should respond to a request for [PROTOCOL_VERSION](#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 ---- | --- | --- -version | `uint16_t` | Currently active MAVLink version number * 100: v1.0 is 100, v2.0 is 200, etc. -min_version | `uint16_t` | Minimum MAVLink version supported -max_version | `uint16_t` | Maximum MAVLink version supported (set to the same value as version by default) -spec_version_hash | `uint8_t[8]` | The first 8 bytes (not characters printed in hex!) of the git hash. -library_version_hash | `uint8_t[8]` | The first 8 bytes (not characters printed in hex!) of the git hash. - +| Field Name | Type | Description | +| -------------------- | ------------ | ------------------------------------------------------------------------------- | +| version | `uint16_t` | Currently active MAVLink version number \* 100: v1.0 is 100, v2.0 is 200, etc. | +| min_version | `uint16_t` | Minimum MAVLink version supported | +| max_version | `uint16_t` | Maximum MAVLink version supported (set to the same value as version by default) | +| spec_version_hash | `uint8_t[8]` | The first 8 bytes (not characters printed in hex!) of the git hash. | +| library_version_hash | `uint8_t[8]` | The first 8 bytes (not characters printed in hex!) of the git hash. | ### AIS_VESSEL (301) {#AIS_VESSEL} The location and information of an AIS vessel -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -MMSI | `uint32_t` | | | Mobile Marine Service Identifier, 9 decimal digits -lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude -lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude -COG | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground -heading | `uint16_t` | cdeg | invalid:UINT16_MAX | True heading -velocity | `uint16_t` | cm/s | invalid:UINT16_MAX | Speed over ground -turn_rate | `int8_t` | ddeg/s | invalid:INT8_MAX | Turn rate, 0.1 degrees per second -navigational_status | `uint8_t` | | [AIS_NAV_STATUS](#AIS_NAV_STATUS) | Navigational status -type | `uint8_t` | | [AIS_TYPE](#AIS_TYPE) | Type of vessels -dimension_bow | `uint16_t` | m | invalid:UINT16_MAX | Distance from lat/lon location to bow -dimension_stern | `uint16_t` | m | invalid:UINT16_MAX | Distance from lat/lon location to stern -dimension_port | `uint8_t` | m | invalid:UINT8_MAX | Distance from lat/lon location to port side -dimension_starboard | `uint8_t` | m | invalid:UINT8_MAX | Distance from lat/lon location to starboard side -callsign | `char[7]` | | | The vessel callsign. Characters are encoded as 7-bit ASCII, but only characters in the [AIS 6-bit ASCII subset](https://en.wikipedia.org/wiki/Six-bit_character_code#AIS_SixBit_ASCII) are permitted. Also set [AIS_FLAGS_VALID_CALLSIGN](#AIS_FLAGS_VALID_CALLSIGN) if valid. The string is NULL-terminated if it is shorter than the array length. -name | `char[20]` | | | The vessel name. Characters are encoded as 7-bit ASCII, but only characters in the [AIS 6-bit ASCII subset](https://en.wikipedia.org/wiki/Six-bit_character_code#AIS_SixBit_ASCII) are permitted. Also set [AIS_FLAGS_VALID_NAME](#AIS_FLAGS_VALID_NAME) if valid. The string is NULL-terminated if it is shorter than the array length. -tslc | `uint16_t` | s | | Time since last communication from the vessel, in seconds -flags | `uint16_t` | | [AIS_FLAGS](#AIS_FLAGS) | Bitmask to indicate various statuses including valid data fields - +| Field Name | Type | Units | Values | Description | +| ------------------- | ---------- | ------ | --------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| MMSI | `uint32_t` | | | Mobile Marine Service Identifier, 9 decimal digits | +| lat | `int32_t` | degE7 | invalid:INT32_MAX | Latitude | +| lon | `int32_t` | degE7 | invalid:INT32_MAX | Longitude | +| COG | `uint16_t` | cdeg | invalid:UINT16_MAX | Course over ground | +| heading | `uint16_t` | cdeg | invalid:UINT16_MAX | True heading | +| velocity | `uint16_t` | cm/s | invalid:UINT16_MAX | Speed over ground | +| turn_rate | `int8_t` | ddeg/s | invalid:INT8_MAX | Turn rate, 0.1 degrees per second | +| navigational_status | `uint8_t` | | [AIS_NAV_STATUS](#AIS_NAV_STATUS) | Navigational status | +| type | `uint8_t` | | [AIS_TYPE](#AIS_TYPE) | Type of vessels | +| dimension_bow | `uint16_t` | m | invalid:UINT16_MAX | Distance from lat/lon location to bow | +| dimension_stern | `uint16_t` | m | invalid:UINT16_MAX | Distance from lat/lon location to stern | +| dimension_port | `uint8_t` | m | invalid:UINT8_MAX | Distance from lat/lon location to port side | +| dimension_starboard | `uint8_t` | m | invalid:UINT8_MAX | Distance from lat/lon location to starboard side | +| callsign | `char[7]` | | | The vessel callsign. Characters are encoded as 7-bit ASCII, but only characters in the [AIS 6-bit ASCII subset](https://en.wikipedia.org/wiki/Six-bit_character_code#AIS_SixBit_ASCII) are permitted. Also set [AIS_FLAGS_VALID_CALLSIGN](#AIS_FLAGS_VALID_CALLSIGN) if valid. The string is NULL-terminated if it is shorter than the array length. | +| name | `char[20]` | | | The vessel name. Characters are encoded as 7-bit ASCII, but only characters in the [AIS 6-bit ASCII subset](https://en.wikipedia.org/wiki/Six-bit_character_code#AIS_SixBit_ASCII) are permitted. Also set [AIS_FLAGS_VALID_NAME](#AIS_FLAGS_VALID_NAME) if valid. The string is NULL-terminated if it is shorter than the array length. | +| tslc | `uint16_t` | s | | Time since last communication from the vessel, in seconds | +| flags | `uint16_t` | | [AIS_FLAGS](#AIS_FLAGS) | Bitmask to indicate various statuses including valid data fields | ### UAVCAN_NODE_STATUS (310) {#UAVCAN_NODE_STATUS} General status information of an UAVCAN node. Please refer to the definition of the UAVCAN message "uavcan.protocol.NodeStatus" for the background information. The UAVCAN specification is available at http://uavcan.org. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -uptime_sec | `uint32_t` | s | | Time since the start-up of the node. -health | `uint8_t` | | [UAVCAN_NODE_HEALTH](#UAVCAN_NODE_HEALTH) | Generalized node health status. -mode | `uint8_t` | | [UAVCAN_NODE_MODE](#UAVCAN_NODE_MODE) | Generalized operating mode. -sub_mode | `uint8_t` | | | Not used currently. -vendor_specific_status_code | `uint16_t` | | | Vendor-specific status information. - +| Field Name | Type | Units | Values | Description | +| --------------------------- | ---------- | ----- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| uptime_sec | `uint32_t` | s | | Time since the start-up of the node. | +| health | `uint8_t` | | [UAVCAN_NODE_HEALTH](#UAVCAN_NODE_HEALTH) | Generalized node health status. | +| mode | `uint8_t` | | [UAVCAN_NODE_MODE](#UAVCAN_NODE_MODE) | Generalized operating mode. | +| sub_mode | `uint8_t` | | | Not used currently. | +| vendor_specific_status_code | `uint16_t` | | | Vendor-specific status information. | ### UAVCAN_NODE_INFO (311) {#UAVCAN_NODE_INFO} @@ -3125,121 +2948,113 @@ The message may also be explicitly requested using [MAV_CMD_REQUEST_MESSAGE](#MA It is also not prohibited to emit this message unconditionally at a low frequency. The DroneCAN specification is available at https://dronecan.github.io/Specification/1._Introduction/. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -uptime_sec | `uint32_t` | s | Time since the start-up of the node. -name | `char[80]` | | Node name string. For example, "sapog.px4.io". -hw_version_major | `uint8_t` | | Hardware major version number. -hw_version_minor | `uint8_t` | | Hardware minor version number. -hw_unique_id | `uint8_t[16]` | | Hardware unique 128-bit ID. -sw_version_major | `uint8_t` | | Software major version number. -sw_version_minor | `uint8_t` | | Software minor version number. -sw_vcs_commit | `uint32_t` | | Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. - +| Field Name | Type | Units | Description | +| ---------------- | ------------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| uptime_sec | `uint32_t` | s | Time since the start-up of the node. | +| name | `char[80]` | | Node name string. For example, "sapog.px4.io". | +| hw_version_major | `uint8_t` | | Hardware major version number. | +| hw_version_minor | `uint8_t` | | Hardware minor version number. | +| hw_unique_id | `uint8_t[16]` | | Hardware unique 128-bit ID. | +| sw_version_major | `uint8_t` | | Software major version number. | +| sw_version_minor | `uint8_t` | | Software minor version number. | +| sw_vcs_commit | `uint32_t` | | Version control system (VCS) revision identifier (e.g. git short commit hash). 0 if unknown. | ### PARAM_EXT_REQUEST_READ (320) {#PARAM_EXT_REQUEST_READ} Request to read the value of a parameter with either the param_id string id or param_index. [PARAM_EXT_VALUE](#PARAM_EXT_VALUE) should be emitted in response. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -param_id | `char[16]` | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_index | `int16_t` | Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) - +| Field Name | Type | Description | +| ---------------- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| param_id | `char[16]` | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_index | `int16_t` | Parameter index. Set to -1 to use the Parameter ID field as identifier (else param_id will be ignored) | ### PARAM_EXT_REQUEST_LIST (321) {#PARAM_EXT_REQUEST_LIST} Request all parameters of this component. All parameters should be emitted in response as [PARAM_EXT_VALUE](#PARAM_EXT_VALUE). -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID - +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### PARAM_EXT_VALUE (322) {#PARAM_EXT_VALUE} Emit the value of a parameter. The inclusion of param_count and param_index in the message allows the recipient to keep track of received parameters and allows them to re-request missing parameters after a loss or timeout. -Field Name | Type | Values | Description ---- | --- | --- | --- -param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_value | `char[128]` | | Parameter value -param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. -param_count | `uint16_t` | | Total number of parameters -param_index | `uint16_t` | | Index of this parameter - +| Field Name | Type | Values | Description | +| ----------- | ----------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_value | `char[128]` | | Parameter value | +| param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. | +| param_count | `uint16_t` | | Total number of parameters | +| param_index | `uint16_t` | | Index of this parameter | ### PARAM_EXT_SET (323) {#PARAM_EXT_SET} Set a parameter value. In order to deal with message loss (and retransmission of [PARAM_EXT_SET](#PARAM_EXT_SET)), when setting a parameter value and the new value is the same as the current value, you will immediately get a [PARAM_ACK_ACCEPTED](#PARAM_ACK_ACCEPTED) response. If the current state is [PARAM_ACK_IN_PROGRESS](#PARAM_ACK_IN_PROGRESS), you will accordingly receive a [PARAM_ACK_IN_PROGRESS](#PARAM_ACK_IN_PROGRESS) in response. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_value | `char[128]` | | Parameter value -param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. - +| Field Name | Type | Values | Description | +| ---------------- | ----------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_value | `char[128]` | | Parameter value | +| param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. | ### PARAM_EXT_ACK (324) {#PARAM_EXT_ACK} Response from a [PARAM_EXT_SET](#PARAM_EXT_SET) message. -Field Name | Type | Values | Description ---- | --- | --- | --- -param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_value | `char[128]` | | Parameter value (new value if [PARAM_ACK_ACCEPTED](#PARAM_ACK_ACCEPTED), current value otherwise) -param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. -param_result | `uint8_t` | [PARAM_ACK](#PARAM_ACK) | Result code. - +| Field Name | Type | Values | Description | +| ------------ | ----------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| param_id | `char[16]` | | Parameter id, terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_value | `char[128]` | | Parameter value (new value if [PARAM_ACK_ACCEPTED](#PARAM_ACK_ACCEPTED), current value otherwise) | +| param_type | `uint8_t` | [MAV_PARAM_EXT_TYPE](#MAV_PARAM_EXT_TYPE) | Parameter type. | +| param_result | `uint8_t` | [PARAM_ACK](#PARAM_ACK) | Result code. | ### OBSTACLE_DISTANCE (330) {#OBSTACLE_DISTANCE} Obstacle distances in front of the sensor, starting from the left in increment degrees to the right -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -sensor_type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Class id of the distance sensor type. -distances | `uint16_t[72]` | cm | invalid:[UINT16_MAX] | Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. -increment | `uint8_t` | deg | | Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. -min_distance | `uint16_t` | cm | | Minimum distance the sensor can measure. -max_distance | `uint16_t` | cm | | Maximum distance the sensor can measure. -increment_f ++ | `float` | deg | | Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. -angle_offset ++ | `float` | deg | | Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. -frame ++ | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL), which is north aligned. For body-mounted sensors use [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD), which is vehicle front aligned. - +| Field Name | Type | Units | Values | Description | +| ---------------------------------------------------------------------------- | -------------- | ----- | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| sensor_type | `uint8_t` | | [MAV_DISTANCE_SENSOR](#MAV_DISTANCE_SENSOR) | Class id of the distance sensor type. | +| distances | `uint16_t[72]` | cm | invalid:[UINT16_MAX] | Distance of obstacles around the vehicle with index 0 corresponding to north + angle_offset, unless otherwise specified in the frame. A value of 0 is valid and means that the obstacle is practically touching the sensor. A value of max_distance +1 means no obstacle is present. A value of UINT16_MAX for unknown/not used. In a array element, one unit corresponds to 1cm. | +| increment | `uint8_t` | deg | | Angular width in degrees of each array element. Increment direction is clockwise. This field is ignored if increment_f is non-zero. | +| min_distance | `uint16_t` | cm | | Minimum distance the sensor can measure. | +| max_distance | `uint16_t` | cm | | Maximum distance the sensor can measure. | +| increment_f ++ | `float` | deg | | Angular width in degrees of each array element as a float. If non-zero then this value is used instead of the uint8_t increment field. Positive is clockwise direction, negative is counter-clockwise. | +| angle_offset ++ | `float` | deg | | Relative angle offset of the 0-index element in the distances array. Value of 0 corresponds to forward. Positive is clockwise direction, negative is counter-clockwise. | +| frame ++ | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the yaw rotation and offset of the sensor data. Defaults to [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL), which is north aligned. For body-mounted sensors use [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD), which is vehicle front aligned. | ### ODOMETRY (331) {#ODOMETRY} Odometry message to communicate odometry information with an external interface. Fits ROS REP 147 standard for aerial vehicles (http://www.ros.org/reps/rep-0147.html). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -frame_id | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the pose data. -child_frame_id | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the velocity in free space (twist) data. -x | `float` | m | | X Position -y | `float` | m | | Y Position -z | `float` | m | | Z Position -q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) -vx | `float` | m/s | | X linear speed -vy | `float` | m/s | | Y linear speed -vz | `float` | m/s | | Z linear speed -rollspeed | `float` | rad/s | | Roll angular speed -pitchspeed | `float` | rad/s | | Pitch angular speed -yawspeed | `float` | rad/s | | Yaw angular speed -pose_covariance | `float[21]` | | invalid:[NaN:] | Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. -velocity_covariance | `float[21]` | | invalid:[NaN:] | Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. -reset_counter ++ | `uint8_t` | | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. -estimator_type ++ | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Type of estimator that is providing the odometry. -quality ++ | `int8_t` | % | invalid:0 | Optional odometry quality metric as a percentage. -1 = odometry has failed, 0 = unknown/unset quality, 1 = worst quality, 100 = best quality - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------------ | ----------- | ----- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| frame_id | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the pose data. | +| child_frame_id | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | Coordinate frame of reference for the velocity in free space (twist) data. | +| x | `float` | m | | X Position | +| y | `float` | m | | Y Position | +| z | `float` | m | | Z Position | +| q | `float[4]` | | | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation) | +| vx | `float` | m/s | | X linear speed | +| vy | `float` | m/s | | Y linear speed | +| vz | `float` | m/s | | Z linear speed | +| rollspeed | `float` | rad/s | | Roll angular speed | +| pitchspeed | `float` | rad/s | | Pitch angular speed | +| yawspeed | `float` | rad/s | | Yaw angular speed | +| pose_covariance | `float[21]` | | invalid:[NaN:] | Row-major representation of a 6x6 pose cross-covariance matrix upper right triangle (states: x, y, z, roll, pitch, yaw; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | +| velocity_covariance | `float[21]` | | invalid:[NaN:] | Row-major representation of a 6x6 velocity cross-covariance matrix upper right triangle (states: vx, vy, vz, rollspeed, pitchspeed, yawspeed; first six entries are the first ROW, next five entries are the second ROW, etc.). If unknown, assign NaN value to first element in the array. | +| reset_counter ++ | `uint8_t` | | | Estimate reset counter. This should be incremented when the estimate resets in any of the dimensions (position, velocity, attitude, angular speed). This is designed to be used when e.g an external SLAM system detects a loop-closure and the estimate jumps. | +| estimator_type ++ | `uint8_t` | | [MAV_ESTIMATOR_TYPE](#MAV_ESTIMATOR_TYPE) | Type of estimator that is providing the odometry. | +| quality ++ | `int8_t` | % | invalid:0 | Optional odometry quality metric as a percentage. -1 = odometry has failed, 0 = unknown/unset quality, 1 = worst quality, 100 = best quality | ### TRAJECTORY_REPRESENTATION_WAYPOINTS (332) — [DEP] {#TRAJECTORY_REPRESENTATION_WAYPOINTS} @@ -3247,23 +3062,22 @@ velocity_covariance | `float[21]` | | invalid:[NaN:] | Row-major representation Describe a trajectory using an array of up-to 5 waypoints in the local frame ([MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED)). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -valid_points | `uint8_t` | | | Number of valid points (up-to 5 waypoints are possible) -pos_x | `float[5]` | m | invalid:[NaN] | X-coordinate of waypoint, set to NaN if not being used -pos_y | `float[5]` | m | invalid:[NaN] | Y-coordinate of waypoint, set to NaN if not being used -pos_z | `float[5]` | m | invalid:[NaN] | Z-coordinate of waypoint, set to NaN if not being used -vel_x | `float[5]` | m/s | invalid:[NaN] | X-velocity of waypoint, set to NaN if not being used -vel_y | `float[5]` | m/s | invalid:[NaN] | Y-velocity of waypoint, set to NaN if not being used -vel_z | `float[5]` | m/s | invalid:[NaN] | Z-velocity of waypoint, set to NaN if not being used -acc_x | `float[5]` | m/s/s | invalid:[NaN] | X-acceleration of waypoint, set to NaN if not being used -acc_y | `float[5]` | m/s/s | invalid:[NaN] | Y-acceleration of waypoint, set to NaN if not being used -acc_z | `float[5]` | m/s/s | invalid:[NaN] | Z-acceleration of waypoint, set to NaN if not being used -pos_yaw | `float[5]` | rad | invalid:[NaN] | Yaw angle, set to NaN if not being used -vel_yaw | `float[5]` | rad/s | invalid:[NaN] | Yaw rate, set to NaN if not being used -command | `uint16_t[5]` | | invalid:[UINT16_MAX] [MAV_CMD](#mav_commands) | [MAV_CMD](#mav_commands) command id of waypoint, set to UINT16_MAX if not being used. - +| Field Name | Type | Units | Values | Description | +| ------------ | ------------- | ----- | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| valid_points | `uint8_t` | | | Number of valid points (up-to 5 waypoints are possible) | +| pos_x | `float[5]` | m | invalid:[NaN] | X-coordinate of waypoint, set to NaN if not being used | +| pos_y | `float[5]` | m | invalid:[NaN] | Y-coordinate of waypoint, set to NaN if not being used | +| pos_z | `float[5]` | m | invalid:[NaN] | Z-coordinate of waypoint, set to NaN if not being used | +| vel_x | `float[5]` | m/s | invalid:[NaN] | X-velocity of waypoint, set to NaN if not being used | +| vel_y | `float[5]` | m/s | invalid:[NaN] | Y-velocity of waypoint, set to NaN if not being used | +| vel_z | `float[5]` | m/s | invalid:[NaN] | Z-velocity of waypoint, set to NaN if not being used | +| acc_x | `float[5]` | m/s/s | invalid:[NaN] | X-acceleration of waypoint, set to NaN if not being used | +| acc_y | `float[5]` | m/s/s | invalid:[NaN] | Y-acceleration of waypoint, set to NaN if not being used | +| acc_z | `float[5]` | m/s/s | invalid:[NaN] | Z-acceleration of waypoint, set to NaN if not being used | +| pos_yaw | `float[5]` | rad | invalid:[NaN] | Yaw angle, set to NaN if not being used | +| vel_yaw | `float[5]` | rad/s | invalid:[NaN] | Yaw rate, set to NaN if not being used | +| command | `uint16_t[5]` | | invalid:[UINT16_MAX] [MAV_CMD](#mav_commands) | [MAV_CMD](#mav_commands) command id of waypoint, set to UINT16_MAX if not being used. | ### TRAJECTORY_REPRESENTATION_BEZIER (333) — [DEP] {#TRAJECTORY_REPRESENTATION_BEZIER} @@ -3271,64 +3085,60 @@ command | `uint16_t[5]` | | invalid:[UINT16_MAX] [MAV_CMD](#mav_commands) | [MAV Describe a trajectory using an array of up-to 5 bezier control points in the local frame ([MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED)). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -valid_points | `uint8_t` | | Number of valid control points (up-to 5 points are possible) -pos_x | `float[5]` | m | X-coordinate of bezier control points. Set to NaN if not being used -pos_y | `float[5]` | m | Y-coordinate of bezier control points. Set to NaN if not being used -pos_z | `float[5]` | m | Z-coordinate of bezier control points. Set to NaN if not being used -delta | `float[5]` | s | Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated -pos_yaw | `float[5]` | rad | Yaw. Set to NaN for unchanged - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| valid_points | `uint8_t` | | Number of valid control points (up-to 5 points are possible) | +| pos_x | `float[5]` | m | X-coordinate of bezier control points. Set to NaN if not being used | +| pos_y | `float[5]` | m | Y-coordinate of bezier control points. Set to NaN if not being used | +| pos_z | `float[5]` | m | Z-coordinate of bezier control points. Set to NaN if not being used | +| delta | `float[5]` | s | Bezier time horizon. Set to NaN if velocity/acceleration should not be incorporated | +| pos_yaw | `float[5]` | rad | Yaw. Set to NaN for unchanged | ### CELLULAR_STATUS (334) {#CELLULAR_STATUS} Cellular network status as reported by a particular modem. - This is primarily intended for logging, but a GCS may choose to display link_tx_rate and link_rx_rate. Note that a value of 0 in the id field indicates that the sender does not support reporting of multiple modems. Message data should be from a single modem, but that is not guaranteed. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -status | `uint8_t` | | [CELLULAR_STATUS_FLAG](#CELLULAR_STATUS_FLAG) | Cellular modem status -failure_reason | `uint8_t` | | [CELLULAR_NETWORK_FAILED_REASON](#CELLULAR_NETWORK_FAILED_REASON) | Failure reason when status in in [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED) -type | `uint8_t` | | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type: gsm, cdma, lte... -quality | `uint8_t` | | invalid:UINT8_MAX | Signal quality in percent. If unknown, set to UINT8_MAX -mcc | `uint16_t` | | invalid:UINT16_MAX | Mobile country code. If unknown, set to UINT16_MAX -mnc | `uint16_t` | | invalid:UINT16_MAX | Mobile network code. If unknown, set to UINT16_MAX -lac | `uint16_t` | | invalid:0 | Location area code. If unknown, set to 0 -id ++ | `uint8_t` | | min:1 | Cellular modem instance number. Indexed from 1.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -link_tx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Download rate. -link_rx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Upload rate. -cell_tower_id ++ | `char[9]` | | invalid:0 | ID of the currently connected cell tower. This must be NULL terminated if the length is less than 9 human-readable chars, and without the null termination (NULL) byte if the length is exactly 9 chars. -band_number ++ | `uint8_t` | | invalid:0 | LTE frequency band number. -band_frequency ++ | `float` | MHz | invalid:0 | LTE radio frequency. -channel_number ++ | `uint32_t` | | invalid:0 | The channel number (CN). Absolute radio-frequency (ARFCN) / E-UTRA (EARFCN) / UTRA (UARFCN) / New radio ([NR_CH](#NR_CH)). -rx_level ++ | `float` | dBm | invalid:0 | On 3G is Received Signal Code Power (RSCP). On LTE is Reference Signal Received Power (RSRP). On 5G is New Radio Reference Signal Received Power ([NR_RSRP](#NR_RSRP)). -tx_level ++ | `float` | dBm | invalid:0 | Transmitter (modem) signal absolute power level. -rx_quality ++ | `float` | dBm | invalid:0 | On 3G is Receiver Quality (RxQual). On LTE is Reference Signal Received Quality (RSRQ). On 5G is New Radio Reference Signal Received Quality ([NR_RSRQ](#NR_RSRQ)). -sinr ++ | `float` | dB | invalid:0 | Signal to interference plus noise ratio (SINR). - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------------ | ---------- | ----- | ----------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| status | `uint8_t` | | [CELLULAR_STATUS_FLAG](#CELLULAR_STATUS_FLAG) | Cellular modem status | +| failure_reason | `uint8_t` | | [CELLULAR_NETWORK_FAILED_REASON](#CELLULAR_NETWORK_FAILED_REASON) | Failure reason when status in in [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED) | +| type | `uint8_t` | | [CELLULAR_NETWORK_RADIO_TYPE](#CELLULAR_NETWORK_RADIO_TYPE) | Cellular network radio type: gsm, cdma, lte... | +| quality | `uint8_t` | | invalid:UINT8_MAX | Signal quality in percent. If unknown, set to UINT8_MAX | +| mcc | `uint16_t` | | invalid:UINT16_MAX | Mobile country code. If unknown, set to UINT16_MAX | +| mnc | `uint16_t` | | invalid:UINT16_MAX | Mobile network code. If unknown, set to UINT16_MAX | +| lac | `uint16_t` | | invalid:0 | Location area code. If unknown, set to 0 | +| id ++ | `uint8_t` | | min:1 | Cellular modem instance number. Indexed from 1.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| link_tx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Download rate. | +| link_rx_rate ++ | `uint32_t` | KiB/s | invalid:0 | Upload rate. | +| cell_tower_id ++ | `char[9]` | | invalid:0 | ID of the currently connected cell tower. This must be NULL terminated if the length is less than 9 human-readable chars, and without the null termination (NULL) byte if the length is exactly 9 chars. | +| band_number ++ | `uint8_t` | | invalid:0 | LTE frequency band number. | +| band_frequency ++ | `float` | MHz | invalid:0 | LTE radio frequency. | +| channel_number ++ | `uint32_t` | | invalid:0 | The channel number (CN). Absolute radio-frequency (ARFCN) / E-UTRA (EARFCN) / UTRA (UARFCN) / New radio ([NR_CH](#NR_CH)). | +| rx_level ++ | `float` | dBm | invalid:0 | On 3G is Received Signal Code Power (RSCP). On LTE is Reference Signal Received Power (RSRP). On 5G is New Radio Reference Signal Received Power ([NR_RSRP](#NR_RSRP)). | +| tx_level ++ | `float` | dBm | invalid:0 | Transmitter (modem) signal absolute power level. | +| rx_quality ++ | `float` | dBm | invalid:0 | On 3G is Receiver Quality (RxQual). On LTE is Reference Signal Received Quality (RSRQ). On 5G is New Radio Reference Signal Received Quality ([NR_RSRQ](#NR_RSRQ)). | +| sinr ++ | `float` | dB | invalid:0 | Signal to interference plus noise ratio (SINR). | ### ISBD_LINK_STATUS (335) {#ISBD_LINK_STATUS} Status of the Iridium SBD link. -Field Name | Type | Units | Description ---- | --- | --- | --- -timestamp | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -last_heartbeat | `uint64_t` | us | Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -failed_sessions | `uint16_t` | | Number of failed SBD sessions. -successful_sessions | `uint16_t` | | Number of successful SBD sessions. -signal_quality | `uint8_t` | | Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. -ring_pending | `uint8_t` | | 1: Ring call pending, 0: No call pending. -tx_session_pending | `uint8_t` | | 1: Transmission session pending, 0: No transmission session pending. -rx_session_pending | `uint8_t` | | 1: Receiving session pending, 0: No receiving session pending. - +| Field Name | Type | Units | Description | +| ------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| last_heartbeat | `uint64_t` | us | Timestamp of the last successful sbd session. The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| failed_sessions | `uint16_t` | | Number of failed SBD sessions. | +| successful_sessions | `uint16_t` | | Number of successful SBD sessions. | +| signal_quality | `uint8_t` | | Signal quality equal to the number of bars displayed on the ISU signal strength indicator. Range is 0 to 5, where 0 indicates no signal and 5 indicates maximum signal strength. | +| ring_pending | `uint8_t` | | 1: Ring call pending, 0: No call pending. | +| tx_session_pending | `uint8_t` | | 1: Transmission session pending, 0: No transmission session pending. | +| rx_session_pending | `uint8_t` | | 1: Receiving session pending, 0: No receiving session pending. | ### CELLULAR_CONFIG (336) {#CELLULAR_CONFIG} @@ -3337,53 +3147,50 @@ Configure cellular modems. This message is re-emitted as an acknowledgement by the modem. The message may also be explicitly requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Values | Description ---- | --- | --- | --- -enable_lte | `uint8_t` | | Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. -enable_pin | `uint8_t` | | Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. -pin | `char[16]` | | PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. -new_pin | `char[16]` | | New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. -apn | `char[32]` | | Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. -puk | `char[16]` | | Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. -roaming | `uint8_t` | | Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. -response | `uint8_t` | [CELLULAR_CONFIG_RESPONSE](#CELLULAR_CONFIG_RESPONSE) | Message acceptance response (sent back to GS). - +| Field Name | Type | Values | Description | +| ---------- | ---------- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | +| enable_lte | `uint8_t` | | Enable/disable LTE. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. | +| enable_pin | `uint8_t` | | Enable/disable PIN on the SIM card. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. | +| pin | `char[16]` | | PIN sent to the SIM card. Blank when PIN is disabled. Empty when message is sent back as a response. | +| new_pin | `char[16]` | | New PIN when changing the PIN. Blank to leave it unchanged. Empty when message is sent back as a response. | +| apn | `char[32]` | | Name of the cellular APN. Blank to leave it unchanged. Current APN when sent back as a response. | +| puk | `char[16]` | | Required PUK code in case the user failed to authenticate 3 times with the PIN. Empty when message is sent back as a response. | +| roaming | `uint8_t` | | Enable/disable roaming. 0: setting unchanged, 1: disabled, 2: enabled. Current setting when sent back as a response. | +| response | `uint8_t` | [CELLULAR_CONFIG_RESPONSE](#CELLULAR_CONFIG_RESPONSE) | Message acceptance response (sent back to GS). | ### RAW_RPM (339) {#RAW_RPM} RPM sensor data message. -Field Name | Type | Units | Description ---- | --- | --- | --- -index | `uint8_t` | | Index of this RPM sensor (0-indexed) -frequency | `float` | rpm | Indicated rate - +| Field Name | Type | Units | Description | +| ---------- | --------- | ----- | ------------------------------------ | +| index | `uint8_t` | | Index of this RPM sensor (0-indexed) | +| frequency | `float` | rpm | Indicated rate | ### UTM_GLOBAL_POSITION (340) {#UTM_GLOBAL_POSITION} The global position resulting from GPS and sensor fusion. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time | `uint64_t` | us | | Time of applicability of position (microseconds since UNIX epoch). -uas_id | `uint8_t[18]` | | | Unique UAS ID. -lat | `int32_t` | degE7 | | Latitude (WGS84) -lon | `int32_t` | degE7 | | Longitude (WGS84) -alt | `int32_t` | mm | | Altitude (WGS84) -relative_alt | `int32_t` | mm | | Altitude above ground -vx | `int16_t` | cm/s | | Ground X speed (latitude, positive north) -vy | `int16_t` | cm/s | | Ground Y speed (longitude, positive east) -vz | `int16_t` | cm/s | | Ground Z speed (altitude, positive down) -h_acc | `uint16_t` | mm | | Horizontal position uncertainty (standard deviation) -v_acc | `uint16_t` | mm | | Altitude uncertainty (standard deviation) -vel_acc | `uint16_t` | cm/s | | Speed uncertainty (standard deviation) -next_lat | `int32_t` | degE7 | | Next waypoint, latitude (WGS84) -next_lon | `int32_t` | degE7 | | Next waypoint, longitude (WGS84) -next_alt | `int32_t` | mm | | Next waypoint, altitude (WGS84) -update_rate | `uint16_t` | cs | invalid:0 | Time until next update. Set to 0 if unknown or in data driven mode. -flight_state | `uint8_t` | | [UTM_FLIGHT_STATE](#UTM_FLIGHT_STATE) | Flight state -flags | `uint8_t` | | [UTM_DATA_AVAIL_FLAGS](#UTM_DATA_AVAIL_FLAGS) | Bitwise OR combination of the data available flags. - +| Field Name | Type | Units | Values | Description | +| ------------ | ------------- | ----- | --------------------------------------------- | ------------------------------------------------------------------- | +| time | `uint64_t` | us | | Time of applicability of position (microseconds since UNIX epoch). | +| uas_id | `uint8_t[18]` | | | Unique UAS ID. | +| lat | `int32_t` | degE7 | | Latitude (WGS84) | +| lon | `int32_t` | degE7 | | Longitude (WGS84) | +| alt | `int32_t` | mm | | Altitude (WGS84) | +| relative_alt | `int32_t` | mm | | Altitude above ground | +| vx | `int16_t` | cm/s | | Ground X speed (latitude, positive north) | +| vy | `int16_t` | cm/s | | Ground Y speed (longitude, positive east) | +| vz | `int16_t` | cm/s | | Ground Z speed (altitude, positive down) | +| h_acc | `uint16_t` | mm | | Horizontal position uncertainty (standard deviation) | +| v_acc | `uint16_t` | mm | | Altitude uncertainty (standard deviation) | +| vel_acc | `uint16_t` | cm/s | | Speed uncertainty (standard deviation) | +| next_lat | `int32_t` | degE7 | | Next waypoint, latitude (WGS84) | +| next_lon | `int32_t` | degE7 | | Next waypoint, longitude (WGS84) | +| next_alt | `int32_t` | mm | | Next waypoint, altitude (WGS84) | +| update_rate | `uint16_t` | cs | invalid:0 | Time until next update. Set to 0 if unknown or in data driven mode. | +| flight_state | `uint8_t` | | [UTM_FLIGHT_STATE](#UTM_FLIGHT_STATE) | Flight state | +| flags | `uint8_t` | | [UTM_DATA_AVAIL_FLAGS](#UTM_DATA_AVAIL_FLAGS) | Bitwise OR combination of the data available flags. | ### PARAM_ERROR (345) — [WIP] {#PARAM_ERROR} @@ -3391,57 +3198,53 @@ flags | `uint8_t` | | [UTM_DATA_AVAIL_FLAGS](#UTM_DATA_AVAIL_FLAGS) | Bitwise OR Parameter set/get error. Returned from a MAVLink node in response to an error in the parameter protocol, for example failing to set a parameter because it does not exist. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -param_id | `char[16]` | | Parameter id. Terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string -param_index | `int16_t` | | Parameter index. Will be -1 if the param ID field should be used as an identifier (else the param id will be ignored) -error | `uint8_t` | [MAV_PARAM_ERROR](#MAV_PARAM_ERROR) | Error being returned to client. - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| param_id | `char[16]` | | Parameter id. Terminated by NULL if the length is less than 16 human-readable chars and WITHOUT null termination (NULL) byte if the length is exactly 16 chars - applications have to provide 16+1 bytes storage if the ID is stored as string | +| param_index | `int16_t` | | Parameter index. Will be -1 if the param ID field should be used as an identifier (else the param id will be ignored) | +| error | `uint8_t` | [MAV_PARAM_ERROR](#MAV_PARAM_ERROR) | Error being returned to client. | ### DEBUG_FLOAT_ARRAY (350) {#DEBUG_FLOAT_ARRAY} Large debug/prototyping array. The message uses the maximum available payload for data. The array_id and name fields are used to discriminate between messages in code and in user interfaces (respectively). Do not use in production code. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -name | `char[10]` | | Name, for human-friendly display in a Ground Control Station -array_id | `uint16_t` | | Unique ID used to discriminate between arrays
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -data ++ | `float[58]` | | data - +| Field Name | Type | Units | Description | +| -------------------------------------------------------------------- | ----------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| name | `char[10]` | | Name, for human-friendly display in a Ground Control Station | +| array_id | `uint16_t` | | Unique ID used to discriminate between arrays
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| data ++ | `float[58]` | | data | ### ORBIT_EXECUTION_STATUS (360) {#ORBIT_EXECUTION_STATUS} Vehicle status report that is sent out while orbit execution is in progress (see [MAV_CMD_DO_ORBIT](#MAV_CMD_DO_ORBIT)). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -radius | `float` | m | | Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the fields: x, y, z. -x | `int32_t` | | | X coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. -y | `int32_t` | | | Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters * 1e4, global = latitude in degrees * 1e7. -z | `float` | m | | Altitude of center point. Coordinate system depends on frame field. - +| Field Name | Type | Units | Values | Description | +| ---------- | ---------- | ----- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| radius | `float` | m | | Radius of the orbit circle. Positive values orbit clockwise, negative values orbit counter-clockwise. | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the fields: x, y, z. | +| x | `int32_t` | | | X coordinate of center point. Coordinate system depends on frame field: local = x position in meters _1e4, global = latitude in degrees_ 1e7. | +| y | `int32_t` | | | Y coordinate of center point. Coordinate system depends on frame field: local = x position in meters _1e4, global = latitude in degrees_ 1e7. | +| z | `float` | m | | Altitude of center point. Coordinate system depends on frame field. | ### FIGURE_EIGHT_EXECUTION_STATUS (361) {#FIGURE_EIGHT_EXECUTION_STATUS} Vehicle status report that is sent out while figure eight execution is in progress (see [MAV_CMD_DO_FIGURE_EIGHT](#MAV_CMD_DO_FIGURE_EIGHT)). This may typically send at low rates: of the order of 2Hz. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -major_radius | `float` | m | | Major axis radius of the figure eight. Positive: orbit the north circle clockwise. Negative: orbit the north circle counter-clockwise. -minor_radius | `float` | m | | Minor axis radius of the figure eight. Defines the radius of two circles that make up the figure. -orientation | `float` | rad | | Orientation of the figure eight major axis with respect to true north in [-pi,pi). -frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the fields: x, y, z. -x | `int32_t` | | | X coordinate of center point. Coordinate system depends on frame field. -y | `int32_t` | | | Y coordinate of center point. Coordinate system depends on frame field. -z | `float` | m | | Altitude of center point. Coordinate system depends on frame field. - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| major_radius | `float` | m | | Major axis radius of the figure eight. Positive: orbit the north circle clockwise. Negative: orbit the north circle counter-clockwise. | +| minor_radius | `float` | m | | Minor axis radius of the figure eight. Defines the radius of two circles that make up the figure. | +| orientation | `float` | rad | | Orientation of the figure eight major axis with respect to true north in [-pi,pi). | +| frame | `uint8_t` | | [MAV_FRAME](#MAV_FRAME) | The coordinate system of the fields: x, y, z. | +| x | `int32_t` | | | X coordinate of center point. Coordinate system depends on frame field. | +| y | `int32_t` | | | Y coordinate of center point. Coordinate system depends on frame field. | +| z | `float` | m | | Altitude of center point. Coordinate system depends on frame field. | ### SMART_BATTERY_INFO (370) — [SUP] {#SMART_BATTERY_INFO} @@ -3449,32 +3252,31 @@ z | `float` | m | | Altitude of center point. Coordinate system depends on frame Smart Battery information (static/infrequent update). Use for updates from: smart battery to flight stack, flight stack to GCS. Use [BATTERY_STATUS](#BATTERY_STATUS) for the frequent battery updates. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery -type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery -capacity_full_specification | `int32_t` | mAh | invalid:-1 | Capacity when full according to manufacturer, -1: field not provided. -capacity_full | `int32_t` | mAh | invalid:-1 | Capacity when full (accounting for battery degradation), -1: field not provided. -cycle_count | `uint16_t` | | invalid:UINT16_MAX | Charge/discharge cycle count. UINT16_MAX: field not provided. -serial_number | `char[16]` | | invalid:[0] | Serial number in ASCII characters, 0 terminated. All 0: field not provided. -device_name | `char[50]` | | invalid:[0] | Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. -weight | `uint16_t` | g | invalid:0 | Battery weight. 0: field not provided. -discharge_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. -charging_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. -resting_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. -charging_maximum_voltage ++ | `uint16_t` | mV | invalid:0 | Maximum per-cell voltage when charged. 0: field not provided. -cells_in_series ++ | `uint8_t` | | invalid:0 | Number of battery cells in series. 0: field not provided. -discharge_maximum_current ++ | `uint32_t` | mA | invalid:0 | Maximum pack discharge current. 0: field not provided. -discharge_maximum_burst_current ++ | `uint32_t` | mA | invalid:0 | Maximum pack discharge burst current. 0: field not provided. -manufacture_date ++ | `char[11]` | | invalid:[0] | Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. - +| Field Name | Type | Units | Values | Description | +| ----------------------------------------------------------------------------------------------- | ---------- | ----- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery | +| type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery | +| capacity_full_specification | `int32_t` | mAh | invalid:-1 | Capacity when full according to manufacturer, -1: field not provided. | +| capacity_full | `int32_t` | mAh | invalid:-1 | Capacity when full (accounting for battery degradation), -1: field not provided. | +| cycle_count | `uint16_t` | | invalid:UINT16_MAX | Charge/discharge cycle count. UINT16_MAX: field not provided. | +| serial_number | `char[16]` | | invalid:[0] | Serial number in ASCII characters, 0 terminated. All 0: field not provided. | +| device_name | `char[50]` | | invalid:[0] | Static device name in ASCII characters, 0 terminated. All 0: field not provided. Encode as manufacturer name then product name separated using an underscore. | +| weight | `uint16_t` | g | invalid:0 | Battery weight. 0: field not provided. | +| discharge_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when discharging. If not supplied set to UINT16_MAX value. | +| charging_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when charging. If not supplied set to UINT16_MAX value. | +| resting_minimum_voltage | `uint16_t` | mV | invalid:UINT16_MAX | Minimum per-cell voltage when resting. If not supplied set to UINT16_MAX value. | +| charging_maximum_voltage ++ | `uint16_t` | mV | invalid:0 | Maximum per-cell voltage when charged. 0: field not provided. | +| cells_in_series ++ | `uint8_t` | | invalid:0 | Number of battery cells in series. 0: field not provided. | +| discharge_maximum_current ++ | `uint32_t` | mA | invalid:0 | Maximum pack discharge current. 0: field not provided. | +| discharge_maximum_burst_current ++ | `uint32_t` | mA | invalid:0 | Maximum pack discharge burst current. 0: field not provided. | +| manufacture_date ++ | `char[11]` | | invalid:[0] | Manufacture date (DD/MM/YYYY) in ASCII characters, 0 terminated. All 0: field not provided. | ### FUEL_STATUS (371) {#FUEL_STATUS} Fuel status. -This message provides "generic" fuel level information for in a GCS and for triggering failsafes in an autopilot. +This message provides "generic" fuel level information for in a GCS and for triggering failsafes in an autopilot. The fuel type and associated units for fields in this message are defined in the enum [MAV_FUEL_TYPE](#MAV_FUEL_TYPE). The reported `consumed_fuel` and `remaining_fuel` must only be supplied if measured: they must not be inferred from the `maximum_fuel` and the other value. @@ -3487,17 +3289,16 @@ If both messages are sent for the same fuel system, the ids and corresponding in This should be streamed (nominally at 0.1 Hz). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Fuel ID. Must match ID of other messages for same fuel system, such as [BATTERY_STATUS_V2](#BATTERY_STATUS_V2).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -maximum_fuel | `float` | | | Capacity when full. Must be provided. -consumed_fuel | `float` | | invalid:NaN | Consumed fuel (measured). This value should not be inferred: if not measured set to NaN. NaN: field not provided. -remaining_fuel | `float` | | invalid:NaN | Remaining fuel until empty (measured). The value should not be inferred: if not measured set to NaN. NaN: field not provided. -percent_remaining | `uint8_t` | % | invalid:UINT8_MAX | Percentage of remaining fuel, relative to full. Values: [0-100], UINT8_MAX: field not provided. -flow_rate | `float` | | invalid:NaN | Positive value when emptying/using, and negative if filling/replacing. NaN: field not provided. -temperature | `float` | K | invalid:NaN | Fuel temperature. NaN: field not provided. -fuel_type | `uint32_t` | | [MAV_FUEL_TYPE](#MAV_FUEL_TYPE) | Fuel type. Defines units for fuel capacity and consumption fields above. - +| Field Name | Type | Units | Values | Description | +| ----------------- | ---------- | ----- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Fuel ID. Must match ID of other messages for same fuel system, such as [BATTERY_STATUS_V2](#BATTERY_STATUS_V2).
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| maximum_fuel | `float` | | | Capacity when full. Must be provided. | +| consumed_fuel | `float` | | invalid:NaN | Consumed fuel (measured). This value should not be inferred: if not measured set to NaN. NaN: field not provided. | +| remaining_fuel | `float` | | invalid:NaN | Remaining fuel until empty (measured). The value should not be inferred: if not measured set to NaN. NaN: field not provided. | +| percent_remaining | `uint8_t` | % | invalid:UINT8_MAX | Percentage of remaining fuel, relative to full. Values: [0-100], UINT8_MAX: field not provided. | +| flow_rate | `float` | | invalid:NaN | Positive value when emptying/using, and negative if filling/replacing. NaN: field not provided. | +| temperature | `float` | K | invalid:NaN | Fuel temperature. NaN: field not provided. | +| fuel_type | `uint32_t` | | [MAV_FUEL_TYPE](#MAV_FUEL_TYPE) | Fuel type. Defines units for fuel capacity and consumption fields above. | ### BATTERY_INFO (372) — [WIP] {#BATTERY_INFO} @@ -3507,59 +3308,56 @@ Battery information that is static, or requires infrequent update. This message should requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) and/or streamed at very low rate. [BATTERY_STATUS_V2](#BATTERY_STATUS_V2) is used for higher-rate battery status information. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery. -type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery. -state_of_health | `uint8_t` | % | invalid:UINT8_MAX | State of Health (SOH) estimate. Typically 100% at the time of manufacture and will decrease over time and use. -1: field not provided. -cells_in_series | `uint8_t` | | invalid:0 | Number of battery cells in series. 0: field not provided. -cycle_count | `uint16_t` | | invalid:UINT16_MAX | Lifetime count of the number of charge/discharge cycles (https://en.wikipedia.org/wiki/Charge_cycle). UINT16_MAX: field not provided. -weight | `uint16_t` | g | invalid:0 | Battery weight. 0: field not provided. -discharge_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when discharging. 0: field not provided. -charging_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when charging. 0: field not provided. -resting_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when resting. 0: field not provided. -charging_maximum_voltage | `float` | V | invalid:0 | Maximum per-cell voltage when charged. 0: field not provided. -charging_maximum_current | `float` | A | invalid:0 | Maximum pack continuous charge current. 0: field not provided. -nominal_voltage | `float` | V | invalid:0 | Battery nominal voltage. Used for conversion between Wh and Ah. 0: field not provided. -discharge_maximum_current | `float` | A | invalid:0 | Maximum pack discharge current. 0: field not provided. -discharge_maximum_burst_current | `float` | A | invalid:0 | Maximum pack discharge burst current. 0: field not provided. -design_capacity | `float` | Ah | invalid:0 | Fully charged design capacity. 0: field not provided. -full_charge_capacity | `float` | Ah | invalid:NaN | Predicted battery capacity when fully charged (accounting for battery degradation). NAN: field not provided. -manufacture_date | `char[9]` | | invalid:[0] | Manufacture date (DDMMYYYY) in ASCII characters, 0 terminated. All 0: field not provided. -serial_number | `char[32]` | | invalid:[0] | Serial number in ASCII characters, 0 terminated. All 0: field not provided. -name | `char[50]` | | invalid:[0] | Battery device name. Formatted as manufacturer name then product name, separated with an underscore (in ASCII characters), 0 terminated. All 0: field not provided. - +| Field Name | Type | Units | Values | Description | +| ------------------------------- | ---------- | ----- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| battery_function | `uint8_t` | | [MAV_BATTERY_FUNCTION](#MAV_BATTERY_FUNCTION) | Function of the battery. | +| type | `uint8_t` | | [MAV_BATTERY_TYPE](#MAV_BATTERY_TYPE) | Type (chemistry) of the battery. | +| state_of_health | `uint8_t` | % | invalid:UINT8_MAX | State of Health (SOH) estimate. Typically 100% at the time of manufacture and will decrease over time and use. -1: field not provided. | +| cells_in_series | `uint8_t` | | invalid:0 | Number of battery cells in series. 0: field not provided. | +| cycle_count | `uint16_t` | | invalid:UINT16_MAX | Lifetime count of the number of charge/discharge cycles (https://en.wikipedia.org/wiki/Charge_cycle). UINT16_MAX: field not provided. | +| weight | `uint16_t` | g | invalid:0 | Battery weight. 0: field not provided. | +| discharge_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when discharging. 0: field not provided. | +| charging_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when charging. 0: field not provided. | +| resting_minimum_voltage | `float` | V | invalid:0 | Minimum per-cell voltage when resting. 0: field not provided. | +| charging_maximum_voltage | `float` | V | invalid:0 | Maximum per-cell voltage when charged. 0: field not provided. | +| charging_maximum_current | `float` | A | invalid:0 | Maximum pack continuous charge current. 0: field not provided. | +| nominal_voltage | `float` | V | invalid:0 | Battery nominal voltage. Used for conversion between Wh and Ah. 0: field not provided. | +| discharge_maximum_current | `float` | A | invalid:0 | Maximum pack discharge current. 0: field not provided. | +| discharge_maximum_burst_current | `float` | A | invalid:0 | Maximum pack discharge burst current. 0: field not provided. | +| design_capacity | `float` | Ah | invalid:0 | Fully charged design capacity. 0: field not provided. | +| full_charge_capacity | `float` | Ah | invalid:NaN | Predicted battery capacity when fully charged (accounting for battery degradation). NAN: field not provided. | +| manufacture_date | `char[9]` | | invalid:[0] | Manufacture date (DDMMYYYY) in ASCII characters, 0 terminated. All 0: field not provided. | +| serial_number | `char[32]` | | invalid:[0] | Serial number in ASCII characters, 0 terminated. All 0: field not provided. | +| name | `char[50]` | | invalid:[0] | Battery device name. Formatted as manufacturer name then product name, separated with an underscore (in ASCII characters), 0 terminated. All 0: field not provided. | ### GENERATOR_STATUS (373) {#GENERATOR_STATUS} Telemetry of power generation system. Alternator or mechanical generator. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -status | `uint64_t` | | [MAV_GENERATOR_STATUS_FLAG](#MAV_GENERATOR_STATUS_FLAG) | Status flags. -generator_speed | `uint16_t` | rpm | invalid:UINT16_MAX | Speed of electrical generator or alternator. UINT16_MAX: field not provided. -battery_current | `float` | A | invalid:NaN | Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. -load_current | `float` | A | invalid:NaN | Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided -power_generated | `float` | W | invalid:NaN | The power being generated. NaN: field not provided -bus_voltage | `float` | V | | Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. -rectifier_temperature | `int16_t` | degC | invalid:INT16_MAX | The temperature of the rectifier or power converter. INT16_MAX: field not provided. -bat_current_setpoint | `float` | A | invalid:NaN | The target battery current. Positive for out. Negative for in. NaN: field not provided -generator_temperature | `int16_t` | degC | invalid:INT16_MAX | The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. -runtime | `uint32_t` | s | invalid:UINT32_MAX | Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. -time_until_maintenance | `int32_t` | s | invalid:INT32_MAX | Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. - +| Field Name | Type | Units | Values | Description | +| ---------------------- | ---------- | ----- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| status | `uint64_t` | | [MAV_GENERATOR_STATUS_FLAG](#MAV_GENERATOR_STATUS_FLAG) | Status flags. | +| generator_speed | `uint16_t` | rpm | invalid:UINT16_MAX | Speed of electrical generator or alternator. UINT16_MAX: field not provided. | +| battery_current | `float` | A | invalid:NaN | Current into/out of battery. Positive for out. Negative for in. NaN: field not provided. | +| load_current | `float` | A | invalid:NaN | Current going to the UAV. If battery current not available this is the DC current from the generator. Positive for out. Negative for in. NaN: field not provided | +| power_generated | `float` | W | invalid:NaN | The power being generated. NaN: field not provided | +| bus_voltage | `float` | V | | Voltage of the bus seen at the generator, or battery bus if battery bus is controlled by generator and at a different voltage to main bus. | +| rectifier_temperature | `int16_t` | degC | invalid:INT16_MAX | The temperature of the rectifier or power converter. INT16_MAX: field not provided. | +| bat_current_setpoint | `float` | A | invalid:NaN | The target battery current. Positive for out. Negative for in. NaN: field not provided | +| generator_temperature | `int16_t` | degC | invalid:INT16_MAX | The temperature of the mechanical motor, fuel cell core or generator. INT16_MAX: field not provided. | +| runtime | `uint32_t` | s | invalid:UINT32_MAX | Seconds this generator has run since it was rebooted. UINT32_MAX: field not provided. | +| time_until_maintenance | `int32_t` | s | invalid:INT32_MAX | Seconds until this generator requires maintenance. A negative value indicates maintenance is past-due. INT32_MAX: field not provided. | ### ACTUATOR_OUTPUT_STATUS (375) {#ACTUATOR_OUTPUT_STATUS} The raw values of the actuator outputs (e.g. on Pixhawk, from MAIN, AUX ports). This message supersedes [SERVO_OUTPUT_RAW](#SERVO_OUTPUT_RAW). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (since system boot). -active | `uint32_t` | | Active outputs -actuator | `float[32]` | | Servo / motor output array values. Zero values indicate unused channels. - +| Field Name | Type | Units | Description | +| ---------- | ----------- | ----- | ------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | Timestamp (since system boot). | +| active | `uint32_t` | | Active outputs | +| actuator | `float[32]` | | Servo / motor output array values. Zero values indicate unused channels. | ### RELAY_STATUS (376) {#RELAY_STATUS} @@ -3568,12 +3366,11 @@ Reports the on/off state of relays, as controlled by [MAV_CMD_DO_SET_RELAY](#MAV Message streaming should be requested using [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL). Note that it should not be sent on every relay state change to avoid flooding the link. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -on | `uint16_t` | | Relay states. Relay instance numbers are represented as individual bits in this mask by offset. -present | `uint16_t` | | Relay present. Relay instance numbers are represented as individual bits in this mask by offset. Bits will be true if a relay instance is configured. - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| on | `uint16_t` | | Relay states. Relay instance numbers are represented as individual bits in this mask by offset. | +| present | `uint16_t` | | Relay present. Relay instance numbers are represented as individual bits in this mask by offset. Bits will be true if a relay instance is configured. | ### TIME_ESTIMATE_TO_TARGET (380) — [WIP] {#TIME_ESTIMATE_TO_TARGET} @@ -3581,98 +3378,92 @@ present | `uint16_t` | | Relay present. Relay instance numbers are represented a Time/duration estimates for various events and actions given the current vehicle state and position. -Field Name | Type | Units | Description ---- | --- | --- | --- -safe_return | `int32_t` | s | Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. -land | `int32_t` | s | Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. -mission_next_item | `int32_t` | s | Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. -mission_end | `int32_t` | s | Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. -commanded_action | `int32_t` | s | Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. - +| Field Name | Type | Units | Description | +| ----------------- | --------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| safe_return | `int32_t` | s | Estimated time to complete the vehicle's configured "safe return" action from its current position (e.g. RTL, Smart RTL, etc.). -1 indicates that the vehicle is landed, or that no time estimate available. | +| land | `int32_t` | s | Estimated time for vehicle to complete the LAND action from its current position. -1 indicates that the vehicle is landed, or that no time estimate available. | +| mission_next_item | `int32_t` | s | Estimated time for reaching/completing the currently active mission item. -1 means no time estimate available. | +| mission_end | `int32_t` | s | Estimated time for completing the current mission. -1 means no mission active and/or no estimate available. | +| commanded_action | `int32_t` | s | Estimated time for completing the current commanded action (i.e. Go To, Takeoff, Land, etc.). -1 means no action active and/or no estimate available. | ### TUNNEL (385) {#TUNNEL} Message for transporting "arbitrary" variable-length data from one component to another (broadcast is not forbidden, but discouraged). The encoding of the data is usually extension specific, i.e. determined by the source, and is usually not documented as part of the MAVLink specification. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (can be 0 for broadcast, but this is discouraged) -target_component | `uint8_t` | | Component ID (can be 0 for broadcast, but this is discouraged) -payload_type | `uint16_t` | [MAV_TUNNEL_PAYLOAD_TYPE](#MAV_TUNNEL_PAYLOAD_TYPE) | A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the [MAV_TUNNEL_PAYLOAD_TYPE](#MAV_TUNNEL_PAYLOAD_TYPE) enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. -payload_length | `uint8_t` | | Length of the data transported in payload -payload | `uint8_t[128]` | | Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. - +| Field Name | Type | Values | Description | +| ---------------- | -------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | System ID (can be 0 for broadcast, but this is discouraged) | +| target_component | `uint8_t` | | Component ID (can be 0 for broadcast, but this is discouraged) | +| payload_type | `uint16_t` | [MAV_TUNNEL_PAYLOAD_TYPE](#MAV_TUNNEL_PAYLOAD_TYPE) | A code that identifies the content of the payload (0 for unknown, which is the default). If this code is less than 32768, it is a 'registered' payload type and the corresponding code should be added to the [MAV_TUNNEL_PAYLOAD_TYPE](#MAV_TUNNEL_PAYLOAD_TYPE) enum. Software creators can register blocks of types as needed. Codes greater than 32767 are considered local experiments and should not be checked in to any widely distributed codebase. | +| payload_length | `uint8_t` | | Length of the data transported in payload | +| payload | `uint8_t[128]` | | Variable length payload. The payload length is defined by payload_length. The entire content of this block is opaque unless you understand the encoding specified by payload_type. | ### CAN_FRAME (386) {#CAN_FRAME} A forwarded CAN frame as requested by [MAV_CMD_CAN_FORWARD](#MAV_CMD_CAN_FORWARD). -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -bus | `uint8_t` | Bus number -len | `uint8_t` | Frame length -id | `uint32_t` | Frame ID -data | `uint8_t[8]` | Frame data - +| Field Name | Type | Description | +| ---------------- | ------------ | ------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| bus | `uint8_t` | Bus number | +| len | `uint8_t` | Frame length | +| id | `uint32_t` | Frame ID | +| data | `uint8_t[8]` | Frame data | ### CANFD_FRAME (387) {#CANFD_FRAME} A forwarded CANFD frame as requested by [MAV_CMD_CAN_FORWARD](#MAV_CMD_CAN_FORWARD). These are separated from [CAN_FRAME](#CAN_FRAME) as they need different handling (eg. TAO handling) -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -bus | `uint8_t` | bus number -len | `uint8_t` | Frame length -id | `uint32_t` | Frame ID -data | `uint8_t[64]` | Frame data - +| Field Name | Type | Description | +| ---------------- | ------------- | ------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| bus | `uint8_t` | bus number | +| len | `uint8_t` | Frame length | +| id | `uint32_t` | Frame ID | +| data | `uint8_t[64]` | Frame data | ### CAN_FILTER_MODIFY (388) {#CAN_FILTER_MODIFY} Modify the filter of what CAN messages to forward over the mavlink. This can be used to make CAN forwarding work well on low bandwidth links. The filtering is applied on bits 8 to 24 of the CAN id (2nd and 3rd bytes) which corresponds to the DroneCAN message ID for DroneCAN. Filters with more than 16 IDs can be constructed by sending multiple [CAN_FILTER_MODIFY](#CAN_FILTER_MODIFY) messages. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -bus | `uint8_t` | | bus number -operation | `uint8_t` | [CAN_FILTER_OP](#CAN_FILTER_OP) | what operation to perform on the filter list. See [CAN_FILTER_OP](#CAN_FILTER_OP) enum. -num_ids | `uint8_t` | | number of IDs in filter list -ids | `uint16_t[16]` | | filter IDs, length num_ids - +| Field Name | Type | Values | Description | +| ---------------- | -------------- | ------------------------------- | --------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| bus | `uint8_t` | | bus number | +| operation | `uint8_t` | [CAN_FILTER_OP](#CAN_FILTER_OP) | what operation to perform on the filter list. See [CAN_FILTER_OP](#CAN_FILTER_OP) enum. | +| num_ids | `uint8_t` | | number of IDs in filter list | +| ids | `uint16_t[16]` | | filter IDs, length num_ids | ### ONBOARD_COMPUTER_STATUS (390) {#ONBOARD_COMPUTER_STATUS} Hardware status sent by an onboard computer. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -uptime | `uint32_t` | ms | | Time since system boot. -type | `uint8_t` | | | Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. -cpu_cores | `uint8_t[8]` | | invalid:[UINT8_MAX] | CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. -cpu_combined | `uint8_t[10]` | | invalid:[UINT8_MAX] | Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. -gpu_cores | `uint8_t[4]` | | invalid:[UINT8_MAX] | GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. -gpu_combined | `uint8_t[10]` | | invalid:[UINT8_MAX] | Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. -temperature_board | `int8_t` | degC | invalid:INT8_MAX | Temperature of the board. A value of INT8_MAX implies the field is unused. -temperature_core | `int8_t[8]` | degC | invalid:[INT8_MAX] | Temperature of the CPU core. A value of INT8_MAX implies the field is unused. -fan_speed | `int16_t[4]` | rpm | invalid:[INT16_MAX] | Fan speeds. A value of INT16_MAX implies the field is unused. -ram_usage | `uint32_t` | MiB | invalid:UINT32_MAX | Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. -ram_total | `uint32_t` | MiB | invalid:UINT32_MAX | Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. -storage_type | `uint32_t[4]` | | invalid:[UINT32_MAX] | Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. -storage_usage | `uint32_t[4]` | MiB | invalid:[UINT32_MAX] | Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. -storage_total | `uint32_t[4]` | MiB | invalid:[UINT32_MAX] | Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. -link_type | `uint32_t[6]` | | | Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary -link_tx_rate | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network traffic from the component system. A value of UINT32_MAX implies the field is unused. -link_rx_rate | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network traffic to the component system. A value of UINT32_MAX implies the field is unused. -link_tx_max | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network capacity from the component system. A value of UINT32_MAX implies the field is unused. -link_rx_max | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network capacity to the component system. A value of UINT32_MAX implies the field is unused. -status_flags ++ | `uint16_t` | | [COMPUTER_STATUS_FLAGS](#COMPUTER_STATUS_FLAGS) | Bitmap of status flags. - +| Field Name | Type | Units | Values | Description | +| ---------------------------------------------------------------------------- | ------------- | ----- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| uptime | `uint32_t` | ms | | Time since system boot. | +| type | `uint8_t` | | | Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers. | +| cpu_cores | `uint8_t[8]` | | invalid:[UINT8_MAX] | CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. | +| cpu_combined | `uint8_t[10]` | | invalid:[UINT8_MAX] | Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. | +| gpu_cores | `uint8_t[4]` | | invalid:[UINT8_MAX] | GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused. | +| gpu_combined | `uint8_t[10]` | | invalid:[UINT8_MAX] | Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused. | +| temperature_board | `int8_t` | degC | invalid:INT8_MAX | Temperature of the board. A value of INT8_MAX implies the field is unused. | +| temperature_core | `int8_t[8]` | degC | invalid:[INT8_MAX] | Temperature of the CPU core. A value of INT8_MAX implies the field is unused. | +| fan_speed | `int16_t[4]` | rpm | invalid:[INT16_MAX] | Fan speeds. A value of INT16_MAX implies the field is unused. | +| ram_usage | `uint32_t` | MiB | invalid:UINT32_MAX | Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused. | +| ram_total | `uint32_t` | MiB | invalid:UINT32_MAX | Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused. | +| storage_type | `uint32_t[4]` | | invalid:[UINT32_MAX] | Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused. | +| storage_usage | `uint32_t[4]` | MiB | invalid:[UINT32_MAX] | Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused. | +| storage_total | `uint32_t[4]` | MiB | invalid:[UINT32_MAX] | Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused. | +| link_type | `uint32_t[6]` | | | Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary | +| link_tx_rate | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network traffic from the component system. A value of UINT32_MAX implies the field is unused. | +| link_rx_rate | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network traffic to the component system. A value of UINT32_MAX implies the field is unused. | +| link_tx_max | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network capacity from the component system. A value of UINT32_MAX implies the field is unused. | +| link_rx_max | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network capacity to the component system. A value of UINT32_MAX implies the field is unused. | +| status_flags ++ | `uint16_t` | | [COMPUTER_STATUS_FLAGS](#COMPUTER_STATUS_FLAGS) | Bitmap of status flags. | ### COMPONENT_INFORMATION (395) — [DEP] {#COMPONENT_INFORMATION} @@ -3680,30 +3471,28 @@ link_rx_max | `uint32_t[6]` | KiB/s | invalid:[UINT32_MAX] | Network capacity to Component information message, which may be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -general_metadata_file_crc | `uint32_t` | | CRC32 of the general metadata file (general_metadata_uri). -general_metadata_uri | `char[100]` | | MAVLink FTP URI for the general metadata file ([COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL)), which may be compressed with xz. The file contains general component metadata, and may contain URI links for additional metadata (see [COMP_METADATA_TYPE](#COMP_METADATA_TYPE)). The information is static from boot, and may be generated at compile time. The string needs to be zero terminated. -peripherals_metadata_file_crc | `uint32_t` | | CRC32 of peripherals metadata file (peripherals_metadata_uri). -peripherals_metadata_uri | `char[100]` | | (Optional) MAVLink FTP URI for the peripherals metadata file ([COMP_METADATA_TYPE_PERIPHERALS](#COMP_METADATA_TYPE_PERIPHERALS)), which may be compressed with xz. This contains data about "attached components" such as UAVCAN nodes. The peripherals are in a separate file because the information must be generated dynamically at runtime. The string needs to be zero terminated. - +| Field Name | Type | Units | Description | +| ----------------------------- | ----------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| general_metadata_file_crc | `uint32_t` | | CRC32 of the general metadata file (general_metadata_uri). | +| general_metadata_uri | `char[100]` | | MAVLink FTP URI for the general metadata file ([COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL)), which may be compressed with xz. The file contains general component metadata, and may contain URI links for additional metadata (see [COMP_METADATA_TYPE](#COMP_METADATA_TYPE)). The information is static from boot, and may be generated at compile time. The string needs to be zero terminated. | +| peripherals_metadata_file_crc | `uint32_t` | | CRC32 of peripherals metadata file (peripherals_metadata_uri). | +| peripherals_metadata_uri | `char[100]` | | (Optional) MAVLink FTP URI for the peripherals metadata file ([COMP_METADATA_TYPE_PERIPHERALS](#COMP_METADATA_TYPE_PERIPHERALS)), which may be compressed with xz. This contains data about "attached components" such as UAVCAN nodes. The peripherals are in a separate file because the information must be generated dynamically at runtime. The string needs to be zero terminated. | ### COMPONENT_INFORMATION_BASIC (396) {#COMPONENT_INFORMATION_BASIC} Basic component information data. Should be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) on startup, or when required. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -capabilities | `uint64_t` | | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Component capability flags -time_manufacture_s | `uint32_t` | s | invalid:0 | Date of manufacture as a UNIX Epoch time (since 1.1.1970) in seconds. -vendor_name | `char[32]` | | | Name of the component vendor. Needs to be zero terminated. The field is optional and can be empty/all zeros. -model_name | `char[32]` | | | Name of the component model. Needs to be zero terminated. The field is optional and can be empty/all zeros. -software_version | `char[24]` | | | Software version. The recommended format is SEMVER: 'major.minor.patch' (any format may be used). The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. -hardware_version | `char[24]` | | | Hardware version. The recommended format is SEMVER: 'major.minor.patch' (any format may be used). The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. -serial_number | `char[32]` | | | Hardware serial number. The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| capabilities | `uint64_t` | | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Component capability flags | +| time_manufacture_s | `uint32_t` | s | invalid:0 | Date of manufacture as a UNIX Epoch time (since 1.1.1970) in seconds. | +| vendor_name | `char[32]` | | | Name of the component vendor. Needs to be zero terminated. The field is optional and can be empty/all zeros. | +| model_name | `char[32]` | | | Name of the component model. Needs to be zero terminated. The field is optional and can be empty/all zeros. | +| software_version | `char[24]` | | | Software version. The recommended format is SEMVER: 'major.minor.patch' (any format may be used). The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. | +| hardware_version | `char[24]` | | | Hardware version. The recommended format is SEMVER: 'major.minor.patch' (any format may be used). The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. | +| serial_number | `char[32]` | | | Hardware serial number. The field must be zero terminated if it has a value. The field is optional and can be empty/all zeros. | ### COMPONENT_METADATA (397) {#COMPONENT_METADATA} @@ -3718,35 +3507,32 @@ For more information see: https://mavlink.io/en/services/component_information.h Note: Camera components should use [CAMERA_INFORMATION](#CAMERA_INFORMATION) instead, and autopilots may use both this message and [AUTOPILOT_VERSION](#AUTOPILOT_VERSION). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -file_crc | `uint32_t` | | CRC32 of the general metadata file. -uri | `char[100]` | | MAVLink FTP URI for the general metadata file ([COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL)), which may be compressed with xz. The file contains general component metadata, and may contain URI links for additional metadata (see [COMP_METADATA_TYPE](#COMP_METADATA_TYPE)). The information is static from boot, and may be generated at compile time. The string needs to be zero terminated. - +| Field Name | Type | Units | Description | +| ------------ | ----------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| file_crc | `uint32_t` | | CRC32 of the general metadata file. | +| uri | `char[100]` | | MAVLink FTP URI for the general metadata file ([COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL)), which may be compressed with xz. The file contains general component metadata, and may contain URI links for additional metadata (see [COMP_METADATA_TYPE](#COMP_METADATA_TYPE)). The information is static from boot, and may be generated at compile time. The string needs to be zero terminated. | ### PLAY_TUNE_V2 (400) {#PLAY_TUNE_V2} Play vehicle tone/tune (buzzer). Supported tunes can be determined using [SUPPORTED_TUNES](#SUPPORTED_TUNES). Supersedes message [PLAY_TUNE](#PLAY_TUNE). -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -format | `uint32_t` | [TUNE_FORMAT](#TUNE_FORMAT) | Tune format -tune | `char[248]` | | Tune definition as a NULL-terminated string. - +| Field Name | Type | Values | Description | +| ---------------- | ----------- | --------------------------- | -------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| format | `uint32_t` | [TUNE_FORMAT](#TUNE_FORMAT) | Tune format | +| tune | `char[248]` | | Tune definition as a NULL-terminated string. | ### SUPPORTED_TUNES (401) {#SUPPORTED_TUNES} Tune formats supported by vehicle, i.e. via [PLAY_TUNE_V2](#PLAY_TUNE_V2). This should be emitted as response to [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -format | `uint32_t` | [TUNE_FORMAT](#TUNE_FORMAT) | Bitfield of supported tune formats. - +| Field Name | Type | Values | Description | +| ---------------- | ---------- | --------------------------- | ----------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| format | `uint32_t` | [TUNE_FORMAT](#TUNE_FORMAT) | Bitfield of supported tune formats. | ### EVENT (410) — [WIP] {#EVENT} @@ -3754,16 +3540,15 @@ format | `uint32_t` | [TUNE_FORMAT](#TUNE_FORMAT) | Bitfield of supported tune f Event message. Each new event from a particular component gets a new sequence number. The same message might be sent multiple times if (re-)requested. Most events are broadcast, some can be specific to a target component (as receivers keep track of the sequence for missed events, all events need to be broadcast. Thus we use destination_component instead of target_component). -Field Name | Type | Units | Description ---- | --- | --- | --- -destination_component | `uint8_t` | | Component ID -destination_system | `uint8_t` | | System ID -id | `uint32_t` | | Event ID (as defined in the component metadata) -event_time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot when the event happened). -sequence | `uint16_t` | | Sequence number. -log_levels | `uint8_t` | | Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 -arguments | `uint8_t[40]` | | Arguments (depend on event ID). - +| Field Name | Type | Units | Description | +| --------------------- | ------------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| destination_component | `uint8_t` | | Component ID | +| destination_system | `uint8_t` | | System ID | +| id | `uint32_t` | | Event ID (as defined in the component metadata) | +| event_time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot when the event happened). | +| sequence | `uint16_t` | | Sequence number. | +| log_levels | `uint8_t` | | Log levels: 4 bits MSB: internal (for logging purposes), 4 bits LSB: external. Levels: Emergency = 0, Alert = 1, Critical = 2, Error = 3, Warning = 4, Notice = 5, Info = 6, Debug = 7, Protocol = 8, Disabled = 9 | +| arguments | `uint8_t[40]` | | Arguments (depend on event ID). | ### CURRENT_EVENT_SEQUENCE (411) — [WIP] {#CURRENT_EVENT_SEQUENCE} @@ -3771,11 +3556,10 @@ arguments | `uint8_t[40]` | | Arguments (depend on event ID). Regular broadcast for the current latest event sequence number for a component. This is used to check for dropped events. -Field Name | Type | Values | Description ---- | --- | --- | --- -sequence | `uint16_t` | | Sequence number. -flags | `uint8_t` | [MAV_EVENT_CURRENT_SEQUENCE_FLAGS](#MAV_EVENT_CURRENT_SEQUENCE_FLAGS) | Flag bitset. - +| Field Name | Type | Values | Description | +| ---------- | ---------- | --------------------------------------------------------------------- | ---------------- | +| sequence | `uint16_t` | | Sequence number. | +| flags | `uint8_t` | [MAV_EVENT_CURRENT_SEQUENCE_FLAGS](#MAV_EVENT_CURRENT_SEQUENCE_FLAGS) | Flag bitset. | ### REQUEST_EVENT (412) — [WIP] {#REQUEST_EVENT} @@ -3783,13 +3567,12 @@ flags | `uint8_t` | [MAV_EVENT_CURRENT_SEQUENCE_FLAGS](#MAV_EVENT_CURRENT_SEQUEN Request one or more events to be (re-)sent. If first_sequence==last_sequence, only a single event is requested. Note that first_sequence can be larger than last_sequence (because the sequence number can wrap). Each sequence will trigger an EVENT or [EVENT_ERROR](#EVENT_ERROR) response. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -first_sequence | `uint16_t` | First sequence number of the requested event. -last_sequence | `uint16_t` | Last sequence number of the requested event. - +| Field Name | Type | Description | +| ---------------- | ---------- | --------------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| first_sequence | `uint16_t` | First sequence number of the requested event. | +| last_sequence | `uint16_t` | Last sequence number of the requested event. | ### RESPONSE_EVENT_ERROR (413) — [WIP] {#RESPONSE_EVENT_ERROR} @@ -3797,20 +3580,18 @@ last_sequence | `uint16_t` | Last sequence number of the requested event. Response to a [REQUEST_EVENT](#REQUEST_EVENT) in case of an error (e.g. the event is not available anymore). -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID -target_component | `uint8_t` | | Component ID -sequence | `uint16_t` | | Sequence number. -sequence_oldest_available | `uint16_t` | | Oldest Sequence number that is still available after the sequence set in [REQUEST_EVENT](#REQUEST_EVENT). -reason | `uint8_t` | [MAV_EVENT_ERROR_REASON](#MAV_EVENT_ERROR_REASON) | Error reason. - +| Field Name | Type | Values | Description | +| ------------------------- | ---------- | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID | +| target_component | `uint8_t` | | Component ID | +| sequence | `uint16_t` | | Sequence number. | +| sequence_oldest_available | `uint16_t` | | Oldest Sequence number that is still available after the sequence set in [REQUEST_EVENT](#REQUEST_EVENT). | +| reason | `uint8_t` | [MAV_EVENT_ERROR_REASON](#MAV_EVENT_ERROR_REASON) | Error reason. | ### AVAILABLE_MODES (435) {#AVAILABLE_MODES} Information about a flight mode. - The message can be enumerated to get information for all modes, or requested for a particular mode, using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). Specify 0 in param2 to request that the message is emitted for all available modes or the specific index for just one mode. The modes must be available/settable for the current vehicle/frame type. @@ -3818,15 +3599,14 @@ Each mode should only be emitted once (even if it is both standard and custom). Note that the current mode should be emitted in [CURRENT_MODE](#CURRENT_MODE), and that if the mode list can change then [AVAILABLE_MODES_MONITOR](#AVAILABLE_MODES_MONITOR) must be emitted on first change and subsequently streamed. See https://mavlink.io/en/services/standard_modes.html -Field Name | Type | Values | Description ---- | --- | --- | --- -number_modes | `uint8_t` | | The total number of available modes for the current vehicle type. -mode_index | `uint8_t` | | The current mode index within number_modes, indexed from 1. The index is not guaranteed to be persistent, and may change between reboots or if the set of modes change. -standard_mode | `uint8_t` | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) | Standard mode. -custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags -properties | `uint32_t` | [MAV_MODE_PROPERTY](#MAV_MODE_PROPERTY) | Mode properties. -mode_name | `char[35]` | | Name of custom mode, with null termination character. Should be omitted for standard modes. - +| Field Name | Type | Values | Description | +| ------------- | ---------- | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| number_modes | `uint8_t` | | The total number of available modes for the current vehicle type. | +| mode_index | `uint8_t` | | The current mode index within number_modes, indexed from 1. The index is not guaranteed to be persistent, and may change between reboots or if the set of modes change. | +| standard_mode | `uint8_t` | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) | Standard mode. | +| custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags | +| properties | `uint32_t` | [MAV_MODE_PROPERTY](#MAV_MODE_PROPERTY) | Mode properties. | +| mode_name | `char[35]` | | Name of custom mode, with null termination character. Should be omitted for standard modes. | ### CURRENT_MODE (436) {#CURRENT_MODE} @@ -3836,229 +3616,213 @@ This should be emitted on any mode change, and broadcast at low rate (nominally It may be requested using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). See https://mavlink.io/en/services/standard_modes.html -Field Name | Type | Values | Description ---- | --- | --- | --- -standard_mode | `uint8_t` | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) | Standard mode. -custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags -intended_custom_mode | `uint32_t` | invalid:0 | The custom_mode of the mode that was last commanded by the user (for example, with [MAV_CMD_DO_SET_STANDARD_MODE](#MAV_CMD_DO_SET_STANDARD_MODE), [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) or via RC). This should usually be the same as custom_mode. It will be different if the vehicle is unable to enter the intended mode, or has left that mode due to a failsafe condition. 0 indicates the intended custom mode is unknown/not supplied - +| Field Name | Type | Values | Description | +| -------------------- | ---------- | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| standard_mode | `uint8_t` | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) | Standard mode. | +| custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags | +| intended_custom_mode | `uint32_t` | invalid:0 | The custom_mode of the mode that was last commanded by the user (for example, with [MAV_CMD_DO_SET_STANDARD_MODE](#MAV_CMD_DO_SET_STANDARD_MODE), [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) or via RC). This should usually be the same as custom_mode. It will be different if the vehicle is unable to enter the intended mode, or has left that mode due to a failsafe condition. 0 indicates the intended custom mode is unknown/not supplied | ### AVAILABLE_MODES_MONITOR (437) {#AVAILABLE_MODES_MONITOR} A change to the sequence number indicates that the set of [AVAILABLE_MODES](#AVAILABLE_MODES) has changed, and that the receiver should re-request all available modes. - The message is optional, and is only needed when the set of modes can change dynamically after boot. It should be emitted whenever the set of modes change. It should be streamed at low rate (nominally 0.3 Hz). See https://mavlink.io/en/services/standard_modes.html -Field Name | Type | Description ---- | --- | --- -seq | `uint8_t` | Sequence number. The value iterates sequentially whenever [AVAILABLE_MODES](#AVAILABLE_MODES) changes (e.g. support for a new mode is added/removed dynamically). - +| Field Name | Type | Description | +| ---------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| seq | `uint8_t` | Sequence number. The value iterates sequentially whenever [AVAILABLE_MODES](#AVAILABLE_MODES) changes (e.g. support for a new mode is added/removed dynamically). | ### ILLUMINATOR_STATUS (440) {#ILLUMINATOR_STATUS} Illuminator status -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -uptime_ms | `uint32_t` | ms | | Time since the start-up of the illuminator in ms -enable | `uint8_t` | | | 0: Illuminators OFF, 1: Illuminators ON -mode_bitmask | `uint8_t` | | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | Supported illuminator modes -error_status | `uint32_t` | | [ILLUMINATOR_ERROR_FLAGS](#ILLUMINATOR_ERROR_FLAGS) | Errors -mode | `uint8_t` | | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | Illuminator mode -brightness | `float` | % | | Illuminator brightness -strobe_period | `float` | s | | Illuminator strobing period in seconds -strobe_duty_cycle | `float` | % | | Illuminator strobing duty cycle -temp_c | `float` | | | Temperature in Celsius -min_strobe_period | `float` | s | | Minimum strobing period in seconds -max_strobe_period | `float` | s | | Maximum strobing period in seconds - +| Field Name | Type | Units | Values | Description | +| ----------------- | ---------- | ----- | --------------------------------------------------- | ------------------------------------------------ | +| uptime_ms | `uint32_t` | ms | | Time since the start-up of the illuminator in ms | +| enable | `uint8_t` | | | 0: Illuminators OFF, 1: Illuminators ON | +| mode_bitmask | `uint8_t` | | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | Supported illuminator modes | +| error_status | `uint32_t` | | [ILLUMINATOR_ERROR_FLAGS](#ILLUMINATOR_ERROR_FLAGS) | Errors | +| mode | `uint8_t` | | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | Illuminator mode | +| brightness | `float` | % | | Illuminator brightness | +| strobe_period | `float` | s | | Illuminator strobing period in seconds | +| strobe_duty_cycle | `float` | % | | Illuminator strobing duty cycle | +| temp_c | `float` | | | Temperature in Celsius | +| min_strobe_period | `float` | s | | Minimum strobing period in seconds | +| max_strobe_period | `float` | s | | Maximum strobing period in seconds | ### WHEEL_DISTANCE (9000) {#WHEEL_DISTANCE} Cumulative distance traveled for each reported wheel. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (synced to UNIX time or since system boot). -count | `uint8_t` | | Number of wheels reported. -distance | `double[16]` | m | Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. - +| Field Name | Type | Units | Description | +| ---------- | ------------ | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (synced to UNIX time or since system boot). | +| count | `uint8_t` | | Number of wheels reported. | +| distance | `double[16]` | m | Distance reported by individual wheel encoders. Forward rotations increase values, reverse rotations decrease them. Not all wheels will necessarily have wheel encoders; the mapping of encoders to wheel positions must be agreed/understood by the endpoints. | ### WINCH_STATUS (9005) {#WINCH_STATUS} Winch status. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (synced to UNIX time or since system boot). -line_length | `float` | m | invalid:NaN | Length of line released. NaN if unknown -speed | `float` | m/s | invalid:NaN | Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown -tension | `float` | kg | invalid:NaN | Tension on the line. NaN if unknown -voltage | `float` | V | invalid:NaN | Voltage of the battery supplying the winch. NaN if unknown -current | `float` | A | invalid:NaN | Current draw from the winch. NaN if unknown -temperature | `int16_t` | degC | invalid:INT16_MAX | Temperature of the motor. INT16_MAX if unknown -status | `uint32_t` | | [MAV_WINCH_STATUS_FLAG](#MAV_WINCH_STATUS_FLAG) | Status flags - +| Field Name | Type | Units | Values | Description | +| ----------- | ---------- | ----- | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (synced to UNIX time or since system boot). | +| line_length | `float` | m | invalid:NaN | Length of line released. NaN if unknown | +| speed | `float` | m/s | invalid:NaN | Speed line is being released or retracted. Positive values if being released, negative values if being retracted, NaN if unknown | +| tension | `float` | kg | invalid:NaN | Tension on the line. NaN if unknown | +| voltage | `float` | V | invalid:NaN | Voltage of the battery supplying the winch. NaN if unknown | +| current | `float` | A | invalid:NaN | Current draw from the winch. NaN if unknown | +| temperature | `int16_t` | degC | invalid:INT16_MAX | Temperature of the motor. INT16_MAX if unknown | +| status | `uint32_t` | | [MAV_WINCH_STATUS_FLAG](#MAV_WINCH_STATUS_FLAG) | Status flags | ### OPEN_DRONE_ID_BASIC_ID (12900) {#OPEN_DRONE_ID_BASIC_ID} Data for filling the OpenDroneID Basic ID message. This and the below messages are primarily meant for feeding data to/from an OpenDroneID implementation. E.g. https://github.com/opendroneid/opendroneid-core-c. These messages are compatible with the ASTM F3411 Remote ID standard and the ASD-STAN prEN 4709-002 Direct Remote ID standard. Additional information and usage of these messages is documented at https://mavlink.io/en/services/opendroneid.html. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -id_type | `uint8_t` | [MAV_ODID_ID_TYPE](#MAV_ODID_ID_TYPE) | Indicates the format for the uas_id field of this message. -ua_type | `uint8_t` | [MAV_ODID_UA_TYPE](#MAV_ODID_UA_TYPE) | Indicates the type of UA (Unmanned Aircraft). -uas_id | `uint8_t[20]` | | UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. - +| Field Name | Type | Values | Description | +| ---------------- | ------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| id_type | `uint8_t` | [MAV_ODID_ID_TYPE](#MAV_ODID_ID_TYPE) | Indicates the format for the uas_id field of this message. | +| ua_type | `uint8_t` | [MAV_ODID_UA_TYPE](#MAV_ODID_UA_TYPE) | Indicates the type of UA (Unmanned Aircraft). | +| uas_id | `uint8_t[20]` | | UAS (Unmanned Aircraft System) ID following the format specified by id_type. Shall be filled with nulls in the unused portion of the field. | ### OPEN_DRONE_ID_LOCATION (12901) {#OPEN_DRONE_ID_LOCATION} Data for filling the OpenDroneID Location message. The float data types are 32-bit IEEE 754. The Location message provides the location, altitude, direction and speed of the aircraft. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (0 for broadcast). -target_component | `uint8_t` | | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -status | `uint8_t` | | [MAV_ODID_STATUS](#MAV_ODID_STATUS) | Indicates whether the unmanned aircraft is on the ground or in the air. -direction | `uint16_t` | cdeg | invalid:36100 | Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. -speed_horizontal | `uint16_t` | cm/s | | Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. -speed_vertical | `int16_t` | cm/s | | The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. -latitude | `int32_t` | degE7 | invalid:0 | Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). -longitude | `int32_t` | degE7 | invalid:0 | Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). -altitude_barometric | `float` | m | invalid:-1000 | The altitude calculated from the barometric pressure. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. -altitude_geodetic | `float` | m | invalid:-1000 | The geodetic altitude as defined by WGS84. If unknown: -1000 m. -height_reference | `uint8_t` | | [MAV_ODID_HEIGHT_REF](#MAV_ODID_HEIGHT_REF) | Indicates the reference point for the height field. -height | `float` | m | invalid:-1000 | The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. -horizontal_accuracy | `uint8_t` | | [MAV_ODID_HOR_ACC](#MAV_ODID_HOR_ACC) | The accuracy of the horizontal position. -vertical_accuracy | `uint8_t` | | [MAV_ODID_VER_ACC](#MAV_ODID_VER_ACC) | The accuracy of the vertical position. -barometer_accuracy | `uint8_t` | | [MAV_ODID_VER_ACC](#MAV_ODID_VER_ACC) | The accuracy of the barometric altitude. -speed_accuracy | `uint8_t` | | [MAV_ODID_SPEED_ACC](#MAV_ODID_SPEED_ACC) | The accuracy of the horizontal and vertical speed. -timestamp | `float` | s | invalid:0xFFFF | Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. -timestamp_accuracy | `uint8_t` | | [MAV_ODID_TIME_ACC](#MAV_ODID_TIME_ACC) | The accuracy of the timestamps. - +| Field Name | Type | Units | Values | Description | +| ------------------- | ------------- | ----- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| status | `uint8_t` | | [MAV_ODID_STATUS](#MAV_ODID_STATUS) | Indicates whether the unmanned aircraft is on the ground or in the air. | +| direction | `uint16_t` | cdeg | invalid:36100 | Direction over ground (not heading, but direction of movement) measured clockwise from true North: 0 - 35999 centi-degrees. If unknown: 36100 centi-degrees. | +| speed_horizontal | `uint16_t` | cm/s | | Ground speed. Positive only. If unknown: 25500 cm/s. If speed is larger than 25425 cm/s, use 25425 cm/s. | +| speed_vertical | `int16_t` | cm/s | | The vertical speed. Up is positive. If unknown: 6300 cm/s. If speed is larger than 6200 cm/s, use 6200 cm/s. If lower than -6200 cm/s, use -6200 cm/s. | +| latitude | `int32_t` | degE7 | invalid:0 | Current latitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). | +| longitude | `int32_t` | degE7 | invalid:0 | Current longitude of the unmanned aircraft. If unknown: 0 (both Lat/Lon). | +| altitude_barometric | `float` | m | invalid:-1000 | The altitude calculated from the barometric pressure. Reference is against 29.92inHg or 1013.2mb. If unknown: -1000 m. | +| altitude_geodetic | `float` | m | invalid:-1000 | The geodetic altitude as defined by WGS84. If unknown: -1000 m. | +| height_reference | `uint8_t` | | [MAV_ODID_HEIGHT_REF](#MAV_ODID_HEIGHT_REF) | Indicates the reference point for the height field. | +| height | `float` | m | invalid:-1000 | The current height of the unmanned aircraft above the take-off location or the ground as indicated by height_reference. If unknown: -1000 m. | +| horizontal_accuracy | `uint8_t` | | [MAV_ODID_HOR_ACC](#MAV_ODID_HOR_ACC) | The accuracy of the horizontal position. | +| vertical_accuracy | `uint8_t` | | [MAV_ODID_VER_ACC](#MAV_ODID_VER_ACC) | The accuracy of the vertical position. | +| barometer_accuracy | `uint8_t` | | [MAV_ODID_VER_ACC](#MAV_ODID_VER_ACC) | The accuracy of the barometric altitude. | +| speed_accuracy | `uint8_t` | | [MAV_ODID_SPEED_ACC](#MAV_ODID_SPEED_ACC) | The accuracy of the horizontal and vertical speed. | +| timestamp | `float` | s | invalid:0xFFFF | Seconds after the full hour with reference to UTC time. Typically the GPS outputs a time-of-week value in milliseconds. First convert that to UTC and then convert for this field using ((float) (time_week_ms % (60*60*1000))) / 1000. If unknown: 0xFFFF. | +| timestamp_accuracy | `uint8_t` | | [MAV_ODID_TIME_ACC](#MAV_ODID_TIME_ACC) | The accuracy of the timestamps. | ### OPEN_DRONE_ID_AUTHENTICATION (12902) {#OPEN_DRONE_ID_AUTHENTICATION} Data for filling the OpenDroneID Authentication message. The Authentication Message defines a field that can provide a means of authenticity for the identity of the UAS (Unmanned Aircraft System). The Authentication message can have two different formats. For data page 0, the fields PageCount, Length and TimeStamp are present and AuthData is only 17 bytes. For data page 1 through 15, PageCount, Length and TimeStamp are not present and the size of AuthData is 23 bytes. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (0 for broadcast). -target_component | `uint8_t` | | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -authentication_type | `uint8_t` | | [MAV_ODID_AUTH_TYPE](#MAV_ODID_AUTH_TYPE) | Indicates the type of authentication. -data_page | `uint8_t` | | | Allowed range is 0 - 15. -last_page_index | `uint8_t` | | | This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. -length | `uint8_t` | bytes | | This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. -timestamp | `uint32_t` | s | | This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. -authentication_data | `uint8_t[23]` | | | Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. - +| Field Name | Type | Units | Values | Description | +| ------------------- | ------------- | ----- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| authentication_type | `uint8_t` | | [MAV_ODID_AUTH_TYPE](#MAV_ODID_AUTH_TYPE) | Indicates the type of authentication. | +| data_page | `uint8_t` | | | Allowed range is 0 - 15. | +| last_page_index | `uint8_t` | | | This field is only present for page 0. Allowed range is 0 - 15. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. | +| length | `uint8_t` | bytes | | This field is only present for page 0. Total bytes of authentication_data from all data pages. See the description of struct ODID_Auth_data at https://github.com/opendroneid/opendroneid-core-c/blob/master/libopendroneid/opendroneid.h. | +| timestamp | `uint32_t` | s | | This field is only present for page 0. 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. | +| authentication_data | `uint8_t[23]` | | | Opaque authentication data. For page 0, the size is only 17 bytes. For other pages, the size is 23 bytes. Shall be filled with nulls in the unused portion of the field. | ### OPEN_DRONE_ID_SELF_ID (12903) {#OPEN_DRONE_ID_SELF_ID} Data for filling the OpenDroneID Self ID message. The Self ID Message is an opportunity for the operator to (optionally) declare their identity and purpose of the flight. This message can provide additional information that could reduce the threat profile of a UA (Unmanned Aircraft) flying in a particular area or manner. This message can also be used to provide optional additional clarification in an emergency/remote ID system failure situation. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -description_type | `uint8_t` | [MAV_ODID_DESC_TYPE](#MAV_ODID_DESC_TYPE) | Indicates the type of the description field. -description | `char[23]` | | Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. - +| Field Name | Type | Values | Description | +| ---------------- | ------------- | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| description_type | `uint8_t` | [MAV_ODID_DESC_TYPE](#MAV_ODID_DESC_TYPE) | Indicates the type of the description field. | +| description | `char[23]` | | Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. | ### OPEN_DRONE_ID_SYSTEM (12904) {#OPEN_DRONE_ID_SYSTEM} Data for filling the OpenDroneID System message. The System Message contains general system information including the operator location/altitude and possible aircraft group and/or category/class information. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (0 for broadcast). -target_component | `uint8_t` | | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -operator_location_type | `uint8_t` | | [MAV_ODID_OPERATOR_LOCATION_TYPE](#MAV_ODID_OPERATOR_LOCATION_TYPE) | Specifies the operator location type. -classification_type | `uint8_t` | | [MAV_ODID_CLASSIFICATION_TYPE](#MAV_ODID_CLASSIFICATION_TYPE) | Specifies the classification type of the UA. -operator_latitude | `int32_t` | degE7 | invalid:0 | Latitude of the operator. If unknown: 0 (both Lat/Lon). -operator_longitude | `int32_t` | degE7 | invalid:0 | Longitude of the operator. If unknown: 0 (both Lat/Lon). -area_count | `uint16_t` | | | Number of aircraft in the area, group or formation (default 1). Used only for swarms/multiple UA. -area_radius | `uint16_t` | m | | Radius of the cylindrical area of the group or formation (default 0). Used only for swarms/multiple UA. -area_ceiling | `float` | m | invalid:-1000 | Area Operations Ceiling relative to WGS84. If unknown: -1000 m. Used only for swarms/multiple UA. -area_floor | `float` | m | invalid:-1000 | Area Operations Floor relative to WGS84. If unknown: -1000 m. Used only for swarms/multiple UA. -category_eu | `uint8_t` | | [MAV_ODID_CATEGORY_EU](#MAV_ODID_CATEGORY_EU) | When classification_type is [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU), specifies the category of the UA. -class_eu | `uint8_t` | | [MAV_ODID_CLASS_EU](#MAV_ODID_CLASS_EU) | When classification_type is [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU), specifies the class of the UA. -operator_altitude_geo | `float` | m | invalid:-1000 | Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. -timestamp | `uint32_t` | s | | 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. - +| Field Name | Type | Units | Values | Description | +| ---------------------- | ------------- | ----- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| operator_location_type | `uint8_t` | | [MAV_ODID_OPERATOR_LOCATION_TYPE](#MAV_ODID_OPERATOR_LOCATION_TYPE) | Specifies the operator location type. | +| classification_type | `uint8_t` | | [MAV_ODID_CLASSIFICATION_TYPE](#MAV_ODID_CLASSIFICATION_TYPE) | Specifies the classification type of the UA. | +| operator_latitude | `int32_t` | degE7 | invalid:0 | Latitude of the operator. If unknown: 0 (both Lat/Lon). | +| operator_longitude | `int32_t` | degE7 | invalid:0 | Longitude of the operator. If unknown: 0 (both Lat/Lon). | +| area_count | `uint16_t` | | | Number of aircraft in the area, group or formation (default 1). Used only for swarms/multiple UA. | +| area_radius | `uint16_t` | m | | Radius of the cylindrical area of the group or formation (default 0). Used only for swarms/multiple UA. | +| area_ceiling | `float` | m | invalid:-1000 | Area Operations Ceiling relative to WGS84. If unknown: -1000 m. Used only for swarms/multiple UA. | +| area_floor | `float` | m | invalid:-1000 | Area Operations Floor relative to WGS84. If unknown: -1000 m. Used only for swarms/multiple UA. | +| category_eu | `uint8_t` | | [MAV_ODID_CATEGORY_EU](#MAV_ODID_CATEGORY_EU) | When classification_type is [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU), specifies the category of the UA. | +| class_eu | `uint8_t` | | [MAV_ODID_CLASS_EU](#MAV_ODID_CLASS_EU) | When classification_type is [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU), specifies the class of the UA. | +| operator_altitude_geo | `float` | m | invalid:-1000 | Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. | +| timestamp | `uint32_t` | s | | 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. | ### OPEN_DRONE_ID_OPERATOR_ID (12905) {#OPEN_DRONE_ID_OPERATOR_ID} Data for filling the OpenDroneID Operator ID message, which contains the CAA (Civil Aviation Authority) issued operator ID. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -operator_id_type | `uint8_t` | [MAV_ODID_OPERATOR_ID_TYPE](#MAV_ODID_OPERATOR_ID_TYPE) | Indicates the type of the operator_id field. -operator_id | `char[20]` | | Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. - +| Field Name | Type | Values | Description | +| ---------------- | ------------- | ------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| operator_id_type | `uint8_t` | [MAV_ODID_OPERATOR_ID_TYPE](#MAV_ODID_OPERATOR_ID_TYPE) | Indicates the type of the operator_id field. | +| operator_id | `char[20]` | | Text description or numeric value expressed as ASCII characters. Shall be filled with nulls in the unused portion of the field. | ### OPEN_DRONE_ID_MESSAGE_PACK (12915) {#OPEN_DRONE_ID_MESSAGE_PACK} An OpenDroneID message pack is a container for multiple encoded OpenDroneID messages (i.e. not in the format given for the above message descriptions but after encoding into the compressed OpenDroneID byte format). Used e.g. when transmitting on Bluetooth 5.0 Long Range/Extended Advertising or on WiFi Neighbor Aware Networking or on WiFi Beacon. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. -single_message_size | `uint8_t` | bytes | This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specified to have this length. -msg_pack_size | `uint8_t` | | Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. -messages | `uint8_t[225]` | | Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. - +| Field Name | Type | Units | Description | +| ------------------- | -------------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| id_or_mac | `uint8_t[20]` | | Only used for drone ID data received from other UAs. See detailed description at https://mavlink.io/en/services/opendroneid.html. | +| single_message_size | `uint8_t` | bytes | This field must currently always be equal to 25 (bytes), since all encoded OpenDroneID messages are specified to have this length. | +| msg_pack_size | `uint8_t` | | Number of encoded messages in the pack (not the number of bytes). Allowed range is 1 - 9. | +| messages | `uint8_t[225]` | | Concatenation of encoded OpenDroneID messages. Shall be filled with nulls in the unused portion of the field. | ### OPEN_DRONE_ID_ARM_STATUS (12918) {#OPEN_DRONE_ID_ARM_STATUS} Transmitter (remote ID system) is enabled and ready to start sending location and other required information. This is streamed by transmitter. A flight controller uses it as a condition to arm. -Field Name | Type | Values | Description ---- | --- | --- | --- -status | `uint8_t` | [MAV_ODID_ARM_STATUS](#MAV_ODID_ARM_STATUS) | Status level indicating if arming is allowed. -error | `char[50]` | | Text error message, should be empty if status is good to arm. Fill with nulls in unused portion. - +| Field Name | Type | Values | Description | +| ---------- | ---------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------ | +| status | `uint8_t` | [MAV_ODID_ARM_STATUS](#MAV_ODID_ARM_STATUS) | Status level indicating if arming is allowed. | +| error | `char[50]` | | Text error message, should be empty if status is good to arm. Fill with nulls in unused portion. | ### OPEN_DRONE_ID_SYSTEM_UPDATE (12919) {#OPEN_DRONE_ID_SYSTEM_UPDATE} Update the data in the [OPEN_DRONE_ID_SYSTEM](#OPEN_DRONE_ID_SYSTEM) message with new location information. This can be sent to update the location information for the operator when no other information in the SYSTEM message has changed. This message allows for efficient operation on radio links which have limited uplink bandwidth while meeting requirements for update frequency of the operator location. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -operator_latitude | `int32_t` | degE7 | Latitude of the operator. If unknown: 0 (both Lat/Lon). -operator_longitude | `int32_t` | degE7 | Longitude of the operator. If unknown: 0 (both Lat/Lon). -operator_altitude_geo | `float` | m | Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. -timestamp | `uint32_t` | s | 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. - +| Field Name | Type | Units | Description | +| --------------------- | ---------- | ----- | ------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| operator_latitude | `int32_t` | degE7 | Latitude of the operator. If unknown: 0 (both Lat/Lon). | +| operator_longitude | `int32_t` | degE7 | Longitude of the operator. If unknown: 0 (both Lat/Lon). | +| operator_altitude_geo | `float` | m | Geodetic altitude of the operator relative to WGS84. If unknown: -1000 m. | +| timestamp | `uint32_t` | s | 32 bit Unix Timestamp in seconds since 00:00:00 01/01/2019. | ### HYGROMETER_SENSOR (12920) {#HYGROMETER_SENSOR} Temperature and humidity from hygrometer. -Field Name | Type | Units | Description ---- | --- | --- | --- -id | `uint8_t` | | Hygrometer ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -temperature | `int16_t` | cdegC | Temperature -humidity | `uint16_t` | c% | Humidity - +| Field Name | Type | Units | Description | +| ----------- | ---------- | ----- | ----------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | Hygrometer ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| temperature | `int16_t` | cdegC | Temperature | +| humidity | `uint16_t` | c% | Humidity | ## Enumerated Types @@ -4066,33 +3830,33 @@ humidity | `uint16_t` | c% | Humidity (Bitmask) Flags to report failure cases over the high latency telemetry. -Value | Name | Description ---- | --- | --- -1 | [HL_FAILURE_FLAG_GPS](#HL_FAILURE_FLAG_GPS) | GPS failure. -2 | [HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE](#HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE) | Differential pressure sensor failure. -4 | [HL_FAILURE_FLAG_ABSOLUTE_PRESSURE](#HL_FAILURE_FLAG_ABSOLUTE_PRESSURE) | Absolute pressure sensor failure. -8 | [HL_FAILURE_FLAG_3D_ACCEL](#HL_FAILURE_FLAG_3D_ACCEL) | Accelerometer sensor failure. -16 | [HL_FAILURE_FLAG_3D_GYRO](#HL_FAILURE_FLAG_3D_GYRO) | Gyroscope sensor failure. -32 | [HL_FAILURE_FLAG_3D_MAG](#HL_FAILURE_FLAG_3D_MAG) | Magnetometer sensor failure. -64 | [HL_FAILURE_FLAG_TERRAIN](#HL_FAILURE_FLAG_TERRAIN) | Terrain subsystem failure. -128 | [HL_FAILURE_FLAG_BATTERY](#HL_FAILURE_FLAG_BATTERY) | Battery failure/critical low battery. -256 | [HL_FAILURE_FLAG_RC_RECEIVER](#HL_FAILURE_FLAG_RC_RECEIVER) | RC receiver failure/no RC connection. -512 | [HL_FAILURE_FLAG_OFFBOARD_LINK](#HL_FAILURE_FLAG_OFFBOARD_LINK) | Offboard link failure. -1024 | [HL_FAILURE_FLAG_ENGINE](#HL_FAILURE_FLAG_ENGINE) | Engine failure. -2048 | [HL_FAILURE_FLAG_GEOFENCE](#HL_FAILURE_FLAG_GEOFENCE) | Geofence violation. -4096 | [HL_FAILURE_FLAG_ESTIMATOR](#HL_FAILURE_FLAG_ESTIMATOR) | Estimator failure, for example measurement rejection or large variances. -8192 | [HL_FAILURE_FLAG_MISSION](#HL_FAILURE_FLAG_MISSION) | Mission failure. +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | +| 1 | [HL_FAILURE_FLAG_GPS](#HL_FAILURE_FLAG_GPS) | GPS failure. | +| 2 | [HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE](#HL_FAILURE_FLAG_DIFFERENTIAL_PRESSURE) | Differential pressure sensor failure. | +| 4 | [HL_FAILURE_FLAG_ABSOLUTE_PRESSURE](#HL_FAILURE_FLAG_ABSOLUTE_PRESSURE) | Absolute pressure sensor failure. | +| 8 | [HL_FAILURE_FLAG_3D_ACCEL](#HL_FAILURE_FLAG_3D_ACCEL) | Accelerometer sensor failure. | +| 16 | [HL_FAILURE_FLAG_3D_GYRO](#HL_FAILURE_FLAG_3D_GYRO) | Gyroscope sensor failure. | +| 32 | [HL_FAILURE_FLAG_3D_MAG](#HL_FAILURE_FLAG_3D_MAG) | Magnetometer sensor failure. | +| 64 | [HL_FAILURE_FLAG_TERRAIN](#HL_FAILURE_FLAG_TERRAIN) | Terrain subsystem failure. | +| 128 | [HL_FAILURE_FLAG_BATTERY](#HL_FAILURE_FLAG_BATTERY) | Battery failure/critical low battery. | +| 256 | [HL_FAILURE_FLAG_RC_RECEIVER](#HL_FAILURE_FLAG_RC_RECEIVER) | RC receiver failure/no RC connection. | +| 512 | [HL_FAILURE_FLAG_OFFBOARD_LINK](#HL_FAILURE_FLAG_OFFBOARD_LINK) | Offboard link failure. | +| 1024 | [HL_FAILURE_FLAG_ENGINE](#HL_FAILURE_FLAG_ENGINE) | Engine failure. | +| 2048 | [HL_FAILURE_FLAG_GEOFENCE](#HL_FAILURE_FLAG_GEOFENCE) | Geofence violation. | +| 4096 | [HL_FAILURE_FLAG_ESTIMATOR](#HL_FAILURE_FLAG_ESTIMATOR) | Estimator failure, for example measurement rejection or large variances. | +| 8192 | [HL_FAILURE_FLAG_MISSION](#HL_FAILURE_FLAG_MISSION) | Mission failure. | ### MAV_GOTO {#MAV_GOTO} Actions that may be specified in [MAV_CMD_OVERRIDE_GOTO](#MAV_CMD_OVERRIDE_GOTO) to override mission execution. -Value | Name | Description ---- | --- | --- -0 | [MAV_GOTO_DO_HOLD](#MAV_GOTO_DO_HOLD) | Hold at the current position. -1 | [MAV_GOTO_DO_CONTINUE](#MAV_GOTO_DO_CONTINUE) | Continue with the next item in mission execution. -2 | [MAV_GOTO_HOLD_AT_CURRENT_POSITION](#MAV_GOTO_HOLD_AT_CURRENT_POSITION) | Hold at the current position of the system -3 | [MAV_GOTO_HOLD_AT_SPECIFIED_POSITION](#MAV_GOTO_HOLD_AT_SPECIFIED_POSITION) | Hold at the position specified in the parameters of the [DO_HOLD](#DO_HOLD) action +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| 0 | [MAV_GOTO_DO_HOLD](#MAV_GOTO_DO_HOLD) | Hold at the current position. | +| 1 | [MAV_GOTO_DO_CONTINUE](#MAV_GOTO_DO_CONTINUE) | Continue with the next item in mission execution. | +| 2 | [MAV_GOTO_HOLD_AT_CURRENT_POSITION](#MAV_GOTO_HOLD_AT_CURRENT_POSITION) | Hold at the current position of the system | +| 3 | [MAV_GOTO_HOLD_AT_SPECIFIED_POSITION](#MAV_GOTO_HOLD_AT_SPECIFIED_POSITION) | Hold at the position specified in the parameters of the [DO_HOLD](#DO_HOLD) action | ### MAV_MODE — [DEP] {#MAV_MODE} @@ -4100,141 +3864,142 @@ Value | Name | Description Predefined OR-combined [MAV_MODE_FLAG](#MAV_MODE_FLAG) values. These can simplify using the flags when setting modes. Note that manual input is enabled in all modes as a safety override. -Value | Name | Description ---- | --- | --- -0 | [MAV_MODE_PREFLIGHT](#MAV_MODE_PREFLIGHT) | System is not ready to fly, booting, calibrating, etc. No flag is set. -64 | [MAV_MODE_MANUAL_DISARMED](#MAV_MODE_MANUAL_DISARMED) | System is allowed to be active, under manual (RC) control, no stabilization ([MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED)) -66 | [MAV_MODE_TEST_DISARMED](#MAV_MODE_TEST_DISARMED) | UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. ([MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED)). -80 | [MAV_MODE_STABILIZE_DISARMED](#MAV_MODE_STABILIZE_DISARMED) | System is allowed to be active, under assisted RC control ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED)) -88 | [MAV_MODE_GUIDED_DISARMED](#MAV_MODE_GUIDED_DISARMED) | System is allowed to be active, under autonomous control, manual setpoint ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED)) -92 | [MAV_MODE_AUTO_DISARMED](#MAV_MODE_AUTO_DISARMED) | System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints). ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED), [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED)). -192 | [MAV_MODE_MANUAL_ARMED](#MAV_MODE_MANUAL_ARMED) | System is allowed to be active, under manual (RC) control, no stabilization ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED)) -194 | [MAV_MODE_TEST_ARMED](#MAV_MODE_TEST_ARMED) | UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED)) -208 | [MAV_MODE_STABILIZE_ARMED](#MAV_MODE_STABILIZE_ARMED) | System is allowed to be active, under assisted RC control ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED)) -216 | [MAV_MODE_GUIDED_ARMED](#MAV_MODE_GUIDED_ARMED) | System is allowed to be active, under autonomous control, manual setpoint ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED)) -220 | [MAV_MODE_AUTO_ARMED](#MAV_MODE_AUTO_ARMED) | System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints). ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED),MAV_MODE_FLAG_AUTO_ENABLED). +| Value | Name | Description | +| ------------------------------------------ | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_MODE_PREFLIGHT](#MAV_MODE_PREFLIGHT) | System is not ready to fly, booting, calibrating, etc. No flag is set. | +| 64 | [MAV_MODE_MANUAL_DISARMED](#MAV_MODE_MANUAL_DISARMED) | System is allowed to be active, under manual (RC) control, no stabilization ([MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED)) | +| 66 | [MAV_MODE_TEST_DISARMED](#MAV_MODE_TEST_DISARMED) | UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. ([MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED)). | +| 80 | [MAV_MODE_STABILIZE_DISARMED](#MAV_MODE_STABILIZE_DISARMED) | System is allowed to be active, under assisted RC control ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED)) | +| 88 | [MAV_MODE_GUIDED_DISARMED](#MAV_MODE_GUIDED_DISARMED) | System is allowed to be active, under autonomous control, manual setpoint ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED)) | +| 92 | [MAV_MODE_AUTO_DISARMED](#MAV_MODE_AUTO_DISARMED) | System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints). ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED), [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED)). | +| 192 | [MAV_MODE_MANUAL_ARMED](#MAV_MODE_MANUAL_ARMED) | System is allowed to be active, under manual (RC) control, no stabilization ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED)) | +| 194 | [MAV_MODE_TEST_ARMED](#MAV_MODE_TEST_ARMED) | UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED)) | +| 208 | [MAV_MODE_STABILIZE_ARMED](#MAV_MODE_STABILIZE_ARMED) | System is allowed to be active, under assisted RC control ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED)) | +| 216 | [MAV_MODE_GUIDED_ARMED](#MAV_MODE_GUIDED_ARMED) | System is allowed to be active, under autonomous control, manual setpoint ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED)) | +| 220 | [MAV_MODE_AUTO_ARMED](#MAV_MODE_AUTO_ARMED) | System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by waypoints). ([MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED), [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED), [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED), [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED),MAV_MODE_FLAG_AUTO_ENABLED). | ### MAV_SYS_STATUS_SENSOR {#MAV_SYS_STATUS_SENSOR} (Bitmask) These encode the sensors whose status is sent as part of the [SYS_STATUS](#SYS_STATUS) message. -Value | Name | Description ---- | --- | --- -1 | [MAV_SYS_STATUS_SENSOR_3D_GYRO](#MAV_SYS_STATUS_SENSOR_3D_GYRO) | 0x01 3D gyro -2 | [MAV_SYS_STATUS_SENSOR_3D_ACCEL](#MAV_SYS_STATUS_SENSOR_3D_ACCEL) | 0x02 3D accelerometer -4 | [MAV_SYS_STATUS_SENSOR_3D_MAG](#MAV_SYS_STATUS_SENSOR_3D_MAG) | 0x04 3D magnetometer -8 | [MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE](#MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE) | 0x08 absolute pressure -16 | [MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE](#MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE) | 0x10 differential pressure -32 | [MAV_SYS_STATUS_SENSOR_GPS](#MAV_SYS_STATUS_SENSOR_GPS) | 0x20 GPS -64 | [MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW](#MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW) | 0x40 optical flow -128 | [MAV_SYS_STATUS_SENSOR_VISION_POSITION](#MAV_SYS_STATUS_SENSOR_VISION_POSITION) | 0x80 computer vision position -256 | [MAV_SYS_STATUS_SENSOR_LASER_POSITION](#MAV_SYS_STATUS_SENSOR_LASER_POSITION) | 0x100 laser based position -512 | [MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH](#MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH) | 0x200 external ground truth (Vicon or Leica) -1024 | [MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL](#MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL) | 0x400 3D angular rate control -2048 | [MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION](#MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION) | 0x800 attitude stabilization -4096 | [MAV_SYS_STATUS_SENSOR_YAW_POSITION](#MAV_SYS_STATUS_SENSOR_YAW_POSITION) | 0x1000 yaw position -8192 | [MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL](#MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL) | 0x2000 z/altitude control -16384 | [MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL](#MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL) | 0x4000 x/y position control -32768 | [MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS](#MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS) | 0x8000 motor outputs / control -65536 | [MAV_SYS_STATUS_SENSOR_RC_RECEIVER](#MAV_SYS_STATUS_SENSOR_RC_RECEIVER) | 0x10000 RC receiver -131072 | [MAV_SYS_STATUS_SENSOR_3D_GYRO2](#MAV_SYS_STATUS_SENSOR_3D_GYRO2) | 0x20000 2nd 3D gyro -262144 | [MAV_SYS_STATUS_SENSOR_3D_ACCEL2](#MAV_SYS_STATUS_SENSOR_3D_ACCEL2) | 0x40000 2nd 3D accelerometer -524288 | [MAV_SYS_STATUS_SENSOR_3D_MAG2](#MAV_SYS_STATUS_SENSOR_3D_MAG2) | 0x80000 2nd 3D magnetometer -1048576 | [MAV_SYS_STATUS_GEOFENCE](#MAV_SYS_STATUS_GEOFENCE) | 0x100000 geofence -2097152 | [MAV_SYS_STATUS_AHRS](#MAV_SYS_STATUS_AHRS) | 0x200000 AHRS subsystem health -4194304 | [MAV_SYS_STATUS_TERRAIN](#MAV_SYS_STATUS_TERRAIN) | 0x400000 Terrain subsystem health -8388608 | [MAV_SYS_STATUS_REVERSE_MOTOR](#MAV_SYS_STATUS_REVERSE_MOTOR) | 0x800000 Motors are reversed -16777216 | [MAV_SYS_STATUS_LOGGING](#MAV_SYS_STATUS_LOGGING) | 0x1000000 Logging -33554432 | [MAV_SYS_STATUS_SENSOR_BATTERY](#MAV_SYS_STATUS_SENSOR_BATTERY) | 0x2000000 Battery -67108864 | [MAV_SYS_STATUS_SENSOR_PROXIMITY](#MAV_SYS_STATUS_SENSOR_PROXIMITY) | 0x4000000 Proximity -134217728 | [MAV_SYS_STATUS_SENSOR_SATCOM](#MAV_SYS_STATUS_SENSOR_SATCOM) | 0x8000000 Satellite Communication -268435456 | [MAV_SYS_STATUS_PREARM_CHECK](#MAV_SYS_STATUS_PREARM_CHECK) | 0x10000000 pre-arm check status. Always healthy when armed -536870912 | [MAV_SYS_STATUS_OBSTACLE_AVOIDANCE](#MAV_SYS_STATUS_OBSTACLE_AVOIDANCE) | 0x20000000 Avoidance/collision prevention -1073741824 | [MAV_SYS_STATUS_SENSOR_PROPULSION](#MAV_SYS_STATUS_SENSOR_PROPULSION) | 0x40000000 propulsion (actuator, esc, motor or propellor) -2147483648 | [MAV_SYS_STATUS_EXTENSION_USED](#MAV_SYS_STATUS_EXTENSION_USED) | 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) +| Value | Name | Description | +| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_SYS_STATUS_SENSOR_3D_GYRO](#MAV_SYS_STATUS_SENSOR_3D_GYRO) | 0x01 3D gyro | +| 2 | [MAV_SYS_STATUS_SENSOR_3D_ACCEL](#MAV_SYS_STATUS_SENSOR_3D_ACCEL) | 0x02 3D accelerometer | +| 4 | [MAV_SYS_STATUS_SENSOR_3D_MAG](#MAV_SYS_STATUS_SENSOR_3D_MAG) | 0x04 3D magnetometer | +| 8 | [MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE](#MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE) | 0x08 absolute pressure | +| 16 | [MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE](#MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE) | 0x10 differential pressure | +| 32 | [MAV_SYS_STATUS_SENSOR_GPS](#MAV_SYS_STATUS_SENSOR_GPS) | 0x20 GPS | +| 64 | [MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW](#MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW) | 0x40 optical flow | +| 128 | [MAV_SYS_STATUS_SENSOR_VISION_POSITION](#MAV_SYS_STATUS_SENSOR_VISION_POSITION) | 0x80 computer vision position | +| 256 | [MAV_SYS_STATUS_SENSOR_LASER_POSITION](#MAV_SYS_STATUS_SENSOR_LASER_POSITION) | 0x100 laser based position | +| 512 | [MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH](#MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH) | 0x200 external ground truth (Vicon or Leica) | +| 1024 | [MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL](#MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL) | 0x400 3D angular rate control | +| 2048 | [MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION](#MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION) | 0x800 attitude stabilization | +| 4096 | [MAV_SYS_STATUS_SENSOR_YAW_POSITION](#MAV_SYS_STATUS_SENSOR_YAW_POSITION) | 0x1000 yaw position | +| 8192 | [MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL](#MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL) | 0x2000 z/altitude control | +| 16384 | [MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL](#MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL) | 0x4000 x/y position control | +| 32768 | [MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS](#MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS) | 0x8000 motor outputs / control | +| 65536 | [MAV_SYS_STATUS_SENSOR_RC_RECEIVER](#MAV_SYS_STATUS_SENSOR_RC_RECEIVER) | 0x10000 RC receiver | +| 131072 | [MAV_SYS_STATUS_SENSOR_3D_GYRO2](#MAV_SYS_STATUS_SENSOR_3D_GYRO2) | 0x20000 2nd 3D gyro | +| 262144 | [MAV_SYS_STATUS_SENSOR_3D_ACCEL2](#MAV_SYS_STATUS_SENSOR_3D_ACCEL2) | 0x40000 2nd 3D accelerometer | +| 524288 | [MAV_SYS_STATUS_SENSOR_3D_MAG2](#MAV_SYS_STATUS_SENSOR_3D_MAG2) | 0x80000 2nd 3D magnetometer | +| 1048576 | [MAV_SYS_STATUS_GEOFENCE](#MAV_SYS_STATUS_GEOFENCE) | 0x100000 geofence | +| 2097152 | [MAV_SYS_STATUS_AHRS](#MAV_SYS_STATUS_AHRS) | 0x200000 AHRS subsystem health | +| 4194304 | [MAV_SYS_STATUS_TERRAIN](#MAV_SYS_STATUS_TERRAIN) | 0x400000 Terrain subsystem health | +| 8388608 | [MAV_SYS_STATUS_REVERSE_MOTOR](#MAV_SYS_STATUS_REVERSE_MOTOR) | 0x800000 Motors are reversed | +| 16777216 | [MAV_SYS_STATUS_LOGGING](#MAV_SYS_STATUS_LOGGING) | 0x1000000 Logging | +| 33554432 | [MAV_SYS_STATUS_SENSOR_BATTERY](#MAV_SYS_STATUS_SENSOR_BATTERY) | 0x2000000 Battery | +| 67108864 | [MAV_SYS_STATUS_SENSOR_PROXIMITY](#MAV_SYS_STATUS_SENSOR_PROXIMITY) | 0x4000000 Proximity | +| 134217728 | [MAV_SYS_STATUS_SENSOR_SATCOM](#MAV_SYS_STATUS_SENSOR_SATCOM) | 0x8000000 Satellite Communication | +| 268435456 | [MAV_SYS_STATUS_PREARM_CHECK](#MAV_SYS_STATUS_PREARM_CHECK) | 0x10000000 pre-arm check status. Always healthy when armed | +| 536870912 | [MAV_SYS_STATUS_OBSTACLE_AVOIDANCE](#MAV_SYS_STATUS_OBSTACLE_AVOIDANCE) | 0x20000000 Avoidance/collision prevention | +| 1073741824 | [MAV_SYS_STATUS_SENSOR_PROPULSION](#MAV_SYS_STATUS_SENSOR_PROPULSION) | 0x40000000 propulsion (actuator, esc, motor or propellor) | +| 2147483648 | [MAV_SYS_STATUS_EXTENSION_USED](#MAV_SYS_STATUS_EXTENSION_USED) | 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in onboard_control_sensors_present only) | ### MAV_SYS_STATUS_SENSOR_EXTENDED {#MAV_SYS_STATUS_SENSOR_EXTENDED} (Bitmask) These encode the sensors whose status is sent as part of the [SYS_STATUS](#SYS_STATUS) message in the extended fields. -Value | Name | Description ---- | --- | --- -1 | [MAV_SYS_STATUS_RECOVERY_SYSTEM](#MAV_SYS_STATUS_RECOVERY_SYSTEM) | 0x01 Recovery system (parachute, balloon, retracts etc) -2 | [MAV_SYS_STATUS_SENSOR_LEAK](#MAV_SYS_STATUS_SENSOR_LEAK) | 0x02 Leak detection +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------- | +| 1 | [MAV_SYS_STATUS_RECOVERY_SYSTEM](#MAV_SYS_STATUS_RECOVERY_SYSTEM) | 0x01 Recovery system (parachute, balloon, retracts etc) | +| 2 | [MAV_SYS_STATUS_SENSOR_LEAK](#MAV_SYS_STATUS_SENSOR_LEAK) | 0x02 Leak detection | ### MAV_FRAME {#MAV_FRAME} Coordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or vehicles. - Global frames use the following naming conventions: + - "GLOBAL": Global coordinate frame with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. -The following modifiers may be used with "GLOBAL": + The following modifiers may be used with "GLOBAL": - "RELATIVE_ALT": Altitude is relative to the vehicle home position rather than MSL. - "TERRAIN_ALT": Altitude is relative to ground level rather than MSL. - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. Local frames use the following naming conventions: + - "LOCAL": Origin of local frame is fixed relative to earth. Unless otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). - "BODY": Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame axis with vehicle attitude. - "OFFSET": Deprecated synonym for "BODY" (origin travels with the vehicle). Not to be used for new frames. Some deprecated frames do not follow these conventions (e.g. [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) and [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED)). -Value | Name | Description ---- | --- | --- -0 | [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) | Global (WGS84) coordinate frame + altitude relative to mean sea level (MSL). -1 | [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. -2 | [MAV_FRAME_MISSION](#MAV_FRAME_MISSION) | NOT a coordinate frame, indicates a mission command. -3 | [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) | Global (WGS84) coordinate frame + altitude relative to the home position. -4 | [MAV_FRAME_LOCAL_ENU](#MAV_FRAME_LOCAL_ENU) | ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. -5 | [MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT) | Global (WGS84) coordinate frame (scaled) + altitude relative to mean sea level (MSL).
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) (2024-03) — Use [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) -6 | [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT) | Global (WGS84) coordinate frame (scaled) + altitude relative to the home position.
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) (2024-03) — Use [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) -7 | [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. -8 | [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) | Same as [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) when used to represent position values. Same as [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) when used with velocity/acceleration values.
**SUPERSEDED:** Replaced By [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) (2019-08) -9 | [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) | This is the same as [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD).
**SUPERSEDED:** Replaced By [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) (2019-08) -10 | [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) | Global (WGS84) coordinate frame with AGL altitude (altitude at ground level). -11 | [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) | Global (WGS84) coordinate frame (scaled) with AGL altitude (altitude at ground level).
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) (2024-03) — Use [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) -12 | [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) | FRD local frame aligned to the vehicle's attitude (x: Forward, y: Right, z: Down) with an origin that travels with vehicle. -13 | [MAV_FRAME_RESERVED_13](#MAV_FRAME_RESERVED_13) | [MAV_FRAME_BODY_FLU](#MAV_FRAME_BODY_FLU) - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up).
**DEPRECATED:**(2019-04) -14 | [MAV_FRAME_RESERVED_14](#MAV_FRAME_RESERVED_14) | [MAV_FRAME_MOCAP_NED](#MAV_FRAME_MOCAP_NED) - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) -15 | [MAV_FRAME_RESERVED_15](#MAV_FRAME_RESERVED_15) | [MAV_FRAME_MOCAP_ENU](#MAV_FRAME_MOCAP_ENU) - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) -16 | [MAV_FRAME_RESERVED_16](#MAV_FRAME_RESERVED_16) | [MAV_FRAME_VISION_NED](#MAV_FRAME_VISION_NED) - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) -17 | [MAV_FRAME_RESERVED_17](#MAV_FRAME_RESERVED_17) | [MAV_FRAME_VISION_ENU](#MAV_FRAME_VISION_ENU) - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) -18 | [MAV_FRAME_RESERVED_18](#MAV_FRAME_RESERVED_18) | [MAV_FRAME_ESTIM_NED](#MAV_FRAME_ESTIM_NED) - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) -19 | [MAV_FRAME_RESERVED_19](#MAV_FRAME_RESERVED_19) | [MAV_FRAME_ESTIM_ENU](#MAV_FRAME_ESTIM_ENU) - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) -20 | [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) | FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. -21 | [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) | FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) | Global (WGS84) coordinate frame + altitude relative to mean sea level (MSL). | +| 1 | [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. | +| 2 | [MAV_FRAME_MISSION](#MAV_FRAME_MISSION) | NOT a coordinate frame, indicates a mission command. | +| 3 | [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) | Global (WGS84) coordinate frame + altitude relative to the home position. | +| 4 | [MAV_FRAME_LOCAL_ENU](#MAV_FRAME_LOCAL_ENU) | ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth. | +| 5 | [MAV_FRAME_GLOBAL_INT](#MAV_FRAME_GLOBAL_INT) | Global (WGS84) coordinate frame (scaled) + altitude relative to mean sea level (MSL).
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) (2024-03) — Use [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) | +| 6 | [MAV_FRAME_GLOBAL_RELATIVE_ALT_INT](#MAV_FRAME_GLOBAL_RELATIVE_ALT_INT) | Global (WGS84) coordinate frame (scaled) + altitude relative to the home position.
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) (2024-03) — Use [MAV_FRAME_GLOBAL_RELATIVE_ALT](#MAV_FRAME_GLOBAL_RELATIVE_ALT) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) | +| 7 | [MAV_FRAME_LOCAL_OFFSET_NED](#MAV_FRAME_LOCAL_OFFSET_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle. | +| 8 | [MAV_FRAME_BODY_NED](#MAV_FRAME_BODY_NED) | Same as [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED) when used to represent position values. Same as [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) when used with velocity/acceleration values.
**SUPERSEDED:** Replaced By [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) (2019-08) | +| 9 | [MAV_FRAME_BODY_OFFSET_NED](#MAV_FRAME_BODY_OFFSET_NED) | This is the same as [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD).
**SUPERSEDED:** Replaced By [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) (2019-08) | +| 10 | [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) | Global (WGS84) coordinate frame with AGL altitude (altitude at ground level). | +| 11 | [MAV_FRAME_GLOBAL_TERRAIN_ALT_INT](#MAV_FRAME_GLOBAL_TERRAIN_ALT_INT) | Global (WGS84) coordinate frame (scaled) with AGL altitude (altitude at ground level).
**SUPERSEDED:** Replaced By [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) (2024-03) — Use [MAV_FRAME_GLOBAL_TERRAIN_ALT](#MAV_FRAME_GLOBAL_TERRAIN_ALT) in [COMMAND_INT](#COMMAND_INT) (and elsewhere) as a synonymous replacement.) | +| 12 | [MAV_FRAME_BODY_FRD](#MAV_FRAME_BODY_FRD) | FRD local frame aligned to the vehicle's attitude (x: Forward, y: Right, z: Down) with an origin that travels with vehicle. | +| 13 | [MAV_FRAME_RESERVED_13](#MAV_FRAME_RESERVED_13) | [MAV_FRAME_BODY_FLU](#MAV_FRAME_BODY_FLU) - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up).
**DEPRECATED:**(2019-04) | +| 14 | [MAV_FRAME_RESERVED_14](#MAV_FRAME_RESERVED_14) | [MAV_FRAME_MOCAP_NED](#MAV_FRAME_MOCAP_NED) - Odometry local coordinate frame of data given by a motion capture system, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) | +| 15 | [MAV_FRAME_RESERVED_15](#MAV_FRAME_RESERVED_15) | [MAV_FRAME_MOCAP_ENU](#MAV_FRAME_MOCAP_ENU) - Odometry local coordinate frame of data given by a motion capture system, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) | +| 16 | [MAV_FRAME_RESERVED_16](#MAV_FRAME_RESERVED_16) | [MAV_FRAME_VISION_NED](#MAV_FRAME_VISION_NED) - Odometry local coordinate frame of data given by a vision estimation system, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) | +| 17 | [MAV_FRAME_RESERVED_17](#MAV_FRAME_RESERVED_17) | [MAV_FRAME_VISION_ENU](#MAV_FRAME_VISION_ENU) - Odometry local coordinate frame of data given by a vision estimation system, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) | +| 18 | [MAV_FRAME_RESERVED_18](#MAV_FRAME_RESERVED_18) | [MAV_FRAME_ESTIM_NED](#MAV_FRAME_ESTIM_NED) - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-down (x: North, y: East, z: Down).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) (2019-04) | +| 19 | [MAV_FRAME_RESERVED_19](#MAV_FRAME_RESERVED_19) | [MAV_FRAME_ESTIM_ENU](#MAV_FRAME_ESTIM_ENU) - Odometry local coordinate frame of data given by an estimator running onboard the vehicle, Z-up (x: East, y: North, z: Up).
**DEPRECATED:** Replaced By [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) (2019-04) | +| 20 | [MAV_FRAME_LOCAL_FRD](#MAV_FRAME_LOCAL_FRD) | FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. | +| 21 | [MAV_FRAME_LOCAL_FLU](#MAV_FRAME_LOCAL_FLU) | FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The forward axis is aligned to the front of the vehicle in the horizontal plane. | ### MAVLINK_DATA_STREAM_TYPE {#MAVLINK_DATA_STREAM_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAVLINK_DATA_STREAM_IMG_JPEG](#MAVLINK_DATA_STREAM_IMG_JPEG) | -1 | [MAVLINK_DATA_STREAM_IMG_BMP](#MAVLINK_DATA_STREAM_IMG_BMP) | -2 | [MAVLINK_DATA_STREAM_IMG_RAW8U](#MAVLINK_DATA_STREAM_IMG_RAW8U) | -3 | [MAVLINK_DATA_STREAM_IMG_RAW32U](#MAVLINK_DATA_STREAM_IMG_RAW32U) | -4 | [MAVLINK_DATA_STREAM_IMG_PGM](#MAVLINK_DATA_STREAM_IMG_PGM) | -5 | [MAVLINK_DATA_STREAM_IMG_PNG](#MAVLINK_DATA_STREAM_IMG_PNG) | +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ----------- | +| 0 | [MAVLINK_DATA_STREAM_IMG_JPEG](#MAVLINK_DATA_STREAM_IMG_JPEG) | +| 1 | [MAVLINK_DATA_STREAM_IMG_BMP](#MAVLINK_DATA_STREAM_IMG_BMP) | +| 2 | [MAVLINK_DATA_STREAM_IMG_RAW8U](#MAVLINK_DATA_STREAM_IMG_RAW8U) | +| 3 | [MAVLINK_DATA_STREAM_IMG_RAW32U](#MAVLINK_DATA_STREAM_IMG_RAW32U) | +| 4 | [MAVLINK_DATA_STREAM_IMG_PGM](#MAVLINK_DATA_STREAM_IMG_PGM) | +| 5 | [MAVLINK_DATA_STREAM_IMG_PNG](#MAVLINK_DATA_STREAM_IMG_PNG) | ### FENCE_BREACH {#FENCE_BREACH} -Value | Name | Description ---- | --- | --- -0 | [FENCE_BREACH_NONE](#FENCE_BREACH_NONE) | No last fence breach -1 | [FENCE_BREACH_MINALT](#FENCE_BREACH_MINALT) | Breached minimum altitude -2 | [FENCE_BREACH_MAXALT](#FENCE_BREACH_MAXALT) | Breached maximum altitude -3 | [FENCE_BREACH_BOUNDARY](#FENCE_BREACH_BOUNDARY) | Breached fence boundary +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | ------------------------- | +| 0 | [FENCE_BREACH_NONE](#FENCE_BREACH_NONE) | No last fence breach | +| 1 | [FENCE_BREACH_MINALT](#FENCE_BREACH_MINALT) | Breached minimum altitude | +| 2 | [FENCE_BREACH_MAXALT](#FENCE_BREACH_MAXALT) | Breached maximum altitude | +| 3 | [FENCE_BREACH_BOUNDARY](#FENCE_BREACH_BOUNDARY) | Breached fence boundary | ### FENCE_MITIGATE {#FENCE_MITIGATE} Actions being taken to mitigate/prevent fence breach -Value | Name | Description ---- | --- | --- -0 | [FENCE_MITIGATE_UNKNOWN](#FENCE_MITIGATE_UNKNOWN) | Unknown -1 | [FENCE_MITIGATE_NONE](#FENCE_MITIGATE_NONE) | No actions being taken -2 | [FENCE_MITIGATE_VEL_LIMIT](#FENCE_MITIGATE_VEL_LIMIT) | Velocity limiting active to prevent breach +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ------------------------------------------ | +| 0 | [FENCE_MITIGATE_UNKNOWN](#FENCE_MITIGATE_UNKNOWN) | Unknown | +| 1 | [FENCE_MITIGATE_NONE](#FENCE_MITIGATE_NONE) | No actions being taken | +| 2 | [FENCE_MITIGATE_VEL_LIMIT](#FENCE_MITIGATE_VEL_LIMIT) | Velocity limiting active to prevent breach | ### FENCE_TYPE {#FENCE_TYPE} @@ -4243,12 +4008,12 @@ Value | Name | Description Note that at least one of these flags must be set in [MAV_CMD_DO_FENCE_ENABLE](#MAV_CMD_DO_FENCE_ENABLE).param2. If none are set, the flight stack will ignore the field and enable/disable its default set of fences (usually all of them). -Value | Name | Description ---- | --- | --- -1 | [FENCE_TYPE_ALT_MAX](#FENCE_TYPE_ALT_MAX) | Maximum altitude fence -2 | [FENCE_TYPE_CIRCLE](#FENCE_TYPE_CIRCLE) | Circle fence -4 | [FENCE_TYPE_POLYGON](#FENCE_TYPE_POLYGON) | Polygon fence -8 | [FENCE_TYPE_ALT_MIN](#FENCE_TYPE_ALT_MIN) | Minimum altitude fence +| Value | Name | Description | +| -------------------------------- | ----------------------------------------- | ---------------------- | +| 1 | [FENCE_TYPE_ALT_MAX](#FENCE_TYPE_ALT_MAX) | Maximum altitude fence | +| 2 | [FENCE_TYPE_CIRCLE](#FENCE_TYPE_CIRCLE) | Circle fence | +| 4 | [FENCE_TYPE_POLYGON](#FENCE_TYPE_POLYGON) | Polygon fence | +| 8 | [FENCE_TYPE_ALT_MIN](#FENCE_TYPE_ALT_MIN) | Minimum altitude fence | ### MAV_MOUNT_MODE — [DEP] {#MAV_MOUNT_MODE} @@ -4256,343 +4021,343 @@ Value | Name | Description Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal messages. -Value | Name | Description ---- | --- | --- -0 | [MAV_MOUNT_MODE_RETRACT](#MAV_MOUNT_MODE_RETRACT) | Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization -1 | [MAV_MOUNT_MODE_NEUTRAL](#MAV_MOUNT_MODE_NEUTRAL) | Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. -2 | [MAV_MOUNT_MODE_MAVLINK_TARGETING](#MAV_MOUNT_MODE_MAVLINK_TARGETING) | Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization -3 | [MAV_MOUNT_MODE_RC_TARGETING](#MAV_MOUNT_MODE_RC_TARGETING) | Load neutral position and start RC Roll,Pitch,Yaw control with stabilization -4 | [MAV_MOUNT_MODE_GPS_POINT](#MAV_MOUNT_MODE_GPS_POINT) | Load neutral position and start to point to Lat,Lon,Alt -5 | [MAV_MOUNT_MODE_SYSID_TARGET](#MAV_MOUNT_MODE_SYSID_TARGET) | Gimbal tracks system with specified system ID -6 | [MAV_MOUNT_MODE_HOME_LOCATION](#MAV_MOUNT_MODE_HOME_LOCATION) | Gimbal tracks home position -7 | [MAV_MOUNT_MODE_WPNEXT_OFFSET](#MAV_MOUNT_MODE_WPNEXT_OFFSET) | Gimbal tracks next waypoint location with offset +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| 0 | [MAV_MOUNT_MODE_RETRACT](#MAV_MOUNT_MODE_RETRACT) | Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization | +| 1 | [MAV_MOUNT_MODE_NEUTRAL](#MAV_MOUNT_MODE_NEUTRAL) | Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. | +| 2 | [MAV_MOUNT_MODE_MAVLINK_TARGETING](#MAV_MOUNT_MODE_MAVLINK_TARGETING) | Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization | +| 3 | [MAV_MOUNT_MODE_RC_TARGETING](#MAV_MOUNT_MODE_RC_TARGETING) | Load neutral position and start RC Roll,Pitch,Yaw control with stabilization | +| 4 | [MAV_MOUNT_MODE_GPS_POINT](#MAV_MOUNT_MODE_GPS_POINT) | Load neutral position and start to point to Lat,Lon,Alt | +| 5 | [MAV_MOUNT_MODE_SYSID_TARGET](#MAV_MOUNT_MODE_SYSID_TARGET) | Gimbal tracks system with specified system ID | +| 6 | [MAV_MOUNT_MODE_HOME_LOCATION](#MAV_MOUNT_MODE_HOME_LOCATION) | Gimbal tracks home position | +| 7 | [MAV_MOUNT_MODE_WPNEXT_OFFSET](#MAV_MOUNT_MODE_WPNEXT_OFFSET) | Gimbal tracks next waypoint location with offset | ### GIMBAL_DEVICE_CAP_FLAGS {#GIMBAL_DEVICE_CAP_FLAGS} (Bitmask) Gimbal device (low level) capability flags (bitmap). -Value | Name | Description ---- | --- | --- -1 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT) | Gimbal device supports a retracted position. -2 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL) | Gimbal device supports a horizontal, forward looking position, stabilized. -4 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS) | Gimbal device supports rotating around roll axis. -8 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW) | Gimbal device supports to follow a roll angle relative to the vehicle. -16 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK) | Gimbal device supports locking to a roll angle (generally that's the default with roll stabilized). -32 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS) | Gimbal device supports rotating around pitch axis. -64 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW) | Gimbal device supports to follow a pitch angle relative to the vehicle. -128 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK) | Gimbal device supports locking to a pitch angle (generally that's the default with pitch stabilized). -256 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS) | Gimbal device supports rotating around yaw axis. -512 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW) | Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default). -1024 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK) | Gimbal device supports locking to an absolute heading, i.e., yaw angle relative to North (earth frame, often this is an option available). -2048 | [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW) | Gimbal device supports yawing/panning infinitely (e.g. using slip disk). -4096 | [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME) | Gimbal device supports yaw angles and angular velocities relative to North (earth frame). This usually requires support by an autopilot via [AUTOPILOT_STATE_FOR_GIMBAL_DEVICE](#AUTOPILOT_STATE_FOR_GIMBAL_DEVICE). Support can go on and off during runtime, which is reported by the flag [GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_IN_EARTH_FRAME). -8192 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS) | Gimbal device supports radio control inputs as an alternative input for controlling the gimbal orientation. -65536 | [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL) | Gimbal device supports to point to a local position. -131072 | [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL) | Gimbal device supports to point to a global latitude, longitude, altitude position. +| Value | Name | Description | +| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT) | Gimbal device supports a retracted position. | +| 2 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL) | Gimbal device supports a horizontal, forward looking position, stabilized. | +| 4 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS) | Gimbal device supports rotating around roll axis. | +| 8 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW) | Gimbal device supports to follow a roll angle relative to the vehicle. | +| 16 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK) | Gimbal device supports locking to a roll angle (generally that's the default with roll stabilized). | +| 32 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS) | Gimbal device supports rotating around pitch axis. | +| 64 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW) | Gimbal device supports to follow a pitch angle relative to the vehicle. | +| 128 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK) | Gimbal device supports locking to a pitch angle (generally that's the default with pitch stabilized). | +| 256 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS) | Gimbal device supports rotating around yaw axis. | +| 512 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW) | Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default). | +| 1024 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK) | Gimbal device supports locking to an absolute heading, i.e., yaw angle relative to North (earth frame, often this is an option available). | +| 2048 | [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW) | Gimbal device supports yawing/panning infinitely (e.g. using slip disk). | +| 4096 | [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME) | Gimbal device supports yaw angles and angular velocities relative to North (earth frame). This usually requires support by an autopilot via [AUTOPILOT_STATE_FOR_GIMBAL_DEVICE](#AUTOPILOT_STATE_FOR_GIMBAL_DEVICE). Support can go on and off during runtime, which is reported by the flag [GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_IN_EARTH_FRAME). | +| 8192 | [GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS) | Gimbal device supports radio control inputs as an alternative input for controlling the gimbal orientation. | +| 65536 | [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL) | Gimbal device supports to point to a local position. | +| 131072 | [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL) | Gimbal device supports to point to a global latitude, longitude, altitude position. | ### GIMBAL_MANAGER_CAP_FLAGS {#GIMBAL_MANAGER_CAP_FLAGS} (Bitmask) Gimbal manager high level capability flags (bitmap). The flags are identical to the [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS). However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. -Value | Name | Description ---- | --- | --- -1 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT](#GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT). -2 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL). -4 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS). -8 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW). -16 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK). -32 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS). -64 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW). -128 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK). -256 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS). -512 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW). -1024 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK). -2048 | [GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW). -4096 | [GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME). -8192 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_RC_INPUTS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS). -65536 | [GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL). -131072 | [GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL). +| Value | Name | Description | +| --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| 1 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT](#GIMBAL_MANAGER_CAP_FLAGS_HAS_RETRACT) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT). | +| 2 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_MANAGER_CAP_FLAGS_HAS_NEUTRAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL](#GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL). | +| 4 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS). | +| 8 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW). | +| 16 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_ROLL_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK). | +| 32 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS). | +| 64 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW). | +| 128 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_PITCH_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK). | +| 256 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_AXIS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS). | +| 512 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_FOLLOW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW). | +| 1024 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_MANAGER_CAP_FLAGS_HAS_YAW_LOCK) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK](#GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK). | +| 2048 | [GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_INFINITE_YAW) | Based on [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW). | +| 4096 | [GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME). | +| 8192 | [GIMBAL_MANAGER_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_MANAGER_CAP_FLAGS_HAS_RC_INPUTS) | Based on [GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS](#GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS). | +| 65536 | [GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_LOCAL). | +| 131072 | [GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_MANAGER_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL) | Based on [GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL](#GIMBAL_DEVICE_CAP_FLAGS_CAN_POINT_LOCATION_GLOBAL). | ### GIMBAL_DEVICE_FLAGS {#GIMBAL_DEVICE_FLAGS} (Bitmask) Flags for gimbal device (lower level) operation. -Value | Name | Description ---- | --- | --- -1 | [GIMBAL_DEVICE_FLAGS_RETRACT](#GIMBAL_DEVICE_FLAGS_RETRACT) | Set to retracted safe position (no stabilization), takes precedence over all other flags. -2 | [GIMBAL_DEVICE_FLAGS_NEUTRAL](#GIMBAL_DEVICE_FLAGS_NEUTRAL) | Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (roll=pitch=yaw=0) but may be any orientation. -4 | [GIMBAL_DEVICE_FLAGS_ROLL_LOCK](#GIMBAL_DEVICE_FLAGS_ROLL_LOCK) | Lock roll angle to absolute angle relative to horizon (not relative to vehicle). This is generally the default with a stabilizing gimbal. -8 | [GIMBAL_DEVICE_FLAGS_PITCH_LOCK](#GIMBAL_DEVICE_FLAGS_PITCH_LOCK) | Lock pitch angle to absolute angle relative to horizon (not relative to vehicle). This is generally the default with a stabilizing gimbal. -16 | [GIMBAL_DEVICE_FLAGS_YAW_LOCK](#GIMBAL_DEVICE_FLAGS_YAW_LOCK) | Lock yaw angle to absolute angle relative to North (not relative to vehicle). If this flag is set, the yaw angle and z component of angular velocity are relative to North (earth frame, x-axis pointing North), else they are relative to the vehicle heading (vehicle frame, earth frame rotated so that the x-axis is pointing forward). -32 | [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME) | Yaw angle and z component of angular velocity are relative to the vehicle heading (vehicle frame, earth frame rotated such that the x-axis is pointing forward). -64 | [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME) | Yaw angle and z component of angular velocity are relative to North (earth frame, x-axis is pointing North). -128 | [GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME) | Gimbal device can accept yaw angle inputs relative to North (earth frame). This flag is only for reporting (attempts to set this flag are ignored). -256 | [GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE](#GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE) | The gimbal orientation is set exclusively by the RC signals feed to the gimbal's radio control inputs. MAVLink messages for setting the gimbal orientation ([GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE)) are ignored. -512 | [GIMBAL_DEVICE_FLAGS_RC_MIXED](#GIMBAL_DEVICE_FLAGS_RC_MIXED) | The gimbal orientation is determined by combining/mixing the RC signals feed to the gimbal's radio control inputs and the MAVLink messages for setting the gimbal orientation ([GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE)). How these two controls are combined or mixed is not defined by the protocol but is up to the implementation. +| Value | Name | Description | +| -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [GIMBAL_DEVICE_FLAGS_RETRACT](#GIMBAL_DEVICE_FLAGS_RETRACT) | Set to retracted safe position (no stabilization), takes precedence over all other flags. | +| 2 | [GIMBAL_DEVICE_FLAGS_NEUTRAL](#GIMBAL_DEVICE_FLAGS_NEUTRAL) | Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is commonly forward-facing and horizontal (roll=pitch=yaw=0) but may be any orientation. | +| 4 | [GIMBAL_DEVICE_FLAGS_ROLL_LOCK](#GIMBAL_DEVICE_FLAGS_ROLL_LOCK) | Lock roll angle to absolute angle relative to horizon (not relative to vehicle). This is generally the default with a stabilizing gimbal. | +| 8 | [GIMBAL_DEVICE_FLAGS_PITCH_LOCK](#GIMBAL_DEVICE_FLAGS_PITCH_LOCK) | Lock pitch angle to absolute angle relative to horizon (not relative to vehicle). This is generally the default with a stabilizing gimbal. | +| 16 | [GIMBAL_DEVICE_FLAGS_YAW_LOCK](#GIMBAL_DEVICE_FLAGS_YAW_LOCK) | Lock yaw angle to absolute angle relative to North (not relative to vehicle). If this flag is set, the yaw angle and z component of angular velocity are relative to North (earth frame, x-axis pointing North), else they are relative to the vehicle heading (vehicle frame, earth frame rotated so that the x-axis is pointing forward). | +| 32 | [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME) | Yaw angle and z component of angular velocity are relative to the vehicle heading (vehicle frame, earth frame rotated such that the x-axis is pointing forward). | +| 64 | [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME) | Yaw angle and z component of angular velocity are relative to North (earth frame, x-axis is pointing North). | +| 128 | [GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME) | Gimbal device can accept yaw angle inputs relative to North (earth frame). This flag is only for reporting (attempts to set this flag are ignored). | +| 256 | [GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE](#GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE) | The gimbal orientation is set exclusively by the RC signals feed to the gimbal's radio control inputs. MAVLink messages for setting the gimbal orientation ([GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE)) are ignored. | +| 512 | [GIMBAL_DEVICE_FLAGS_RC_MIXED](#GIMBAL_DEVICE_FLAGS_RC_MIXED) | The gimbal orientation is determined by combining/mixing the RC signals feed to the gimbal's radio control inputs and the MAVLink messages for setting the gimbal orientation ([GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE)). How these two controls are combined or mixed is not defined by the protocol but is up to the implementation. | ### GIMBAL_MANAGER_FLAGS {#GIMBAL_MANAGER_FLAGS} (Bitmask) Flags for high level gimbal manager operation The first 16 bits are identical to the [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS). -Value | Name | Description ---- | --- | --- -1 | [GIMBAL_MANAGER_FLAGS_RETRACT](#GIMBAL_MANAGER_FLAGS_RETRACT) | Based on [GIMBAL_DEVICE_FLAGS_RETRACT](#GIMBAL_DEVICE_FLAGS_RETRACT). -2 | [GIMBAL_MANAGER_FLAGS_NEUTRAL](#GIMBAL_MANAGER_FLAGS_NEUTRAL) | Based on [GIMBAL_DEVICE_FLAGS_NEUTRAL](#GIMBAL_DEVICE_FLAGS_NEUTRAL). -4 | [GIMBAL_MANAGER_FLAGS_ROLL_LOCK](#GIMBAL_MANAGER_FLAGS_ROLL_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_ROLL_LOCK](#GIMBAL_DEVICE_FLAGS_ROLL_LOCK). -8 | [GIMBAL_MANAGER_FLAGS_PITCH_LOCK](#GIMBAL_MANAGER_FLAGS_PITCH_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_PITCH_LOCK](#GIMBAL_DEVICE_FLAGS_PITCH_LOCK). -16 | [GIMBAL_MANAGER_FLAGS_YAW_LOCK](#GIMBAL_MANAGER_FLAGS_YAW_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_YAW_LOCK](#GIMBAL_DEVICE_FLAGS_YAW_LOCK). -32 | [GIMBAL_MANAGER_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_MANAGER_FLAGS_YAW_IN_VEHICLE_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME). -64 | [GIMBAL_MANAGER_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_FLAGS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME). -128 | [GIMBAL_MANAGER_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME). -256 | [GIMBAL_MANAGER_FLAGS_RC_EXCLUSIVE](#GIMBAL_MANAGER_FLAGS_RC_EXCLUSIVE) | Based on [GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE](#GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE). -512 | [GIMBAL_MANAGER_FLAGS_RC_MIXED](#GIMBAL_MANAGER_FLAGS_RC_MIXED) | Based on [GIMBAL_DEVICE_FLAGS_RC_MIXED](#GIMBAL_DEVICE_FLAGS_RC_MIXED). +| Value | Name | Description | +| --------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| 1 | [GIMBAL_MANAGER_FLAGS_RETRACT](#GIMBAL_MANAGER_FLAGS_RETRACT) | Based on [GIMBAL_DEVICE_FLAGS_RETRACT](#GIMBAL_DEVICE_FLAGS_RETRACT). | +| 2 | [GIMBAL_MANAGER_FLAGS_NEUTRAL](#GIMBAL_MANAGER_FLAGS_NEUTRAL) | Based on [GIMBAL_DEVICE_FLAGS_NEUTRAL](#GIMBAL_DEVICE_FLAGS_NEUTRAL). | +| 4 | [GIMBAL_MANAGER_FLAGS_ROLL_LOCK](#GIMBAL_MANAGER_FLAGS_ROLL_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_ROLL_LOCK](#GIMBAL_DEVICE_FLAGS_ROLL_LOCK). | +| 8 | [GIMBAL_MANAGER_FLAGS_PITCH_LOCK](#GIMBAL_MANAGER_FLAGS_PITCH_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_PITCH_LOCK](#GIMBAL_DEVICE_FLAGS_PITCH_LOCK). | +| 16 | [GIMBAL_MANAGER_FLAGS_YAW_LOCK](#GIMBAL_MANAGER_FLAGS_YAW_LOCK) | Based on [GIMBAL_DEVICE_FLAGS_YAW_LOCK](#GIMBAL_DEVICE_FLAGS_YAW_LOCK). | +| 32 | [GIMBAL_MANAGER_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_MANAGER_FLAGS_YAW_IN_VEHICLE_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME). | +| 64 | [GIMBAL_MANAGER_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_FLAGS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME). | +| 128 | [GIMBAL_MANAGER_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_MANAGER_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME) | Based on [GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME](#GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME). | +| 256 | [GIMBAL_MANAGER_FLAGS_RC_EXCLUSIVE](#GIMBAL_MANAGER_FLAGS_RC_EXCLUSIVE) | Based on [GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE](#GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE). | +| 512 | [GIMBAL_MANAGER_FLAGS_RC_MIXED](#GIMBAL_MANAGER_FLAGS_RC_MIXED) | Based on [GIMBAL_DEVICE_FLAGS_RC_MIXED](#GIMBAL_DEVICE_FLAGS_RC_MIXED). | ### GIMBAL_DEVICE_ERROR_FLAGS {#GIMBAL_DEVICE_ERROR_FLAGS} (Bitmask) Gimbal device (low level) error flags (bitmap, 0 means no error) -Value | Name | Description ---- | --- | --- -1 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT) | Gimbal device is limited by hardware roll limit. -2 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT) | Gimbal device is limited by hardware pitch limit. -4 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT) | Gimbal device is limited by hardware yaw limit. -8 | [GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR) | There is an error with the gimbal encoders. -16 | [GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR) | There is an error with the gimbal power source. -32 | [GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR) | There is an error with the gimbal motors. -64 | [GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR) | There is an error with the gimbal's software. -128 | [GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR) | There is an error with the gimbal's communication. -256 | [GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING](#GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING) | Gimbal device is currently calibrating. -512 | [GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER](#GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER) | Gimbal device is not assigned to a gimbal manager. +| Value | Name | Description | +| ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -------------------------------------------------- | +| 1 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT) | Gimbal device is limited by hardware roll limit. | +| 2 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT) | Gimbal device is limited by hardware pitch limit. | +| 4 | [GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT](#GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT) | Gimbal device is limited by hardware yaw limit. | +| 8 | [GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR) | There is an error with the gimbal encoders. | +| 16 | [GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR) | There is an error with the gimbal power source. | +| 32 | [GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR) | There is an error with the gimbal motors. | +| 64 | [GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR) | There is an error with the gimbal's software. | +| 128 | [GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR](#GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR) | There is an error with the gimbal's communication. | +| 256 | [GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING](#GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING) | Gimbal device is currently calibrating. | +| 512 | [GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER](#GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER) | Gimbal device is not assigned to a gimbal manager. | ### GRIPPER_ACTIONS {#GRIPPER_ACTIONS} Gripper actions. -Value | Name | Description ---- | --- | --- -0 | [GRIPPER_ACTION_RELEASE](#GRIPPER_ACTION_RELEASE) | Gripper release cargo. -1 | [GRIPPER_ACTION_GRAB](#GRIPPER_ACTION_GRAB) | Gripper grab onto cargo. -2 | [GRIPPER_ACTION_HOLD](#GRIPPER_ACTION_HOLD) | Gripper hold current grip state/position. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | ----------------------------------------- | +| 0 | [GRIPPER_ACTION_RELEASE](#GRIPPER_ACTION_RELEASE) | Gripper release cargo. | +| 1 | [GRIPPER_ACTION_GRAB](#GRIPPER_ACTION_GRAB) | Gripper grab onto cargo. | +| 2 | [GRIPPER_ACTION_HOLD](#GRIPPER_ACTION_HOLD) | Gripper hold current grip state/position. | ### WINCH_ACTIONS {#WINCH_ACTIONS} Winch actions. -Value | Name | Description ---- | --- | --- -0 | [WINCH_RELAXED](#WINCH_RELAXED) | Allow motor to freewheel. -1 | [WINCH_RELATIVE_LENGTH_CONTROL](#WINCH_RELATIVE_LENGTH_CONTROL) | Wind or unwind specified length of line, optionally using specified rate. -2 | [WINCH_RATE_CONTROL](#WINCH_RATE_CONTROL) | Wind or unwind line at specified rate. -3 | [WINCH_LOCK](#WINCH_LOCK) | Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. -4 | [WINCH_DELIVER](#WINCH_DELIVER) | Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. -5 | [WINCH_HOLD](#WINCH_HOLD) | Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. -6 | [WINCH_RETRACT](#WINCH_RETRACT) | Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. -7 | [WINCH_LOAD_LINE](#WINCH_LOAD_LINE) | Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. -8 | [WINCH_ABANDON_LINE](#WINCH_ABANDON_LINE) | Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. -9 | [WINCH_LOAD_PAYLOAD](#WINCH_LOAD_PAYLOAD) | Spools out just enough to present the hook to the user to load the payload. Only action and instance command parameters are used, others are ignored +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [WINCH_RELAXED](#WINCH_RELAXED) | Allow motor to freewheel. | +| 1 | [WINCH_RELATIVE_LENGTH_CONTROL](#WINCH_RELATIVE_LENGTH_CONTROL) | Wind or unwind specified length of line, optionally using specified rate. | +| 2 | [WINCH_RATE_CONTROL](#WINCH_RATE_CONTROL) | Wind or unwind line at specified rate. | +| 3 | [WINCH_LOCK](#WINCH_LOCK) | Perform the locking sequence to relieve motor while in the fully retracted position. Only action and instance command parameters are used, others are ignored. | +| 4 | [WINCH_DELIVER](#WINCH_DELIVER) | Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters are used, others are ignored. | +| 5 | [WINCH_HOLD](#WINCH_HOLD) | Engage motor and hold current position. Only action and instance command parameters are used, others are ignored. | +| 6 | [WINCH_RETRACT](#WINCH_RETRACT) | Return the reel to the fully retracted position. Only action and instance command parameters are used, others are ignored. | +| 7 | [WINCH_LOAD_LINE](#WINCH_LOAD_LINE) | Load the reel with line. The winch will calculate the total loaded length and stop when the tension exceeds a threshold. Only action and instance command parameters are used, others are ignored. | +| 8 | [WINCH_ABANDON_LINE](#WINCH_ABANDON_LINE) | Spool out the entire length of the line. Only action and instance command parameters are used, others are ignored. | +| 9 | [WINCH_LOAD_PAYLOAD](#WINCH_LOAD_PAYLOAD) | Spools out just enough to present the hook to the user to load the payload. Only action and instance command parameters are used, others are ignored | ### UAVCAN_NODE_HEALTH {#UAVCAN_NODE_HEALTH} Generalized UAVCAN node health -Value | Name | Description ---- | --- | --- -0 | [UAVCAN_NODE_HEALTH_OK](#UAVCAN_NODE_HEALTH_OK) | The node is functioning properly. -1 | [UAVCAN_NODE_HEALTH_WARNING](#UAVCAN_NODE_HEALTH_WARNING) | A critical parameter went out of range or the node has encountered a minor failure. -2 | [UAVCAN_NODE_HEALTH_ERROR](#UAVCAN_NODE_HEALTH_ERROR) | The node has encountered a major failure. -3 | [UAVCAN_NODE_HEALTH_CRITICAL](#UAVCAN_NODE_HEALTH_CRITICAL) | The node has suffered a fatal malfunction. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| 0 | [UAVCAN_NODE_HEALTH_OK](#UAVCAN_NODE_HEALTH_OK) | The node is functioning properly. | +| 1 | [UAVCAN_NODE_HEALTH_WARNING](#UAVCAN_NODE_HEALTH_WARNING) | A critical parameter went out of range or the node has encountered a minor failure. | +| 2 | [UAVCAN_NODE_HEALTH_ERROR](#UAVCAN_NODE_HEALTH_ERROR) | The node has encountered a major failure. | +| 3 | [UAVCAN_NODE_HEALTH_CRITICAL](#UAVCAN_NODE_HEALTH_CRITICAL) | The node has suffered a fatal malfunction. | ### UAVCAN_NODE_MODE {#UAVCAN_NODE_MODE} Generalized UAVCAN node mode -Value | Name | Description ---- | --- | --- -0 | [UAVCAN_NODE_MODE_OPERATIONAL](#UAVCAN_NODE_MODE_OPERATIONAL) | The node is performing its primary functions. -1 | [UAVCAN_NODE_MODE_INITIALIZATION](#UAVCAN_NODE_MODE_INITIALIZATION) | The node is initializing; this mode is entered immediately after startup. -2 | [UAVCAN_NODE_MODE_MAINTENANCE](#UAVCAN_NODE_MODE_MAINTENANCE) | The node is under maintenance. -3 | [UAVCAN_NODE_MODE_SOFTWARE_UPDATE](#UAVCAN_NODE_MODE_SOFTWARE_UPDATE) | The node is in the process of updating its software. -7 | [UAVCAN_NODE_MODE_OFFLINE](#UAVCAN_NODE_MODE_OFFLINE) | The node is no longer available online. +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| 0 | [UAVCAN_NODE_MODE_OPERATIONAL](#UAVCAN_NODE_MODE_OPERATIONAL) | The node is performing its primary functions. | +| 1 | [UAVCAN_NODE_MODE_INITIALIZATION](#UAVCAN_NODE_MODE_INITIALIZATION) | The node is initializing; this mode is entered immediately after startup. | +| 2 | [UAVCAN_NODE_MODE_MAINTENANCE](#UAVCAN_NODE_MODE_MAINTENANCE) | The node is under maintenance. | +| 3 | [UAVCAN_NODE_MODE_SOFTWARE_UPDATE](#UAVCAN_NODE_MODE_SOFTWARE_UPDATE) | The node is in the process of updating its software. | +| 7 | [UAVCAN_NODE_MODE_OFFLINE](#UAVCAN_NODE_MODE_OFFLINE) | The node is no longer available online. | ### ESC_CONNECTION_TYPE {#ESC_CONNECTION_TYPE} Indicates the ESC connection type. -Value | Name | Description ---- | --- | --- -0 | [ESC_CONNECTION_TYPE_PPM](#ESC_CONNECTION_TYPE_PPM) | Traditional PPM ESC. -1 | [ESC_CONNECTION_TYPE_SERIAL](#ESC_CONNECTION_TYPE_SERIAL) | Serial Bus connected ESC. -2 | [ESC_CONNECTION_TYPE_ONESHOT](#ESC_CONNECTION_TYPE_ONESHOT) | One Shot PPM ESC. -3 | [ESC_CONNECTION_TYPE_I2C](#ESC_CONNECTION_TYPE_I2C) | I2C ESC. -4 | [ESC_CONNECTION_TYPE_CAN](#ESC_CONNECTION_TYPE_CAN) | CAN-Bus ESC. -5 | [ESC_CONNECTION_TYPE_DSHOT](#ESC_CONNECTION_TYPE_DSHOT) | DShot ESC. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ------------------------- | +| 0 | [ESC_CONNECTION_TYPE_PPM](#ESC_CONNECTION_TYPE_PPM) | Traditional PPM ESC. | +| 1 | [ESC_CONNECTION_TYPE_SERIAL](#ESC_CONNECTION_TYPE_SERIAL) | Serial Bus connected ESC. | +| 2 | [ESC_CONNECTION_TYPE_ONESHOT](#ESC_CONNECTION_TYPE_ONESHOT) | One Shot PPM ESC. | +| 3 | [ESC_CONNECTION_TYPE_I2C](#ESC_CONNECTION_TYPE_I2C) | I2C ESC. | +| 4 | [ESC_CONNECTION_TYPE_CAN](#ESC_CONNECTION_TYPE_CAN) | CAN-Bus ESC. | +| 5 | [ESC_CONNECTION_TYPE_DSHOT](#ESC_CONNECTION_TYPE_DSHOT) | DShot ESC. | ### ESC_FAILURE_FLAGS {#ESC_FAILURE_FLAGS} (Bitmask) Flags to report ESC failures. -Value | Name | Description ---- | --- | --- -1 | [ESC_FAILURE_OVER_CURRENT](#ESC_FAILURE_OVER_CURRENT) | Over current failure. -2 | [ESC_FAILURE_OVER_VOLTAGE](#ESC_FAILURE_OVER_VOLTAGE) | Over voltage failure. -4 | [ESC_FAILURE_OVER_TEMPERATURE](#ESC_FAILURE_OVER_TEMPERATURE) | Over temperature failure. -8 | [ESC_FAILURE_OVER_RPM](#ESC_FAILURE_OVER_RPM) | Over RPM failure. -16 | [ESC_FAILURE_INCONSISTENT_CMD](#ESC_FAILURE_INCONSISTENT_CMD) | Inconsistent command failure i.e. out of bounds. -32 | [ESC_FAILURE_MOTOR_STUCK](#ESC_FAILURE_MOTOR_STUCK) | Motor stuck failure. -64 | [ESC_FAILURE_GENERIC](#ESC_FAILURE_GENERIC) | Generic ESC failure. +| Value | Name | Description | +| ------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------ | +| 1 | [ESC_FAILURE_OVER_CURRENT](#ESC_FAILURE_OVER_CURRENT) | Over current failure. | +| 2 | [ESC_FAILURE_OVER_VOLTAGE](#ESC_FAILURE_OVER_VOLTAGE) | Over voltage failure. | +| 4 | [ESC_FAILURE_OVER_TEMPERATURE](#ESC_FAILURE_OVER_TEMPERATURE) | Over temperature failure. | +| 8 | [ESC_FAILURE_OVER_RPM](#ESC_FAILURE_OVER_RPM) | Over RPM failure. | +| 16 | [ESC_FAILURE_INCONSISTENT_CMD](#ESC_FAILURE_INCONSISTENT_CMD) | Inconsistent command failure i.e. out of bounds. | +| 32 | [ESC_FAILURE_MOTOR_STUCK](#ESC_FAILURE_MOTOR_STUCK) | Motor stuck failure. | +| 64 | [ESC_FAILURE_GENERIC](#ESC_FAILURE_GENERIC) | Generic ESC failure. | ### STORAGE_STATUS {#STORAGE_STATUS} Flags to indicate the status of camera storage. -Value | Name | Description ---- | --- | --- -0 | [STORAGE_STATUS_EMPTY](#STORAGE_STATUS_EMPTY) | Storage is missing (no microSD card loaded for example.) -1 | [STORAGE_STATUS_UNFORMATTED](#STORAGE_STATUS_UNFORMATTED) | Storage present but unformatted. -2 | [STORAGE_STATUS_READY](#STORAGE_STATUS_READY) | Storage present and ready. -3 | [STORAGE_STATUS_NOT_SUPPORTED](#STORAGE_STATUS_NOT_SUPPORTED) | Camera does not supply storage status information. Capacity information in [STORAGE_INFORMATION](#STORAGE_INFORMATION) fields will be ignored. +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [STORAGE_STATUS_EMPTY](#STORAGE_STATUS_EMPTY) | Storage is missing (no microSD card loaded for example.) | +| 1 | [STORAGE_STATUS_UNFORMATTED](#STORAGE_STATUS_UNFORMATTED) | Storage present but unformatted. | +| 2 | [STORAGE_STATUS_READY](#STORAGE_STATUS_READY) | Storage present and ready. | +| 3 | [STORAGE_STATUS_NOT_SUPPORTED](#STORAGE_STATUS_NOT_SUPPORTED) | Camera does not supply storage status information. Capacity information in [STORAGE_INFORMATION](#STORAGE_INFORMATION) fields will be ignored. | ### STORAGE_TYPE {#STORAGE_TYPE} Flags to indicate the type of storage. -Value | Name | Description ---- | --- | --- -0 | [STORAGE_TYPE_UNKNOWN](#STORAGE_TYPE_UNKNOWN) | Storage type is not known. -1 | [STORAGE_TYPE_USB_STICK](#STORAGE_TYPE_USB_STICK) | Storage type is USB device. -2 | [STORAGE_TYPE_SD](#STORAGE_TYPE_SD) | Storage type is SD card. -3 | [STORAGE_TYPE_MICROSD](#STORAGE_TYPE_MICROSD) | Storage type is microSD card. -4 | [STORAGE_TYPE_CF](#STORAGE_TYPE_CF) | Storage type is CFast. -5 | [STORAGE_TYPE_CFE](#STORAGE_TYPE_CFE) | Storage type is CFexpress. -6 | [STORAGE_TYPE_XQD](#STORAGE_TYPE_XQD) | Storage type is XQD. -7 | [STORAGE_TYPE_HD](#STORAGE_TYPE_HD) | Storage type is HD mass storage type. -254 | [STORAGE_TYPE_OTHER](#STORAGE_TYPE_OTHER) | Storage type is other, not listed type. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | --------------------------------------- | +| 0 | [STORAGE_TYPE_UNKNOWN](#STORAGE_TYPE_UNKNOWN) | Storage type is not known. | +| 1 | [STORAGE_TYPE_USB_STICK](#STORAGE_TYPE_USB_STICK) | Storage type is USB device. | +| 2 | [STORAGE_TYPE_SD](#STORAGE_TYPE_SD) | Storage type is SD card. | +| 3 | [STORAGE_TYPE_MICROSD](#STORAGE_TYPE_MICROSD) | Storage type is microSD card. | +| 4 | [STORAGE_TYPE_CF](#STORAGE_TYPE_CF) | Storage type is CFast. | +| 5 | [STORAGE_TYPE_CFE](#STORAGE_TYPE_CFE) | Storage type is CFexpress. | +| 6 | [STORAGE_TYPE_XQD](#STORAGE_TYPE_XQD) | Storage type is XQD. | +| 7 | [STORAGE_TYPE_HD](#STORAGE_TYPE_HD) | Storage type is HD mass storage type. | +| 254 | [STORAGE_TYPE_OTHER](#STORAGE_TYPE_OTHER) | Storage type is other, not listed type. | ### STORAGE_USAGE_FLAG {#STORAGE_USAGE_FLAG} (Bitmask) Flags to indicate usage for a particular storage (see [STORAGE_INFORMATION](#STORAGE_INFORMATION).storage_usage and [MAV_CMD_SET_STORAGE_USAGE](#MAV_CMD_SET_STORAGE_USAGE)). -Value | Name | Description ---- | --- | --- -1 | [STORAGE_USAGE_FLAG_SET](#STORAGE_USAGE_FLAG_SET) | Always set to 1 (indicates [STORAGE_INFORMATION](#STORAGE_INFORMATION).storage_usage is supported). -2 | [STORAGE_USAGE_FLAG_PHOTO](#STORAGE_USAGE_FLAG_PHOTO) | Storage for saving photos. -4 | [STORAGE_USAGE_FLAG_VIDEO](#STORAGE_USAGE_FLAG_VIDEO) | Storage for saving videos. -8 | [STORAGE_USAGE_FLAG_LOGS](#STORAGE_USAGE_FLAG_LOGS) | Storage for saving logs. +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| 1 | [STORAGE_USAGE_FLAG_SET](#STORAGE_USAGE_FLAG_SET) | Always set to 1 (indicates [STORAGE_INFORMATION](#STORAGE_INFORMATION).storage_usage is supported). | +| 2 | [STORAGE_USAGE_FLAG_PHOTO](#STORAGE_USAGE_FLAG_PHOTO) | Storage for saving photos. | +| 4 | [STORAGE_USAGE_FLAG_VIDEO](#STORAGE_USAGE_FLAG_VIDEO) | Storage for saving videos. | +| 8 | [STORAGE_USAGE_FLAG_LOGS](#STORAGE_USAGE_FLAG_LOGS) | Storage for saving logs. | ### ORBIT_YAW_BEHAVIOUR {#ORBIT_YAW_BEHAVIOUR} Yaw behaviour during orbit flight. -Value | Name | Description ---- | --- | --- -0 | [ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER](#ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER) | Vehicle front points to the center (default). -1 | [ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING](#ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING) | Vehicle front holds heading when message received. -2 | [ORBIT_YAW_BEHAVIOUR_UNCONTROLLED](#ORBIT_YAW_BEHAVIOUR_UNCONTROLLED) | Yaw uncontrolled. -3 | [ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE](#ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE) | Vehicle front follows flight path (tangential to circle). -4 | [ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED](#ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED) | Yaw controlled by RC input. -5 | [ORBIT_YAW_BEHAVIOUR_UNCHANGED](#ORBIT_YAW_BEHAVIOUR_UNCHANGED) | Vehicle uses current yaw behaviour (unchanged). The vehicle-default yaw behaviour is used if this value is specified when orbit is first commanded. +| Value | Name | Description | +| -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER](#ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER) | Vehicle front points to the center (default). | +| 1 | [ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING](#ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING) | Vehicle front holds heading when message received. | +| 2 | [ORBIT_YAW_BEHAVIOUR_UNCONTROLLED](#ORBIT_YAW_BEHAVIOUR_UNCONTROLLED) | Yaw uncontrolled. | +| 3 | [ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE](#ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE) | Vehicle front follows flight path (tangential to circle). | +| 4 | [ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED](#ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED) | Yaw controlled by RC input. | +| 5 | [ORBIT_YAW_BEHAVIOUR_UNCHANGED](#ORBIT_YAW_BEHAVIOUR_UNCHANGED) | Vehicle uses current yaw behaviour (unchanged). The vehicle-default yaw behaviour is used if this value is specified when orbit is first commanded. | ### WIFI_CONFIG_AP_RESPONSE {#WIFI_CONFIG_AP_RESPONSE} Possible responses from a [WIFI_CONFIG_AP](#WIFI_CONFIG_AP) message. -Value | Name | Description ---- | --- | --- -0 | [WIFI_CONFIG_AP_RESPONSE_UNDEFINED](#WIFI_CONFIG_AP_RESPONSE_UNDEFINED) | Undefined response. Likely an indicative of a system that doesn't support this request. -1 | [WIFI_CONFIG_AP_RESPONSE_ACCEPTED](#WIFI_CONFIG_AP_RESPONSE_ACCEPTED) | Changes accepted. -2 | [WIFI_CONFIG_AP_RESPONSE_REJECTED](#WIFI_CONFIG_AP_RESPONSE_REJECTED) | Changes rejected. -3 | [WIFI_CONFIG_AP_RESPONSE_MODE_ERROR](#WIFI_CONFIG_AP_RESPONSE_MODE_ERROR) | Invalid Mode. -4 | [WIFI_CONFIG_AP_RESPONSE_SSID_ERROR](#WIFI_CONFIG_AP_RESPONSE_SSID_ERROR) | Invalid SSID. -5 | [WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR](#WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR) | Invalid Password. +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| 0 | [WIFI_CONFIG_AP_RESPONSE_UNDEFINED](#WIFI_CONFIG_AP_RESPONSE_UNDEFINED) | Undefined response. Likely an indicative of a system that doesn't support this request. | +| 1 | [WIFI_CONFIG_AP_RESPONSE_ACCEPTED](#WIFI_CONFIG_AP_RESPONSE_ACCEPTED) | Changes accepted. | +| 2 | [WIFI_CONFIG_AP_RESPONSE_REJECTED](#WIFI_CONFIG_AP_RESPONSE_REJECTED) | Changes rejected. | +| 3 | [WIFI_CONFIG_AP_RESPONSE_MODE_ERROR](#WIFI_CONFIG_AP_RESPONSE_MODE_ERROR) | Invalid Mode. | +| 4 | [WIFI_CONFIG_AP_RESPONSE_SSID_ERROR](#WIFI_CONFIG_AP_RESPONSE_SSID_ERROR) | Invalid SSID. | +| 5 | [WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR](#WIFI_CONFIG_AP_RESPONSE_PASSWORD_ERROR) | Invalid Password. | ### CELLULAR_CONFIG_RESPONSE {#CELLULAR_CONFIG_RESPONSE} Possible responses from a [CELLULAR_CONFIG](#CELLULAR_CONFIG) message. -Value | Name | Description ---- | --- | --- -0 | [CELLULAR_CONFIG_RESPONSE_ACCEPTED](#CELLULAR_CONFIG_RESPONSE_ACCEPTED) | Changes accepted. -1 | [CELLULAR_CONFIG_RESPONSE_APN_ERROR](#CELLULAR_CONFIG_RESPONSE_APN_ERROR) | Invalid APN. -2 | [CELLULAR_CONFIG_RESPONSE_PIN_ERROR](#CELLULAR_CONFIG_RESPONSE_PIN_ERROR) | Invalid PIN. -3 | [CELLULAR_CONFIG_RESPONSE_REJECTED](#CELLULAR_CONFIG_RESPONSE_REJECTED) | Changes rejected. -4 | [CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED](#CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED) | PUK is required to unblock SIM card. +| Value | Name | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------ | +| 0 | [CELLULAR_CONFIG_RESPONSE_ACCEPTED](#CELLULAR_CONFIG_RESPONSE_ACCEPTED) | Changes accepted. | +| 1 | [CELLULAR_CONFIG_RESPONSE_APN_ERROR](#CELLULAR_CONFIG_RESPONSE_APN_ERROR) | Invalid APN. | +| 2 | [CELLULAR_CONFIG_RESPONSE_PIN_ERROR](#CELLULAR_CONFIG_RESPONSE_PIN_ERROR) | Invalid PIN. | +| 3 | [CELLULAR_CONFIG_RESPONSE_REJECTED](#CELLULAR_CONFIG_RESPONSE_REJECTED) | Changes rejected. | +| 4 | [CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED](#CELLULAR_CONFIG_BLOCKED_PUK_REQUIRED) | PUK is required to unblock SIM card. | ### WIFI_CONFIG_AP_MODE {#WIFI_CONFIG_AP_MODE} WiFi Mode. -Value | Name | Description ---- | --- | --- -0 | [WIFI_CONFIG_AP_MODE_UNDEFINED](#WIFI_CONFIG_AP_MODE_UNDEFINED) | WiFi mode is undefined. -1 | [WIFI_CONFIG_AP_MODE_AP](#WIFI_CONFIG_AP_MODE_AP) | WiFi configured as an access point. -2 | [WIFI_CONFIG_AP_MODE_STATION](#WIFI_CONFIG_AP_MODE_STATION) | WiFi configured as a station connected to an existing local WiFi network. -3 | [WIFI_CONFIG_AP_MODE_DISABLED](#WIFI_CONFIG_AP_MODE_DISABLED) | WiFi disabled. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------- | +| 0 | [WIFI_CONFIG_AP_MODE_UNDEFINED](#WIFI_CONFIG_AP_MODE_UNDEFINED) | WiFi mode is undefined. | +| 1 | [WIFI_CONFIG_AP_MODE_AP](#WIFI_CONFIG_AP_MODE_AP) | WiFi configured as an access point. | +| 2 | [WIFI_CONFIG_AP_MODE_STATION](#WIFI_CONFIG_AP_MODE_STATION) | WiFi configured as a station connected to an existing local WiFi network. | +| 3 | [WIFI_CONFIG_AP_MODE_DISABLED](#WIFI_CONFIG_AP_MODE_DISABLED) | WiFi disabled. | ### COMP_METADATA_TYPE {#COMP_METADATA_TYPE} Supported component metadata types. These are used in the "general" metadata file returned by [COMPONENT_METADATA](#COMPONENT_METADATA) to provide information about supported metadata types. The types are not used directly in MAVLink messages. -Value | Name | Description ---- | --- | --- -0 | [COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL) | General information about the component. General metadata includes information about other metadata types supported by the component. Files of this type must be supported, and must be downloadable from vehicle using a MAVLink FTP URI. -1 | [COMP_METADATA_TYPE_PARAMETER](#COMP_METADATA_TYPE_PARAMETER) | Parameter meta data. -2 | [COMP_METADATA_TYPE_COMMANDS](#COMP_METADATA_TYPE_COMMANDS) | Meta data that specifies which commands and command parameters the vehicle supports. (WIP) -3 | [COMP_METADATA_TYPE_PERIPHERALS](#COMP_METADATA_TYPE_PERIPHERALS) | Meta data that specifies external non-MAVLink peripherals. -4 | [COMP_METADATA_TYPE_EVENTS](#COMP_METADATA_TYPE_EVENTS) | Meta data for the events interface. -5 | [COMP_METADATA_TYPE_ACTUATORS](#COMP_METADATA_TYPE_ACTUATORS) | Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [COMP_METADATA_TYPE_GENERAL](#COMP_METADATA_TYPE_GENERAL) | General information about the component. General metadata includes information about other metadata types supported by the component. Files of this type must be supported, and must be downloadable from vehicle using a MAVLink FTP URI. | +| 1 | [COMP_METADATA_TYPE_PARAMETER](#COMP_METADATA_TYPE_PARAMETER) | Parameter meta data. | +| 2 | [COMP_METADATA_TYPE_COMMANDS](#COMP_METADATA_TYPE_COMMANDS) | Meta data that specifies which commands and command parameters the vehicle supports. (WIP) | +| 3 | [COMP_METADATA_TYPE_PERIPHERALS](#COMP_METADATA_TYPE_PERIPHERALS) | Meta data that specifies external non-MAVLink peripherals. | +| 4 | [COMP_METADATA_TYPE_EVENTS](#COMP_METADATA_TYPE_EVENTS) | Meta data for the events interface. | +| 5 | [COMP_METADATA_TYPE_ACTUATORS](#COMP_METADATA_TYPE_ACTUATORS) | Meta data for actuator configuration (motors, servos and vehicle geometry) and testing. | ### ACTUATOR_CONFIGURATION {#ACTUATOR_CONFIGURATION} Actuator configuration, used to change a setting on an actuator. Component information metadata can be used to know which outputs support which commands. -Value | Name | Description ---- | --- | --- -0 | [ACTUATOR_CONFIGURATION_NONE](#ACTUATOR_CONFIGURATION_NONE) | Do nothing. -1 | [ACTUATOR_CONFIGURATION_BEEP](#ACTUATOR_CONFIGURATION_BEEP) | Command the actuator to beep now. -2 | [ACTUATOR_CONFIGURATION_3D_MODE_ON](#ACTUATOR_CONFIGURATION_3D_MODE_ON) | Permanently set the actuator (ESC) to 3D mode (reversible thrust). -3 | [ACTUATOR_CONFIGURATION_3D_MODE_OFF](#ACTUATOR_CONFIGURATION_3D_MODE_OFF) | Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). -4 | [ACTUATOR_CONFIGURATION_SPIN_DIRECTION1](#ACTUATOR_CONFIGURATION_SPIN_DIRECTION1) | Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). -5 | [ACTUATOR_CONFIGURATION_SPIN_DIRECTION2](#ACTUATOR_CONFIGURATION_SPIN_DIRECTION2) | Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| 0 | [ACTUATOR_CONFIGURATION_NONE](#ACTUATOR_CONFIGURATION_NONE) | Do nothing. | +| 1 | [ACTUATOR_CONFIGURATION_BEEP](#ACTUATOR_CONFIGURATION_BEEP) | Command the actuator to beep now. | +| 2 | [ACTUATOR_CONFIGURATION_3D_MODE_ON](#ACTUATOR_CONFIGURATION_3D_MODE_ON) | Permanently set the actuator (ESC) to 3D mode (reversible thrust). | +| 3 | [ACTUATOR_CONFIGURATION_3D_MODE_OFF](#ACTUATOR_CONFIGURATION_3D_MODE_OFF) | Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). | +| 4 | [ACTUATOR_CONFIGURATION_SPIN_DIRECTION1](#ACTUATOR_CONFIGURATION_SPIN_DIRECTION1) | Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). | +| 5 | [ACTUATOR_CONFIGURATION_SPIN_DIRECTION2](#ACTUATOR_CONFIGURATION_SPIN_DIRECTION2) | Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). | ### ACTUATOR_OUTPUT_FUNCTION {#ACTUATOR_OUTPUT_FUNCTION} Actuator output function. Values greater or equal to 1000 are autopilot-specific. -Value | Name | Description ---- | --- | --- -0 | [ACTUATOR_OUTPUT_FUNCTION_NONE](#ACTUATOR_OUTPUT_FUNCTION_NONE) | No function (disabled). -1 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR1](#ACTUATOR_OUTPUT_FUNCTION_MOTOR1) | Motor 1 -2 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR2](#ACTUATOR_OUTPUT_FUNCTION_MOTOR2) | Motor 2 -3 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR3](#ACTUATOR_OUTPUT_FUNCTION_MOTOR3) | Motor 3 -4 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR4](#ACTUATOR_OUTPUT_FUNCTION_MOTOR4) | Motor 4 -5 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR5](#ACTUATOR_OUTPUT_FUNCTION_MOTOR5) | Motor 5 -6 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR6](#ACTUATOR_OUTPUT_FUNCTION_MOTOR6) | Motor 6 -7 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR7](#ACTUATOR_OUTPUT_FUNCTION_MOTOR7) | Motor 7 -8 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR8](#ACTUATOR_OUTPUT_FUNCTION_MOTOR8) | Motor 8 -9 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR9](#ACTUATOR_OUTPUT_FUNCTION_MOTOR9) | Motor 9 -10 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR10](#ACTUATOR_OUTPUT_FUNCTION_MOTOR10) | Motor 10 -11 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR11](#ACTUATOR_OUTPUT_FUNCTION_MOTOR11) | Motor 11 -12 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR12](#ACTUATOR_OUTPUT_FUNCTION_MOTOR12) | Motor 12 -13 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR13](#ACTUATOR_OUTPUT_FUNCTION_MOTOR13) | Motor 13 -14 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR14](#ACTUATOR_OUTPUT_FUNCTION_MOTOR14) | Motor 14 -15 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR15](#ACTUATOR_OUTPUT_FUNCTION_MOTOR15) | Motor 15 -16 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR16](#ACTUATOR_OUTPUT_FUNCTION_MOTOR16) | Motor 16 -33 | [ACTUATOR_OUTPUT_FUNCTION_SERVO1](#ACTUATOR_OUTPUT_FUNCTION_SERVO1) | Servo 1 -34 | [ACTUATOR_OUTPUT_FUNCTION_SERVO2](#ACTUATOR_OUTPUT_FUNCTION_SERVO2) | Servo 2 -35 | [ACTUATOR_OUTPUT_FUNCTION_SERVO3](#ACTUATOR_OUTPUT_FUNCTION_SERVO3) | Servo 3 -36 | [ACTUATOR_OUTPUT_FUNCTION_SERVO4](#ACTUATOR_OUTPUT_FUNCTION_SERVO4) | Servo 4 -37 | [ACTUATOR_OUTPUT_FUNCTION_SERVO5](#ACTUATOR_OUTPUT_FUNCTION_SERVO5) | Servo 5 -38 | [ACTUATOR_OUTPUT_FUNCTION_SERVO6](#ACTUATOR_OUTPUT_FUNCTION_SERVO6) | Servo 6 -39 | [ACTUATOR_OUTPUT_FUNCTION_SERVO7](#ACTUATOR_OUTPUT_FUNCTION_SERVO7) | Servo 7 -40 | [ACTUATOR_OUTPUT_FUNCTION_SERVO8](#ACTUATOR_OUTPUT_FUNCTION_SERVO8) | Servo 8 -41 | [ACTUATOR_OUTPUT_FUNCTION_SERVO9](#ACTUATOR_OUTPUT_FUNCTION_SERVO9) | Servo 9 -42 | [ACTUATOR_OUTPUT_FUNCTION_SERVO10](#ACTUATOR_OUTPUT_FUNCTION_SERVO10) | Servo 10 -43 | [ACTUATOR_OUTPUT_FUNCTION_SERVO11](#ACTUATOR_OUTPUT_FUNCTION_SERVO11) | Servo 11 -44 | [ACTUATOR_OUTPUT_FUNCTION_SERVO12](#ACTUATOR_OUTPUT_FUNCTION_SERVO12) | Servo 12 -45 | [ACTUATOR_OUTPUT_FUNCTION_SERVO13](#ACTUATOR_OUTPUT_FUNCTION_SERVO13) | Servo 13 -46 | [ACTUATOR_OUTPUT_FUNCTION_SERVO14](#ACTUATOR_OUTPUT_FUNCTION_SERVO14) | Servo 14 -47 | [ACTUATOR_OUTPUT_FUNCTION_SERVO15](#ACTUATOR_OUTPUT_FUNCTION_SERVO15) | Servo 15 -48 | [ACTUATOR_OUTPUT_FUNCTION_SERVO16](#ACTUATOR_OUTPUT_FUNCTION_SERVO16) | Servo 16 +| Value | Name | Description | +| ----------------------------------------------- | --------------------------------------------------------------------- | ----------------------- | +| 0 | [ACTUATOR_OUTPUT_FUNCTION_NONE](#ACTUATOR_OUTPUT_FUNCTION_NONE) | No function (disabled). | +| 1 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR1](#ACTUATOR_OUTPUT_FUNCTION_MOTOR1) | Motor 1 | +| 2 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR2](#ACTUATOR_OUTPUT_FUNCTION_MOTOR2) | Motor 2 | +| 3 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR3](#ACTUATOR_OUTPUT_FUNCTION_MOTOR3) | Motor 3 | +| 4 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR4](#ACTUATOR_OUTPUT_FUNCTION_MOTOR4) | Motor 4 | +| 5 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR5](#ACTUATOR_OUTPUT_FUNCTION_MOTOR5) | Motor 5 | +| 6 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR6](#ACTUATOR_OUTPUT_FUNCTION_MOTOR6) | Motor 6 | +| 7 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR7](#ACTUATOR_OUTPUT_FUNCTION_MOTOR7) | Motor 7 | +| 8 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR8](#ACTUATOR_OUTPUT_FUNCTION_MOTOR8) | Motor 8 | +| 9 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR9](#ACTUATOR_OUTPUT_FUNCTION_MOTOR9) | Motor 9 | +| 10 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR10](#ACTUATOR_OUTPUT_FUNCTION_MOTOR10) | Motor 10 | +| 11 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR11](#ACTUATOR_OUTPUT_FUNCTION_MOTOR11) | Motor 11 | +| 12 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR12](#ACTUATOR_OUTPUT_FUNCTION_MOTOR12) | Motor 12 | +| 13 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR13](#ACTUATOR_OUTPUT_FUNCTION_MOTOR13) | Motor 13 | +| 14 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR14](#ACTUATOR_OUTPUT_FUNCTION_MOTOR14) | Motor 14 | +| 15 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR15](#ACTUATOR_OUTPUT_FUNCTION_MOTOR15) | Motor 15 | +| 16 | [ACTUATOR_OUTPUT_FUNCTION_MOTOR16](#ACTUATOR_OUTPUT_FUNCTION_MOTOR16) | Motor 16 | +| 33 | [ACTUATOR_OUTPUT_FUNCTION_SERVO1](#ACTUATOR_OUTPUT_FUNCTION_SERVO1) | Servo 1 | +| 34 | [ACTUATOR_OUTPUT_FUNCTION_SERVO2](#ACTUATOR_OUTPUT_FUNCTION_SERVO2) | Servo 2 | +| 35 | [ACTUATOR_OUTPUT_FUNCTION_SERVO3](#ACTUATOR_OUTPUT_FUNCTION_SERVO3) | Servo 3 | +| 36 | [ACTUATOR_OUTPUT_FUNCTION_SERVO4](#ACTUATOR_OUTPUT_FUNCTION_SERVO4) | Servo 4 | +| 37 | [ACTUATOR_OUTPUT_FUNCTION_SERVO5](#ACTUATOR_OUTPUT_FUNCTION_SERVO5) | Servo 5 | +| 38 | [ACTUATOR_OUTPUT_FUNCTION_SERVO6](#ACTUATOR_OUTPUT_FUNCTION_SERVO6) | Servo 6 | +| 39 | [ACTUATOR_OUTPUT_FUNCTION_SERVO7](#ACTUATOR_OUTPUT_FUNCTION_SERVO7) | Servo 7 | +| 40 | [ACTUATOR_OUTPUT_FUNCTION_SERVO8](#ACTUATOR_OUTPUT_FUNCTION_SERVO8) | Servo 8 | +| 41 | [ACTUATOR_OUTPUT_FUNCTION_SERVO9](#ACTUATOR_OUTPUT_FUNCTION_SERVO9) | Servo 9 | +| 42 | [ACTUATOR_OUTPUT_FUNCTION_SERVO10](#ACTUATOR_OUTPUT_FUNCTION_SERVO10) | Servo 10 | +| 43 | [ACTUATOR_OUTPUT_FUNCTION_SERVO11](#ACTUATOR_OUTPUT_FUNCTION_SERVO11) | Servo 11 | +| 44 | [ACTUATOR_OUTPUT_FUNCTION_SERVO12](#ACTUATOR_OUTPUT_FUNCTION_SERVO12) | Servo 12 | +| 45 | [ACTUATOR_OUTPUT_FUNCTION_SERVO13](#ACTUATOR_OUTPUT_FUNCTION_SERVO13) | Servo 13 | +| 46 | [ACTUATOR_OUTPUT_FUNCTION_SERVO14](#ACTUATOR_OUTPUT_FUNCTION_SERVO14) | Servo 14 | +| 47 | [ACTUATOR_OUTPUT_FUNCTION_SERVO15](#ACTUATOR_OUTPUT_FUNCTION_SERVO15) | Servo 15 | +| 48 | [ACTUATOR_OUTPUT_FUNCTION_SERVO16](#ACTUATOR_OUTPUT_FUNCTION_SERVO16) | Servo 16 | ### AUTOTUNE_AXIS {#AUTOTUNE_AXIS} @@ -4600,87 +4365,87 @@ Value | Name | Description Note that at least one flag must be set in [MAV_CMD_DO_AUTOTUNE_ENABLE](#MAV_CMD_DO_AUTOTUNE_ENABLE).param2: if none are set, the flight stack will tune its default set of axes. -Value | Name | Description ---- | --- | --- -1 | [AUTOTUNE_AXIS_ROLL](#AUTOTUNE_AXIS_ROLL) | Autotune roll axis. -2 | [AUTOTUNE_AXIS_PITCH](#AUTOTUNE_AXIS_PITCH) | Autotune pitch axis. -4 | [AUTOTUNE_AXIS_YAW](#AUTOTUNE_AXIS_YAW) | Autotune yaw axis. +| Value | Name | Description | +| --------------------------------- | ------------------------------------------- | -------------------- | +| 1 | [AUTOTUNE_AXIS_ROLL](#AUTOTUNE_AXIS_ROLL) | Autotune roll axis. | +| 2 | [AUTOTUNE_AXIS_PITCH](#AUTOTUNE_AXIS_PITCH) | Autotune pitch axis. | +| 4 | [AUTOTUNE_AXIS_YAW](#AUTOTUNE_AXIS_YAW) | Autotune yaw axis. | ### PREFLIGHT_STORAGE_PARAMETER_ACTION {#PREFLIGHT_STORAGE_PARAMETER_ACTION} Actions for reading/writing parameters between persistent and volatile storage when using [MAV_CMD_PREFLIGHT_STORAGE](#MAV_CMD_PREFLIGHT_STORAGE). (Commonly parameters are loaded from persistent storage (flash/EEPROM) into volatile storage (RAM) on startup and written back when they are changed.) -Value | Name | Description ---- | --- | --- -0 | [PARAM_READ_PERSISTENT](#PARAM_READ_PERSISTENT) | Read all parameters from persistent storage. Replaces values in volatile storage. -1 | [PARAM_WRITE_PERSISTENT](#PARAM_WRITE_PERSISTENT) | Write all parameter values to persistent storage (flash/EEPROM) -2 | [PARAM_RESET_FACTORY_DEFAULT](#PARAM_RESET_FACTORY_DEFAULT) | Reset parameters to default values (such as sensor calibration, safety settings, and so on). Note that a flight stack may choose not to reset some parameters at their own discretion (such as those that are locked or expected to persist for the vehicle lifetime). -3 | [PARAM_RESET_SENSOR_DEFAULT](#PARAM_RESET_SENSOR_DEFAULT) | Reset only sensor calibration parameters to factory defaults (or firmware default if not available) -4 | [PARAM_RESET_ALL_DEFAULT](#PARAM_RESET_ALL_DEFAULT) | Reset all parameters to default values. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [PARAM_READ_PERSISTENT](#PARAM_READ_PERSISTENT) | Read all parameters from persistent storage. Replaces values in volatile storage. | +| 1 | [PARAM_WRITE_PERSISTENT](#PARAM_WRITE_PERSISTENT) | Write all parameter values to persistent storage (flash/EEPROM) | +| 2 | [PARAM_RESET_FACTORY_DEFAULT](#PARAM_RESET_FACTORY_DEFAULT) | Reset parameters to default values (such as sensor calibration, safety settings, and so on). Note that a flight stack may choose not to reset some parameters at their own discretion (such as those that are locked or expected to persist for the vehicle lifetime). | +| 3 | [PARAM_RESET_SENSOR_DEFAULT](#PARAM_RESET_SENSOR_DEFAULT) | Reset only sensor calibration parameters to factory defaults (or firmware default if not available) | +| 4 | [PARAM_RESET_ALL_DEFAULT](#PARAM_RESET_ALL_DEFAULT) | Reset all parameters to default values. | ### PREFLIGHT_STORAGE_MISSION_ACTION {#PREFLIGHT_STORAGE_MISSION_ACTION} Actions for reading and writing plan information (mission, rally points, geofence) between persistent and volatile storage when using [MAV_CMD_PREFLIGHT_STORAGE](#MAV_CMD_PREFLIGHT_STORAGE). (Commonly missions are loaded from persistent storage (flash/EEPROM) into volatile storage (RAM) on startup and written back when they are changed.) -Value | Name | Description ---- | --- | --- -0 | [MISSION_READ_PERSISTENT](#MISSION_READ_PERSISTENT) | Read current mission data from persistent storage -1 | [MISSION_WRITE_PERSISTENT](#MISSION_WRITE_PERSISTENT) | Write current mission data to persistent storage -2 | [MISSION_RESET_DEFAULT](#MISSION_RESET_DEFAULT) | Erase all mission data stored on the vehicle (both persistent and volatile storage) +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------------------------------------- | +| 0 | [MISSION_READ_PERSISTENT](#MISSION_READ_PERSISTENT) | Read current mission data from persistent storage | +| 1 | [MISSION_WRITE_PERSISTENT](#MISSION_WRITE_PERSISTENT) | Write current mission data to persistent storage | +| 2 | [MISSION_RESET_DEFAULT](#MISSION_RESET_DEFAULT) | Erase all mission data stored on the vehicle (both persistent and volatile storage) | ### REBOOT_SHUTDOWN_ACTION {#REBOOT_SHUTDOWN_ACTION} Reboot/shutdown action for selected component in [MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN](#MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN). -Value | Name | Description ---- | --- | --- -0 | [REBOOT_SHUTDOWN_ACTION_NONE](#REBOOT_SHUTDOWN_ACTION_NONE) | Do nothing. -1 | [REBOOT_SHUTDOWN_ACTION_REBOOT](#REBOOT_SHUTDOWN_ACTION_REBOOT) | Reboot component. -2 | [REBOOT_SHUTDOWN_ACTION_SHUTDOWN](#REBOOT_SHUTDOWN_ACTION_SHUTDOWN) | Shutdown component. -3 | [REBOOT_SHUTDOWN_ACTION_REBOOT_TO_BOOTLOADER](#REBOOT_SHUTDOWN_ACTION_REBOOT_TO_BOOTLOADER) | Reboot component and keep it in the bootloader until upgraded. -4 | [REBOOT_SHUTDOWN_ACTION_POWER_ON](#REBOOT_SHUTDOWN_ACTION_POWER_ON) | Power on component. Do nothing if component is already powered (ACK command with [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED)). +| Value | Name | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [REBOOT_SHUTDOWN_ACTION_NONE](#REBOOT_SHUTDOWN_ACTION_NONE) | Do nothing. | +| 1 | [REBOOT_SHUTDOWN_ACTION_REBOOT](#REBOOT_SHUTDOWN_ACTION_REBOOT) | Reboot component. | +| 2 | [REBOOT_SHUTDOWN_ACTION_SHUTDOWN](#REBOOT_SHUTDOWN_ACTION_SHUTDOWN) | Shutdown component. | +| 3 | [REBOOT_SHUTDOWN_ACTION_REBOOT_TO_BOOTLOADER](#REBOOT_SHUTDOWN_ACTION_REBOOT_TO_BOOTLOADER) | Reboot component and keep it in the bootloader until upgraded. | +| 4 | [REBOOT_SHUTDOWN_ACTION_POWER_ON](#REBOOT_SHUTDOWN_ACTION_POWER_ON) | Power on component. Do nothing if component is already powered (ACK command with [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED)). | ### REBOOT_SHUTDOWN_CONDITIONS {#REBOOT_SHUTDOWN_CONDITIONS} Specifies the conditions under which the [MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN](#MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN) command should be accepted. -Value | Name | Description ---- | --- | --- -0 | [REBOOT_SHUTDOWN_CONDITIONS_SAFETY_INTERLOCKED](#REBOOT_SHUTDOWN_CONDITIONS_SAFETY_INTERLOCKED) | Reboot/Shutdown only if allowed by safety checks, such as being landed. -20190226 | [REBOOT_SHUTDOWN_CONDITIONS_FORCE](#REBOOT_SHUTDOWN_CONDITIONS_FORCE) | Force reboot/shutdown of the autopilot/component regardless of system state. +| Value | Name | Description | +| ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| 0 | [REBOOT_SHUTDOWN_CONDITIONS_SAFETY_INTERLOCKED](#REBOOT_SHUTDOWN_CONDITIONS_SAFETY_INTERLOCKED) | Reboot/Shutdown only if allowed by safety checks, such as being landed. | +| 20190226 | [REBOOT_SHUTDOWN_CONDITIONS_FORCE](#REBOOT_SHUTDOWN_CONDITIONS_FORCE) | Force reboot/shutdown of the autopilot/component regardless of system state. | ### PREFLIGHT_CALIBRATION_MAGNETOMETER {#PREFLIGHT_CALIBRATION_MAGNETOMETER} Action for the magnetometer (param2) of [MAV_CMD_PREFLIGHT_CALIBRATION](#MAV_CMD_PREFLIGHT_CALIBRATION). -Value | Name | Description ---- | --- | --- -0 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_NONE](#PREFLIGHT_CALIBRATION_MAGNETOMETER_NONE) | No action. -1 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_START](#PREFLIGHT_CALIBRATION_MAGNETOMETER_START) | Start magnetometer calibration. -76 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_FORCE_SAVE](#PREFLIGHT_CALIBRATION_MAGNETOMETER_FORCE_SAVE) | Force-accept the existing compass calibration as valid without re-running it. Useful after a parameter reload that cleared calibration validity flags. +| Value | Name | Description | +| ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_NONE](#PREFLIGHT_CALIBRATION_MAGNETOMETER_NONE) | No action. | +| 1 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_START](#PREFLIGHT_CALIBRATION_MAGNETOMETER_START) | Start magnetometer calibration. | +| 76 | [PREFLIGHT_CALIBRATION_MAGNETOMETER_FORCE_SAVE](#PREFLIGHT_CALIBRATION_MAGNETOMETER_FORCE_SAVE) | Force-accept the existing compass calibration as valid without re-running it. Useful after a parameter reload that cleared calibration validity flags. | ### PREFLIGHT_CALIBRATION_ACCELEROMETER {#PREFLIGHT_CALIBRATION_ACCELEROMETER} Action for the accelerometer (param5) of [MAV_CMD_PREFLIGHT_CALIBRATION](#MAV_CMD_PREFLIGHT_CALIBRATION). -Value | Name | Description ---- | --- | --- -0 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_NONE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_NONE) | No action. -1 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_FULL](#PREFLIGHT_CALIBRATION_ACCELEROMETER_FULL) | Full 6-position accelerometer calibration. -2 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_TRIM](#PREFLIGHT_CALIBRATION_ACCELEROMETER_TRIM) | Board level (trim) calibration. -3 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_TEMPERATURE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_TEMPERATURE) | Accelerometer temperature calibration. -4 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_SIMPLE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_SIMPLE) | Simple accelerometer calibration. -76 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_FORCE_SAVE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_FORCE_SAVE) | Force-accept the existing accelerometer calibration as valid without re-running it. Useful after a parameter reload that cleared calibration validity flags. +| Value | Name | Description | +| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_NONE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_NONE) | No action. | +| 1 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_FULL](#PREFLIGHT_CALIBRATION_ACCELEROMETER_FULL) | Full 6-position accelerometer calibration. | +| 2 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_TRIM](#PREFLIGHT_CALIBRATION_ACCELEROMETER_TRIM) | Board level (trim) calibration. | +| 3 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_TEMPERATURE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_TEMPERATURE) | Accelerometer temperature calibration. | +| 4 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_SIMPLE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_SIMPLE) | Simple accelerometer calibration. | +| 76 | [PREFLIGHT_CALIBRATION_ACCELEROMETER_FORCE_SAVE](#PREFLIGHT_CALIBRATION_ACCELEROMETER_FORCE_SAVE) | Force-accept the existing accelerometer calibration as valid without re-running it. Useful after a parameter reload that cleared calibration validity flags. | ### NAV_TAKEOFF_FLAGS {#NAV_TAKEOFF_FLAGS} -(Bitmask) +(Bitmask) -Value | Name | Description ---- | --- | --- -1 | [NAV_TAKEOFF_FLAGS_HORIZONTAL_POSITION_NOT_REQUIRED](#NAV_TAKEOFF_FLAGS_HORIZONTAL_POSITION_NOT_REQUIRED) | Accept the command even if the autopilot does not have control over its horizontal position (note that it might not have altitude control either). +| Value | Name | Description | +| ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [NAV_TAKEOFF_FLAGS_HORIZONTAL_POSITION_NOT_REQUIRED](#NAV_TAKEOFF_FLAGS_HORIZONTAL_POSITION_NOT_REQUIRED) | Accept the command even if the autopilot does not have control over its horizontal position (note that it might not have altitude control either). | ### MAV_DATA_STREAM — [SUP] {#MAV_DATA_STREAM} @@ -4691,17 +4456,17 @@ 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. -Value | Name | Description ---- | --- | --- -0 | [MAV_DATA_STREAM_ALL](#MAV_DATA_STREAM_ALL) | Enable all data streams -1 | [MAV_DATA_STREAM_RAW_SENSORS](#MAV_DATA_STREAM_RAW_SENSORS) | Enable [IMU_RAW](#IMU_RAW), [GPS_RAW](#GPS_RAW), [GPS_STATUS](#GPS_STATUS) packets. -2 | [MAV_DATA_STREAM_EXTENDED_STATUS](#MAV_DATA_STREAM_EXTENDED_STATUS) | Enable [GPS_STATUS](#GPS_STATUS), [CONTROL_STATUS](#CONTROL_STATUS), [AUX_STATUS](#AUX_STATUS) -3 | [MAV_DATA_STREAM_RC_CHANNELS](#MAV_DATA_STREAM_RC_CHANNELS) | Enable [RC_CHANNELS_SCALED](#RC_CHANNELS_SCALED), [RC_CHANNELS_RAW](#RC_CHANNELS_RAW), [SERVO_OUTPUT_RAW](#SERVO_OUTPUT_RAW) -4 | [MAV_DATA_STREAM_RAW_CONTROLLER](#MAV_DATA_STREAM_RAW_CONTROLLER) | Enable [ATTITUDE_CONTROLLER_OUTPUT](#ATTITUDE_CONTROLLER_OUTPUT), [POSITION_CONTROLLER_OUTPUT](#POSITION_CONTROLLER_OUTPUT), [NAV_CONTROLLER_OUTPUT](#NAV_CONTROLLER_OUTPUT). -6 | [MAV_DATA_STREAM_POSITION](#MAV_DATA_STREAM_POSITION) | Enable [LOCAL_POSITION](#LOCAL_POSITION), [GLOBAL_POSITION_INT](#GLOBAL_POSITION_INT) messages. -10 | [MAV_DATA_STREAM_EXTRA1](#MAV_DATA_STREAM_EXTRA1) | Dependent on the autopilot -11 | [MAV_DATA_STREAM_EXTRA2](#MAV_DATA_STREAM_EXTRA2) | Dependent on the autopilot -12 | [MAV_DATA_STREAM_EXTRA3](#MAV_DATA_STREAM_EXTRA3) | Dependent on the autopilot +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_DATA_STREAM_ALL](#MAV_DATA_STREAM_ALL) | Enable all data streams | +| 1 | [MAV_DATA_STREAM_RAW_SENSORS](#MAV_DATA_STREAM_RAW_SENSORS) | Enable [IMU_RAW](#IMU_RAW), [GPS_RAW](#GPS_RAW), [GPS_STATUS](#GPS_STATUS) packets. | +| 2 | [MAV_DATA_STREAM_EXTENDED_STATUS](#MAV_DATA_STREAM_EXTENDED_STATUS) | Enable [GPS_STATUS](#GPS_STATUS), [CONTROL_STATUS](#CONTROL_STATUS), [AUX_STATUS](#AUX_STATUS) | +| 3 | [MAV_DATA_STREAM_RC_CHANNELS](#MAV_DATA_STREAM_RC_CHANNELS) | Enable [RC_CHANNELS_SCALED](#RC_CHANNELS_SCALED), [RC_CHANNELS_RAW](#RC_CHANNELS_RAW), [SERVO_OUTPUT_RAW](#SERVO_OUTPUT_RAW) | +| 4 | [MAV_DATA_STREAM_RAW_CONTROLLER](#MAV_DATA_STREAM_RAW_CONTROLLER) | Enable [ATTITUDE_CONTROLLER_OUTPUT](#ATTITUDE_CONTROLLER_OUTPUT), [POSITION_CONTROLLER_OUTPUT](#POSITION_CONTROLLER_OUTPUT), [NAV_CONTROLLER_OUTPUT](#NAV_CONTROLLER_OUTPUT). | +| 6 | [MAV_DATA_STREAM_POSITION](#MAV_DATA_STREAM_POSITION) | Enable [LOCAL_POSITION](#LOCAL_POSITION), [GLOBAL_POSITION_INT](#GLOBAL_POSITION_INT) messages. | +| 10 | [MAV_DATA_STREAM_EXTRA1](#MAV_DATA_STREAM_EXTRA1) | Dependent on the autopilot | +| 11 | [MAV_DATA_STREAM_EXTRA2](#MAV_DATA_STREAM_EXTRA2) | Dependent on the autopilot | +| 12 | [MAV_DATA_STREAM_EXTRA3](#MAV_DATA_STREAM_EXTRA3) | Dependent on the autopilot | ### MAV_ROI — [SUP] {#MAV_ROI} @@ -4712,30 +4477,30 @@ 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](#MAV_CMD_NAV_ROI)). -Value | Name | Description ---- | --- | --- -0 | [MAV_ROI_NONE](#MAV_ROI_NONE) | No region of interest. -1 | [MAV_ROI_WPNEXT](#MAV_ROI_WPNEXT) | Point toward next waypoint, with optional pitch/roll/yaw offset. -2 | [MAV_ROI_WPINDEX](#MAV_ROI_WPINDEX) | Point toward given waypoint. -3 | [MAV_ROI_LOCATION](#MAV_ROI_LOCATION) | Point toward fixed location. -4 | [MAV_ROI_TARGET](#MAV_ROI_TARGET) | Point toward of given id. +| Value | Name | Description | +| ------------------------------ | ------------------------------------- | ---------------------------------------------------------------- | +| 0 | [MAV_ROI_NONE](#MAV_ROI_NONE) | No region of interest. | +| 1 | [MAV_ROI_WPNEXT](#MAV_ROI_WPNEXT) | Point toward next waypoint, with optional pitch/roll/yaw offset. | +| 2 | [MAV_ROI_WPINDEX](#MAV_ROI_WPINDEX) | Point toward given waypoint. | +| 3 | [MAV_ROI_LOCATION](#MAV_ROI_LOCATION) | Point toward fixed location. | +| 4 | [MAV_ROI_TARGET](#MAV_ROI_TARGET) | Point toward of given id. | ### MAV_PARAM_TYPE {#MAV_PARAM_TYPE} Specifies the datatype of a MAVLink parameter. -Value | Name | Description ---- | --- | --- -1 | [MAV_PARAM_TYPE_UINT8](#MAV_PARAM_TYPE_UINT8) | 8-bit unsigned integer -2 | [MAV_PARAM_TYPE_INT8](#MAV_PARAM_TYPE_INT8) | 8-bit signed integer -3 | [MAV_PARAM_TYPE_UINT16](#MAV_PARAM_TYPE_UINT16) | 16-bit unsigned integer -4 | [MAV_PARAM_TYPE_INT16](#MAV_PARAM_TYPE_INT16) | 16-bit signed integer -5 | [MAV_PARAM_TYPE_UINT32](#MAV_PARAM_TYPE_UINT32) | 32-bit unsigned integer -6 | [MAV_PARAM_TYPE_INT32](#MAV_PARAM_TYPE_INT32) | 32-bit signed integer -7 | [MAV_PARAM_TYPE_UINT64](#MAV_PARAM_TYPE_UINT64) | 64-bit unsigned integer -8 | [MAV_PARAM_TYPE_INT64](#MAV_PARAM_TYPE_INT64) | 64-bit signed integer -9 | [MAV_PARAM_TYPE_REAL32](#MAV_PARAM_TYPE_REAL32) | 32-bit floating-point -10 | [MAV_PARAM_TYPE_REAL64](#MAV_PARAM_TYPE_REAL64) | 64-bit floating-point +| Value | Name | Description | +| ------------------------------------ | ----------------------------------------------- | ----------------------- | +| 1 | [MAV_PARAM_TYPE_UINT8](#MAV_PARAM_TYPE_UINT8) | 8-bit unsigned integer | +| 2 | [MAV_PARAM_TYPE_INT8](#MAV_PARAM_TYPE_INT8) | 8-bit signed integer | +| 3 | [MAV_PARAM_TYPE_UINT16](#MAV_PARAM_TYPE_UINT16) | 16-bit unsigned integer | +| 4 | [MAV_PARAM_TYPE_INT16](#MAV_PARAM_TYPE_INT16) | 16-bit signed integer | +| 5 | [MAV_PARAM_TYPE_UINT32](#MAV_PARAM_TYPE_UINT32) | 32-bit unsigned integer | +| 6 | [MAV_PARAM_TYPE_INT32](#MAV_PARAM_TYPE_INT32) | 32-bit signed integer | +| 7 | [MAV_PARAM_TYPE_UINT64](#MAV_PARAM_TYPE_UINT64) | 64-bit unsigned integer | +| 8 | [MAV_PARAM_TYPE_INT64](#MAV_PARAM_TYPE_INT64) | 64-bit signed integer | +| 9 | [MAV_PARAM_TYPE_REAL32](#MAV_PARAM_TYPE_REAL32) | 32-bit floating-point | +| 10 | [MAV_PARAM_TYPE_REAL64](#MAV_PARAM_TYPE_REAL64) | 64-bit floating-point | ### MAV_PARAM_ERROR — [WIP] {#MAV_PARAM_ERROR} @@ -4743,1426 +4508,1426 @@ Value | Name | Description Parameter protocol error types (see [PARAM_ERROR](#PARAM_ERROR)). -Value | Name | Description ---- | --- | --- -0 | [MAV_PARAM_ERROR_NO_ERROR](#MAV_PARAM_ERROR_NO_ERROR) | No error occurred (not expected in [PARAM_ERROR](#PARAM_ERROR) but may be used in future implementations. -1 | [MAV_PARAM_ERROR_DOES_NOT_EXIST](#MAV_PARAM_ERROR_DOES_NOT_EXIST) | Parameter does not exist -2 | [MAV_PARAM_ERROR_VALUE_OUT_OF_RANGE](#MAV_PARAM_ERROR_VALUE_OUT_OF_RANGE) | Parameter value does not fit within accepted range -3 | [MAV_PARAM_ERROR_PERMISSION_DENIED](#MAV_PARAM_ERROR_PERMISSION_DENIED) | Caller is not permitted to set the value of this parameter -4 | [MAV_PARAM_ERROR_COMPONENT_NOT_FOUND](#MAV_PARAM_ERROR_COMPONENT_NOT_FOUND) | Unknown component specified -5 | [MAV_PARAM_ERROR_READ_ONLY](#MAV_PARAM_ERROR_READ_ONLY) | Parameter is read-only -6 | [MAV_PARAM_ERROR_TYPE_UNSUPPORTED](#MAV_PARAM_ERROR_TYPE_UNSUPPORTED) | Parameter data type ([MAV_PARAM_TYPE](#MAV_PARAM_TYPE)) is not supported by flight stack (at all) -7 | [MAV_PARAM_ERROR_TYPE_MISMATCH](#MAV_PARAM_ERROR_TYPE_MISMATCH) | Parameter type does not match expected type -8 | [MAV_PARAM_ERROR_READ_FAIL](#MAV_PARAM_ERROR_READ_FAIL) | Parameter exists but reading failed +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_PARAM_ERROR_NO_ERROR](#MAV_PARAM_ERROR_NO_ERROR) | No error occurred (not expected in [PARAM_ERROR](#PARAM_ERROR) but may be used in future implementations. | +| 1 | [MAV_PARAM_ERROR_DOES_NOT_EXIST](#MAV_PARAM_ERROR_DOES_NOT_EXIST) | Parameter does not exist | +| 2 | [MAV_PARAM_ERROR_VALUE_OUT_OF_RANGE](#MAV_PARAM_ERROR_VALUE_OUT_OF_RANGE) | Parameter value does not fit within accepted range | +| 3 | [MAV_PARAM_ERROR_PERMISSION_DENIED](#MAV_PARAM_ERROR_PERMISSION_DENIED) | Caller is not permitted to set the value of this parameter | +| 4 | [MAV_PARAM_ERROR_COMPONENT_NOT_FOUND](#MAV_PARAM_ERROR_COMPONENT_NOT_FOUND) | Unknown component specified | +| 5 | [MAV_PARAM_ERROR_READ_ONLY](#MAV_PARAM_ERROR_READ_ONLY) | Parameter is read-only | +| 6 | [MAV_PARAM_ERROR_TYPE_UNSUPPORTED](#MAV_PARAM_ERROR_TYPE_UNSUPPORTED) | Parameter data type ([MAV_PARAM_TYPE](#MAV_PARAM_TYPE)) is not supported by flight stack (at all) | +| 7 | [MAV_PARAM_ERROR_TYPE_MISMATCH](#MAV_PARAM_ERROR_TYPE_MISMATCH) | Parameter type does not match expected type | +| 8 | [MAV_PARAM_ERROR_READ_FAIL](#MAV_PARAM_ERROR_READ_FAIL) | Parameter exists but reading failed | ### MAV_PARAM_EXT_TYPE {#MAV_PARAM_EXT_TYPE} Specifies the datatype of a MAVLink extended parameter. -Value | Name | Description ---- | --- | --- -1 | [MAV_PARAM_EXT_TYPE_UINT8](#MAV_PARAM_EXT_TYPE_UINT8) | 8-bit unsigned integer -2 | [MAV_PARAM_EXT_TYPE_INT8](#MAV_PARAM_EXT_TYPE_INT8) | 8-bit signed integer -3 | [MAV_PARAM_EXT_TYPE_UINT16](#MAV_PARAM_EXT_TYPE_UINT16) | 16-bit unsigned integer -4 | [MAV_PARAM_EXT_TYPE_INT16](#MAV_PARAM_EXT_TYPE_INT16) | 16-bit signed integer -5 | [MAV_PARAM_EXT_TYPE_UINT32](#MAV_PARAM_EXT_TYPE_UINT32) | 32-bit unsigned integer -6 | [MAV_PARAM_EXT_TYPE_INT32](#MAV_PARAM_EXT_TYPE_INT32) | 32-bit signed integer -7 | [MAV_PARAM_EXT_TYPE_UINT64](#MAV_PARAM_EXT_TYPE_UINT64) | 64-bit unsigned integer -8 | [MAV_PARAM_EXT_TYPE_INT64](#MAV_PARAM_EXT_TYPE_INT64) | 64-bit signed integer -9 | [MAV_PARAM_EXT_TYPE_REAL32](#MAV_PARAM_EXT_TYPE_REAL32) | 32-bit floating-point -10 | [MAV_PARAM_EXT_TYPE_REAL64](#MAV_PARAM_EXT_TYPE_REAL64) | 64-bit floating-point -11 | [MAV_PARAM_EXT_TYPE_CUSTOM](#MAV_PARAM_EXT_TYPE_CUSTOM) | Custom Type +| Value | Name | Description | +| ---------------------------------------- | ------------------------------------------------------- | ----------------------- | +| 1 | [MAV_PARAM_EXT_TYPE_UINT8](#MAV_PARAM_EXT_TYPE_UINT8) | 8-bit unsigned integer | +| 2 | [MAV_PARAM_EXT_TYPE_INT8](#MAV_PARAM_EXT_TYPE_INT8) | 8-bit signed integer | +| 3 | [MAV_PARAM_EXT_TYPE_UINT16](#MAV_PARAM_EXT_TYPE_UINT16) | 16-bit unsigned integer | +| 4 | [MAV_PARAM_EXT_TYPE_INT16](#MAV_PARAM_EXT_TYPE_INT16) | 16-bit signed integer | +| 5 | [MAV_PARAM_EXT_TYPE_UINT32](#MAV_PARAM_EXT_TYPE_UINT32) | 32-bit unsigned integer | +| 6 | [MAV_PARAM_EXT_TYPE_INT32](#MAV_PARAM_EXT_TYPE_INT32) | 32-bit signed integer | +| 7 | [MAV_PARAM_EXT_TYPE_UINT64](#MAV_PARAM_EXT_TYPE_UINT64) | 64-bit unsigned integer | +| 8 | [MAV_PARAM_EXT_TYPE_INT64](#MAV_PARAM_EXT_TYPE_INT64) | 64-bit signed integer | +| 9 | [MAV_PARAM_EXT_TYPE_REAL32](#MAV_PARAM_EXT_TYPE_REAL32) | 32-bit floating-point | +| 10 | [MAV_PARAM_EXT_TYPE_REAL64](#MAV_PARAM_EXT_TYPE_REAL64) | 64-bit floating-point | +| 11 | [MAV_PARAM_EXT_TYPE_CUSTOM](#MAV_PARAM_EXT_TYPE_CUSTOM) | Custom Type | ### MAV_RESULT {#MAV_RESULT} Result from a MAVLink command ([MAV_CMD](#mav_commands)) -Value | Name | Description ---- | --- | --- -0 | [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED) | Command is valid (is supported and has valid parameters), and was executed. -1 | [MAV_RESULT_TEMPORARILY_REJECTED](#MAV_RESULT_TEMPORARILY_REJECTED) | Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. -2 | [MAV_RESULT_DENIED](#MAV_RESULT_DENIED) | Command is invalid; it is supported but one or more parameter values are invalid (i.e. parameter reserved, value allowed by spec but not supported by flight stack, and so on). Retrying the same command and parameters will not work. -3 | [MAV_RESULT_UNSUPPORTED](#MAV_RESULT_UNSUPPORTED) | Command is not supported (unknown). -4 | [MAV_RESULT_FAILED](#MAV_RESULT_FAILED) | Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. -5 | [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS) | Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further [COMMAND_ACK](#COMMAND_ACK) messages with result [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS) (at a rate decided by the implementation), and must terminate by sending a [COMMAND_ACK](#COMMAND_ACK) message with final result of the operation. The [COMMAND_ACK](#COMMAND_ACK).progress field can be used to indicate the progress of the operation. -6 | [MAV_RESULT_CANCELLED](#MAV_RESULT_CANCELLED) | Command has been cancelled (as a result of receiving a [COMMAND_CANCEL](#COMMAND_CANCEL) message). -7 | [MAV_RESULT_COMMAND_LONG_ONLY](#MAV_RESULT_COMMAND_LONG_ONLY) | Command is only accepted when sent as a [COMMAND_LONG](#COMMAND_LONG). -8 | [MAV_RESULT_COMMAND_INT_ONLY](#MAV_RESULT_COMMAND_INT_ONLY) | Command is only accepted when sent as a [COMMAND_INT](#COMMAND_INT). -9 | [MAV_RESULT_COMMAND_UNSUPPORTED_MAV_FRAME](#MAV_RESULT_COMMAND_UNSUPPORTED_MAV_FRAME) | Command is invalid because a frame is required and the specified frame is not supported. -10 | [MAV_RESULT_NOT_IN_CONTROL](#MAV_RESULT_NOT_IN_CONTROL) | Command has been rejected because source system is not in control of the target system/component.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED) | Command is valid (is supported and has valid parameters), and was executed. | +| 1 | [MAV_RESULT_TEMPORARILY_REJECTED](#MAV_RESULT_TEMPORARILY_REJECTED) | Command is valid, but cannot be executed at this time. This is used to indicate a problem that should be fixed just by waiting (e.g. a state machine is busy, can't arm because have not got GPS lock, etc.). Retrying later should work. | +| 2 | [MAV_RESULT_DENIED](#MAV_RESULT_DENIED) | Command is invalid; it is supported but one or more parameter values are invalid (i.e. parameter reserved, value allowed by spec but not supported by flight stack, and so on). Retrying the same command and parameters will not work. | +| 3 | [MAV_RESULT_UNSUPPORTED](#MAV_RESULT_UNSUPPORTED) | Command is not supported (unknown). | +| 4 | [MAV_RESULT_FAILED](#MAV_RESULT_FAILED) | Command is valid, but execution has failed. This is used to indicate any non-temporary or unexpected problem, i.e. any problem that must be fixed before the command can succeed/be retried. For example, attempting to write a file when out of memory, attempting to arm when sensors are not calibrated, etc. | +| 5 | [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS) | Command is valid and is being executed. This will be followed by further progress updates, i.e. the component may send further [COMMAND_ACK](#COMMAND_ACK) messages with result [MAV_RESULT_IN_PROGRESS](#MAV_RESULT_IN_PROGRESS) (at a rate decided by the implementation), and must terminate by sending a [COMMAND_ACK](#COMMAND_ACK) message with final result of the operation. The [COMMAND_ACK](#COMMAND_ACK).progress field can be used to indicate the progress of the operation. | +| 6 | [MAV_RESULT_CANCELLED](#MAV_RESULT_CANCELLED) | Command has been cancelled (as a result of receiving a [COMMAND_CANCEL](#COMMAND_CANCEL) message). | +| 7 | [MAV_RESULT_COMMAND_LONG_ONLY](#MAV_RESULT_COMMAND_LONG_ONLY) | Command is only accepted when sent as a [COMMAND_LONG](#COMMAND_LONG). | +| 8 | [MAV_RESULT_COMMAND_INT_ONLY](#MAV_RESULT_COMMAND_INT_ONLY) | Command is only accepted when sent as a [COMMAND_INT](#COMMAND_INT). | +| 9 | [MAV_RESULT_COMMAND_UNSUPPORTED_MAV_FRAME](#MAV_RESULT_COMMAND_UNSUPPORTED_MAV_FRAME) | Command is invalid because a frame is required and the specified frame is not supported. | +| 10 | [MAV_RESULT_NOT_IN_CONTROL](#MAV_RESULT_NOT_IN_CONTROL) | Command has been rejected because source system is not in control of the target system/component.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | ### MAV_MISSION_RESULT {#MAV_MISSION_RESULT} Result of mission operation (in a [MISSION_ACK](#MISSION_ACK) message). -Value | Name | Description ---- | --- | --- -0 | [MAV_MISSION_ACCEPTED](#MAV_MISSION_ACCEPTED) | mission accepted OK -1 | [MAV_MISSION_ERROR](#MAV_MISSION_ERROR) | Generic error / not accepting mission commands at all right now. -2 | [MAV_MISSION_UNSUPPORTED_FRAME](#MAV_MISSION_UNSUPPORTED_FRAME) | Coordinate frame is not supported. -3 | [MAV_MISSION_UNSUPPORTED](#MAV_MISSION_UNSUPPORTED) | Command is not supported. -4 | [MAV_MISSION_NO_SPACE](#MAV_MISSION_NO_SPACE) | Mission items exceed storage space. -5 | [MAV_MISSION_INVALID](#MAV_MISSION_INVALID) | One of the parameters has an invalid value. -6 | [MAV_MISSION_INVALID_PARAM1](#MAV_MISSION_INVALID_PARAM1) | param1 has an invalid value. -7 | [MAV_MISSION_INVALID_PARAM2](#MAV_MISSION_INVALID_PARAM2) | param2 has an invalid value. -8 | [MAV_MISSION_INVALID_PARAM3](#MAV_MISSION_INVALID_PARAM3) | param3 has an invalid value. -9 | [MAV_MISSION_INVALID_PARAM4](#MAV_MISSION_INVALID_PARAM4) | param4 has an invalid value. -10 | [MAV_MISSION_INVALID_PARAM5_X](#MAV_MISSION_INVALID_PARAM5_X) | x / param5 has an invalid value. -11 | [MAV_MISSION_INVALID_PARAM6_Y](#MAV_MISSION_INVALID_PARAM6_Y) | y / param6 has an invalid value. -12 | [MAV_MISSION_INVALID_PARAM7](#MAV_MISSION_INVALID_PARAM7) | z / param7 has an invalid value. -13 | [MAV_MISSION_INVALID_SEQUENCE](#MAV_MISSION_INVALID_SEQUENCE) | Mission item received out of sequence -14 | [MAV_MISSION_DENIED](#MAV_MISSION_DENIED) | Not accepting any mission commands from this communication partner. -15 | [MAV_MISSION_OPERATION_CANCELLED](#MAV_MISSION_OPERATION_CANCELLED) | Current mission operation cancelled (e.g. mission upload, mission download). +| Value | Name | Description | +| ---------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| 0 | [MAV_MISSION_ACCEPTED](#MAV_MISSION_ACCEPTED) | mission accepted OK | +| 1 | [MAV_MISSION_ERROR](#MAV_MISSION_ERROR) | Generic error / not accepting mission commands at all right now. | +| 2 | [MAV_MISSION_UNSUPPORTED_FRAME](#MAV_MISSION_UNSUPPORTED_FRAME) | Coordinate frame is not supported. | +| 3 | [MAV_MISSION_UNSUPPORTED](#MAV_MISSION_UNSUPPORTED) | Command is not supported. | +| 4 | [MAV_MISSION_NO_SPACE](#MAV_MISSION_NO_SPACE) | Mission items exceed storage space. | +| 5 | [MAV_MISSION_INVALID](#MAV_MISSION_INVALID) | One of the parameters has an invalid value. | +| 6 | [MAV_MISSION_INVALID_PARAM1](#MAV_MISSION_INVALID_PARAM1) | param1 has an invalid value. | +| 7 | [MAV_MISSION_INVALID_PARAM2](#MAV_MISSION_INVALID_PARAM2) | param2 has an invalid value. | +| 8 | [MAV_MISSION_INVALID_PARAM3](#MAV_MISSION_INVALID_PARAM3) | param3 has an invalid value. | +| 9 | [MAV_MISSION_INVALID_PARAM4](#MAV_MISSION_INVALID_PARAM4) | param4 has an invalid value. | +| 10 | [MAV_MISSION_INVALID_PARAM5_X](#MAV_MISSION_INVALID_PARAM5_X) | x / param5 has an invalid value. | +| 11 | [MAV_MISSION_INVALID_PARAM6_Y](#MAV_MISSION_INVALID_PARAM6_Y) | y / param6 has an invalid value. | +| 12 | [MAV_MISSION_INVALID_PARAM7](#MAV_MISSION_INVALID_PARAM7) | z / param7 has an invalid value. | +| 13 | [MAV_MISSION_INVALID_SEQUENCE](#MAV_MISSION_INVALID_SEQUENCE) | Mission item received out of sequence | +| 14 | [MAV_MISSION_DENIED](#MAV_MISSION_DENIED) | Not accepting any mission commands from this communication partner. | +| 15 | [MAV_MISSION_OPERATION_CANCELLED](#MAV_MISSION_OPERATION_CANCELLED) | Current mission operation cancelled (e.g. mission upload, mission download). | ### MAV_SEVERITY {#MAV_SEVERITY} 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/. -Value | Name | Description ---- | --- | --- -0 | [MAV_SEVERITY_EMERGENCY](#MAV_SEVERITY_EMERGENCY) | System is unusable. This is a "panic" condition. -1 | [MAV_SEVERITY_ALERT](#MAV_SEVERITY_ALERT) | Action should be taken immediately. Indicates error in non-critical systems. -2 | [MAV_SEVERITY_CRITICAL](#MAV_SEVERITY_CRITICAL) | Action must be taken immediately. Indicates failure in a primary system. -3 | [MAV_SEVERITY_ERROR](#MAV_SEVERITY_ERROR) | Indicates an error in secondary/redundant systems. -4 | [MAV_SEVERITY_WARNING](#MAV_SEVERITY_WARNING) | Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. -5 | [MAV_SEVERITY_NOTICE](#MAV_SEVERITY_NOTICE) | An unusual event has occurred, though not an error condition. This should be investigated for the root cause. -6 | [MAV_SEVERITY_INFO](#MAV_SEVERITY_INFO) | Normal operational messages. Useful for logging. No action is required for these messages. -7 | [MAV_SEVERITY_DEBUG](#MAV_SEVERITY_DEBUG) | Useful non-operational messages that can assist in debugging. These should not occur during normal operation. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_SEVERITY_EMERGENCY](#MAV_SEVERITY_EMERGENCY) | System is unusable. This is a "panic" condition. | +| 1 | [MAV_SEVERITY_ALERT](#MAV_SEVERITY_ALERT) | Action should be taken immediately. Indicates error in non-critical systems. | +| 2 | [MAV_SEVERITY_CRITICAL](#MAV_SEVERITY_CRITICAL) | Action must be taken immediately. Indicates failure in a primary system. | +| 3 | [MAV_SEVERITY_ERROR](#MAV_SEVERITY_ERROR) | Indicates an error in secondary/redundant systems. | +| 4 | [MAV_SEVERITY_WARNING](#MAV_SEVERITY_WARNING) | Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. | +| 5 | [MAV_SEVERITY_NOTICE](#MAV_SEVERITY_NOTICE) | An unusual event has occurred, though not an error condition. This should be investigated for the root cause. | +| 6 | [MAV_SEVERITY_INFO](#MAV_SEVERITY_INFO) | Normal operational messages. Useful for logging. No action is required for these messages. | +| 7 | [MAV_SEVERITY_DEBUG](#MAV_SEVERITY_DEBUG) | Useful non-operational messages that can assist in debugging. These should not occur during normal operation. | ### MAV_POWER_STATUS {#MAV_POWER_STATUS} (Bitmask) Power supply status flags (bitmask) -Value | Name | Description ---- | --- | --- -1 | [MAV_POWER_STATUS_BRICK_VALID](#MAV_POWER_STATUS_BRICK_VALID) | main brick power supply valid -2 | [MAV_POWER_STATUS_SERVO_VALID](#MAV_POWER_STATUS_SERVO_VALID) | main servo power supply valid for FMU -4 | [MAV_POWER_STATUS_USB_CONNECTED](#MAV_POWER_STATUS_USB_CONNECTED) | USB power is connected -8 | [MAV_POWER_STATUS_PERIPH_OVERCURRENT](#MAV_POWER_STATUS_PERIPH_OVERCURRENT) | peripheral supply is in over-current state -16 | [MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT](#MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT) | hi-power peripheral supply is in over-current state -32 | [MAV_POWER_STATUS_CHANGED](#MAV_POWER_STATUS_CHANGED) | Power status has changed since boot +| Value | Name | Description | +| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------- | --------------------------------------------------- | +| 1 | [MAV_POWER_STATUS_BRICK_VALID](#MAV_POWER_STATUS_BRICK_VALID) | main brick power supply valid | +| 2 | [MAV_POWER_STATUS_SERVO_VALID](#MAV_POWER_STATUS_SERVO_VALID) | main servo power supply valid for FMU | +| 4 | [MAV_POWER_STATUS_USB_CONNECTED](#MAV_POWER_STATUS_USB_CONNECTED) | USB power is connected | +| 8 | [MAV_POWER_STATUS_PERIPH_OVERCURRENT](#MAV_POWER_STATUS_PERIPH_OVERCURRENT) | peripheral supply is in over-current state | +| 16 | [MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT](#MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT) | hi-power peripheral supply is in over-current state | +| 32 | [MAV_POWER_STATUS_CHANGED](#MAV_POWER_STATUS_CHANGED) | Power status has changed since boot | ### SERIAL_CONTROL_DEV {#SERIAL_CONTROL_DEV} [SERIAL_CONTROL](#SERIAL_CONTROL) device types -Value | Name | Description ---- | --- | --- -0 | [SERIAL_CONTROL_DEV_TELEM1](#SERIAL_CONTROL_DEV_TELEM1) | First telemetry port -1 | [SERIAL_CONTROL_DEV_TELEM2](#SERIAL_CONTROL_DEV_TELEM2) | Second telemetry port -2 | [SERIAL_CONTROL_DEV_GPS1](#SERIAL_CONTROL_DEV_GPS1) | First GPS port -3 | [SERIAL_CONTROL_DEV_GPS2](#SERIAL_CONTROL_DEV_GPS2) | Second GPS port -10 | [SERIAL_CONTROL_DEV_SHELL](#SERIAL_CONTROL_DEV_SHELL) | system shell -100 | [SERIAL_CONTROL_SERIAL0](#SERIAL_CONTROL_SERIAL0) | SERIAL0 -101 | [SERIAL_CONTROL_SERIAL1](#SERIAL_CONTROL_SERIAL1) | SERIAL1 -102 | [SERIAL_CONTROL_SERIAL2](#SERIAL_CONTROL_SERIAL2) | SERIAL2 -103 | [SERIAL_CONTROL_SERIAL3](#SERIAL_CONTROL_SERIAL3) | SERIAL3 -104 | [SERIAL_CONTROL_SERIAL4](#SERIAL_CONTROL_SERIAL4) | SERIAL4 -105 | [SERIAL_CONTROL_SERIAL5](#SERIAL_CONTROL_SERIAL5) | SERIAL5 -106 | [SERIAL_CONTROL_SERIAL6](#SERIAL_CONTROL_SERIAL6) | SERIAL6 -107 | [SERIAL_CONTROL_SERIAL7](#SERIAL_CONTROL_SERIAL7) | SERIAL7 -108 | [SERIAL_CONTROL_SERIAL8](#SERIAL_CONTROL_SERIAL8) | SERIAL8 -109 | [SERIAL_CONTROL_SERIAL9](#SERIAL_CONTROL_SERIAL9) | SERIAL9 +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | --------------------- | +| 0 | [SERIAL_CONTROL_DEV_TELEM1](#SERIAL_CONTROL_DEV_TELEM1) | First telemetry port | +| 1 | [SERIAL_CONTROL_DEV_TELEM2](#SERIAL_CONTROL_DEV_TELEM2) | Second telemetry port | +| 2 | [SERIAL_CONTROL_DEV_GPS1](#SERIAL_CONTROL_DEV_GPS1) | First GPS port | +| 3 | [SERIAL_CONTROL_DEV_GPS2](#SERIAL_CONTROL_DEV_GPS2) | Second GPS port | +| 10 | [SERIAL_CONTROL_DEV_SHELL](#SERIAL_CONTROL_DEV_SHELL) | system shell | +| 100 | [SERIAL_CONTROL_SERIAL0](#SERIAL_CONTROL_SERIAL0) | SERIAL0 | +| 101 | [SERIAL_CONTROL_SERIAL1](#SERIAL_CONTROL_SERIAL1) | SERIAL1 | +| 102 | [SERIAL_CONTROL_SERIAL2](#SERIAL_CONTROL_SERIAL2) | SERIAL2 | +| 103 | [SERIAL_CONTROL_SERIAL3](#SERIAL_CONTROL_SERIAL3) | SERIAL3 | +| 104 | [SERIAL_CONTROL_SERIAL4](#SERIAL_CONTROL_SERIAL4) | SERIAL4 | +| 105 | [SERIAL_CONTROL_SERIAL5](#SERIAL_CONTROL_SERIAL5) | SERIAL5 | +| 106 | [SERIAL_CONTROL_SERIAL6](#SERIAL_CONTROL_SERIAL6) | SERIAL6 | +| 107 | [SERIAL_CONTROL_SERIAL7](#SERIAL_CONTROL_SERIAL7) | SERIAL7 | +| 108 | [SERIAL_CONTROL_SERIAL8](#SERIAL_CONTROL_SERIAL8) | SERIAL8 | +| 109 | [SERIAL_CONTROL_SERIAL9](#SERIAL_CONTROL_SERIAL9) | SERIAL9 | ### SERIAL_CONTROL_FLAG {#SERIAL_CONTROL_FLAG} (Bitmask) [SERIAL_CONTROL](#SERIAL_CONTROL) flags (bitmask) -Value | Name | Description ---- | --- | --- -1 | [SERIAL_CONTROL_FLAG_REPLY](#SERIAL_CONTROL_FLAG_REPLY) | Set if this is a reply -2 | [SERIAL_CONTROL_FLAG_RESPOND](#SERIAL_CONTROL_FLAG_RESPOND) | Set if the sender wants the receiver to send a response as another [SERIAL_CONTROL](#SERIAL_CONTROL) message -4 | [SERIAL_CONTROL_FLAG_EXCLUSIVE](#SERIAL_CONTROL_FLAG_EXCLUSIVE) | Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the [SERIAL_CONTROL](#SERIAL_CONTROL) protocol. The port can be handed back by sending a request without this flag set -8 | [SERIAL_CONTROL_FLAG_BLOCKING](#SERIAL_CONTROL_FLAG_BLOCKING) | Block on writes to the serial port -16 | [SERIAL_CONTROL_FLAG_MULTI](#SERIAL_CONTROL_FLAG_MULTI) | Send multiple replies until port is drained +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 1 | [SERIAL_CONTROL_FLAG_REPLY](#SERIAL_CONTROL_FLAG_REPLY) | Set if this is a reply | +| 2 | [SERIAL_CONTROL_FLAG_RESPOND](#SERIAL_CONTROL_FLAG_RESPOND) | Set if the sender wants the receiver to send a response as another [SERIAL_CONTROL](#SERIAL_CONTROL) message | +| 4 | [SERIAL_CONTROL_FLAG_EXCLUSIVE](#SERIAL_CONTROL_FLAG_EXCLUSIVE) | Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the [SERIAL_CONTROL](#SERIAL_CONTROL) protocol. The port can be handed back by sending a request without this flag set | +| 8 | [SERIAL_CONTROL_FLAG_BLOCKING](#SERIAL_CONTROL_FLAG_BLOCKING) | Block on writes to the serial port | +| 16 | [SERIAL_CONTROL_FLAG_MULTI](#SERIAL_CONTROL_FLAG_MULTI) | Send multiple replies until port is drained | ### MAV_DISTANCE_SENSOR {#MAV_DISTANCE_SENSOR} Enumeration of distance sensor types -Value | Name | Description ---- | --- | --- -0 | [MAV_DISTANCE_SENSOR_LASER](#MAV_DISTANCE_SENSOR_LASER) | Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units -1 | [MAV_DISTANCE_SENSOR_ULTRASOUND](#MAV_DISTANCE_SENSOR_ULTRASOUND) | Ultrasound rangefinder, e.g. MaxBotix units -2 | [MAV_DISTANCE_SENSOR_INFRARED](#MAV_DISTANCE_SENSOR_INFRARED) | Infrared rangefinder, e.g. Sharp units -3 | [MAV_DISTANCE_SENSOR_RADAR](#MAV_DISTANCE_SENSOR_RADAR) | Radar type, e.g. uLanding units -4 | [MAV_DISTANCE_SENSOR_UNKNOWN](#MAV_DISTANCE_SENSOR_UNKNOWN) | Broken or unknown type, e.g. analog units +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------- | +| 0 | [MAV_DISTANCE_SENSOR_LASER](#MAV_DISTANCE_SENSOR_LASER) | Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units | +| 1 | [MAV_DISTANCE_SENSOR_ULTRASOUND](#MAV_DISTANCE_SENSOR_ULTRASOUND) | Ultrasound rangefinder, e.g. MaxBotix units | +| 2 | [MAV_DISTANCE_SENSOR_INFRARED](#MAV_DISTANCE_SENSOR_INFRARED) | Infrared rangefinder, e.g. Sharp units | +| 3 | [MAV_DISTANCE_SENSOR_RADAR](#MAV_DISTANCE_SENSOR_RADAR) | Radar type, e.g. uLanding units | +| 4 | [MAV_DISTANCE_SENSOR_UNKNOWN](#MAV_DISTANCE_SENSOR_UNKNOWN) | Broken or unknown type, e.g. analog units | ### MAV_SENSOR_ORIENTATION {#MAV_SENSOR_ORIENTATION} Enumeration of sensor orientation, according to its rotations -Value | Name | Description ---- | --- | --- -0 | [MAV_SENSOR_ROTATION_NONE](#MAV_SENSOR_ROTATION_NONE) | Roll: 0, Pitch: 0, Yaw: 0 -1 | [MAV_SENSOR_ROTATION_YAW_45](#MAV_SENSOR_ROTATION_YAW_45) | Roll: 0, Pitch: 0, Yaw: 45 -2 | [MAV_SENSOR_ROTATION_YAW_90](#MAV_SENSOR_ROTATION_YAW_90) | Roll: 0, Pitch: 0, Yaw: 90 -3 | [MAV_SENSOR_ROTATION_YAW_135](#MAV_SENSOR_ROTATION_YAW_135) | Roll: 0, Pitch: 0, Yaw: 135 -4 | [MAV_SENSOR_ROTATION_YAW_180](#MAV_SENSOR_ROTATION_YAW_180) | Roll: 0, Pitch: 0, Yaw: 180 -5 | [MAV_SENSOR_ROTATION_YAW_225](#MAV_SENSOR_ROTATION_YAW_225) | Roll: 0, Pitch: 0, Yaw: 225 -6 | [MAV_SENSOR_ROTATION_YAW_270](#MAV_SENSOR_ROTATION_YAW_270) | Roll: 0, Pitch: 0, Yaw: 270 -7 | [MAV_SENSOR_ROTATION_YAW_315](#MAV_SENSOR_ROTATION_YAW_315) | Roll: 0, Pitch: 0, Yaw: 315 -8 | [MAV_SENSOR_ROTATION_ROLL_180](#MAV_SENSOR_ROTATION_ROLL_180) | Roll: 180, Pitch: 0, Yaw: 0 -9 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_45](#MAV_SENSOR_ROTATION_ROLL_180_YAW_45) | Roll: 180, Pitch: 0, Yaw: 45 -10 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_90](#MAV_SENSOR_ROTATION_ROLL_180_YAW_90) | Roll: 180, Pitch: 0, Yaw: 90 -11 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_135](#MAV_SENSOR_ROTATION_ROLL_180_YAW_135) | Roll: 180, Pitch: 0, Yaw: 135 -12 | [MAV_SENSOR_ROTATION_PITCH_180](#MAV_SENSOR_ROTATION_PITCH_180) | Roll: 0, Pitch: 180, Yaw: 0 -13 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_225](#MAV_SENSOR_ROTATION_ROLL_180_YAW_225) | Roll: 180, Pitch: 0, Yaw: 225 -14 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_270](#MAV_SENSOR_ROTATION_ROLL_180_YAW_270) | Roll: 180, Pitch: 0, Yaw: 270 -15 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_315](#MAV_SENSOR_ROTATION_ROLL_180_YAW_315) | Roll: 180, Pitch: 0, Yaw: 315 -16 | [MAV_SENSOR_ROTATION_ROLL_90](#MAV_SENSOR_ROTATION_ROLL_90) | Roll: 90, Pitch: 0, Yaw: 0 -17 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_45](#MAV_SENSOR_ROTATION_ROLL_90_YAW_45) | Roll: 90, Pitch: 0, Yaw: 45 -18 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_90](#MAV_SENSOR_ROTATION_ROLL_90_YAW_90) | Roll: 90, Pitch: 0, Yaw: 90 -19 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_135](#MAV_SENSOR_ROTATION_ROLL_90_YAW_135) | Roll: 90, Pitch: 0, Yaw: 135 -20 | [MAV_SENSOR_ROTATION_ROLL_270](#MAV_SENSOR_ROTATION_ROLL_270) | Roll: 270, Pitch: 0, Yaw: 0 -21 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_45](#MAV_SENSOR_ROTATION_ROLL_270_YAW_45) | Roll: 270, Pitch: 0, Yaw: 45 -22 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_90](#MAV_SENSOR_ROTATION_ROLL_270_YAW_90) | Roll: 270, Pitch: 0, Yaw: 90 -23 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_135](#MAV_SENSOR_ROTATION_ROLL_270_YAW_135) | Roll: 270, Pitch: 0, Yaw: 135 -24 | [MAV_SENSOR_ROTATION_PITCH_90](#MAV_SENSOR_ROTATION_PITCH_90) | Roll: 0, Pitch: 90, Yaw: 0 -25 | [MAV_SENSOR_ROTATION_PITCH_270](#MAV_SENSOR_ROTATION_PITCH_270) | Roll: 0, Pitch: 270, Yaw: 0 -26 | [MAV_SENSOR_ROTATION_PITCH_180_YAW_90](#MAV_SENSOR_ROTATION_PITCH_180_YAW_90) | Roll: 0, Pitch: 180, Yaw: 90 -27 | [MAV_SENSOR_ROTATION_PITCH_180_YAW_270](#MAV_SENSOR_ROTATION_PITCH_180_YAW_270) | Roll: 0, Pitch: 180, Yaw: 270 -28 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_90) | Roll: 90, Pitch: 90, Yaw: 0 -29 | [MAV_SENSOR_ROTATION_ROLL_180_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_180_PITCH_90) | Roll: 180, Pitch: 90, Yaw: 0 -30 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_90) | Roll: 270, Pitch: 90, Yaw: 0 -31 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_180](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_180) | Roll: 90, Pitch: 180, Yaw: 0 -32 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_180](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_180) | Roll: 270, Pitch: 180, Yaw: 0 -33 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_270) | Roll: 90, Pitch: 270, Yaw: 0 -34 | [MAV_SENSOR_ROTATION_ROLL_180_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_180_PITCH_270) | Roll: 180, Pitch: 270, Yaw: 0 -35 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_270) | Roll: 270, Pitch: 270, Yaw: 0 -36 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90) | Roll: 90, Pitch: 180, Yaw: 90 -37 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_270](#MAV_SENSOR_ROTATION_ROLL_90_YAW_270) | Roll: 90, Pitch: 0, Yaw: 270 -38 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293) | Roll: 90, Pitch: 68, Yaw: 293 -39 | [MAV_SENSOR_ROTATION_PITCH_315](#MAV_SENSOR_ROTATION_PITCH_315) | Pitch: 315 -40 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_315](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_315) | Roll: 90, Pitch: 315 -100 | [MAV_SENSOR_ROTATION_CUSTOM](#MAV_SENSOR_ROTATION_CUSTOM) | Custom orientation +| Value | Name | Description | +| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------- | ----------------------------- | +| 0 | [MAV_SENSOR_ROTATION_NONE](#MAV_SENSOR_ROTATION_NONE) | Roll: 0, Pitch: 0, Yaw: 0 | +| 1 | [MAV_SENSOR_ROTATION_YAW_45](#MAV_SENSOR_ROTATION_YAW_45) | Roll: 0, Pitch: 0, Yaw: 45 | +| 2 | [MAV_SENSOR_ROTATION_YAW_90](#MAV_SENSOR_ROTATION_YAW_90) | Roll: 0, Pitch: 0, Yaw: 90 | +| 3 | [MAV_SENSOR_ROTATION_YAW_135](#MAV_SENSOR_ROTATION_YAW_135) | Roll: 0, Pitch: 0, Yaw: 135 | +| 4 | [MAV_SENSOR_ROTATION_YAW_180](#MAV_SENSOR_ROTATION_YAW_180) | Roll: 0, Pitch: 0, Yaw: 180 | +| 5 | [MAV_SENSOR_ROTATION_YAW_225](#MAV_SENSOR_ROTATION_YAW_225) | Roll: 0, Pitch: 0, Yaw: 225 | +| 6 | [MAV_SENSOR_ROTATION_YAW_270](#MAV_SENSOR_ROTATION_YAW_270) | Roll: 0, Pitch: 0, Yaw: 270 | +| 7 | [MAV_SENSOR_ROTATION_YAW_315](#MAV_SENSOR_ROTATION_YAW_315) | Roll: 0, Pitch: 0, Yaw: 315 | +| 8 | [MAV_SENSOR_ROTATION_ROLL_180](#MAV_SENSOR_ROTATION_ROLL_180) | Roll: 180, Pitch: 0, Yaw: 0 | +| 9 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_45](#MAV_SENSOR_ROTATION_ROLL_180_YAW_45) | Roll: 180, Pitch: 0, Yaw: 45 | +| 10 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_90](#MAV_SENSOR_ROTATION_ROLL_180_YAW_90) | Roll: 180, Pitch: 0, Yaw: 90 | +| 11 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_135](#MAV_SENSOR_ROTATION_ROLL_180_YAW_135) | Roll: 180, Pitch: 0, Yaw: 135 | +| 12 | [MAV_SENSOR_ROTATION_PITCH_180](#MAV_SENSOR_ROTATION_PITCH_180) | Roll: 0, Pitch: 180, Yaw: 0 | +| 13 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_225](#MAV_SENSOR_ROTATION_ROLL_180_YAW_225) | Roll: 180, Pitch: 0, Yaw: 225 | +| 14 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_270](#MAV_SENSOR_ROTATION_ROLL_180_YAW_270) | Roll: 180, Pitch: 0, Yaw: 270 | +| 15 | [MAV_SENSOR_ROTATION_ROLL_180_YAW_315](#MAV_SENSOR_ROTATION_ROLL_180_YAW_315) | Roll: 180, Pitch: 0, Yaw: 315 | +| 16 | [MAV_SENSOR_ROTATION_ROLL_90](#MAV_SENSOR_ROTATION_ROLL_90) | Roll: 90, Pitch: 0, Yaw: 0 | +| 17 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_45](#MAV_SENSOR_ROTATION_ROLL_90_YAW_45) | Roll: 90, Pitch: 0, Yaw: 45 | +| 18 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_90](#MAV_SENSOR_ROTATION_ROLL_90_YAW_90) | Roll: 90, Pitch: 0, Yaw: 90 | +| 19 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_135](#MAV_SENSOR_ROTATION_ROLL_90_YAW_135) | Roll: 90, Pitch: 0, Yaw: 135 | +| 20 | [MAV_SENSOR_ROTATION_ROLL_270](#MAV_SENSOR_ROTATION_ROLL_270) | Roll: 270, Pitch: 0, Yaw: 0 | +| 21 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_45](#MAV_SENSOR_ROTATION_ROLL_270_YAW_45) | Roll: 270, Pitch: 0, Yaw: 45 | +| 22 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_90](#MAV_SENSOR_ROTATION_ROLL_270_YAW_90) | Roll: 270, Pitch: 0, Yaw: 90 | +| 23 | [MAV_SENSOR_ROTATION_ROLL_270_YAW_135](#MAV_SENSOR_ROTATION_ROLL_270_YAW_135) | Roll: 270, Pitch: 0, Yaw: 135 | +| 24 | [MAV_SENSOR_ROTATION_PITCH_90](#MAV_SENSOR_ROTATION_PITCH_90) | Roll: 0, Pitch: 90, Yaw: 0 | +| 25 | [MAV_SENSOR_ROTATION_PITCH_270](#MAV_SENSOR_ROTATION_PITCH_270) | Roll: 0, Pitch: 270, Yaw: 0 | +| 26 | [MAV_SENSOR_ROTATION_PITCH_180_YAW_90](#MAV_SENSOR_ROTATION_PITCH_180_YAW_90) | Roll: 0, Pitch: 180, Yaw: 90 | +| 27 | [MAV_SENSOR_ROTATION_PITCH_180_YAW_270](#MAV_SENSOR_ROTATION_PITCH_180_YAW_270) | Roll: 0, Pitch: 180, Yaw: 270 | +| 28 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_90) | Roll: 90, Pitch: 90, Yaw: 0 | +| 29 | [MAV_SENSOR_ROTATION_ROLL_180_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_180_PITCH_90) | Roll: 180, Pitch: 90, Yaw: 0 | +| 30 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_90](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_90) | Roll: 270, Pitch: 90, Yaw: 0 | +| 31 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_180](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_180) | Roll: 90, Pitch: 180, Yaw: 0 | +| 32 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_180](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_180) | Roll: 270, Pitch: 180, Yaw: 0 | +| 33 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_270) | Roll: 90, Pitch: 270, Yaw: 0 | +| 34 | [MAV_SENSOR_ROTATION_ROLL_180_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_180_PITCH_270) | Roll: 180, Pitch: 270, Yaw: 0 | +| 35 | [MAV_SENSOR_ROTATION_ROLL_270_PITCH_270](#MAV_SENSOR_ROTATION_ROLL_270_PITCH_270) | Roll: 270, Pitch: 270, Yaw: 0 | +| 36 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90) | Roll: 90, Pitch: 180, Yaw: 90 | +| 37 | [MAV_SENSOR_ROTATION_ROLL_90_YAW_270](#MAV_SENSOR_ROTATION_ROLL_90_YAW_270) | Roll: 90, Pitch: 0, Yaw: 270 | +| 38 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_68_YAW_293) | Roll: 90, Pitch: 68, Yaw: 293 | +| 39 | [MAV_SENSOR_ROTATION_PITCH_315](#MAV_SENSOR_ROTATION_PITCH_315) | Pitch: 315 | +| 40 | [MAV_SENSOR_ROTATION_ROLL_90_PITCH_315](#MAV_SENSOR_ROTATION_ROLL_90_PITCH_315) | Roll: 90, Pitch: 315 | +| 100 | [MAV_SENSOR_ROTATION_CUSTOM](#MAV_SENSOR_ROTATION_CUSTOM) | Custom orientation | ### MAV_MISSION_TYPE {#MAV_MISSION_TYPE} Type of mission items being requested/sent in mission protocol. -Value | Name | Description ---- | --- | --- -0 | [MAV_MISSION_TYPE_MISSION](#MAV_MISSION_TYPE_MISSION) | Items are mission commands for main mission. -1 | [MAV_MISSION_TYPE_FENCE](#MAV_MISSION_TYPE_FENCE) | Specifies GeoFence area(s). Items are MAV_CMD_NAV_FENCE_ GeoFence items. -2 | [MAV_MISSION_TYPE_RALLY](#MAV_MISSION_TYPE_RALLY) | Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are [MAV_CMD_NAV_RALLY_POINT](#MAV_CMD_NAV_RALLY_POINT) rally point items. -255 | [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL) | Only used in [MISSION_CLEAR_ALL](#MISSION_CLEAR_ALL) to clear all mission types. +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_MISSION_TYPE_MISSION](#MAV_MISSION_TYPE_MISSION) | Items are mission commands for main mission. | +| 1 | [MAV_MISSION_TYPE_FENCE](#MAV_MISSION_TYPE_FENCE) | Specifies GeoFence area(s). Items are MAV*CMD_NAV_FENCE* GeoFence items. | +| 2 | [MAV_MISSION_TYPE_RALLY](#MAV_MISSION_TYPE_RALLY) | Specifies the rally points for the vehicle. Rally points are alternative RTL points. Items are [MAV_CMD_NAV_RALLY_POINT](#MAV_CMD_NAV_RALLY_POINT) rally point items. | +| 255 | [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL) | Only used in [MISSION_CLEAR_ALL](#MISSION_CLEAR_ALL) to clear all mission types. | ### MAV_ESTIMATOR_TYPE {#MAV_ESTIMATOR_TYPE} Enumeration of estimator types -Value | Name | Description ---- | --- | --- -0 | [MAV_ESTIMATOR_TYPE_UNKNOWN](#MAV_ESTIMATOR_TYPE_UNKNOWN) | Unknown type of the estimator. -1 | [MAV_ESTIMATOR_TYPE_NAIVE](#MAV_ESTIMATOR_TYPE_NAIVE) | This is a naive estimator without any real covariance feedback. -2 | [MAV_ESTIMATOR_TYPE_VISION](#MAV_ESTIMATOR_TYPE_VISION) | Computer vision based estimate. Might be up to scale. -3 | [MAV_ESTIMATOR_TYPE_VIO](#MAV_ESTIMATOR_TYPE_VIO) | Visual-inertial estimate. -4 | [MAV_ESTIMATOR_TYPE_GPS](#MAV_ESTIMATOR_TYPE_GPS) | Plain GPS estimate. -5 | [MAV_ESTIMATOR_TYPE_GPS_INS](#MAV_ESTIMATOR_TYPE_GPS_INS) | Estimator integrating GPS and inertial sensing. -6 | [MAV_ESTIMATOR_TYPE_MOCAP](#MAV_ESTIMATOR_TYPE_MOCAP) | Estimate from external motion capturing system. -7 | [MAV_ESTIMATOR_TYPE_LIDAR](#MAV_ESTIMATOR_TYPE_LIDAR) | Estimator based on lidar sensor input. -8 | [MAV_ESTIMATOR_TYPE_AUTOPILOT](#MAV_ESTIMATOR_TYPE_AUTOPILOT) | Estimator on autopilot. +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | --------------------------------------------------------------- | +| 0 | [MAV_ESTIMATOR_TYPE_UNKNOWN](#MAV_ESTIMATOR_TYPE_UNKNOWN) | Unknown type of the estimator. | +| 1 | [MAV_ESTIMATOR_TYPE_NAIVE](#MAV_ESTIMATOR_TYPE_NAIVE) | This is a naive estimator without any real covariance feedback. | +| 2 | [MAV_ESTIMATOR_TYPE_VISION](#MAV_ESTIMATOR_TYPE_VISION) | Computer vision based estimate. Might be up to scale. | +| 3 | [MAV_ESTIMATOR_TYPE_VIO](#MAV_ESTIMATOR_TYPE_VIO) | Visual-inertial estimate. | +| 4 | [MAV_ESTIMATOR_TYPE_GPS](#MAV_ESTIMATOR_TYPE_GPS) | Plain GPS estimate. | +| 5 | [MAV_ESTIMATOR_TYPE_GPS_INS](#MAV_ESTIMATOR_TYPE_GPS_INS) | Estimator integrating GPS and inertial sensing. | +| 6 | [MAV_ESTIMATOR_TYPE_MOCAP](#MAV_ESTIMATOR_TYPE_MOCAP) | Estimate from external motion capturing system. | +| 7 | [MAV_ESTIMATOR_TYPE_LIDAR](#MAV_ESTIMATOR_TYPE_LIDAR) | Estimator based on lidar sensor input. | +| 8 | [MAV_ESTIMATOR_TYPE_AUTOPILOT](#MAV_ESTIMATOR_TYPE_AUTOPILOT) | Estimator on autopilot. | ### MAV_BATTERY_TYPE {#MAV_BATTERY_TYPE} Enumeration of battery types -Value | Name | Description ---- | --- | --- -0 | [MAV_BATTERY_TYPE_UNKNOWN](#MAV_BATTERY_TYPE_UNKNOWN) | Not specified. -1 | [MAV_BATTERY_TYPE_LIPO](#MAV_BATTERY_TYPE_LIPO) | Lithium polymer battery -2 | [MAV_BATTERY_TYPE_LIFE](#MAV_BATTERY_TYPE_LIFE) | Lithium-iron-phosphate battery -3 | [MAV_BATTERY_TYPE_LION](#MAV_BATTERY_TYPE_LION) | Lithium-ION battery -4 | [MAV_BATTERY_TYPE_NIMH](#MAV_BATTERY_TYPE_NIMH) | Nickel metal hydride battery +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ------------------------------ | +| 0 | [MAV_BATTERY_TYPE_UNKNOWN](#MAV_BATTERY_TYPE_UNKNOWN) | Not specified. | +| 1 | [MAV_BATTERY_TYPE_LIPO](#MAV_BATTERY_TYPE_LIPO) | Lithium polymer battery | +| 2 | [MAV_BATTERY_TYPE_LIFE](#MAV_BATTERY_TYPE_LIFE) | Lithium-iron-phosphate battery | +| 3 | [MAV_BATTERY_TYPE_LION](#MAV_BATTERY_TYPE_LION) | Lithium-ION battery | +| 4 | [MAV_BATTERY_TYPE_NIMH](#MAV_BATTERY_TYPE_NIMH) | Nickel metal hydride battery | ### MAV_BATTERY_FUNCTION {#MAV_BATTERY_FUNCTION} Enumeration of battery functions -Value | Name | Description ---- | --- | --- -0 | [MAV_BATTERY_FUNCTION_UNKNOWN](#MAV_BATTERY_FUNCTION_UNKNOWN) | Battery function is unknown -1 | [MAV_BATTERY_FUNCTION_ALL](#MAV_BATTERY_FUNCTION_ALL) | Battery supports all flight systems -2 | [MAV_BATTERY_FUNCTION_PROPULSION](#MAV_BATTERY_FUNCTION_PROPULSION) | Battery for the propulsion system -3 | [MAV_BATTERY_FUNCTION_AVIONICS](#MAV_BATTERY_FUNCTION_AVIONICS) | Avionics battery -4 | [MAV_BATTERY_FUNCTION_PAYLOAD](#MAV_BATTERY_FUNCTION_PAYLOAD) | Payload battery +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ----------------------------------- | +| 0 | [MAV_BATTERY_FUNCTION_UNKNOWN](#MAV_BATTERY_FUNCTION_UNKNOWN) | Battery function is unknown | +| 1 | [MAV_BATTERY_FUNCTION_ALL](#MAV_BATTERY_FUNCTION_ALL) | Battery supports all flight systems | +| 2 | [MAV_BATTERY_FUNCTION_PROPULSION](#MAV_BATTERY_FUNCTION_PROPULSION) | Battery for the propulsion system | +| 3 | [MAV_BATTERY_FUNCTION_AVIONICS](#MAV_BATTERY_FUNCTION_AVIONICS) | Avionics battery | +| 4 | [MAV_BATTERY_FUNCTION_PAYLOAD](#MAV_BATTERY_FUNCTION_PAYLOAD) | Payload battery | ### MAV_BATTERY_CHARGE_STATE {#MAV_BATTERY_CHARGE_STATE} Enumeration for battery charge states. -Value | Name | Description ---- | --- | --- -0 | [MAV_BATTERY_CHARGE_STATE_UNDEFINED](#MAV_BATTERY_CHARGE_STATE_UNDEFINED) | Low battery state is not provided -1 | [MAV_BATTERY_CHARGE_STATE_OK](#MAV_BATTERY_CHARGE_STATE_OK) | Battery is not in low state. Normal operation. -2 | [MAV_BATTERY_CHARGE_STATE_LOW](#MAV_BATTERY_CHARGE_STATE_LOW) | Battery state is low, warn and monitor close. -3 | [MAV_BATTERY_CHARGE_STATE_CRITICAL](#MAV_BATTERY_CHARGE_STATE_CRITICAL) | Battery state is critical, return or abort immediately. -4 | [MAV_BATTERY_CHARGE_STATE_EMERGENCY](#MAV_BATTERY_CHARGE_STATE_EMERGENCY) | Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. -5 | [MAV_BATTERY_CHARGE_STATE_FAILED](#MAV_BATTERY_CHARGE_STATE_FAILED) | Battery failed, damage unavoidable. Possible causes (faults) are listed in [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT). -6 | [MAV_BATTERY_CHARGE_STATE_UNHEALTHY](#MAV_BATTERY_CHARGE_STATE_UNHEALTHY) | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT). -7 | [MAV_BATTERY_CHARGE_STATE_CHARGING](#MAV_BATTERY_CHARGE_STATE_CHARGING) | Battery is charging. +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_BATTERY_CHARGE_STATE_UNDEFINED](#MAV_BATTERY_CHARGE_STATE_UNDEFINED) | Low battery state is not provided | +| 1 | [MAV_BATTERY_CHARGE_STATE_OK](#MAV_BATTERY_CHARGE_STATE_OK) | Battery is not in low state. Normal operation. | +| 2 | [MAV_BATTERY_CHARGE_STATE_LOW](#MAV_BATTERY_CHARGE_STATE_LOW) | Battery state is low, warn and monitor close. | +| 3 | [MAV_BATTERY_CHARGE_STATE_CRITICAL](#MAV_BATTERY_CHARGE_STATE_CRITICAL) | Battery state is critical, return or abort immediately. | +| 4 | [MAV_BATTERY_CHARGE_STATE_EMERGENCY](#MAV_BATTERY_CHARGE_STATE_EMERGENCY) | Battery state is too low for ordinary abort sequence. Perform fastest possible emergency stop to prevent damage. | +| 5 | [MAV_BATTERY_CHARGE_STATE_FAILED](#MAV_BATTERY_CHARGE_STATE_FAILED) | Battery failed, damage unavoidable. Possible causes (faults) are listed in [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT). | +| 6 | [MAV_BATTERY_CHARGE_STATE_UNHEALTHY](#MAV_BATTERY_CHARGE_STATE_UNHEALTHY) | Battery is diagnosed to be defective or an error occurred, usage is discouraged / prohibited. Possible causes (faults) are listed in [MAV_BATTERY_FAULT](#MAV_BATTERY_FAULT). | +| 7 | [MAV_BATTERY_CHARGE_STATE_CHARGING](#MAV_BATTERY_CHARGE_STATE_CHARGING) | Battery is charging. | ### MAV_BATTERY_MODE {#MAV_BATTERY_MODE} Battery mode. Note, the normal operation mode (i.e. when flying) should be reported as [MAV_BATTERY_MODE_UNKNOWN](#MAV_BATTERY_MODE_UNKNOWN) to allow message trimming in normal flight. -Value | Name | Description ---- | --- | --- -0 | [MAV_BATTERY_MODE_UNKNOWN](#MAV_BATTERY_MODE_UNKNOWN) | Battery mode not supported/unknown battery mode/normal operation. -1 | [MAV_BATTERY_MODE_AUTO_DISCHARGING](#MAV_BATTERY_MODE_AUTO_DISCHARGING) | Battery is auto discharging (towards storage level). -2 | [MAV_BATTERY_MODE_HOT_SWAP](#MAV_BATTERY_MODE_HOT_SWAP) | Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_BATTERY_MODE_UNKNOWN](#MAV_BATTERY_MODE_UNKNOWN) | Battery mode not supported/unknown battery mode/normal operation. | +| 1 | [MAV_BATTERY_MODE_AUTO_DISCHARGING](#MAV_BATTERY_MODE_AUTO_DISCHARGING) | Battery is auto discharging (towards storage level). | +| 2 | [MAV_BATTERY_MODE_HOT_SWAP](#MAV_BATTERY_MODE_HOT_SWAP) | Battery in hot-swap mode (current limited to prevent spikes that might damage sensitive electrical circuits). | ### MAV_BATTERY_FAULT {#MAV_BATTERY_FAULT} (Bitmask) Smart battery supply status/fault flags (bitmask) for health indication. The battery must also report either [MAV_BATTERY_CHARGE_STATE_FAILED](#MAV_BATTERY_CHARGE_STATE_FAILED) or [MAV_BATTERY_CHARGE_STATE_UNHEALTHY](#MAV_BATTERY_CHARGE_STATE_UNHEALTHY) if any of these are set. -Value | Name | Description ---- | --- | --- -1 | [MAV_BATTERY_FAULT_DEEP_DISCHARGE](#MAV_BATTERY_FAULT_DEEP_DISCHARGE) | Battery has deep discharged. -2 | [MAV_BATTERY_FAULT_SPIKES](#MAV_BATTERY_FAULT_SPIKES) | Voltage spikes. -4 | [MAV_BATTERY_FAULT_CELL_FAIL](#MAV_BATTERY_FAULT_CELL_FAIL) | One or more cells have failed. Battery should also report [MAV_BATTERY_CHARGE_STATE_FAILE](#MAV_BATTERY_CHARGE_STATE_FAILE) (and should not be used). -8 | [MAV_BATTERY_FAULT_OVER_CURRENT](#MAV_BATTERY_FAULT_OVER_CURRENT) | Over-current fault. -16 | [MAV_BATTERY_FAULT_OVER_TEMPERATURE](#MAV_BATTERY_FAULT_OVER_TEMPERATURE) | Over-temperature fault. -32 | [MAV_BATTERY_FAULT_UNDER_TEMPERATURE](#MAV_BATTERY_FAULT_UNDER_TEMPERATURE) | Under-temperature fault. -64 | [MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE](#MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE) | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). -128 | [MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE](#MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE) | Battery firmware is not compatible with current autopilot firmware. -256 | [BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION](#BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION) | Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). +| Value | Name | Description | +| -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_BATTERY_FAULT_DEEP_DISCHARGE](#MAV_BATTERY_FAULT_DEEP_DISCHARGE) | Battery has deep discharged. | +| 2 | [MAV_BATTERY_FAULT_SPIKES](#MAV_BATTERY_FAULT_SPIKES) | Voltage spikes. | +| 4 | [MAV_BATTERY_FAULT_CELL_FAIL](#MAV_BATTERY_FAULT_CELL_FAIL) | One or more cells have failed. Battery should also report [MAV_BATTERY_CHARGE_STATE_FAILE](#MAV_BATTERY_CHARGE_STATE_FAILE) (and should not be used). | +| 8 | [MAV_BATTERY_FAULT_OVER_CURRENT](#MAV_BATTERY_FAULT_OVER_CURRENT) | Over-current fault. | +| 16 | [MAV_BATTERY_FAULT_OVER_TEMPERATURE](#MAV_BATTERY_FAULT_OVER_TEMPERATURE) | Over-temperature fault. | +| 32 | [MAV_BATTERY_FAULT_UNDER_TEMPERATURE](#MAV_BATTERY_FAULT_UNDER_TEMPERATURE) | Under-temperature fault. | +| 64 | [MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE](#MAV_BATTERY_FAULT_INCOMPATIBLE_VOLTAGE) | Vehicle voltage is not compatible with this battery (batteries on same power rail should have similar voltage). | +| 128 | [MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE](#MAV_BATTERY_FAULT_INCOMPATIBLE_FIRMWARE) | Battery firmware is not compatible with current autopilot firmware. | +| 256 | [BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION](#BATTERY_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION) | Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). | ### MAV_FUEL_TYPE {#MAV_FUEL_TYPE} Fuel types for use in [FUEL_TYPE](#FUEL_TYPE). Fuel types specify the units for the maximum, available and consumed fuel, and for the flow rates. -Value | Name | Description ---- | --- | --- -0 | [MAV_FUEL_TYPE_UNKNOWN](#MAV_FUEL_TYPE_UNKNOWN) | Not specified. Fuel levels are normalized (i.e. maximum is 1, and other levels are relative to 1). -1 | [MAV_FUEL_TYPE_LIQUID](#MAV_FUEL_TYPE_LIQUID) | A generic liquid fuel. Fuel levels are in millilitres (ml). Fuel rates are in millilitres/second. -2 | [MAV_FUEL_TYPE_GAS](#MAV_FUEL_TYPE_GAS) | A gas tank. Fuel levels are in kilo-Pascal (kPa), and flow rates are in milliliters per second (ml/s). +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------ | +| 0 | [MAV_FUEL_TYPE_UNKNOWN](#MAV_FUEL_TYPE_UNKNOWN) | Not specified. Fuel levels are normalized (i.e. maximum is 1, and other levels are relative to 1). | +| 1 | [MAV_FUEL_TYPE_LIQUID](#MAV_FUEL_TYPE_LIQUID) | A generic liquid fuel. Fuel levels are in millilitres (ml). Fuel rates are in millilitres/second. | +| 2 | [MAV_FUEL_TYPE_GAS](#MAV_FUEL_TYPE_GAS) | A gas tank. Fuel levels are in kilo-Pascal (kPa), and flow rates are in milliliters per second (ml/s). | ### MAV_GENERATOR_STATUS_FLAG {#MAV_GENERATOR_STATUS_FLAG} (Bitmask) Flags to report status/failure cases for a power generator (used in [GENERATOR_STATUS](#GENERATOR_STATUS)). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly). -Value | Name | Description ---- | --- | --- -1 | [MAV_GENERATOR_STATUS_FLAG_OFF](#MAV_GENERATOR_STATUS_FLAG_OFF) | Generator is off. -2 | [MAV_GENERATOR_STATUS_FLAG_READY](#MAV_GENERATOR_STATUS_FLAG_READY) | Generator is ready to start generating power. -4 | [MAV_GENERATOR_STATUS_FLAG_GENERATING](#MAV_GENERATOR_STATUS_FLAG_GENERATING) | Generator is generating power. -8 | [MAV_GENERATOR_STATUS_FLAG_CHARGING](#MAV_GENERATOR_STATUS_FLAG_CHARGING) | Generator is charging the batteries (generating enough power to charge and provide the load). -16 | [MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER](#MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER) | Generator is operating at a reduced maximum power. -32 | [MAV_GENERATOR_STATUS_FLAG_MAXPOWER](#MAV_GENERATOR_STATUS_FLAG_MAXPOWER) | Generator is providing the maximum output. -64 | [MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING](#MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING) | Generator is near the maximum operating temperature, cooling is insufficient. -128 | [MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT) | Generator hit the maximum operating temperature and shutdown. -256 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING) | Power electronics are near the maximum operating temperature, cooling is insufficient. -512 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT) | Power electronics hit the maximum operating temperature and shutdown. -1024 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT) | Power electronics experienced a fault and shutdown. -2048 | [MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT](#MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT) | The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. -4096 | [MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING](#MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING) | Generator controller having communication problems. -8192 | [MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING](#MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING) | Power electronic or generator cooling system error. -16384 | [MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT](#MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT) | Generator controller power rail experienced a fault. -32768 | [MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT) | Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. -65536 | [MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT](#MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT) | Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. -131072 | [MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT) | Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. -262144 | [MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT](#MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT) | Batteries are under voltage (generator will not start). -524288 | [MAV_GENERATOR_STATUS_FLAG_START_INHIBITED](#MAV_GENERATOR_STATUS_FLAG_START_INHIBITED) | Generator start is inhibited by e.g. a safety switch. -1048576 | [MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED](#MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED) | Generator requires maintenance. -2097152 | [MAV_GENERATOR_STATUS_FLAG_WARMING_UP](#MAV_GENERATOR_STATUS_FLAG_WARMING_UP) | Generator is not ready to generate yet. -4194304 | [MAV_GENERATOR_STATUS_FLAG_IDLE](#MAV_GENERATOR_STATUS_FLAG_IDLE) | Generator is idle. +| Value | Name | Description | +| ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_GENERATOR_STATUS_FLAG_OFF](#MAV_GENERATOR_STATUS_FLAG_OFF) | Generator is off. | +| 2 | [MAV_GENERATOR_STATUS_FLAG_READY](#MAV_GENERATOR_STATUS_FLAG_READY) | Generator is ready to start generating power. | +| 4 | [MAV_GENERATOR_STATUS_FLAG_GENERATING](#MAV_GENERATOR_STATUS_FLAG_GENERATING) | Generator is generating power. | +| 8 | [MAV_GENERATOR_STATUS_FLAG_CHARGING](#MAV_GENERATOR_STATUS_FLAG_CHARGING) | Generator is charging the batteries (generating enough power to charge and provide the load). | +| 16 | [MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER](#MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER) | Generator is operating at a reduced maximum power. | +| 32 | [MAV_GENERATOR_STATUS_FLAG_MAXPOWER](#MAV_GENERATOR_STATUS_FLAG_MAXPOWER) | Generator is providing the maximum output. | +| 64 | [MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING](#MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING) | Generator is near the maximum operating temperature, cooling is insufficient. | +| 128 | [MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT) | Generator hit the maximum operating temperature and shutdown. | +| 256 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING) | Power electronics are near the maximum operating temperature, cooling is insufficient. | +| 512 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT) | Power electronics hit the maximum operating temperature and shutdown. | +| 1024 | [MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT](#MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT) | Power electronics experienced a fault and shutdown. | +| 2048 | [MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT](#MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT) | The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening. | +| 4096 | [MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING](#MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING) | Generator controller having communication problems. | +| 8192 | [MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING](#MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING) | Power electronic or generator cooling system error. | +| 16384 | [MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT](#MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT) | Generator controller power rail experienced a fault. | +| 32768 | [MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT) | Generator controller exceeded the overcurrent threshold and shutdown to prevent damage. | +| 65536 | [MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT](#MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT) | Generator controller detected a high current going into the batteries and shutdown to prevent battery damage. | +| 131072 | [MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT](#MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT) | Generator controller exceeded it's overvoltage threshold and shutdown to prevent it exceeding the voltage rating. | +| 262144 | [MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT](#MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT) | Batteries are under voltage (generator will not start). | +| 524288 | [MAV_GENERATOR_STATUS_FLAG_START_INHIBITED](#MAV_GENERATOR_STATUS_FLAG_START_INHIBITED) | Generator start is inhibited by e.g. a safety switch. | +| 1048576 | [MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED](#MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED) | Generator requires maintenance. | +| 2097152 | [MAV_GENERATOR_STATUS_FLAG_WARMING_UP](#MAV_GENERATOR_STATUS_FLAG_WARMING_UP) | Generator is not ready to generate yet. | +| 4194304 | [MAV_GENERATOR_STATUS_FLAG_IDLE](#MAV_GENERATOR_STATUS_FLAG_IDLE) | Generator is idle. | ### MAV_VTOL_STATE {#MAV_VTOL_STATE} Enumeration of VTOL states -Value | Name | Description ---- | --- | --- -0 | [MAV_VTOL_STATE_UNDEFINED](#MAV_VTOL_STATE_UNDEFINED) | MAV is not configured as VTOL -1 | [MAV_VTOL_STATE_TRANSITION_TO_FW](#MAV_VTOL_STATE_TRANSITION_TO_FW) | VTOL is in transition from multicopter to fixed-wing -2 | [MAV_VTOL_STATE_TRANSITION_TO_MC](#MAV_VTOL_STATE_TRANSITION_TO_MC) | VTOL is in transition from fixed-wing to multicopter -3 | [MAV_VTOL_STATE_MC](#MAV_VTOL_STATE_MC) | VTOL is in multicopter state -4 | [MAV_VTOL_STATE_FW](#MAV_VTOL_STATE_FW) | VTOL is in fixed-wing state +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------------------------- | +| 0 | [MAV_VTOL_STATE_UNDEFINED](#MAV_VTOL_STATE_UNDEFINED) | MAV is not configured as VTOL | +| 1 | [MAV_VTOL_STATE_TRANSITION_TO_FW](#MAV_VTOL_STATE_TRANSITION_TO_FW) | VTOL is in transition from multicopter to fixed-wing | +| 2 | [MAV_VTOL_STATE_TRANSITION_TO_MC](#MAV_VTOL_STATE_TRANSITION_TO_MC) | VTOL is in transition from fixed-wing to multicopter | +| 3 | [MAV_VTOL_STATE_MC](#MAV_VTOL_STATE_MC) | VTOL is in multicopter state | +| 4 | [MAV_VTOL_STATE_FW](#MAV_VTOL_STATE_FW) | VTOL is in fixed-wing state | ### MAV_LANDED_STATE {#MAV_LANDED_STATE} Enumeration of landed detector states -Value | Name | Description ---- | --- | --- -0 | [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) | MAV landed state is unknown -1 | [MAV_LANDED_STATE_ON_GROUND](#MAV_LANDED_STATE_ON_GROUND) | MAV is landed (on ground) -2 | [MAV_LANDED_STATE_IN_AIR](#MAV_LANDED_STATE_IN_AIR) | MAV is in air -3 | [MAV_LANDED_STATE_TAKEOFF](#MAV_LANDED_STATE_TAKEOFF) | MAV currently taking off -4 | [MAV_LANDED_STATE_LANDING](#MAV_LANDED_STATE_LANDING) | MAV currently landing +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | --------------------------- | +| 0 | [MAV_LANDED_STATE_UNDEFINED](#MAV_LANDED_STATE_UNDEFINED) | MAV landed state is unknown | +| 1 | [MAV_LANDED_STATE_ON_GROUND](#MAV_LANDED_STATE_ON_GROUND) | MAV is landed (on ground) | +| 2 | [MAV_LANDED_STATE_IN_AIR](#MAV_LANDED_STATE_IN_AIR) | MAV is in air | +| 3 | [MAV_LANDED_STATE_TAKEOFF](#MAV_LANDED_STATE_TAKEOFF) | MAV currently taking off | +| 4 | [MAV_LANDED_STATE_LANDING](#MAV_LANDED_STATE_LANDING) | MAV currently landing | ### ADSB_ALTITUDE_TYPE {#ADSB_ALTITUDE_TYPE} Enumeration of the ADSB altimeter types -Value | Name | Description ---- | --- | --- -0 | [ADSB_ALTITUDE_TYPE_PRESSURE_QNH](#ADSB_ALTITUDE_TYPE_PRESSURE_QNH) | Altitude reported from a Baro source using QNH reference -1 | [ADSB_ALTITUDE_TYPE_GEOMETRIC](#ADSB_ALTITUDE_TYPE_GEOMETRIC) | Altitude reported from a GNSS source +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | -------------------------------------------------------- | +| 0 | [ADSB_ALTITUDE_TYPE_PRESSURE_QNH](#ADSB_ALTITUDE_TYPE_PRESSURE_QNH) | Altitude reported from a Baro source using QNH reference | +| 1 | [ADSB_ALTITUDE_TYPE_GEOMETRIC](#ADSB_ALTITUDE_TYPE_GEOMETRIC) | Altitude reported from a GNSS source | ### ADSB_EMITTER_TYPE {#ADSB_EMITTER_TYPE} ADSB classification for the type of vehicle emitting the transponder signal -Value | Name | Description ---- | --- | --- -0 | [ADSB_EMITTER_TYPE_NO_INFO](#ADSB_EMITTER_TYPE_NO_INFO) | -1 | [ADSB_EMITTER_TYPE_LIGHT](#ADSB_EMITTER_TYPE_LIGHT) | -2 | [ADSB_EMITTER_TYPE_SMALL](#ADSB_EMITTER_TYPE_SMALL) | -3 | [ADSB_EMITTER_TYPE_LARGE](#ADSB_EMITTER_TYPE_LARGE) | -4 | [ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE](#ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE) | -5 | [ADSB_EMITTER_TYPE_HEAVY](#ADSB_EMITTER_TYPE_HEAVY) | -6 | [ADSB_EMITTER_TYPE_HIGHLY_MANUV](#ADSB_EMITTER_TYPE_HIGHLY_MANUV) | -7 | [ADSB_EMITTER_TYPE_ROTOCRAFT](#ADSB_EMITTER_TYPE_ROTOCRAFT) | -8 | [ADSB_EMITTER_TYPE_UNASSIGNED](#ADSB_EMITTER_TYPE_UNASSIGNED) | -9 | [ADSB_EMITTER_TYPE_GLIDER](#ADSB_EMITTER_TYPE_GLIDER) | -10 | [ADSB_EMITTER_TYPE_LIGHTER_AIR](#ADSB_EMITTER_TYPE_LIGHTER_AIR) | -11 | [ADSB_EMITTER_TYPE_PARACHUTE](#ADSB_EMITTER_TYPE_PARACHUTE) | -12 | [ADSB_EMITTER_TYPE_ULTRA_LIGHT](#ADSB_EMITTER_TYPE_ULTRA_LIGHT) | -13 | [ADSB_EMITTER_TYPE_UNASSIGNED2](#ADSB_EMITTER_TYPE_UNASSIGNED2) | -14 | [ADSB_EMITTER_TYPE_UAV](#ADSB_EMITTER_TYPE_UAV) | -15 | [ADSB_EMITTER_TYPE_SPACE](#ADSB_EMITTER_TYPE_SPACE) | -16 | [ADSB_EMITTER_TYPE_UNASSGINED3](#ADSB_EMITTER_TYPE_UNASSGINED3) | -17 | [ADSB_EMITTER_TYPE_EMERGENCY_SURFACE](#ADSB_EMITTER_TYPE_EMERGENCY_SURFACE) | -18 | [ADSB_EMITTER_TYPE_SERVICE_SURFACE](#ADSB_EMITTER_TYPE_SERVICE_SURFACE) | -19 | [ADSB_EMITTER_TYPE_POINT_OBSTACLE](#ADSB_EMITTER_TYPE_POINT_OBSTACLE) | +| Value | Name | Description | +| -------------------------------------------------- | --------------------------------------------------------------------------- | ----------- | +| 0 | [ADSB_EMITTER_TYPE_NO_INFO](#ADSB_EMITTER_TYPE_NO_INFO) | +| 1 | [ADSB_EMITTER_TYPE_LIGHT](#ADSB_EMITTER_TYPE_LIGHT) | +| 2 | [ADSB_EMITTER_TYPE_SMALL](#ADSB_EMITTER_TYPE_SMALL) | +| 3 | [ADSB_EMITTER_TYPE_LARGE](#ADSB_EMITTER_TYPE_LARGE) | +| 4 | [ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE](#ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE) | +| 5 | [ADSB_EMITTER_TYPE_HEAVY](#ADSB_EMITTER_TYPE_HEAVY) | +| 6 | [ADSB_EMITTER_TYPE_HIGHLY_MANUV](#ADSB_EMITTER_TYPE_HIGHLY_MANUV) | +| 7 | [ADSB_EMITTER_TYPE_ROTOCRAFT](#ADSB_EMITTER_TYPE_ROTOCRAFT) | +| 8 | [ADSB_EMITTER_TYPE_UNASSIGNED](#ADSB_EMITTER_TYPE_UNASSIGNED) | +| 9 | [ADSB_EMITTER_TYPE_GLIDER](#ADSB_EMITTER_TYPE_GLIDER) | +| 10 | [ADSB_EMITTER_TYPE_LIGHTER_AIR](#ADSB_EMITTER_TYPE_LIGHTER_AIR) | +| 11 | [ADSB_EMITTER_TYPE_PARACHUTE](#ADSB_EMITTER_TYPE_PARACHUTE) | +| 12 | [ADSB_EMITTER_TYPE_ULTRA_LIGHT](#ADSB_EMITTER_TYPE_ULTRA_LIGHT) | +| 13 | [ADSB_EMITTER_TYPE_UNASSIGNED2](#ADSB_EMITTER_TYPE_UNASSIGNED2) | +| 14 | [ADSB_EMITTER_TYPE_UAV](#ADSB_EMITTER_TYPE_UAV) | +| 15 | [ADSB_EMITTER_TYPE_SPACE](#ADSB_EMITTER_TYPE_SPACE) | +| 16 | [ADSB_EMITTER_TYPE_UNASSGINED3](#ADSB_EMITTER_TYPE_UNASSGINED3) | +| 17 | [ADSB_EMITTER_TYPE_EMERGENCY_SURFACE](#ADSB_EMITTER_TYPE_EMERGENCY_SURFACE) | +| 18 | [ADSB_EMITTER_TYPE_SERVICE_SURFACE](#ADSB_EMITTER_TYPE_SERVICE_SURFACE) | +| 19 | [ADSB_EMITTER_TYPE_POINT_OBSTACLE](#ADSB_EMITTER_TYPE_POINT_OBSTACLE) | ### ADSB_FLAGS {#ADSB_FLAGS} (Bitmask) These flags indicate status such as data validity of each data source. Set = data valid -Value | Name | Description ---- | --- | --- -1 | [ADSB_FLAGS_VALID_COORDS](#ADSB_FLAGS_VALID_COORDS) | -2 | [ADSB_FLAGS_VALID_ALTITUDE](#ADSB_FLAGS_VALID_ALTITUDE) | -4 | [ADSB_FLAGS_VALID_HEADING](#ADSB_FLAGS_VALID_HEADING) | -8 | [ADSB_FLAGS_VALID_VELOCITY](#ADSB_FLAGS_VALID_VELOCITY) | -16 | [ADSB_FLAGS_VALID_CALLSIGN](#ADSB_FLAGS_VALID_CALLSIGN) | -32 | [ADSB_FLAGS_VALID_SQUAWK](#ADSB_FLAGS_VALID_SQUAWK) | -64 | [ADSB_FLAGS_SIMULATED](#ADSB_FLAGS_SIMULATED) | -128 | [ADSB_FLAGS_VERTICAL_VELOCITY_VALID](#ADSB_FLAGS_VERTICAL_VELOCITY_VALID) | -256 | [ADSB_FLAGS_BARO_VALID](#ADSB_FLAGS_BARO_VALID) | -32768 | [ADSB_FLAGS_SOURCE_UAT](#ADSB_FLAGS_SOURCE_UAT) | +| Value | Name | Description | +| -------------------------------------------------- | ------------------------------------------------------------------------- | ----------- | +| 1 | [ADSB_FLAGS_VALID_COORDS](#ADSB_FLAGS_VALID_COORDS) | +| 2 | [ADSB_FLAGS_VALID_ALTITUDE](#ADSB_FLAGS_VALID_ALTITUDE) | +| 4 | [ADSB_FLAGS_VALID_HEADING](#ADSB_FLAGS_VALID_HEADING) | +| 8 | [ADSB_FLAGS_VALID_VELOCITY](#ADSB_FLAGS_VALID_VELOCITY) | +| 16 | [ADSB_FLAGS_VALID_CALLSIGN](#ADSB_FLAGS_VALID_CALLSIGN) | +| 32 | [ADSB_FLAGS_VALID_SQUAWK](#ADSB_FLAGS_VALID_SQUAWK) | +| 64 | [ADSB_FLAGS_SIMULATED](#ADSB_FLAGS_SIMULATED) | +| 128 | [ADSB_FLAGS_VERTICAL_VELOCITY_VALID](#ADSB_FLAGS_VERTICAL_VELOCITY_VALID) | +| 256 | [ADSB_FLAGS_BARO_VALID](#ADSB_FLAGS_BARO_VALID) | +| 32768 | [ADSB_FLAGS_SOURCE_UAT](#ADSB_FLAGS_SOURCE_UAT) | ### MAV_DO_REPOSITION_FLAGS {#MAV_DO_REPOSITION_FLAGS} (Bitmask) Bitmap of options for the [MAV_CMD_DO_REPOSITION](#MAV_CMD_DO_REPOSITION) -Value | Name | Description ---- | --- | --- -1 | [MAV_DO_REPOSITION_FLAGS_CHANGE_MODE](#MAV_DO_REPOSITION_FLAGS_CHANGE_MODE) | The aircraft should immediately transition into guided. This should not be set for follow me applications -2 | [MAV_DO_REPOSITION_FLAGS_RELATIVE_YAW](#MAV_DO_REPOSITION_FLAGS_RELATIVE_YAW) | Yaw relative to the vehicle current heading (if not set, relative to North). +| Value | Name | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_DO_REPOSITION_FLAGS_CHANGE_MODE](#MAV_DO_REPOSITION_FLAGS_CHANGE_MODE) | The aircraft should immediately transition into guided. This should not be set for follow me applications | +| 2 | [MAV_DO_REPOSITION_FLAGS_RELATIVE_YAW](#MAV_DO_REPOSITION_FLAGS_RELATIVE_YAW) | Yaw relative to the vehicle current heading (if not set, relative to North). | ### SPEED_TYPE {#SPEED_TYPE} Speed setpoint types used in [MAV_CMD_DO_CHANGE_SPEED](#MAV_CMD_DO_CHANGE_SPEED) -Value | Name | Description ---- | --- | --- -0 | [SPEED_TYPE_AIRSPEED](#SPEED_TYPE_AIRSPEED) | Airspeed -1 | [SPEED_TYPE_GROUNDSPEED](#SPEED_TYPE_GROUNDSPEED) | Groundspeed -2 | [SPEED_TYPE_CLIMB_SPEED](#SPEED_TYPE_CLIMB_SPEED) | Climb speed -3 | [SPEED_TYPE_DESCENT_SPEED](#SPEED_TYPE_DESCENT_SPEED) | Descent speed +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ------------- | +| 0 | [SPEED_TYPE_AIRSPEED](#SPEED_TYPE_AIRSPEED) | Airspeed | +| 1 | [SPEED_TYPE_GROUNDSPEED](#SPEED_TYPE_GROUNDSPEED) | Groundspeed | +| 2 | [SPEED_TYPE_CLIMB_SPEED](#SPEED_TYPE_CLIMB_SPEED) | Climb speed | +| 3 | [SPEED_TYPE_DESCENT_SPEED](#SPEED_TYPE_DESCENT_SPEED) | Descent speed | ### HEADING_TYPE {#HEADING_TYPE} Heading setpoint types used in [MAV_CMD_GUIDED_CHANGE_HEADING](#MAV_CMD_GUIDED_CHANGE_HEADING) -Value | Name | Description ---- | --- | --- -0 | [HEADING_TYPE_COURSE_OVER_GROUND](#HEADING_TYPE_COURSE_OVER_GROUND) | Course over ground. -1 | [HEADING_TYPE_HEADING](#HEADING_TYPE_HEADING) | Raw vehicle heading. -2 | [HEADING_TYPE_DEFAULT](#HEADING_TYPE_DEFAULT) | Default heading. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | -------------------- | +| 0 | [HEADING_TYPE_COURSE_OVER_GROUND](#HEADING_TYPE_COURSE_OVER_GROUND) | Course over ground. | +| 1 | [HEADING_TYPE_HEADING](#HEADING_TYPE_HEADING) | Raw vehicle heading. | +| 2 | [HEADING_TYPE_DEFAULT](#HEADING_TYPE_DEFAULT) | Default heading. | ### ESTIMATOR_STATUS_FLAGS {#ESTIMATOR_STATUS_FLAGS} (Bitmask) Flags in [ESTIMATOR_STATUS](#ESTIMATOR_STATUS) message -Value | Name | Description ---- | --- | --- -1 | [ESTIMATOR_ATTITUDE](#ESTIMATOR_ATTITUDE) | True if the attitude estimate is good -2 | [ESTIMATOR_VELOCITY_HORIZ](#ESTIMATOR_VELOCITY_HORIZ) | True if the horizontal velocity estimate is good -4 | [ESTIMATOR_VELOCITY_VERT](#ESTIMATOR_VELOCITY_VERT) | True if the vertical velocity estimate is good -8 | [ESTIMATOR_POS_HORIZ_REL](#ESTIMATOR_POS_HORIZ_REL) | True if the horizontal position (relative) estimate is good -16 | [ESTIMATOR_POS_HORIZ_ABS](#ESTIMATOR_POS_HORIZ_ABS) | True if the horizontal position (absolute) estimate is good -32 | [ESTIMATOR_POS_VERT_ABS](#ESTIMATOR_POS_VERT_ABS) | True if the vertical position (absolute) estimate is good -64 | [ESTIMATOR_POS_VERT_AGL](#ESTIMATOR_POS_VERT_AGL) | True if the vertical position (above ground) estimate is good -128 | [ESTIMATOR_CONST_POS_MODE](#ESTIMATOR_CONST_POS_MODE) | True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) -256 | [ESTIMATOR_PRED_POS_HORIZ_REL](#ESTIMATOR_PRED_POS_HORIZ_REL) | True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate -512 | [ESTIMATOR_PRED_POS_HORIZ_ABS](#ESTIMATOR_PRED_POS_HORIZ_ABS) | True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate -1024 | [ESTIMATOR_GPS_GLITCH](#ESTIMATOR_GPS_GLITCH) | True if the EKF has detected a GPS glitch -2048 | [ESTIMATOR_ACCEL_ERROR](#ESTIMATOR_ACCEL_ERROR) | True if the EKF has detected bad accelerometer data +| Value | Name | Description | +| -------------------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | +| 1 | [ESTIMATOR_ATTITUDE](#ESTIMATOR_ATTITUDE) | True if the attitude estimate is good | +| 2 | [ESTIMATOR_VELOCITY_HORIZ](#ESTIMATOR_VELOCITY_HORIZ) | True if the horizontal velocity estimate is good | +| 4 | [ESTIMATOR_VELOCITY_VERT](#ESTIMATOR_VELOCITY_VERT) | True if the vertical velocity estimate is good | +| 8 | [ESTIMATOR_POS_HORIZ_REL](#ESTIMATOR_POS_HORIZ_REL) | True if the horizontal position (relative) estimate is good | +| 16 | [ESTIMATOR_POS_HORIZ_ABS](#ESTIMATOR_POS_HORIZ_ABS) | True if the horizontal position (absolute) estimate is good | +| 32 | [ESTIMATOR_POS_VERT_ABS](#ESTIMATOR_POS_VERT_ABS) | True if the vertical position (absolute) estimate is good | +| 64 | [ESTIMATOR_POS_VERT_AGL](#ESTIMATOR_POS_VERT_AGL) | True if the vertical position (above ground) estimate is good | +| 128 | [ESTIMATOR_CONST_POS_MODE](#ESTIMATOR_CONST_POS_MODE) | True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) | +| 256 | [ESTIMATOR_PRED_POS_HORIZ_REL](#ESTIMATOR_PRED_POS_HORIZ_REL) | True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate | +| 512 | [ESTIMATOR_PRED_POS_HORIZ_ABS](#ESTIMATOR_PRED_POS_HORIZ_ABS) | True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate | +| 1024 | [ESTIMATOR_GPS_GLITCH](#ESTIMATOR_GPS_GLITCH) | True if the EKF has detected a GPS glitch | +| 2048 | [ESTIMATOR_ACCEL_ERROR](#ESTIMATOR_ACCEL_ERROR) | True if the EKF has detected bad accelerometer data | ### MOTOR_TEST_ORDER {#MOTOR_TEST_ORDER} Sequence that motors are tested when using [MAV_CMD_DO_MOTOR_TEST](#MAV_CMD_DO_MOTOR_TEST). -Value | Name | Description ---- | --- | --- -0 | [MOTOR_TEST_ORDER_DEFAULT](#MOTOR_TEST_ORDER_DEFAULT) | Default autopilot motor test method. -1 | [MOTOR_TEST_ORDER_SEQUENCE](#MOTOR_TEST_ORDER_SEQUENCE) | Motor numbers are specified as their index in a predefined vehicle-specific sequence. -2 | [MOTOR_TEST_ORDER_BOARD](#MOTOR_TEST_ORDER_BOARD) | Motor numbers are specified as the output as labeled on the board. +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| 0 | [MOTOR_TEST_ORDER_DEFAULT](#MOTOR_TEST_ORDER_DEFAULT) | Default autopilot motor test method. | +| 1 | [MOTOR_TEST_ORDER_SEQUENCE](#MOTOR_TEST_ORDER_SEQUENCE) | Motor numbers are specified as their index in a predefined vehicle-specific sequence. | +| 2 | [MOTOR_TEST_ORDER_BOARD](#MOTOR_TEST_ORDER_BOARD) | Motor numbers are specified as the output as labeled on the board. | ### MOTOR_TEST_THROTTLE_TYPE {#MOTOR_TEST_THROTTLE_TYPE} Defines how throttle value is represented in [MAV_CMD_DO_MOTOR_TEST](#MAV_CMD_DO_MOTOR_TEST). -Value | Name | Description ---- | --- | --- -0 | [MOTOR_TEST_THROTTLE_PERCENT](#MOTOR_TEST_THROTTLE_PERCENT) | Throttle as a percentage (0 ~ 100) -1 | [MOTOR_TEST_THROTTLE_PWM](#MOTOR_TEST_THROTTLE_PWM) | Throttle as an absolute PWM value (normally in range of 1000~2000). -2 | [MOTOR_TEST_THROTTLE_PILOT](#MOTOR_TEST_THROTTLE_PILOT) | Throttle pass-through from pilot's transmitter. -3 | [MOTOR_TEST_COMPASS_CAL](#MOTOR_TEST_COMPASS_CAL) | Per-motor compass calibration test. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------- | +| 0 | [MOTOR_TEST_THROTTLE_PERCENT](#MOTOR_TEST_THROTTLE_PERCENT) | Throttle as a percentage (0 ~ 100) | +| 1 | [MOTOR_TEST_THROTTLE_PWM](#MOTOR_TEST_THROTTLE_PWM) | Throttle as an absolute PWM value (normally in range of 1000~2000). | +| 2 | [MOTOR_TEST_THROTTLE_PILOT](#MOTOR_TEST_THROTTLE_PILOT) | Throttle pass-through from pilot's transmitter. | +| 3 | [MOTOR_TEST_COMPASS_CAL](#MOTOR_TEST_COMPASS_CAL) | Per-motor compass calibration test. | ### GPS_INPUT_IGNORE_FLAGS {#GPS_INPUT_IGNORE_FLAGS} -(Bitmask) +(Bitmask) -Value | Name | Description ---- | --- | --- -1 | [GPS_INPUT_IGNORE_FLAG_ALT](#GPS_INPUT_IGNORE_FLAG_ALT) | ignore altitude field -2 | [GPS_INPUT_IGNORE_FLAG_HDOP](#GPS_INPUT_IGNORE_FLAG_HDOP) | ignore hdop field -4 | [GPS_INPUT_IGNORE_FLAG_VDOP](#GPS_INPUT_IGNORE_FLAG_VDOP) | ignore vdop field -8 | [GPS_INPUT_IGNORE_FLAG_VEL_HORIZ](#GPS_INPUT_IGNORE_FLAG_VEL_HORIZ) | ignore horizontal velocity field (vn and ve) -16 | [GPS_INPUT_IGNORE_FLAG_VEL_VERT](#GPS_INPUT_IGNORE_FLAG_VEL_VERT) | ignore vertical velocity field (vd) -32 | [GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY](#GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY) | ignore speed accuracy field -64 | [GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY](#GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY) | ignore horizontal accuracy field -128 | [GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY](#GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY) | ignore vertical accuracy field +| Value | Name | Description | +| -------------------------------------------------------- | --------------------------------------------------------------------------------------- | -------------------------------------------- | +| 1 | [GPS_INPUT_IGNORE_FLAG_ALT](#GPS_INPUT_IGNORE_FLAG_ALT) | ignore altitude field | +| 2 | [GPS_INPUT_IGNORE_FLAG_HDOP](#GPS_INPUT_IGNORE_FLAG_HDOP) | ignore hdop field | +| 4 | [GPS_INPUT_IGNORE_FLAG_VDOP](#GPS_INPUT_IGNORE_FLAG_VDOP) | ignore vdop field | +| 8 | [GPS_INPUT_IGNORE_FLAG_VEL_HORIZ](#GPS_INPUT_IGNORE_FLAG_VEL_HORIZ) | ignore horizontal velocity field (vn and ve) | +| 16 | [GPS_INPUT_IGNORE_FLAG_VEL_VERT](#GPS_INPUT_IGNORE_FLAG_VEL_VERT) | ignore vertical velocity field (vd) | +| 32 | [GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY](#GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY) | ignore speed accuracy field | +| 64 | [GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY](#GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY) | ignore horizontal accuracy field | +| 128 | [GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY](#GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY) | ignore vertical accuracy field | ### MAV_COLLISION_ACTION {#MAV_COLLISION_ACTION} Possible actions an aircraft can take to avoid a collision. -Value | Name | Description ---- | --- | --- -0 | [MAV_COLLISION_ACTION_NONE](#MAV_COLLISION_ACTION_NONE) | Ignore any potential collisions -1 | [MAV_COLLISION_ACTION_REPORT](#MAV_COLLISION_ACTION_REPORT) | Report potential collision -2 | [MAV_COLLISION_ACTION_ASCEND_OR_DESCEND](#MAV_COLLISION_ACTION_ASCEND_OR_DESCEND) | Ascend or Descend to avoid threat -3 | [MAV_COLLISION_ACTION_MOVE_HORIZONTALLY](#MAV_COLLISION_ACTION_MOVE_HORIZONTALLY) | Move horizontally to avoid threat -4 | [MAV_COLLISION_ACTION_MOVE_PERPENDICULAR](#MAV_COLLISION_ACTION_MOVE_PERPENDICULAR) | Aircraft to move perpendicular to the collision's velocity vector -5 | [MAV_COLLISION_ACTION_RTL](#MAV_COLLISION_ACTION_RTL) | Aircraft to fly directly back to its launch point -6 | [MAV_COLLISION_ACTION_HOVER](#MAV_COLLISION_ACTION_HOVER) | Aircraft to stop in place +| Value | Name | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------- | +| 0 | [MAV_COLLISION_ACTION_NONE](#MAV_COLLISION_ACTION_NONE) | Ignore any potential collisions | +| 1 | [MAV_COLLISION_ACTION_REPORT](#MAV_COLLISION_ACTION_REPORT) | Report potential collision | +| 2 | [MAV_COLLISION_ACTION_ASCEND_OR_DESCEND](#MAV_COLLISION_ACTION_ASCEND_OR_DESCEND) | Ascend or Descend to avoid threat | +| 3 | [MAV_COLLISION_ACTION_MOVE_HORIZONTALLY](#MAV_COLLISION_ACTION_MOVE_HORIZONTALLY) | Move horizontally to avoid threat | +| 4 | [MAV_COLLISION_ACTION_MOVE_PERPENDICULAR](#MAV_COLLISION_ACTION_MOVE_PERPENDICULAR) | Aircraft to move perpendicular to the collision's velocity vector | +| 5 | [MAV_COLLISION_ACTION_RTL](#MAV_COLLISION_ACTION_RTL) | Aircraft to fly directly back to its launch point | +| 6 | [MAV_COLLISION_ACTION_HOVER](#MAV_COLLISION_ACTION_HOVER) | Aircraft to stop in place | ### MAV_COLLISION_THREAT_LEVEL {#MAV_COLLISION_THREAT_LEVEL} Aircraft-rated danger from this threat. -Value | Name | Description ---- | --- | --- -0 | [MAV_COLLISION_THREAT_LEVEL_NONE](#MAV_COLLISION_THREAT_LEVEL_NONE) | Not a threat -1 | [MAV_COLLISION_THREAT_LEVEL_LOW](#MAV_COLLISION_THREAT_LEVEL_LOW) | Craft is mildly concerned about this threat -2 | [MAV_COLLISION_THREAT_LEVEL_HIGH](#MAV_COLLISION_THREAT_LEVEL_HIGH) | Craft is panicking, and may take actions to avoid threat +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | -------------------------------------------------------- | +| 0 | [MAV_COLLISION_THREAT_LEVEL_NONE](#MAV_COLLISION_THREAT_LEVEL_NONE) | Not a threat | +| 1 | [MAV_COLLISION_THREAT_LEVEL_LOW](#MAV_COLLISION_THREAT_LEVEL_LOW) | Craft is mildly concerned about this threat | +| 2 | [MAV_COLLISION_THREAT_LEVEL_HIGH](#MAV_COLLISION_THREAT_LEVEL_HIGH) | Craft is panicking, and may take actions to avoid threat | ### MAV_COLLISION_SRC {#MAV_COLLISION_SRC} Source of information about this collision. -Value | Name | Description ---- | --- | --- -0 | [MAV_COLLISION_SRC_ADSB](#MAV_COLLISION_SRC_ADSB) | ID field references [ADSB_VEHICLE](#ADSB_VEHICLE) packets -1 | [MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT](#MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT) | ID field references MAVLink SRC ID +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | --------------------------------------------------------- | +| 0 | [MAV_COLLISION_SRC_ADSB](#MAV_COLLISION_SRC_ADSB) | ID field references [ADSB_VEHICLE](#ADSB_VEHICLE) packets | +| 1 | [MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT](#MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT) | ID field references MAVLink SRC ID | ### GPS_FIX_TYPE {#GPS_FIX_TYPE} Type of GPS fix -Value | Name | Description ---- | --- | --- -0 | [GPS_FIX_TYPE_NO_GPS](#GPS_FIX_TYPE_NO_GPS) | No GPS connected -1 | [GPS_FIX_TYPE_NO_FIX](#GPS_FIX_TYPE_NO_FIX) | No position information, GPS is connected -2 | [GPS_FIX_TYPE_2D_FIX](#GPS_FIX_TYPE_2D_FIX) | 2D position -3 | [GPS_FIX_TYPE_3D_FIX](#GPS_FIX_TYPE_3D_FIX) | 3D position -4 | [GPS_FIX_TYPE_DGPS](#GPS_FIX_TYPE_DGPS) | DGPS/SBAS aided 3D position -5 | [GPS_FIX_TYPE_RTK_FLOAT](#GPS_FIX_TYPE_RTK_FLOAT) | RTK float, 3D position -6 | [GPS_FIX_TYPE_RTK_FIXED](#GPS_FIX_TYPE_RTK_FIXED) | RTK Fixed, 3D position -7 | [GPS_FIX_TYPE_STATIC](#GPS_FIX_TYPE_STATIC) | Static fixed, typically used for base stations -8 | [GPS_FIX_TYPE_PPP](#GPS_FIX_TYPE_PPP) | PPP, 3D position. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | ---------------------------------------------- | +| 0 | [GPS_FIX_TYPE_NO_GPS](#GPS_FIX_TYPE_NO_GPS) | No GPS connected | +| 1 | [GPS_FIX_TYPE_NO_FIX](#GPS_FIX_TYPE_NO_FIX) | No position information, GPS is connected | +| 2 | [GPS_FIX_TYPE_2D_FIX](#GPS_FIX_TYPE_2D_FIX) | 2D position | +| 3 | [GPS_FIX_TYPE_3D_FIX](#GPS_FIX_TYPE_3D_FIX) | 3D position | +| 4 | [GPS_FIX_TYPE_DGPS](#GPS_FIX_TYPE_DGPS) | DGPS/SBAS aided 3D position | +| 5 | [GPS_FIX_TYPE_RTK_FLOAT](#GPS_FIX_TYPE_RTK_FLOAT) | RTK float, 3D position | +| 6 | [GPS_FIX_TYPE_RTK_FIXED](#GPS_FIX_TYPE_RTK_FIXED) | RTK Fixed, 3D position | +| 7 | [GPS_FIX_TYPE_STATIC](#GPS_FIX_TYPE_STATIC) | Static fixed, typically used for base stations | +| 8 | [GPS_FIX_TYPE_PPP](#GPS_FIX_TYPE_PPP) | PPP, 3D position. | ### RTK_BASELINE_COORDINATE_SYSTEM {#RTK_BASELINE_COORDINATE_SYSTEM} RTK GPS baseline coordinate system, used for RTK corrections -Value | Name | Description ---- | --- | --- -0 | [RTK_BASELINE_COORDINATE_SYSTEM_ECEF](#RTK_BASELINE_COORDINATE_SYSTEM_ECEF) | Earth-centered, Earth-fixed -1 | [RTK_BASELINE_COORDINATE_SYSTEM_NED](#RTK_BASELINE_COORDINATE_SYSTEM_NED) | RTK basestation centered, north, east, down +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------- | +| 0 | [RTK_BASELINE_COORDINATE_SYSTEM_ECEF](#RTK_BASELINE_COORDINATE_SYSTEM_ECEF) | Earth-centered, Earth-fixed | +| 1 | [RTK_BASELINE_COORDINATE_SYSTEM_NED](#RTK_BASELINE_COORDINATE_SYSTEM_NED) | RTK basestation centered, north, east, down | ### LANDING_TARGET_TYPE {#LANDING_TARGET_TYPE} Type of landing target -Value | Name | Description ---- | --- | --- -0 | [LANDING_TARGET_TYPE_LIGHT_BEACON](#LANDING_TARGET_TYPE_LIGHT_BEACON) | Landing target signaled by light beacon (ex: IR-LOCK) -1 | [LANDING_TARGET_TYPE_RADIO_BEACON](#LANDING_TARGET_TYPE_RADIO_BEACON) | Landing target signaled by radio beacon (ex: ILS, NDB) -2 | [LANDING_TARGET_TYPE_VISION_FIDUCIAL](#LANDING_TARGET_TYPE_VISION_FIDUCIAL) | Landing target represented by a fiducial marker (ex: ARTag) -3 | [LANDING_TARGET_TYPE_VISION_OTHER](#LANDING_TARGET_TYPE_VISION_OTHER) | Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| 0 | [LANDING_TARGET_TYPE_LIGHT_BEACON](#LANDING_TARGET_TYPE_LIGHT_BEACON) | Landing target signaled by light beacon (ex: IR-LOCK) | +| 1 | [LANDING_TARGET_TYPE_RADIO_BEACON](#LANDING_TARGET_TYPE_RADIO_BEACON) | Landing target signaled by radio beacon (ex: ILS, NDB) | +| 2 | [LANDING_TARGET_TYPE_VISION_FIDUCIAL](#LANDING_TARGET_TYPE_VISION_FIDUCIAL) | Landing target represented by a fiducial marker (ex: ARTag) | +| 3 | [LANDING_TARGET_TYPE_VISION_OTHER](#LANDING_TARGET_TYPE_VISION_OTHER) | Landing target represented by a pre-defined visual shape/feature (ex: X-marker, H-marker, square) | ### VTOL_TRANSITION_HEADING {#VTOL_TRANSITION_HEADING} Direction of VTOL transition -Value | Name | Description ---- | --- | --- -0 | [VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT](#VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT) | Respect the heading configuration of the vehicle. -1 | [VTOL_TRANSITION_HEADING_NEXT_WAYPOINT](#VTOL_TRANSITION_HEADING_NEXT_WAYPOINT) | Use the heading pointing towards the next waypoint. -2 | [VTOL_TRANSITION_HEADING_TAKEOFF](#VTOL_TRANSITION_HEADING_TAKEOFF) | Use the heading on takeoff (while sitting on the ground). -3 | [VTOL_TRANSITION_HEADING_SPECIFIED](#VTOL_TRANSITION_HEADING_SPECIFIED) | Use the specified heading in parameter 4. -4 | [VTOL_TRANSITION_HEADING_ANY](#VTOL_TRANSITION_HEADING_ANY) | Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). +| Value | Name | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | +| 0 | [VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT](#VTOL_TRANSITION_HEADING_VEHICLE_DEFAULT) | Respect the heading configuration of the vehicle. | +| 1 | [VTOL_TRANSITION_HEADING_NEXT_WAYPOINT](#VTOL_TRANSITION_HEADING_NEXT_WAYPOINT) | Use the heading pointing towards the next waypoint. | +| 2 | [VTOL_TRANSITION_HEADING_TAKEOFF](#VTOL_TRANSITION_HEADING_TAKEOFF) | Use the heading on takeoff (while sitting on the ground). | +| 3 | [VTOL_TRANSITION_HEADING_SPECIFIED](#VTOL_TRANSITION_HEADING_SPECIFIED) | Use the specified heading in parameter 4. | +| 4 | [VTOL_TRANSITION_HEADING_ANY](#VTOL_TRANSITION_HEADING_ANY) | Use the current heading when reaching takeoff altitude (potentially facing the wind when weather-vaning is active). | ### CAMERA_CAP_FLAGS {#CAMERA_CAP_FLAGS} (Bitmask) Camera capability flags (Bitmap) -Value | Name | Description ---- | --- | --- -1 | [CAMERA_CAP_FLAGS_CAPTURE_VIDEO](#CAMERA_CAP_FLAGS_CAPTURE_VIDEO) | Camera is able to record video -2 | [CAMERA_CAP_FLAGS_CAPTURE_IMAGE](#CAMERA_CAP_FLAGS_CAPTURE_IMAGE) | Camera is able to capture images -4 | [CAMERA_CAP_FLAGS_HAS_MODES](#CAMERA_CAP_FLAGS_HAS_MODES) | Camera has separate Video and Image/Photo modes ([MAV_CMD_SET_CAMERA_MODE](#MAV_CMD_SET_CAMERA_MODE)) -8 | [CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE](#CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE) | Camera can capture images while in video mode -16 | [CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE](#CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE) | Camera can capture videos while in Photo/Image mode -32 | [CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE](#CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE) | Camera has image survey mode ([MAV_CMD_SET_CAMERA_MODE](#MAV_CMD_SET_CAMERA_MODE)) -64 | [CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM](#CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM) | Camera has basic zoom control ([MAV_CMD_SET_CAMERA_ZOOM](#MAV_CMD_SET_CAMERA_ZOOM)) -128 | [CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS](#CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS) | Camera has basic focus control ([MAV_CMD_SET_CAMERA_FOCUS](#MAV_CMD_SET_CAMERA_FOCUS)) -256 | [CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM](#CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM) | Camera has video streaming capabilities (request [VIDEO_STREAM_INFORMATION](#VIDEO_STREAM_INFORMATION) with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) for video streaming info) -512 | [CAMERA_CAP_FLAGS_HAS_TRACKING_POINT](#CAMERA_CAP_FLAGS_HAS_TRACKING_POINT) | Camera supports tracking of a point on the camera view. -1024 | [CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE](#CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE) | Camera supports tracking of a selection rectangle on the camera view. -2048 | [CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS](#CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS) | Camera supports tracking geo status ([CAMERA_TRACKING_GEO_STATUS](#CAMERA_TRACKING_GEO_STATUS)). -4096 | [CAMERA_CAP_FLAGS_HAS_THERMAL_RANGE](#CAMERA_CAP_FLAGS_HAS_THERMAL_RANGE) | Camera supports absolute thermal range (request [CAMERA_THERMAL_RANGE](#CAMERA_THERMAL_RANGE) with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE)). -8192 | [CAMERA_CAP_FLAGS_HAS_MTI](#CAMERA_CAP_FLAGS_HAS_MTI) | Camera supports Moving Target Indicators (MTI) on the camera view (using [MAV_CMD_CAMERA_START_MTI](#MAV_CMD_CAMERA_START_MTI)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). +| Value | Name | Description | +| --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [CAMERA_CAP_FLAGS_CAPTURE_VIDEO](#CAMERA_CAP_FLAGS_CAPTURE_VIDEO) | Camera is able to record video | +| 2 | [CAMERA_CAP_FLAGS_CAPTURE_IMAGE](#CAMERA_CAP_FLAGS_CAPTURE_IMAGE) | Camera is able to capture images | +| 4 | [CAMERA_CAP_FLAGS_HAS_MODES](#CAMERA_CAP_FLAGS_HAS_MODES) | Camera has separate Video and Image/Photo modes ([MAV_CMD_SET_CAMERA_MODE](#MAV_CMD_SET_CAMERA_MODE)) | +| 8 | [CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE](#CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE) | Camera can capture images while in video mode | +| 16 | [CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE](#CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE) | Camera can capture videos while in Photo/Image mode | +| 32 | [CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE](#CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE) | Camera has image survey mode ([MAV_CMD_SET_CAMERA_MODE](#MAV_CMD_SET_CAMERA_MODE)) | +| 64 | [CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM](#CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM) | Camera has basic zoom control ([MAV_CMD_SET_CAMERA_ZOOM](#MAV_CMD_SET_CAMERA_ZOOM)) | +| 128 | [CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS](#CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS) | Camera has basic focus control ([MAV_CMD_SET_CAMERA_FOCUS](#MAV_CMD_SET_CAMERA_FOCUS)) | +| 256 | [CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM](#CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM) | Camera has video streaming capabilities (request [VIDEO_STREAM_INFORMATION](#VIDEO_STREAM_INFORMATION) with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) for video streaming info) | +| 512 | [CAMERA_CAP_FLAGS_HAS_TRACKING_POINT](#CAMERA_CAP_FLAGS_HAS_TRACKING_POINT) | Camera supports tracking of a point on the camera view. | +| 1024 | [CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE](#CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE) | Camera supports tracking of a selection rectangle on the camera view. | +| 2048 | [CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS](#CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS) | Camera supports tracking geo status ([CAMERA_TRACKING_GEO_STATUS](#CAMERA_TRACKING_GEO_STATUS)). | +| 4096 | [CAMERA_CAP_FLAGS_HAS_THERMAL_RANGE](#CAMERA_CAP_FLAGS_HAS_THERMAL_RANGE) | Camera supports absolute thermal range (request [CAMERA_THERMAL_RANGE](#CAMERA_THERMAL_RANGE) with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE)). | +| 8192 | [CAMERA_CAP_FLAGS_HAS_MTI](#CAMERA_CAP_FLAGS_HAS_MTI) | Camera supports Moving Target Indicators (MTI) on the camera view (using [MAV_CMD_CAMERA_START_MTI](#MAV_CMD_CAMERA_START_MTI)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | ### VIDEO_STREAM_STATUS_FLAGS {#VIDEO_STREAM_STATUS_FLAGS} (Bitmask) Stream status flags (Bitmap) -Value | Name | Description ---- | --- | --- -1 | [VIDEO_STREAM_STATUS_FLAGS_RUNNING](#VIDEO_STREAM_STATUS_FLAGS_RUNNING) | Stream is active (running) -2 | [VIDEO_STREAM_STATUS_FLAGS_THERMAL](#VIDEO_STREAM_STATUS_FLAGS_THERMAL) | Stream is thermal imaging -4 | [VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED](#VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED) | Stream can report absolute thermal range (see [CAMERA_THERMAL_RANGE](#CAMERA_THERMAL_RANGE)). +| Value | Name | Description | +| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | +| 1 | [VIDEO_STREAM_STATUS_FLAGS_RUNNING](#VIDEO_STREAM_STATUS_FLAGS_RUNNING) | Stream is active (running) | +| 2 | [VIDEO_STREAM_STATUS_FLAGS_THERMAL](#VIDEO_STREAM_STATUS_FLAGS_THERMAL) | Stream is thermal imaging | +| 4 | [VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED](#VIDEO_STREAM_STATUS_FLAGS_THERMAL_RANGE_ENABLED) | Stream can report absolute thermal range (see [CAMERA_THERMAL_RANGE](#CAMERA_THERMAL_RANGE)). | ### VIDEO_STREAM_TYPE {#VIDEO_STREAM_TYPE} Video stream types -Value | Name | Description ---- | --- | --- -0 | [VIDEO_STREAM_TYPE_RTSP](#VIDEO_STREAM_TYPE_RTSP) | Stream is RTSP -1 | [VIDEO_STREAM_TYPE_RTPUDP](#VIDEO_STREAM_TYPE_RTPUDP) | Stream is RTP UDP (URI gives the port number) -2 | [VIDEO_STREAM_TYPE_TCP_MPEG](#VIDEO_STREAM_TYPE_TCP_MPEG) | Stream is MPEG on TCP -3 | [VIDEO_STREAM_TYPE_MPEG_TS](#VIDEO_STREAM_TYPE_MPEG_TS) | Stream is MPEG TS (URI gives the port number) -4 | [VIDEO_STREAM_TYPE_WHEP](#VIDEO_STREAM_TYPE_WHEP) | Stream is WHEP (WebRTC-HTTP Egress Protocol) +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | --------------------------------------------- | +| 0 | [VIDEO_STREAM_TYPE_RTSP](#VIDEO_STREAM_TYPE_RTSP) | Stream is RTSP | +| 1 | [VIDEO_STREAM_TYPE_RTPUDP](#VIDEO_STREAM_TYPE_RTPUDP) | Stream is RTP UDP (URI gives the port number) | +| 2 | [VIDEO_STREAM_TYPE_TCP_MPEG](#VIDEO_STREAM_TYPE_TCP_MPEG) | Stream is MPEG on TCP | +| 3 | [VIDEO_STREAM_TYPE_MPEG_TS](#VIDEO_STREAM_TYPE_MPEG_TS) | Stream is MPEG TS (URI gives the port number) | +| 4 | [VIDEO_STREAM_TYPE_WHEP](#VIDEO_STREAM_TYPE_WHEP) | Stream is WHEP (WebRTC-HTTP Egress Protocol) | ### VIDEO_STREAM_ENCODING {#VIDEO_STREAM_ENCODING} Video stream encodings -Value | Name | Description ---- | --- | --- -0 | [VIDEO_STREAM_ENCODING_UNKNOWN](#VIDEO_STREAM_ENCODING_UNKNOWN) | Stream encoding is unknown -1 | [VIDEO_STREAM_ENCODING_H264](#VIDEO_STREAM_ENCODING_H264) | Stream encoding is H.264 -2 | [VIDEO_STREAM_ENCODING_H265](#VIDEO_STREAM_ENCODING_H265) | Stream encoding is H.265 +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | -------------------------- | +| 0 | [VIDEO_STREAM_ENCODING_UNKNOWN](#VIDEO_STREAM_ENCODING_UNKNOWN) | Stream encoding is unknown | +| 1 | [VIDEO_STREAM_ENCODING_H264](#VIDEO_STREAM_ENCODING_H264) | Stream encoding is H.264 | +| 2 | [VIDEO_STREAM_ENCODING_H265](#VIDEO_STREAM_ENCODING_H265) | Stream encoding is H.265 | ### CAMERA_TRACKING_STATUS_FLAGS {#CAMERA_TRACKING_STATUS_FLAGS} (Bitmask) Camera tracking status flags -Value | Name | Description ---- | --- | --- -0 | [CAMERA_TRACKING_STATUS_FLAGS_IDLE](#CAMERA_TRACKING_STATUS_FLAGS_IDLE) | Camera is not tracking -1 | [CAMERA_TRACKING_STATUS_FLAGS_ACTIVE](#CAMERA_TRACKING_STATUS_FLAGS_ACTIVE) | Camera is tracking -2 | [CAMERA_TRACKING_STATUS_FLAGS_ERROR](#CAMERA_TRACKING_STATUS_FLAGS_ERROR) | Camera tracking in error state -4 | [CAMERA_TRACKING_STATUS_FLAGS_MTI](#CAMERA_TRACKING_STATUS_FLAGS_MTI) | Camera Moving Target Indicators (MTI) are active
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). -8 | [CAMERA_TRACKING_STATUS_FLAGS_COASTING](#CAMERA_TRACKING_STATUS_FLAGS_COASTING) | Camera tracking target is obscured and is being predicted
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [CAMERA_TRACKING_STATUS_FLAGS_IDLE](#CAMERA_TRACKING_STATUS_FLAGS_IDLE) | Camera is not tracking | +| 1 | [CAMERA_TRACKING_STATUS_FLAGS_ACTIVE](#CAMERA_TRACKING_STATUS_FLAGS_ACTIVE) | Camera is tracking | +| 2 | [CAMERA_TRACKING_STATUS_FLAGS_ERROR](#CAMERA_TRACKING_STATUS_FLAGS_ERROR) | Camera tracking in error state | +| 4 | [CAMERA_TRACKING_STATUS_FLAGS_MTI](#CAMERA_TRACKING_STATUS_FLAGS_MTI) | Camera Moving Target Indicators (MTI) are active
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | +| 8 | [CAMERA_TRACKING_STATUS_FLAGS_COASTING](#CAMERA_TRACKING_STATUS_FLAGS_COASTING) | Camera tracking target is obscured and is being predicted
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | ### CAMERA_TRACKING_MODE {#CAMERA_TRACKING_MODE} Camera tracking modes -Value | Name | Description ---- | --- | --- -0 | [CAMERA_TRACKING_MODE_NONE](#CAMERA_TRACKING_MODE_NONE) | Not tracking -1 | [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) | Target is a point -2 | [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) | Target is a rectangle +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | --------------------- | +| 0 | [CAMERA_TRACKING_MODE_NONE](#CAMERA_TRACKING_MODE_NONE) | Not tracking | +| 1 | [CAMERA_TRACKING_MODE_POINT](#CAMERA_TRACKING_MODE_POINT) | Target is a point | +| 2 | [CAMERA_TRACKING_MODE_RECTANGLE](#CAMERA_TRACKING_MODE_RECTANGLE) | Target is a rectangle | ### CAMERA_TRACKING_TARGET_DATA {#CAMERA_TRACKING_TARGET_DATA} (Bitmask) Camera tracking target data (shows where tracked target is within image) -Value | Name | Description ---- | --- | --- -1 | [CAMERA_TRACKING_TARGET_DATA_EMBEDDED](#CAMERA_TRACKING_TARGET_DATA_EMBEDDED) | Target data embedded in image data (proprietary) -2 | [CAMERA_TRACKING_TARGET_DATA_RENDERED](#CAMERA_TRACKING_TARGET_DATA_RENDERED) | Target data rendered in image -4 | [CAMERA_TRACKING_TARGET_DATA_IN_STATUS](#CAMERA_TRACKING_TARGET_DATA_IN_STATUS) | Target data within status message (Point or Rectangle) +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------ | +| 1 | [CAMERA_TRACKING_TARGET_DATA_EMBEDDED](#CAMERA_TRACKING_TARGET_DATA_EMBEDDED) | Target data embedded in image data (proprietary) | +| 2 | [CAMERA_TRACKING_TARGET_DATA_RENDERED](#CAMERA_TRACKING_TARGET_DATA_RENDERED) | Target data rendered in image | +| 4 | [CAMERA_TRACKING_TARGET_DATA_IN_STATUS](#CAMERA_TRACKING_TARGET_DATA_IN_STATUS) | Target data within status message (Point or Rectangle) | ### CAMERA_ZOOM_TYPE {#CAMERA_ZOOM_TYPE} Zoom types for [MAV_CMD_SET_CAMERA_ZOOM](#MAV_CMD_SET_CAMERA_ZOOM) -Value | Name | Description ---- | --- | --- -0 | [ZOOM_TYPE_STEP](#ZOOM_TYPE_STEP) | Zoom one step increment (-1 for wide, 1 for tele) -1 | [ZOOM_TYPE_CONTINUOUS](#ZOOM_TYPE_CONTINUOUS) | Continuous normalized zoom in/out rate until stopped. Range -1..1, negative: wide, positive: narrow/tele, 0 to stop zooming. Other values should be clipped to the range. -2 | [ZOOM_TYPE_RANGE](#ZOOM_TYPE_RANGE) | Zoom value as proportion of full camera range (a percentage value between 0.0 and 100.0) -3 | [ZOOM_TYPE_FOCAL_LENGTH](#ZOOM_TYPE_FOCAL_LENGTH) | Zoom value/variable focal length in millimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) -4 | [ZOOM_TYPE_HORIZONTAL_FOV](#ZOOM_TYPE_HORIZONTAL_FOV) | Zoom value as horizontal field of view in degrees. +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [ZOOM_TYPE_STEP](#ZOOM_TYPE_STEP) | Zoom one step increment (-1 for wide, 1 for tele) | +| 1 | [ZOOM_TYPE_CONTINUOUS](#ZOOM_TYPE_CONTINUOUS) | Continuous normalized zoom in/out rate until stopped. Range -1..1, negative: wide, positive: narrow/tele, 0 to stop zooming. Other values should be clipped to the range. | +| 2 | [ZOOM_TYPE_RANGE](#ZOOM_TYPE_RANGE) | Zoom value as proportion of full camera range (a percentage value between 0.0 and 100.0) | +| 3 | [ZOOM_TYPE_FOCAL_LENGTH](#ZOOM_TYPE_FOCAL_LENGTH) | Zoom value/variable focal length in millimetres. Note that there is no message to get the valid zoom range of the camera, so this can type can only be used for cameras where the zoom range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera) | +| 4 | [ZOOM_TYPE_HORIZONTAL_FOV](#ZOOM_TYPE_HORIZONTAL_FOV) | Zoom value as horizontal field of view in degrees. | ### SET_FOCUS_TYPE {#SET_FOCUS_TYPE} Focus types for [MAV_CMD_SET_CAMERA_FOCUS](#MAV_CMD_SET_CAMERA_FOCUS) -Value | Name | Description ---- | --- | --- -0 | [FOCUS_TYPE_STEP](#FOCUS_TYPE_STEP) | Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). -1 | [FOCUS_TYPE_CONTINUOUS](#FOCUS_TYPE_CONTINUOUS) | Continuous normalized focus in/out rate until stopped. Range -1..1, negative: in, positive: out towards infinity, 0 to stop focusing. Other values should be clipped to the range. -2 | [FOCUS_TYPE_RANGE](#FOCUS_TYPE_RANGE) | Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) -3 | [FOCUS_TYPE_METERS](#FOCUS_TYPE_METERS) | Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). -4 | [FOCUS_TYPE_AUTO](#FOCUS_TYPE_AUTO) | Focus automatically. -5 | [FOCUS_TYPE_AUTO_SINGLE](#FOCUS_TYPE_AUTO_SINGLE) | Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. -6 | [FOCUS_TYPE_AUTO_CONTINUOUS](#FOCUS_TYPE_AUTO_CONTINUOUS) | Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [FOCUS_TYPE_STEP](#FOCUS_TYPE_STEP) | Focus one step increment (-1 for focusing in, 1 for focusing out towards infinity). | +| 1 | [FOCUS_TYPE_CONTINUOUS](#FOCUS_TYPE_CONTINUOUS) | Continuous normalized focus in/out rate until stopped. Range -1..1, negative: in, positive: out towards infinity, 0 to stop focusing. Other values should be clipped to the range. | +| 2 | [FOCUS_TYPE_RANGE](#FOCUS_TYPE_RANGE) | Focus value as proportion of full camera focus range (a value between 0.0 and 100.0) | +| 3 | [FOCUS_TYPE_METERS](#FOCUS_TYPE_METERS) | Focus value in metres. Note that there is no message to get the valid focus range of the camera, so this can type can only be used for cameras where the range is known (implying that this cannot reliably be used in a GCS for an arbitrary camera). | +| 4 | [FOCUS_TYPE_AUTO](#FOCUS_TYPE_AUTO) | Focus automatically. | +| 5 | [FOCUS_TYPE_AUTO_SINGLE](#FOCUS_TYPE_AUTO_SINGLE) | Single auto focus. Mainly used for still pictures. Usually abbreviated as AF-S. | +| 6 | [FOCUS_TYPE_AUTO_CONTINUOUS](#FOCUS_TYPE_AUTO_CONTINUOUS) | Continuous auto focus. Mainly used for dynamic scenes. Abbreviated as AF-C. | ### CAMERA_SOURCE {#CAMERA_SOURCE} Camera sources for [MAV_CMD_SET_CAMERA_SOURCE](#MAV_CMD_SET_CAMERA_SOURCE) -Value | Name | Description ---- | --- | --- -0 | [CAMERA_SOURCE_DEFAULT](#CAMERA_SOURCE_DEFAULT) | Default camera source. -1 | [CAMERA_SOURCE_RGB](#CAMERA_SOURCE_RGB) | RGB camera source. -2 | [CAMERA_SOURCE_IR](#CAMERA_SOURCE_IR) | IR camera source. -3 | [CAMERA_SOURCE_NDVI](#CAMERA_SOURCE_NDVI) | NDVI camera source. +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | ---------------------- | +| 0 | [CAMERA_SOURCE_DEFAULT](#CAMERA_SOURCE_DEFAULT) | Default camera source. | +| 1 | [CAMERA_SOURCE_RGB](#CAMERA_SOURCE_RGB) | RGB camera source. | +| 2 | [CAMERA_SOURCE_IR](#CAMERA_SOURCE_IR) | IR camera source. | +| 3 | [CAMERA_SOURCE_NDVI](#CAMERA_SOURCE_NDVI) | NDVI camera source. | ### PARAM_ACK {#PARAM_ACK} Result from [PARAM_EXT_SET](#PARAM_EXT_SET) message. -Value | Name | Description ---- | --- | --- -0 | [PARAM_ACK_ACCEPTED](#PARAM_ACK_ACCEPTED) | Parameter value ACCEPTED and SET -1 | [PARAM_ACK_VALUE_UNSUPPORTED](#PARAM_ACK_VALUE_UNSUPPORTED) | Parameter value UNKNOWN/UNSUPPORTED -2 | [PARAM_ACK_FAILED](#PARAM_ACK_FAILED) | Parameter failed to set -3 | [PARAM_ACK_IN_PROGRESS](#PARAM_ACK_IN_PROGRESS) | Parameter value received but not yet set/accepted. A subsequent [PARAM_EXT_ACK](#PARAM_EXT_ACK) with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating that the the parameter was received and does not need to be resent. +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [PARAM_ACK_ACCEPTED](#PARAM_ACK_ACCEPTED) | Parameter value ACCEPTED and SET | +| 1 | [PARAM_ACK_VALUE_UNSUPPORTED](#PARAM_ACK_VALUE_UNSUPPORTED) | Parameter value UNKNOWN/UNSUPPORTED | +| 2 | [PARAM_ACK_FAILED](#PARAM_ACK_FAILED) | Parameter failed to set | +| 3 | [PARAM_ACK_IN_PROGRESS](#PARAM_ACK_IN_PROGRESS) | Parameter value received but not yet set/accepted. A subsequent [PARAM_EXT_ACK](#PARAM_EXT_ACK) with the final result will follow once operation is completed. This is returned immediately for parameters that take longer to set, indicating that the the parameter was received and does not need to be resent. | ### CAMERA_MODE {#CAMERA_MODE} Camera Modes. -Value | Name | Description ---- | --- | --- -0 | [CAMERA_MODE_IMAGE](#CAMERA_MODE_IMAGE) | Camera is in image/photo capture mode. -1 | [CAMERA_MODE_VIDEO](#CAMERA_MODE_VIDEO) | Camera is in video capture mode. -2 | [CAMERA_MODE_IMAGE_SURVEY](#CAMERA_MODE_IMAGE_SURVEY) | Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. +| Value | Name | Description | +| -------------------------------------- | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | +| 0 | [CAMERA_MODE_IMAGE](#CAMERA_MODE_IMAGE) | Camera is in image/photo capture mode. | +| 1 | [CAMERA_MODE_VIDEO](#CAMERA_MODE_VIDEO) | Camera is in video capture mode. | +| 2 | [CAMERA_MODE_IMAGE_SURVEY](#CAMERA_MODE_IMAGE_SURVEY) | Camera is in image survey capture mode. It allows for camera controller to do specific settings for surveys. | ### MAV_ARM_AUTH_DENIED_REASON {#MAV_ARM_AUTH_DENIED_REASON} Reasons for denying an authorization request made with [MAV_CMD_ARM_AUTHORIZATION_REQUEST](#MAV_CMD_ARM_AUTHORIZATION_REQUEST). If the [COMMAND_ACK](#COMMAND_ACK) result is [MAV_RESULT_DENIED](#MAV_RESULT_DENIED), this is used to set the reason in the result_param2 field. -Value | Name | Description ---- | --- | --- -0 | [MAV_ARM_AUTH_DENIED_REASON_GENERIC](#MAV_ARM_AUTH_DENIED_REASON_GENERIC) | Not a specific reason -1 | [MAV_ARM_AUTH_DENIED_REASON_NONE](#MAV_ARM_AUTH_DENIED_REASON_NONE) | Authorizer will send the error as string to GCS -2 | [MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT](#MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT) | At least one waypoint have a invalid value -3 | [MAV_ARM_AUTH_DENIED_REASON_TIMEOUT](#MAV_ARM_AUTH_DENIED_REASON_TIMEOUT) | Timeout in the authorizer process(in case it depends on network) -4 | [MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE](#MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE) | Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. -5 | [MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER](#MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER) | Weather is not good to fly +| Value | Name | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_ARM_AUTH_DENIED_REASON_GENERIC](#MAV_ARM_AUTH_DENIED_REASON_GENERIC) | Not a specific reason | +| 1 | [MAV_ARM_AUTH_DENIED_REASON_NONE](#MAV_ARM_AUTH_DENIED_REASON_NONE) | Authorizer will send the error as string to GCS | +| 2 | [MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT](#MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT) | At least one waypoint have a invalid value | +| 3 | [MAV_ARM_AUTH_DENIED_REASON_TIMEOUT](#MAV_ARM_AUTH_DENIED_REASON_TIMEOUT) | Timeout in the authorizer process(in case it depends on network) | +| 4 | [MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE](#MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE) | Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. | +| 5 | [MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER](#MAV_ARM_AUTH_DENIED_REASON_BAD_WEATHER) | Weather is not good to fly | ### RC_TYPE {#RC_TYPE} RC type. Used in [MAV_CMD_START_RX_PAIR](#MAV_CMD_START_RX_PAIR). -Value | Name | Description ---- | --- | --- -0 | [RC_TYPE_SPEKTRUM](#RC_TYPE_SPEKTRUM) | Spektrum -1 | [RC_TYPE_CRSF](#RC_TYPE_CRSF) | CRSF +| Value | Name | Description | +| ------------------------------ | ------------------------------------- | ----------- | +| 0 | [RC_TYPE_SPEKTRUM](#RC_TYPE_SPEKTRUM) | Spektrum | +| 1 | [RC_TYPE_CRSF](#RC_TYPE_CRSF) | CRSF | ### RC_SUB_TYPE {#RC_SUB_TYPE} RC sub-type of types defined in [RC_TYPE](#RC_TYPE). Used in [MAV_CMD_START_RX_PAIR](#MAV_CMD_START_RX_PAIR). Ignored if value does not correspond to the set [RC_TYPE](#RC_TYPE). -Value | Name | Description ---- | --- | --- -0 | [RC_SUB_TYPE_SPEKTRUM_DSM2](#RC_SUB_TYPE_SPEKTRUM_DSM2) | Spektrum DSM2 -1 | [RC_SUB_TYPE_SPEKTRUM_DSMX](#RC_SUB_TYPE_SPEKTRUM_DSMX) | Spektrum DSMX -2 | [RC_SUB_TYPE_SPEKTRUM_DSMX8](#RC_SUB_TYPE_SPEKTRUM_DSMX8) | Spektrum DSMX8 +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | -------------- | +| 0 | [RC_SUB_TYPE_SPEKTRUM_DSM2](#RC_SUB_TYPE_SPEKTRUM_DSM2) | Spektrum DSM2 | +| 1 | [RC_SUB_TYPE_SPEKTRUM_DSMX](#RC_SUB_TYPE_SPEKTRUM_DSMX) | Spektrum DSMX | +| 2 | [RC_SUB_TYPE_SPEKTRUM_DSMX8](#RC_SUB_TYPE_SPEKTRUM_DSMX8) | Spektrum DSMX8 | ### ENGINE_CONTROL_OPTIONS {#ENGINE_CONTROL_OPTIONS} (Bitmask) Engine control options -Value | Name | Description ---- | --- | --- -1 | [ENGINE_CONTROL_OPTIONS_ALLOW_START_WHILE_DISARMED](#ENGINE_CONTROL_OPTIONS_ALLOW_START_WHILE_DISARMED) | Allow starting the engine while disarmed (without changing the vehicle's armed state). This effectively arms just the ICE, without arming the vehicle to start other motors or propellers. +| Value | Name | Description | +| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 1 | [ENGINE_CONTROL_OPTIONS_ALLOW_START_WHILE_DISARMED](#ENGINE_CONTROL_OPTIONS_ALLOW_START_WHILE_DISARMED) | Allow starting the engine while disarmed (without changing the vehicle's armed state). This effectively arms just the ICE, without arming the vehicle to start other motors or propellers. | ### POSITION_TARGET_TYPEMASK {#POSITION_TARGET_TYPEMASK} (Bitmask) Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b0000000000000000 or 0b0000001000000000 indicates that none of the setpoint dimensions should be ignored. If bit 9 is set the floats afx afy afz should be interpreted as force instead of acceleration. -Value | Name | Description ---- | --- | --- -1 | [POSITION_TARGET_TYPEMASK_X_IGNORE](#POSITION_TARGET_TYPEMASK_X_IGNORE) | Ignore position x -2 | [POSITION_TARGET_TYPEMASK_Y_IGNORE](#POSITION_TARGET_TYPEMASK_Y_IGNORE) | Ignore position y -4 | [POSITION_TARGET_TYPEMASK_Z_IGNORE](#POSITION_TARGET_TYPEMASK_Z_IGNORE) | Ignore position z -8 | [POSITION_TARGET_TYPEMASK_VX_IGNORE](#POSITION_TARGET_TYPEMASK_VX_IGNORE) | Ignore velocity x -16 | [POSITION_TARGET_TYPEMASK_VY_IGNORE](#POSITION_TARGET_TYPEMASK_VY_IGNORE) | Ignore velocity y -32 | [POSITION_TARGET_TYPEMASK_VZ_IGNORE](#POSITION_TARGET_TYPEMASK_VZ_IGNORE) | Ignore velocity z -64 | [POSITION_TARGET_TYPEMASK_AX_IGNORE](#POSITION_TARGET_TYPEMASK_AX_IGNORE) | Ignore acceleration x -128 | [POSITION_TARGET_TYPEMASK_AY_IGNORE](#POSITION_TARGET_TYPEMASK_AY_IGNORE) | Ignore acceleration y -256 | [POSITION_TARGET_TYPEMASK_AZ_IGNORE](#POSITION_TARGET_TYPEMASK_AZ_IGNORE) | Ignore acceleration z -512 | [POSITION_TARGET_TYPEMASK_FORCE_SET](#POSITION_TARGET_TYPEMASK_FORCE_SET) | Use force instead of acceleration -1024 | [POSITION_TARGET_TYPEMASK_YAW_IGNORE](#POSITION_TARGET_TYPEMASK_YAW_IGNORE) | Ignore yaw -2048 | [POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE](#POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE) | Ignore yaw rate +| Value | Name | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------- | +| 1 | [POSITION_TARGET_TYPEMASK_X_IGNORE](#POSITION_TARGET_TYPEMASK_X_IGNORE) | Ignore position x | +| 2 | [POSITION_TARGET_TYPEMASK_Y_IGNORE](#POSITION_TARGET_TYPEMASK_Y_IGNORE) | Ignore position y | +| 4 | [POSITION_TARGET_TYPEMASK_Z_IGNORE](#POSITION_TARGET_TYPEMASK_Z_IGNORE) | Ignore position z | +| 8 | [POSITION_TARGET_TYPEMASK_VX_IGNORE](#POSITION_TARGET_TYPEMASK_VX_IGNORE) | Ignore velocity x | +| 16 | [POSITION_TARGET_TYPEMASK_VY_IGNORE](#POSITION_TARGET_TYPEMASK_VY_IGNORE) | Ignore velocity y | +| 32 | [POSITION_TARGET_TYPEMASK_VZ_IGNORE](#POSITION_TARGET_TYPEMASK_VZ_IGNORE) | Ignore velocity z | +| 64 | [POSITION_TARGET_TYPEMASK_AX_IGNORE](#POSITION_TARGET_TYPEMASK_AX_IGNORE) | Ignore acceleration x | +| 128 | [POSITION_TARGET_TYPEMASK_AY_IGNORE](#POSITION_TARGET_TYPEMASK_AY_IGNORE) | Ignore acceleration y | +| 256 | [POSITION_TARGET_TYPEMASK_AZ_IGNORE](#POSITION_TARGET_TYPEMASK_AZ_IGNORE) | Ignore acceleration z | +| 512 | [POSITION_TARGET_TYPEMASK_FORCE_SET](#POSITION_TARGET_TYPEMASK_FORCE_SET) | Use force instead of acceleration | +| 1024 | [POSITION_TARGET_TYPEMASK_YAW_IGNORE](#POSITION_TARGET_TYPEMASK_YAW_IGNORE) | Ignore yaw | +| 2048 | [POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE](#POSITION_TARGET_TYPEMASK_YAW_RATE_IGNORE) | Ignore yaw rate | ### ATTITUDE_TARGET_TYPEMASK {#ATTITUDE_TARGET_TYPEMASK} (Bitmask) Bitmap to indicate which dimensions should be ignored by the vehicle: a value of 0b00000000 indicates that none of the setpoint dimensions should be ignored. -Value | Name | Description ---- | --- | --- -1 | [ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE) | Ignore body roll rate -2 | [ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE) | Ignore body pitch rate -4 | [ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE) | Ignore body yaw rate -32 | [ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET](#ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET) | Use 3D body thrust setpoint instead of throttle -64 | [ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE) | Ignore throttle -128 | [ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE) | Ignore attitude +| Value | Name | Description | +| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ----------------------------------------------- | +| 1 | [ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_ROLL_RATE_IGNORE) | Ignore body roll rate | +| 2 | [ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_PITCH_RATE_IGNORE) | Ignore body pitch rate | +| 4 | [ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_BODY_YAW_RATE_IGNORE) | Ignore body yaw rate | +| 32 | [ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET](#ATTITUDE_TARGET_TYPEMASK_THRUST_BODY_SET) | Use 3D body thrust setpoint instead of throttle | +| 64 | [ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_THROTTLE_IGNORE) | Ignore throttle | +| 128 | [ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE](#ATTITUDE_TARGET_TYPEMASK_ATTITUDE_IGNORE) | Ignore attitude | ### UTM_FLIGHT_STATE {#UTM_FLIGHT_STATE} Airborne status of UAS. -Value | Name | Description ---- | --- | --- -1 | [UTM_FLIGHT_STATE_UNKNOWN](#UTM_FLIGHT_STATE_UNKNOWN) | The flight state can't be determined. -2 | [UTM_FLIGHT_STATE_GROUND](#UTM_FLIGHT_STATE_GROUND) | UAS on ground. -3 | [UTM_FLIGHT_STATE_AIRBORNE](#UTM_FLIGHT_STATE_AIRBORNE) | UAS airborne. -16 | [UTM_FLIGHT_STATE_EMERGENCY](#UTM_FLIGHT_STATE_EMERGENCY) | UAS is in an emergency flight state. -32 | [UTM_FLIGHT_STATE_NOCTRL](#UTM_FLIGHT_STATE_NOCTRL) | UAS has no active controls. +| Value | Name | Description | +| ----------------------------------------- | --------------------------------------------------------- | ------------------------------------- | +| 1 | [UTM_FLIGHT_STATE_UNKNOWN](#UTM_FLIGHT_STATE_UNKNOWN) | The flight state can't be determined. | +| 2 | [UTM_FLIGHT_STATE_GROUND](#UTM_FLIGHT_STATE_GROUND) | UAS on ground. | +| 3 | [UTM_FLIGHT_STATE_AIRBORNE](#UTM_FLIGHT_STATE_AIRBORNE) | UAS airborne. | +| 16 | [UTM_FLIGHT_STATE_EMERGENCY](#UTM_FLIGHT_STATE_EMERGENCY) | UAS is in an emergency flight state. | +| 32 | [UTM_FLIGHT_STATE_NOCTRL](#UTM_FLIGHT_STATE_NOCTRL) | UAS has no active controls. | ### UTM_DATA_AVAIL_FLAGS {#UTM_DATA_AVAIL_FLAGS} (Bitmask) Flags for the global position report. -Value | Name | Description ---- | --- | --- -1 | [UTM_DATA_AVAIL_FLAGS_TIME_VALID](#UTM_DATA_AVAIL_FLAGS_TIME_VALID) | The field time contains valid data. -2 | [UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE) | The field uas_id contains valid data. -4 | [UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE) | The fields lat, lon and h_acc contain valid data. -8 | [UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE) | The fields alt and v_acc contain valid data. -16 | [UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE) | The field relative_alt contains valid data. -32 | [UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE) | The fields vx and vy contain valid data. -64 | [UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE) | The field vz contains valid data. -128 | [UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE) | The fields next_lat, next_lon and next_alt contain valid data. +| Value | Name | Description | +| --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | +| 1 | [UTM_DATA_AVAIL_FLAGS_TIME_VALID](#UTM_DATA_AVAIL_FLAGS_TIME_VALID) | The field time contains valid data. | +| 2 | [UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_UAS_ID_AVAILABLE) | The field uas_id contains valid data. | +| 4 | [UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_POSITION_AVAILABLE) | The fields lat, lon and h_acc contain valid data. | +| 8 | [UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_ALTITUDE_AVAILABLE) | The fields alt and v_acc contain valid data. | +| 16 | [UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_RELATIVE_ALTITUDE_AVAILABLE) | The field relative_alt contains valid data. | +| 32 | [UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_HORIZONTAL_VELO_AVAILABLE) | The fields vx and vy contain valid data. | +| 64 | [UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_VERTICAL_VELO_AVAILABLE) | The field vz contains valid data. | +| 128 | [UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE](#UTM_DATA_AVAIL_FLAGS_NEXT_WAYPOINT_AVAILABLE) | The fields next_lat, next_lon and next_alt contain valid data. | ### CELLULAR_STATUS_FLAG {#CELLULAR_STATUS_FLAG} These flags encode the cellular network status -Value | Name | Description ---- | --- | --- -0 | [CELLULAR_STATUS_FLAG_UNKNOWN](#CELLULAR_STATUS_FLAG_UNKNOWN) | State unknown or not reportable. -1 | [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED) | Modem is unusable -2 | [CELLULAR_STATUS_FLAG_INITIALIZING](#CELLULAR_STATUS_FLAG_INITIALIZING) | Modem is being initialized -3 | [CELLULAR_STATUS_FLAG_LOCKED](#CELLULAR_STATUS_FLAG_LOCKED) | Modem is locked -4 | [CELLULAR_STATUS_FLAG_DISABLED](#CELLULAR_STATUS_FLAG_DISABLED) | Modem is not enabled and is powered down -5 | [CELLULAR_STATUS_FLAG_DISABLING](#CELLULAR_STATUS_FLAG_DISABLING) | Modem is currently transitioning to the [CELLULAR_STATUS_FLAG_DISABLED](#CELLULAR_STATUS_FLAG_DISABLED) state -6 | [CELLULAR_STATUS_FLAG_ENABLING](#CELLULAR_STATUS_FLAG_ENABLING) | Modem is currently transitioning to the [CELLULAR_STATUS_FLAG_ENABLED](#CELLULAR_STATUS_FLAG_ENABLED) state -7 | [CELLULAR_STATUS_FLAG_ENABLED](#CELLULAR_STATUS_FLAG_ENABLED) | Modem is enabled and powered on but not registered with a network provider and not available for data connections -8 | [CELLULAR_STATUS_FLAG_SEARCHING](#CELLULAR_STATUS_FLAG_SEARCHING) | Modem is searching for a network provider to register -9 | [CELLULAR_STATUS_FLAG_REGISTERED](#CELLULAR_STATUS_FLAG_REGISTERED) | Modem is registered with a network provider, and data connections and messaging may be available for use -10 | [CELLULAR_STATUS_FLAG_DISCONNECTING](#CELLULAR_STATUS_FLAG_DISCONNECTING) | Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated -11 | [CELLULAR_STATUS_FLAG_CONNECTING](#CELLULAR_STATUS_FLAG_CONNECTING) | Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered -12 | [CELLULAR_STATUS_FLAG_CONNECTED](#CELLULAR_STATUS_FLAG_CONNECTED) | One or more packet data bearers is active and connected +| Value | Name | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [CELLULAR_STATUS_FLAG_UNKNOWN](#CELLULAR_STATUS_FLAG_UNKNOWN) | State unknown or not reportable. | +| 1 | [CELLULAR_STATUS_FLAG_FAILED](#CELLULAR_STATUS_FLAG_FAILED) | Modem is unusable | +| 2 | [CELLULAR_STATUS_FLAG_INITIALIZING](#CELLULAR_STATUS_FLAG_INITIALIZING) | Modem is being initialized | +| 3 | [CELLULAR_STATUS_FLAG_LOCKED](#CELLULAR_STATUS_FLAG_LOCKED) | Modem is locked | +| 4 | [CELLULAR_STATUS_FLAG_DISABLED](#CELLULAR_STATUS_FLAG_DISABLED) | Modem is not enabled and is powered down | +| 5 | [CELLULAR_STATUS_FLAG_DISABLING](#CELLULAR_STATUS_FLAG_DISABLING) | Modem is currently transitioning to the [CELLULAR_STATUS_FLAG_DISABLED](#CELLULAR_STATUS_FLAG_DISABLED) state | +| 6 | [CELLULAR_STATUS_FLAG_ENABLING](#CELLULAR_STATUS_FLAG_ENABLING) | Modem is currently transitioning to the [CELLULAR_STATUS_FLAG_ENABLED](#CELLULAR_STATUS_FLAG_ENABLED) state | +| 7 | [CELLULAR_STATUS_FLAG_ENABLED](#CELLULAR_STATUS_FLAG_ENABLED) | Modem is enabled and powered on but not registered with a network provider and not available for data connections | +| 8 | [CELLULAR_STATUS_FLAG_SEARCHING](#CELLULAR_STATUS_FLAG_SEARCHING) | Modem is searching for a network provider to register | +| 9 | [CELLULAR_STATUS_FLAG_REGISTERED](#CELLULAR_STATUS_FLAG_REGISTERED) | Modem is registered with a network provider, and data connections and messaging may be available for use | +| 10 | [CELLULAR_STATUS_FLAG_DISCONNECTING](#CELLULAR_STATUS_FLAG_DISCONNECTING) | Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated | +| 11 | [CELLULAR_STATUS_FLAG_CONNECTING](#CELLULAR_STATUS_FLAG_CONNECTING) | Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered | +| 12 | [CELLULAR_STATUS_FLAG_CONNECTED](#CELLULAR_STATUS_FLAG_CONNECTED) | One or more packet data bearers is active and connected | ### CELLULAR_NETWORK_FAILED_REASON {#CELLULAR_NETWORK_FAILED_REASON} These flags are used to diagnose the failure state of [CELLULAR_STATUS](#CELLULAR_STATUS) -Value | Name | Description ---- | --- | --- -0 | [CELLULAR_NETWORK_FAILED_REASON_NONE](#CELLULAR_NETWORK_FAILED_REASON_NONE) | No error -1 | [CELLULAR_NETWORK_FAILED_REASON_UNKNOWN](#CELLULAR_NETWORK_FAILED_REASON_UNKNOWN) | Error state is unknown -2 | [CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING](#CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING) | SIM is required for the modem but missing -3 | [CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR](#CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR) | SIM is available, but not usable for connection +| Value | Name | Description | +| -------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------- | +| 0 | [CELLULAR_NETWORK_FAILED_REASON_NONE](#CELLULAR_NETWORK_FAILED_REASON_NONE) | No error | +| 1 | [CELLULAR_NETWORK_FAILED_REASON_UNKNOWN](#CELLULAR_NETWORK_FAILED_REASON_UNKNOWN) | Error state is unknown | +| 2 | [CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING](#CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING) | SIM is required for the modem but missing | +| 3 | [CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR](#CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR) | SIM is available, but not usable for connection | ### CELLULAR_NETWORK_RADIO_TYPE {#CELLULAR_NETWORK_RADIO_TYPE} Cellular network radio type -Value | Name | Description ---- | --- | --- -0 | [CELLULAR_NETWORK_RADIO_TYPE_NONE](#CELLULAR_NETWORK_RADIO_TYPE_NONE) | -1 | [CELLULAR_NETWORK_RADIO_TYPE_GSM](#CELLULAR_NETWORK_RADIO_TYPE_GSM) | -2 | [CELLULAR_NETWORK_RADIO_TYPE_CDMA](#CELLULAR_NETWORK_RADIO_TYPE_CDMA) | -3 | [CELLULAR_NETWORK_RADIO_TYPE_WCDMA](#CELLULAR_NETWORK_RADIO_TYPE_WCDMA) | -4 | [CELLULAR_NETWORK_RADIO_TYPE_LTE](#CELLULAR_NETWORK_RADIO_TYPE_LTE) | +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ----------- | +| 0 | [CELLULAR_NETWORK_RADIO_TYPE_NONE](#CELLULAR_NETWORK_RADIO_TYPE_NONE) | +| 1 | [CELLULAR_NETWORK_RADIO_TYPE_GSM](#CELLULAR_NETWORK_RADIO_TYPE_GSM) | +| 2 | [CELLULAR_NETWORK_RADIO_TYPE_CDMA](#CELLULAR_NETWORK_RADIO_TYPE_CDMA) | +| 3 | [CELLULAR_NETWORK_RADIO_TYPE_WCDMA](#CELLULAR_NETWORK_RADIO_TYPE_WCDMA) | +| 4 | [CELLULAR_NETWORK_RADIO_TYPE_LTE](#CELLULAR_NETWORK_RADIO_TYPE_LTE) | ### PRECISION_LAND_MODE {#PRECISION_LAND_MODE} Precision land modes (used in [MAV_CMD_NAV_LAND](#MAV_CMD_NAV_LAND)). -Value | Name | Description ---- | --- | --- -0 | [PRECISION_LAND_MODE_DISABLED](#PRECISION_LAND_MODE_DISABLED) | Normal (non-precision) landing. -1 | [PRECISION_LAND_MODE_OPPORTUNISTIC](#PRECISION_LAND_MODE_OPPORTUNISTIC) | Use precision landing if beacon detected when land command accepted, otherwise land normally. -2 | [PRECISION_LAND_MODE_REQUIRED](#PRECISION_LAND_MODE_REQUIRED) | Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [PRECISION_LAND_MODE_DISABLED](#PRECISION_LAND_MODE_DISABLED) | Normal (non-precision) landing. | +| 1 | [PRECISION_LAND_MODE_OPPORTUNISTIC](#PRECISION_LAND_MODE_OPPORTUNISTIC) | Use precision landing if beacon detected when land command accepted, otherwise land normally. | +| 2 | [PRECISION_LAND_MODE_REQUIRED](#PRECISION_LAND_MODE_REQUIRED) | Use precision landing, searching for beacon if not found when land command accepted (land normally if beacon cannot be found). | ### PARACHUTE_ACTION {#PARACHUTE_ACTION} Parachute actions. Trigger release and enable/disable auto-release. -Value | Name | Description ---- | --- | --- -0 | [PARACHUTE_DISABLE](#PARACHUTE_DISABLE) | Disable auto-release of parachute (i.e. release triggered by crash detectors). -1 | [PARACHUTE_ENABLE](#PARACHUTE_ENABLE) | Enable auto-release of parachute. -2 | [PARACHUTE_RELEASE](#PARACHUTE_RELEASE) | Release parachute and kill motors. +| Value | Name | Description | +| ------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------ | +| 0 | [PARACHUTE_DISABLE](#PARACHUTE_DISABLE) | Disable auto-release of parachute (i.e. release triggered by crash detectors). | +| 1 | [PARACHUTE_ENABLE](#PARACHUTE_ENABLE) | Enable auto-release of parachute. | +| 2 | [PARACHUTE_RELEASE](#PARACHUTE_RELEASE) | Release parachute and kill motors. | ### MAV_TUNNEL_PAYLOAD_TYPE {#MAV_TUNNEL_PAYLOAD_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN](#MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN) | Encoding of payload unknown. -200 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0) | Registered for STorM32 gimbal controller. -201 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1) | Registered for STorM32 gimbal controller. -202 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2) | Registered for STorM32 gimbal controller. -203 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3) | Registered for STorM32 gimbal controller. -204 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4) | Registered for STorM32 gimbal controller. -205 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5) | Registered for STorM32 gimbal controller. -206 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6) | Registered for STorM32 gimbal controller. -207 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7) | Registered for STorM32 gimbal controller. -208 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8) | Registered for STorM32 gimbal controller. -209 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9) | Registered for STorM32 gimbal controller. -210 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_REMOTE_OSD](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_REMOTE_OSD) | Registered for ModalAI remote OSD protocol. -211 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_ESC_UART_PASSTHRU](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_ESC_UART_PASSTHRU) | Registered for ModalAI ESC UART passthru protocol. -212 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_IO_UART_PASSTHRU](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_IO_UART_PASSTHRU) | Registered for ModalAI vendor use. +| Value | Name | Description | +| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | +| 0 | [MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN](#MAV_TUNNEL_PAYLOAD_TYPE_UNKNOWN) | Encoding of payload unknown. | +| 200 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED0) | Registered for STorM32 gimbal controller. | +| 201 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED1) | Registered for STorM32 gimbal controller. | +| 202 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED2) | Registered for STorM32 gimbal controller. | +| 203 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED3) | Registered for STorM32 gimbal controller. | +| 204 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED4) | Registered for STorM32 gimbal controller. | +| 205 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED5) | Registered for STorM32 gimbal controller. | +| 206 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6) | Registered for STorM32 gimbal controller. | +| 207 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7) | Registered for STorM32 gimbal controller. | +| 208 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8) | Registered for STorM32 gimbal controller. | +| 209 | [MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9](#MAV_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9) | Registered for STorM32 gimbal controller. | +| 210 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_REMOTE_OSD](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_REMOTE_OSD) | Registered for ModalAI remote OSD protocol. | +| 211 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_ESC_UART_PASSTHRU](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_ESC_UART_PASSTHRU) | Registered for ModalAI ESC UART passthru protocol. | +| 212 | [MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_IO_UART_PASSTHRU](#MAV_TUNNEL_PAYLOAD_TYPE_MODALAI_IO_UART_PASSTHRU) | Registered for ModalAI vendor use. | ### MAV_ODID_ID_TYPE {#MAV_ODID_ID_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_ID_TYPE_NONE](#MAV_ODID_ID_TYPE_NONE) | No type defined. -1 | [MAV_ODID_ID_TYPE_SERIAL_NUMBER](#MAV_ODID_ID_TYPE_SERIAL_NUMBER) | Manufacturer Serial Number (ANSI/CTA-2063 format). -2 | [MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID](#MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID) | CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. -3 | [MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID](#MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID) | UTM (Unmanned Traffic Management) assigned UUID (RFC4122). -4 | [MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID](#MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID) | A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. +| Value | Name | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_ODID_ID_TYPE_NONE](#MAV_ODID_ID_TYPE_NONE) | No type defined. | +| 1 | [MAV_ODID_ID_TYPE_SERIAL_NUMBER](#MAV_ODID_ID_TYPE_SERIAL_NUMBER) | Manufacturer Serial Number (ANSI/CTA-2063 format). | +| 2 | [MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID](#MAV_ODID_ID_TYPE_CAA_REGISTRATION_ID) | CAA (Civil Aviation Authority) registered ID. Format: [ICAO Country Code].[CAA Assigned ID]. | +| 3 | [MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID](#MAV_ODID_ID_TYPE_UTM_ASSIGNED_UUID) | UTM (Unmanned Traffic Management) assigned UUID (RFC4122). | +| 4 | [MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID](#MAV_ODID_ID_TYPE_SPECIFIC_SESSION_ID) | A 20 byte ID for a specific flight/session. The exact ID type is indicated by the first byte of uas_id and these type values are managed by ICAO. | ### MAV_ODID_UA_TYPE {#MAV_ODID_UA_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_UA_TYPE_NONE](#MAV_ODID_UA_TYPE_NONE) | No UA (Unmanned Aircraft) type defined. -1 | [MAV_ODID_UA_TYPE_AEROPLANE](#MAV_ODID_UA_TYPE_AEROPLANE) | Aeroplane/Airplane. Fixed wing. -2 | [MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR](#MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR) | Helicopter or multirotor. -3 | [MAV_ODID_UA_TYPE_GYROPLANE](#MAV_ODID_UA_TYPE_GYROPLANE) | Gyroplane. -4 | [MAV_ODID_UA_TYPE_HYBRID_LIFT](#MAV_ODID_UA_TYPE_HYBRID_LIFT) | VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. -5 | [MAV_ODID_UA_TYPE_ORNITHOPTER](#MAV_ODID_UA_TYPE_ORNITHOPTER) | Ornithopter. -6 | [MAV_ODID_UA_TYPE_GLIDER](#MAV_ODID_UA_TYPE_GLIDER) | Glider. -7 | [MAV_ODID_UA_TYPE_KITE](#MAV_ODID_UA_TYPE_KITE) | Kite. -8 | [MAV_ODID_UA_TYPE_FREE_BALLOON](#MAV_ODID_UA_TYPE_FREE_BALLOON) | Free Balloon. -9 | [MAV_ODID_UA_TYPE_CAPTIVE_BALLOON](#MAV_ODID_UA_TYPE_CAPTIVE_BALLOON) | Captive Balloon. -10 | [MAV_ODID_UA_TYPE_AIRSHIP](#MAV_ODID_UA_TYPE_AIRSHIP) | Airship. E.g. a blimp. -11 | [MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE](#MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE) | Free Fall/Parachute (unpowered). -12 | [MAV_ODID_UA_TYPE_ROCKET](#MAV_ODID_UA_TYPE_ROCKET) | Rocket. -13 | [MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT](#MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT) | Tethered powered aircraft. -14 | [MAV_ODID_UA_TYPE_GROUND_OBSTACLE](#MAV_ODID_UA_TYPE_GROUND_OBSTACLE) | Ground Obstacle. -15 | [MAV_ODID_UA_TYPE_OTHER](#MAV_ODID_UA_TYPE_OTHER) | Other type of aircraft not listed earlier. +| Value | Name | Description | +| --------------------------------------------------------- | ----------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| 0 | [MAV_ODID_UA_TYPE_NONE](#MAV_ODID_UA_TYPE_NONE) | No UA (Unmanned Aircraft) type defined. | +| 1 | [MAV_ODID_UA_TYPE_AEROPLANE](#MAV_ODID_UA_TYPE_AEROPLANE) | Aeroplane/Airplane. Fixed wing. | +| 2 | [MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR](#MAV_ODID_UA_TYPE_HELICOPTER_OR_MULTIROTOR) | Helicopter or multirotor. | +| 3 | [MAV_ODID_UA_TYPE_GYROPLANE](#MAV_ODID_UA_TYPE_GYROPLANE) | Gyroplane. | +| 4 | [MAV_ODID_UA_TYPE_HYBRID_LIFT](#MAV_ODID_UA_TYPE_HYBRID_LIFT) | VTOL (Vertical Take-Off and Landing). Fixed wing aircraft that can take off vertically. | +| 5 | [MAV_ODID_UA_TYPE_ORNITHOPTER](#MAV_ODID_UA_TYPE_ORNITHOPTER) | Ornithopter. | +| 6 | [MAV_ODID_UA_TYPE_GLIDER](#MAV_ODID_UA_TYPE_GLIDER) | Glider. | +| 7 | [MAV_ODID_UA_TYPE_KITE](#MAV_ODID_UA_TYPE_KITE) | Kite. | +| 8 | [MAV_ODID_UA_TYPE_FREE_BALLOON](#MAV_ODID_UA_TYPE_FREE_BALLOON) | Free Balloon. | +| 9 | [MAV_ODID_UA_TYPE_CAPTIVE_BALLOON](#MAV_ODID_UA_TYPE_CAPTIVE_BALLOON) | Captive Balloon. | +| 10 | [MAV_ODID_UA_TYPE_AIRSHIP](#MAV_ODID_UA_TYPE_AIRSHIP) | Airship. E.g. a blimp. | +| 11 | [MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE](#MAV_ODID_UA_TYPE_FREE_FALL_PARACHUTE) | Free Fall/Parachute (unpowered). | +| 12 | [MAV_ODID_UA_TYPE_ROCKET](#MAV_ODID_UA_TYPE_ROCKET) | Rocket. | +| 13 | [MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT](#MAV_ODID_UA_TYPE_TETHERED_POWERED_AIRCRAFT) | Tethered powered aircraft. | +| 14 | [MAV_ODID_UA_TYPE_GROUND_OBSTACLE](#MAV_ODID_UA_TYPE_GROUND_OBSTACLE) | Ground Obstacle. | +| 15 | [MAV_ODID_UA_TYPE_OTHER](#MAV_ODID_UA_TYPE_OTHER) | Other type of aircraft not listed earlier. | ### MAV_ODID_STATUS {#MAV_ODID_STATUS} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_STATUS_UNDECLARED](#MAV_ODID_STATUS_UNDECLARED) | The status of the (UA) Unmanned Aircraft is undefined. -1 | [MAV_ODID_STATUS_GROUND](#MAV_ODID_STATUS_GROUND) | The UA is on the ground. -2 | [MAV_ODID_STATUS_AIRBORNE](#MAV_ODID_STATUS_AIRBORNE) | The UA is in the air. -3 | [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY) | The UA is having an emergency. -4 | [MAV_ODID_STATUS_REMOTE_ID_SYSTEM_FAILURE](#MAV_ODID_STATUS_REMOTE_ID_SYSTEM_FAILURE) | The remote ID system is failing or unreliable in some way. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ---------------------------------------------------------- | +| 0 | [MAV_ODID_STATUS_UNDECLARED](#MAV_ODID_STATUS_UNDECLARED) | The status of the (UA) Unmanned Aircraft is undefined. | +| 1 | [MAV_ODID_STATUS_GROUND](#MAV_ODID_STATUS_GROUND) | The UA is on the ground. | +| 2 | [MAV_ODID_STATUS_AIRBORNE](#MAV_ODID_STATUS_AIRBORNE) | The UA is in the air. | +| 3 | [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY) | The UA is having an emergency. | +| 4 | [MAV_ODID_STATUS_REMOTE_ID_SYSTEM_FAILURE](#MAV_ODID_STATUS_REMOTE_ID_SYSTEM_FAILURE) | The remote ID system is failing or unreliable in some way. | ### MAV_ODID_HEIGHT_REF {#MAV_ODID_HEIGHT_REF} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_HEIGHT_REF_OVER_TAKEOFF](#MAV_ODID_HEIGHT_REF_OVER_TAKEOFF) | The height field is relative to the take-off location. -1 | [MAV_ODID_HEIGHT_REF_OVER_GROUND](#MAV_ODID_HEIGHT_REF_OVER_GROUND) | The height field is relative to ground. +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------ | +| 0 | [MAV_ODID_HEIGHT_REF_OVER_TAKEOFF](#MAV_ODID_HEIGHT_REF_OVER_TAKEOFF) | The height field is relative to the take-off location. | +| 1 | [MAV_ODID_HEIGHT_REF_OVER_GROUND](#MAV_ODID_HEIGHT_REF_OVER_GROUND) | The height field is relative to ground. | ### MAV_ODID_HOR_ACC {#MAV_ODID_HOR_ACC} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_HOR_ACC_UNKNOWN](#MAV_ODID_HOR_ACC_UNKNOWN) | The horizontal accuracy is unknown. -1 | [MAV_ODID_HOR_ACC_10NM](#MAV_ODID_HOR_ACC_10NM) | The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. -2 | [MAV_ODID_HOR_ACC_4NM](#MAV_ODID_HOR_ACC_4NM) | The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. -3 | [MAV_ODID_HOR_ACC_2NM](#MAV_ODID_HOR_ACC_2NM) | The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. -4 | [MAV_ODID_HOR_ACC_1NM](#MAV_ODID_HOR_ACC_1NM) | The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. -5 | [MAV_ODID_HOR_ACC_0_5NM](#MAV_ODID_HOR_ACC_0_5NM) | The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. -6 | [MAV_ODID_HOR_ACC_0_3NM](#MAV_ODID_HOR_ACC_0_3NM) | The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. -7 | [MAV_ODID_HOR_ACC_0_1NM](#MAV_ODID_HOR_ACC_0_1NM) | The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. -8 | [MAV_ODID_HOR_ACC_0_05NM](#MAV_ODID_HOR_ACC_0_05NM) | The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. -9 | [MAV_ODID_HOR_ACC_30_METER](#MAV_ODID_HOR_ACC_30_METER) | The horizontal accuracy is smaller than 30 meter. -10 | [MAV_ODID_HOR_ACC_10_METER](#MAV_ODID_HOR_ACC_10_METER) | The horizontal accuracy is smaller than 10 meter. -11 | [MAV_ODID_HOR_ACC_3_METER](#MAV_ODID_HOR_ACC_3_METER) | The horizontal accuracy is smaller than 3 meter. -12 | [MAV_ODID_HOR_ACC_1_METER](#MAV_ODID_HOR_ACC_1_METER) | The horizontal accuracy is smaller than 1 meter. +| Value | Name | Description | +| ---------------------------------------- | ------------------------------------------------------- | -------------------------------------------------------------------- | +| 0 | [MAV_ODID_HOR_ACC_UNKNOWN](#MAV_ODID_HOR_ACC_UNKNOWN) | The horizontal accuracy is unknown. | +| 1 | [MAV_ODID_HOR_ACC_10NM](#MAV_ODID_HOR_ACC_10NM) | The horizontal accuracy is smaller than 10 Nautical Miles. 18.52 km. | +| 2 | [MAV_ODID_HOR_ACC_4NM](#MAV_ODID_HOR_ACC_4NM) | The horizontal accuracy is smaller than 4 Nautical Miles. 7.408 km. | +| 3 | [MAV_ODID_HOR_ACC_2NM](#MAV_ODID_HOR_ACC_2NM) | The horizontal accuracy is smaller than 2 Nautical Miles. 3.704 km. | +| 4 | [MAV_ODID_HOR_ACC_1NM](#MAV_ODID_HOR_ACC_1NM) | The horizontal accuracy is smaller than 1 Nautical Miles. 1.852 km. | +| 5 | [MAV_ODID_HOR_ACC_0_5NM](#MAV_ODID_HOR_ACC_0_5NM) | The horizontal accuracy is smaller than 0.5 Nautical Miles. 926 m. | +| 6 | [MAV_ODID_HOR_ACC_0_3NM](#MAV_ODID_HOR_ACC_0_3NM) | The horizontal accuracy is smaller than 0.3 Nautical Miles. 555.6 m. | +| 7 | [MAV_ODID_HOR_ACC_0_1NM](#MAV_ODID_HOR_ACC_0_1NM) | The horizontal accuracy is smaller than 0.1 Nautical Miles. 185.2 m. | +| 8 | [MAV_ODID_HOR_ACC_0_05NM](#MAV_ODID_HOR_ACC_0_05NM) | The horizontal accuracy is smaller than 0.05 Nautical Miles. 92.6 m. | +| 9 | [MAV_ODID_HOR_ACC_30_METER](#MAV_ODID_HOR_ACC_30_METER) | The horizontal accuracy is smaller than 30 meter. | +| 10 | [MAV_ODID_HOR_ACC_10_METER](#MAV_ODID_HOR_ACC_10_METER) | The horizontal accuracy is smaller than 10 meter. | +| 11 | [MAV_ODID_HOR_ACC_3_METER](#MAV_ODID_HOR_ACC_3_METER) | The horizontal accuracy is smaller than 3 meter. | +| 12 | [MAV_ODID_HOR_ACC_1_METER](#MAV_ODID_HOR_ACC_1_METER) | The horizontal accuracy is smaller than 1 meter. | ### MAV_ODID_VER_ACC {#MAV_ODID_VER_ACC} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_VER_ACC_UNKNOWN](#MAV_ODID_VER_ACC_UNKNOWN) | The vertical accuracy is unknown. -1 | [MAV_ODID_VER_ACC_150_METER](#MAV_ODID_VER_ACC_150_METER) | The vertical accuracy is smaller than 150 meter. -2 | [MAV_ODID_VER_ACC_45_METER](#MAV_ODID_VER_ACC_45_METER) | The vertical accuracy is smaller than 45 meter. -3 | [MAV_ODID_VER_ACC_25_METER](#MAV_ODID_VER_ACC_25_METER) | The vertical accuracy is smaller than 25 meter. -4 | [MAV_ODID_VER_ACC_10_METER](#MAV_ODID_VER_ACC_10_METER) | The vertical accuracy is smaller than 10 meter. -5 | [MAV_ODID_VER_ACC_3_METER](#MAV_ODID_VER_ACC_3_METER) | The vertical accuracy is smaller than 3 meter. -6 | [MAV_ODID_VER_ACC_1_METER](#MAV_ODID_VER_ACC_1_METER) | The vertical accuracy is smaller than 1 meter. +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ------------------------------------------------ | +| 0 | [MAV_ODID_VER_ACC_UNKNOWN](#MAV_ODID_VER_ACC_UNKNOWN) | The vertical accuracy is unknown. | +| 1 | [MAV_ODID_VER_ACC_150_METER](#MAV_ODID_VER_ACC_150_METER) | The vertical accuracy is smaller than 150 meter. | +| 2 | [MAV_ODID_VER_ACC_45_METER](#MAV_ODID_VER_ACC_45_METER) | The vertical accuracy is smaller than 45 meter. | +| 3 | [MAV_ODID_VER_ACC_25_METER](#MAV_ODID_VER_ACC_25_METER) | The vertical accuracy is smaller than 25 meter. | +| 4 | [MAV_ODID_VER_ACC_10_METER](#MAV_ODID_VER_ACC_10_METER) | The vertical accuracy is smaller than 10 meter. | +| 5 | [MAV_ODID_VER_ACC_3_METER](#MAV_ODID_VER_ACC_3_METER) | The vertical accuracy is smaller than 3 meter. | +| 6 | [MAV_ODID_VER_ACC_1_METER](#MAV_ODID_VER_ACC_1_METER) | The vertical accuracy is smaller than 1 meter. | ### MAV_ODID_SPEED_ACC {#MAV_ODID_SPEED_ACC} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_SPEED_ACC_UNKNOWN](#MAV_ODID_SPEED_ACC_UNKNOWN) | The speed accuracy is unknown. -1 | [MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND) | The speed accuracy is smaller than 10 meters per second. -2 | [MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND) | The speed accuracy is smaller than 3 meters per second. -3 | [MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND) | The speed accuracy is smaller than 1 meters per second. -4 | [MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND) | The speed accuracy is smaller than 0.3 meters per second. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | --------------------------------------------------------- | +| 0 | [MAV_ODID_SPEED_ACC_UNKNOWN](#MAV_ODID_SPEED_ACC_UNKNOWN) | The speed accuracy is unknown. | +| 1 | [MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_10_METERS_PER_SECOND) | The speed accuracy is smaller than 10 meters per second. | +| 2 | [MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_3_METERS_PER_SECOND) | The speed accuracy is smaller than 3 meters per second. | +| 3 | [MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_1_METERS_PER_SECOND) | The speed accuracy is smaller than 1 meters per second. | +| 4 | [MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND](#MAV_ODID_SPEED_ACC_0_3_METERS_PER_SECOND) | The speed accuracy is smaller than 0.3 meters per second. | ### MAV_ODID_TIME_ACC {#MAV_ODID_TIME_ACC} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_TIME_ACC_UNKNOWN](#MAV_ODID_TIME_ACC_UNKNOWN) | The timestamp accuracy is unknown. -1 | [MAV_ODID_TIME_ACC_0_1_SECOND](#MAV_ODID_TIME_ACC_0_1_SECOND) | The timestamp accuracy is smaller than or equal to 0.1 second. -2 | [MAV_ODID_TIME_ACC_0_2_SECOND](#MAV_ODID_TIME_ACC_0_2_SECOND) | The timestamp accuracy is smaller than or equal to 0.2 second. -3 | [MAV_ODID_TIME_ACC_0_3_SECOND](#MAV_ODID_TIME_ACC_0_3_SECOND) | The timestamp accuracy is smaller than or equal to 0.3 second. -4 | [MAV_ODID_TIME_ACC_0_4_SECOND](#MAV_ODID_TIME_ACC_0_4_SECOND) | The timestamp accuracy is smaller than or equal to 0.4 second. -5 | [MAV_ODID_TIME_ACC_0_5_SECOND](#MAV_ODID_TIME_ACC_0_5_SECOND) | The timestamp accuracy is smaller than or equal to 0.5 second. -6 | [MAV_ODID_TIME_ACC_0_6_SECOND](#MAV_ODID_TIME_ACC_0_6_SECOND) | The timestamp accuracy is smaller than or equal to 0.6 second. -7 | [MAV_ODID_TIME_ACC_0_7_SECOND](#MAV_ODID_TIME_ACC_0_7_SECOND) | The timestamp accuracy is smaller than or equal to 0.7 second. -8 | [MAV_ODID_TIME_ACC_0_8_SECOND](#MAV_ODID_TIME_ACC_0_8_SECOND) | The timestamp accuracy is smaller than or equal to 0.8 second. -9 | [MAV_ODID_TIME_ACC_0_9_SECOND](#MAV_ODID_TIME_ACC_0_9_SECOND) | The timestamp accuracy is smaller than or equal to 0.9 second. -10 | [MAV_ODID_TIME_ACC_1_0_SECOND](#MAV_ODID_TIME_ACC_1_0_SECOND) | The timestamp accuracy is smaller than or equal to 1.0 second. -11 | [MAV_ODID_TIME_ACC_1_1_SECOND](#MAV_ODID_TIME_ACC_1_1_SECOND) | The timestamp accuracy is smaller than or equal to 1.1 second. -12 | [MAV_ODID_TIME_ACC_1_2_SECOND](#MAV_ODID_TIME_ACC_1_2_SECOND) | The timestamp accuracy is smaller than or equal to 1.2 second. -13 | [MAV_ODID_TIME_ACC_1_3_SECOND](#MAV_ODID_TIME_ACC_1_3_SECOND) | The timestamp accuracy is smaller than or equal to 1.3 second. -14 | [MAV_ODID_TIME_ACC_1_4_SECOND](#MAV_ODID_TIME_ACC_1_4_SECOND) | The timestamp accuracy is smaller than or equal to 1.4 second. -15 | [MAV_ODID_TIME_ACC_1_5_SECOND](#MAV_ODID_TIME_ACC_1_5_SECOND) | The timestamp accuracy is smaller than or equal to 1.5 second. +| Value | Name | Description | +| ------------------------------------------- | ------------------------------------------------------------- | -------------------------------------------------------------- | +| 0 | [MAV_ODID_TIME_ACC_UNKNOWN](#MAV_ODID_TIME_ACC_UNKNOWN) | The timestamp accuracy is unknown. | +| 1 | [MAV_ODID_TIME_ACC_0_1_SECOND](#MAV_ODID_TIME_ACC_0_1_SECOND) | The timestamp accuracy is smaller than or equal to 0.1 second. | +| 2 | [MAV_ODID_TIME_ACC_0_2_SECOND](#MAV_ODID_TIME_ACC_0_2_SECOND) | The timestamp accuracy is smaller than or equal to 0.2 second. | +| 3 | [MAV_ODID_TIME_ACC_0_3_SECOND](#MAV_ODID_TIME_ACC_0_3_SECOND) | The timestamp accuracy is smaller than or equal to 0.3 second. | +| 4 | [MAV_ODID_TIME_ACC_0_4_SECOND](#MAV_ODID_TIME_ACC_0_4_SECOND) | The timestamp accuracy is smaller than or equal to 0.4 second. | +| 5 | [MAV_ODID_TIME_ACC_0_5_SECOND](#MAV_ODID_TIME_ACC_0_5_SECOND) | The timestamp accuracy is smaller than or equal to 0.5 second. | +| 6 | [MAV_ODID_TIME_ACC_0_6_SECOND](#MAV_ODID_TIME_ACC_0_6_SECOND) | The timestamp accuracy is smaller than or equal to 0.6 second. | +| 7 | [MAV_ODID_TIME_ACC_0_7_SECOND](#MAV_ODID_TIME_ACC_0_7_SECOND) | The timestamp accuracy is smaller than or equal to 0.7 second. | +| 8 | [MAV_ODID_TIME_ACC_0_8_SECOND](#MAV_ODID_TIME_ACC_0_8_SECOND) | The timestamp accuracy is smaller than or equal to 0.8 second. | +| 9 | [MAV_ODID_TIME_ACC_0_9_SECOND](#MAV_ODID_TIME_ACC_0_9_SECOND) | The timestamp accuracy is smaller than or equal to 0.9 second. | +| 10 | [MAV_ODID_TIME_ACC_1_0_SECOND](#MAV_ODID_TIME_ACC_1_0_SECOND) | The timestamp accuracy is smaller than or equal to 1.0 second. | +| 11 | [MAV_ODID_TIME_ACC_1_1_SECOND](#MAV_ODID_TIME_ACC_1_1_SECOND) | The timestamp accuracy is smaller than or equal to 1.1 second. | +| 12 | [MAV_ODID_TIME_ACC_1_2_SECOND](#MAV_ODID_TIME_ACC_1_2_SECOND) | The timestamp accuracy is smaller than or equal to 1.2 second. | +| 13 | [MAV_ODID_TIME_ACC_1_3_SECOND](#MAV_ODID_TIME_ACC_1_3_SECOND) | The timestamp accuracy is smaller than or equal to 1.3 second. | +| 14 | [MAV_ODID_TIME_ACC_1_4_SECOND](#MAV_ODID_TIME_ACC_1_4_SECOND) | The timestamp accuracy is smaller than or equal to 1.4 second. | +| 15 | [MAV_ODID_TIME_ACC_1_5_SECOND](#MAV_ODID_TIME_ACC_1_5_SECOND) | The timestamp accuracy is smaller than or equal to 1.5 second. | ### MAV_ODID_AUTH_TYPE {#MAV_ODID_AUTH_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_AUTH_TYPE_NONE](#MAV_ODID_AUTH_TYPE_NONE) | No authentication type is specified. -1 | [MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE](#MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE) | Signature for the UAS (Unmanned Aircraft System) ID. -2 | [MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE](#MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE) | Signature for the Operator ID. -3 | [MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE](#MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE) | Signature for the entire message set. -4 | [MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID](#MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID) | Authentication is provided by Network Remote ID. -5 | [MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION](#MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION) | The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. +| Value | Name | Description | +| -------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [MAV_ODID_AUTH_TYPE_NONE](#MAV_ODID_AUTH_TYPE_NONE) | No authentication type is specified. | +| 1 | [MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE](#MAV_ODID_AUTH_TYPE_UAS_ID_SIGNATURE) | Signature for the UAS (Unmanned Aircraft System) ID. | +| 2 | [MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE](#MAV_ODID_AUTH_TYPE_OPERATOR_ID_SIGNATURE) | Signature for the Operator ID. | +| 3 | [MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE](#MAV_ODID_AUTH_TYPE_MESSAGE_SET_SIGNATURE) | Signature for the entire message set. | +| 4 | [MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID](#MAV_ODID_AUTH_TYPE_NETWORK_REMOTE_ID) | Authentication is provided by Network Remote ID. | +| 5 | [MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION](#MAV_ODID_AUTH_TYPE_SPECIFIC_AUTHENTICATION) | The exact authentication type is indicated by the first byte of authentication_data and these type values are managed by ICAO. | ### MAV_ODID_DESC_TYPE {#MAV_ODID_DESC_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_DESC_TYPE_TEXT](#MAV_ODID_DESC_TYPE_TEXT) | Optional free-form text description of the purpose of the flight. -1 | [MAV_ODID_DESC_TYPE_EMERGENCY](#MAV_ODID_DESC_TYPE_EMERGENCY) | Optional additional clarification when status == [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY). -2 | [MAV_ODID_DESC_TYPE_EXTENDED_STATUS](#MAV_ODID_DESC_TYPE_EXTENDED_STATUS) | Optional additional clarification when status != [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY). +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_ODID_DESC_TYPE_TEXT](#MAV_ODID_DESC_TYPE_TEXT) | Optional free-form text description of the purpose of the flight. | +| 1 | [MAV_ODID_DESC_TYPE_EMERGENCY](#MAV_ODID_DESC_TYPE_EMERGENCY) | Optional additional clarification when status == [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY). | +| 2 | [MAV_ODID_DESC_TYPE_EXTENDED_STATUS](#MAV_ODID_DESC_TYPE_EXTENDED_STATUS) | Optional additional clarification when status != [MAV_ODID_STATUS_EMERGENCY](#MAV_ODID_STATUS_EMERGENCY). | ### MAV_ODID_OPERATOR_LOCATION_TYPE {#MAV_ODID_OPERATOR_LOCATION_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF](#MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF) | The location/altitude of the operator is the same as the take-off location. -1 | [MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS](#MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS) | The location/altitude of the operator is dynamic. E.g. based on live GNSS data. -2 | [MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED](#MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED) | The location/altitude of the operator are fixed values. +| Value | Name | Description | +| ------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| 0 | [MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF](#MAV_ODID_OPERATOR_LOCATION_TYPE_TAKEOFF) | The location/altitude of the operator is the same as the take-off location. | +| 1 | [MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS](#MAV_ODID_OPERATOR_LOCATION_TYPE_LIVE_GNSS) | The location/altitude of the operator is dynamic. E.g. based on live GNSS data. | +| 2 | [MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED](#MAV_ODID_OPERATOR_LOCATION_TYPE_FIXED) | The location/altitude of the operator are fixed values. | ### MAV_ODID_CLASSIFICATION_TYPE {#MAV_ODID_CLASSIFICATION_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED](#MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED) | The classification type for the UA is undeclared. -1 | [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU) | The classification type for the UA follows EU (European Union) specifications. +| Value | Name | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | +| 0 | [MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED](#MAV_ODID_CLASSIFICATION_TYPE_UNDECLARED) | The classification type for the UA is undeclared. | +| 1 | [MAV_ODID_CLASSIFICATION_TYPE_EU](#MAV_ODID_CLASSIFICATION_TYPE_EU) | The classification type for the UA follows EU (European Union) specifications. | ### MAV_ODID_CATEGORY_EU {#MAV_ODID_CATEGORY_EU} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_CATEGORY_EU_UNDECLARED](#MAV_ODID_CATEGORY_EU_UNDECLARED) | The category for the UA, according to the EU specification, is undeclared. -1 | [MAV_ODID_CATEGORY_EU_OPEN](#MAV_ODID_CATEGORY_EU_OPEN) | The category for the UA, according to the EU specification, is the Open category. -2 | [MAV_ODID_CATEGORY_EU_SPECIFIC](#MAV_ODID_CATEGORY_EU_SPECIFIC) | The category for the UA, according to the EU specification, is the Specific category. -3 | [MAV_ODID_CATEGORY_EU_CERTIFIED](#MAV_ODID_CATEGORY_EU_CERTIFIED) | The category for the UA, according to the EU specification, is the Certified category. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| 0 | [MAV_ODID_CATEGORY_EU_UNDECLARED](#MAV_ODID_CATEGORY_EU_UNDECLARED) | The category for the UA, according to the EU specification, is undeclared. | +| 1 | [MAV_ODID_CATEGORY_EU_OPEN](#MAV_ODID_CATEGORY_EU_OPEN) | The category for the UA, according to the EU specification, is the Open category. | +| 2 | [MAV_ODID_CATEGORY_EU_SPECIFIC](#MAV_ODID_CATEGORY_EU_SPECIFIC) | The category for the UA, according to the EU specification, is the Specific category. | +| 3 | [MAV_ODID_CATEGORY_EU_CERTIFIED](#MAV_ODID_CATEGORY_EU_CERTIFIED) | The category for the UA, according to the EU specification, is the Certified category. | ### MAV_ODID_CLASS_EU {#MAV_ODID_CLASS_EU} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_CLASS_EU_UNDECLARED](#MAV_ODID_CLASS_EU_UNDECLARED) | The class for the UA, according to the EU specification, is undeclared. -1 | [MAV_ODID_CLASS_EU_CLASS_0](#MAV_ODID_CLASS_EU_CLASS_0) | The class for the UA, according to the EU specification, is Class 0. -2 | [MAV_ODID_CLASS_EU_CLASS_1](#MAV_ODID_CLASS_EU_CLASS_1) | The class for the UA, according to the EU specification, is Class 1. -3 | [MAV_ODID_CLASS_EU_CLASS_2](#MAV_ODID_CLASS_EU_CLASS_2) | The class for the UA, according to the EU specification, is Class 2. -4 | [MAV_ODID_CLASS_EU_CLASS_3](#MAV_ODID_CLASS_EU_CLASS_3) | The class for the UA, according to the EU specification, is Class 3. -5 | [MAV_ODID_CLASS_EU_CLASS_4](#MAV_ODID_CLASS_EU_CLASS_4) | The class for the UA, according to the EU specification, is Class 4. -6 | [MAV_ODID_CLASS_EU_CLASS_5](#MAV_ODID_CLASS_EU_CLASS_5) | The class for the UA, according to the EU specification, is Class 5. -7 | [MAV_ODID_CLASS_EU_CLASS_6](#MAV_ODID_CLASS_EU_CLASS_6) | The class for the UA, according to the EU specification, is Class 6. +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | ----------------------------------------------------------------------- | +| 0 | [MAV_ODID_CLASS_EU_UNDECLARED](#MAV_ODID_CLASS_EU_UNDECLARED) | The class for the UA, according to the EU specification, is undeclared. | +| 1 | [MAV_ODID_CLASS_EU_CLASS_0](#MAV_ODID_CLASS_EU_CLASS_0) | The class for the UA, according to the EU specification, is Class 0. | +| 2 | [MAV_ODID_CLASS_EU_CLASS_1](#MAV_ODID_CLASS_EU_CLASS_1) | The class for the UA, according to the EU specification, is Class 1. | +| 3 | [MAV_ODID_CLASS_EU_CLASS_2](#MAV_ODID_CLASS_EU_CLASS_2) | The class for the UA, according to the EU specification, is Class 2. | +| 4 | [MAV_ODID_CLASS_EU_CLASS_3](#MAV_ODID_CLASS_EU_CLASS_3) | The class for the UA, according to the EU specification, is Class 3. | +| 5 | [MAV_ODID_CLASS_EU_CLASS_4](#MAV_ODID_CLASS_EU_CLASS_4) | The class for the UA, according to the EU specification, is Class 4. | +| 6 | [MAV_ODID_CLASS_EU_CLASS_5](#MAV_ODID_CLASS_EU_CLASS_5) | The class for the UA, according to the EU specification, is Class 5. | +| 7 | [MAV_ODID_CLASS_EU_CLASS_6](#MAV_ODID_CLASS_EU_CLASS_6) | The class for the UA, according to the EU specification, is Class 6. | ### MAV_ODID_OPERATOR_ID_TYPE {#MAV_ODID_OPERATOR_ID_TYPE} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_OPERATOR_ID_TYPE_CAA](#MAV_ODID_OPERATOR_ID_TYPE_CAA) | CAA (Civil Aviation Authority) registered operator ID. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------ | +| 0 | [MAV_ODID_OPERATOR_ID_TYPE_CAA](#MAV_ODID_OPERATOR_ID_TYPE_CAA) | CAA (Civil Aviation Authority) registered operator ID. | ### MAV_ODID_ARM_STATUS {#MAV_ODID_ARM_STATUS} -Value | Name | Description ---- | --- | --- -0 | [MAV_ODID_ARM_STATUS_GOOD_TO_ARM](#MAV_ODID_ARM_STATUS_GOOD_TO_ARM) | Passing arming checks. -1 | [MAV_ODID_ARM_STATUS_PRE_ARM_FAIL_GENERIC](#MAV_ODID_ARM_STATUS_PRE_ARM_FAIL_GENERIC) | Generic arming failure, see error string for details. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ----------------------------------------------------- | +| 0 | [MAV_ODID_ARM_STATUS_GOOD_TO_ARM](#MAV_ODID_ARM_STATUS_GOOD_TO_ARM) | Passing arming checks. | +| 1 | [MAV_ODID_ARM_STATUS_PRE_ARM_FAIL_GENERIC](#MAV_ODID_ARM_STATUS_PRE_ARM_FAIL_GENERIC) | Generic arming failure, see error string for details. | ### TUNE_FORMAT {#TUNE_FORMAT} Tune formats (used for vehicle buzzer/tone generation). -Value | Name | Description ---- | --- | --- -1 | [TUNE_FORMAT_QBASIC1_1](#TUNE_FORMAT_QBASIC1_1) | Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. -2 | [TUNE_FORMAT_MML_MODERN](#TUNE_FORMAT_MML_MODERN) | Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. +| Value | Name | Description | +| ------------------------------------ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | +| 1 | [TUNE_FORMAT_QBASIC1_1](#TUNE_FORMAT_QBASIC1_1) | Format is QBasic 1.1 Play: https://www.qbasic.net/en/reference/qb11/Statement/PLAY-006.htm. | +| 2 | [TUNE_FORMAT_MML_MODERN](#TUNE_FORMAT_MML_MODERN) | Format is Modern Music Markup Language (MML): https://en.wikipedia.org/wiki/Music_Macro_Language#Modern_MML. | ### AIS_TYPE {#AIS_TYPE} Type of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html -Value | Name | Description ---- | --- | --- -0 | [AIS_TYPE_UNKNOWN](#AIS_TYPE_UNKNOWN) | Not available (default). -1 | [AIS_TYPE_RESERVED_1](#AIS_TYPE_RESERVED_1) | -2 | [AIS_TYPE_RESERVED_2](#AIS_TYPE_RESERVED_2) | -3 | [AIS_TYPE_RESERVED_3](#AIS_TYPE_RESERVED_3) | -4 | [AIS_TYPE_RESERVED_4](#AIS_TYPE_RESERVED_4) | -5 | [AIS_TYPE_RESERVED_5](#AIS_TYPE_RESERVED_5) | -6 | [AIS_TYPE_RESERVED_6](#AIS_TYPE_RESERVED_6) | -7 | [AIS_TYPE_RESERVED_7](#AIS_TYPE_RESERVED_7) | -8 | [AIS_TYPE_RESERVED_8](#AIS_TYPE_RESERVED_8) | -9 | [AIS_TYPE_RESERVED_9](#AIS_TYPE_RESERVED_9) | -10 | [AIS_TYPE_RESERVED_10](#AIS_TYPE_RESERVED_10) | -11 | [AIS_TYPE_RESERVED_11](#AIS_TYPE_RESERVED_11) | -12 | [AIS_TYPE_RESERVED_12](#AIS_TYPE_RESERVED_12) | -13 | [AIS_TYPE_RESERVED_13](#AIS_TYPE_RESERVED_13) | -14 | [AIS_TYPE_RESERVED_14](#AIS_TYPE_RESERVED_14) | -15 | [AIS_TYPE_RESERVED_15](#AIS_TYPE_RESERVED_15) | -16 | [AIS_TYPE_RESERVED_16](#AIS_TYPE_RESERVED_16) | -17 | [AIS_TYPE_RESERVED_17](#AIS_TYPE_RESERVED_17) | -18 | [AIS_TYPE_RESERVED_18](#AIS_TYPE_RESERVED_18) | -19 | [AIS_TYPE_RESERVED_19](#AIS_TYPE_RESERVED_19) | -20 | [AIS_TYPE_WIG](#AIS_TYPE_WIG) | Wing In Ground effect. -21 | [AIS_TYPE_WIG_HAZARDOUS_A](#AIS_TYPE_WIG_HAZARDOUS_A) | -22 | [AIS_TYPE_WIG_HAZARDOUS_B](#AIS_TYPE_WIG_HAZARDOUS_B) | -23 | [AIS_TYPE_WIG_HAZARDOUS_C](#AIS_TYPE_WIG_HAZARDOUS_C) | -24 | [AIS_TYPE_WIG_HAZARDOUS_D](#AIS_TYPE_WIG_HAZARDOUS_D) | -25 | [AIS_TYPE_WIG_RESERVED_1](#AIS_TYPE_WIG_RESERVED_1) | -26 | [AIS_TYPE_WIG_RESERVED_2](#AIS_TYPE_WIG_RESERVED_2) | -27 | [AIS_TYPE_WIG_RESERVED_3](#AIS_TYPE_WIG_RESERVED_3) | -28 | [AIS_TYPE_WIG_RESERVED_4](#AIS_TYPE_WIG_RESERVED_4) | -29 | [AIS_TYPE_WIG_RESERVED_5](#AIS_TYPE_WIG_RESERVED_5) | -30 | [AIS_TYPE_FISHING](#AIS_TYPE_FISHING) | -31 | [AIS_TYPE_TOWING](#AIS_TYPE_TOWING) | -32 | [AIS_TYPE_TOWING_LARGE](#AIS_TYPE_TOWING_LARGE) | Towing: length exceeds 200m or breadth exceeds 25m. -33 | [AIS_TYPE_DREDGING](#AIS_TYPE_DREDGING) | Dredging or other underwater ops. -34 | [AIS_TYPE_DIVING](#AIS_TYPE_DIVING) | -35 | [AIS_TYPE_MILITARY](#AIS_TYPE_MILITARY) | -36 | [AIS_TYPE_SAILING](#AIS_TYPE_SAILING) | -37 | [AIS_TYPE_PLEASURE](#AIS_TYPE_PLEASURE) | -38 | [AIS_TYPE_RESERVED_20](#AIS_TYPE_RESERVED_20) | -39 | [AIS_TYPE_RESERVED_21](#AIS_TYPE_RESERVED_21) | -40 | [AIS_TYPE_HSC](#AIS_TYPE_HSC) | High Speed Craft. -41 | [AIS_TYPE_HSC_HAZARDOUS_A](#AIS_TYPE_HSC_HAZARDOUS_A) | -42 | [AIS_TYPE_HSC_HAZARDOUS_B](#AIS_TYPE_HSC_HAZARDOUS_B) | -43 | [AIS_TYPE_HSC_HAZARDOUS_C](#AIS_TYPE_HSC_HAZARDOUS_C) | -44 | [AIS_TYPE_HSC_HAZARDOUS_D](#AIS_TYPE_HSC_HAZARDOUS_D) | -45 | [AIS_TYPE_HSC_RESERVED_1](#AIS_TYPE_HSC_RESERVED_1) | -46 | [AIS_TYPE_HSC_RESERVED_2](#AIS_TYPE_HSC_RESERVED_2) | -47 | [AIS_TYPE_HSC_RESERVED_3](#AIS_TYPE_HSC_RESERVED_3) | -48 | [AIS_TYPE_HSC_RESERVED_4](#AIS_TYPE_HSC_RESERVED_4) | -49 | [AIS_TYPE_HSC_UNKNOWN](#AIS_TYPE_HSC_UNKNOWN) | -50 | [AIS_TYPE_PILOT](#AIS_TYPE_PILOT) | -51 | [AIS_TYPE_SAR](#AIS_TYPE_SAR) | Search And Rescue vessel. -52 | [AIS_TYPE_TUG](#AIS_TYPE_TUG) | -53 | [AIS_TYPE_PORT_TENDER](#AIS_TYPE_PORT_TENDER) | -54 | [AIS_TYPE_ANTI_POLLUTION](#AIS_TYPE_ANTI_POLLUTION) | Anti-pollution equipment. -55 | [AIS_TYPE_LAW_ENFORCEMENT](#AIS_TYPE_LAW_ENFORCEMENT) | -56 | [AIS_TYPE_SPARE_LOCAL_1](#AIS_TYPE_SPARE_LOCAL_1) | -57 | [AIS_TYPE_SPARE_LOCAL_2](#AIS_TYPE_SPARE_LOCAL_2) | -58 | [AIS_TYPE_MEDICAL_TRANSPORT](#AIS_TYPE_MEDICAL_TRANSPORT) | -59 | [AIS_TYPE_NONECOMBATANT](#AIS_TYPE_NONECOMBATANT) | Noncombatant ship according to RR Resolution No. 18. -60 | [AIS_TYPE_PASSENGER](#AIS_TYPE_PASSENGER) | -61 | [AIS_TYPE_PASSENGER_HAZARDOUS_A](#AIS_TYPE_PASSENGER_HAZARDOUS_A) | -62 | [AIS_TYPE_PASSENGER_HAZARDOUS_B](#AIS_TYPE_PASSENGER_HAZARDOUS_B) | -63 | [AIS_TYPE_PASSENGER_HAZARDOUS_C](#AIS_TYPE_PASSENGER_HAZARDOUS_C) | -64 | [AIS_TYPE_PASSENGER_HAZARDOUS_D](#AIS_TYPE_PASSENGER_HAZARDOUS_D) | -65 | [AIS_TYPE_PASSENGER_RESERVED_1](#AIS_TYPE_PASSENGER_RESERVED_1) | -66 | [AIS_TYPE_PASSENGER_RESERVED_2](#AIS_TYPE_PASSENGER_RESERVED_2) | -67 | [AIS_TYPE_PASSENGER_RESERVED_3](#AIS_TYPE_PASSENGER_RESERVED_3) | -68 | [AIS_TYPE_PASSENGER_RESERVED_4](#AIS_TYPE_PASSENGER_RESERVED_4) | -69 | [AIS_TYPE_PASSENGER_UNKNOWN](#AIS_TYPE_PASSENGER_UNKNOWN) | -70 | [AIS_TYPE_CARGO](#AIS_TYPE_CARGO) | -71 | [AIS_TYPE_CARGO_HAZARDOUS_A](#AIS_TYPE_CARGO_HAZARDOUS_A) | -72 | [AIS_TYPE_CARGO_HAZARDOUS_B](#AIS_TYPE_CARGO_HAZARDOUS_B) | -73 | [AIS_TYPE_CARGO_HAZARDOUS_C](#AIS_TYPE_CARGO_HAZARDOUS_C) | -74 | [AIS_TYPE_CARGO_HAZARDOUS_D](#AIS_TYPE_CARGO_HAZARDOUS_D) | -75 | [AIS_TYPE_CARGO_RESERVED_1](#AIS_TYPE_CARGO_RESERVED_1) | -76 | [AIS_TYPE_CARGO_RESERVED_2](#AIS_TYPE_CARGO_RESERVED_2) | -77 | [AIS_TYPE_CARGO_RESERVED_3](#AIS_TYPE_CARGO_RESERVED_3) | -78 | [AIS_TYPE_CARGO_RESERVED_4](#AIS_TYPE_CARGO_RESERVED_4) | -79 | [AIS_TYPE_CARGO_UNKNOWN](#AIS_TYPE_CARGO_UNKNOWN) | -80 | [AIS_TYPE_TANKER](#AIS_TYPE_TANKER) | -81 | [AIS_TYPE_TANKER_HAZARDOUS_A](#AIS_TYPE_TANKER_HAZARDOUS_A) | -82 | [AIS_TYPE_TANKER_HAZARDOUS_B](#AIS_TYPE_TANKER_HAZARDOUS_B) | -83 | [AIS_TYPE_TANKER_HAZARDOUS_C](#AIS_TYPE_TANKER_HAZARDOUS_C) | -84 | [AIS_TYPE_TANKER_HAZARDOUS_D](#AIS_TYPE_TANKER_HAZARDOUS_D) | -85 | [AIS_TYPE_TANKER_RESERVED_1](#AIS_TYPE_TANKER_RESERVED_1) | -86 | [AIS_TYPE_TANKER_RESERVED_2](#AIS_TYPE_TANKER_RESERVED_2) | -87 | [AIS_TYPE_TANKER_RESERVED_3](#AIS_TYPE_TANKER_RESERVED_3) | -88 | [AIS_TYPE_TANKER_RESERVED_4](#AIS_TYPE_TANKER_RESERVED_4) | -89 | [AIS_TYPE_TANKER_UNKNOWN](#AIS_TYPE_TANKER_UNKNOWN) | -90 | [AIS_TYPE_OTHER](#AIS_TYPE_OTHER) | -91 | [AIS_TYPE_OTHER_HAZARDOUS_A](#AIS_TYPE_OTHER_HAZARDOUS_A) | -92 | [AIS_TYPE_OTHER_HAZARDOUS_B](#AIS_TYPE_OTHER_HAZARDOUS_B) | -93 | [AIS_TYPE_OTHER_HAZARDOUS_C](#AIS_TYPE_OTHER_HAZARDOUS_C) | -94 | [AIS_TYPE_OTHER_HAZARDOUS_D](#AIS_TYPE_OTHER_HAZARDOUS_D) | -95 | [AIS_TYPE_OTHER_RESERVED_1](#AIS_TYPE_OTHER_RESERVED_1) | -96 | [AIS_TYPE_OTHER_RESERVED_2](#AIS_TYPE_OTHER_RESERVED_2) | -97 | [AIS_TYPE_OTHER_RESERVED_3](#AIS_TYPE_OTHER_RESERVED_3) | -98 | [AIS_TYPE_OTHER_RESERVED_4](#AIS_TYPE_OTHER_RESERVED_4) | -99 | [AIS_TYPE_OTHER_UNKNOWN](#AIS_TYPE_OTHER_UNKNOWN) | +| Value | Name | Description | +| --------------------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------- | +| 0 | [AIS_TYPE_UNKNOWN](#AIS_TYPE_UNKNOWN) | Not available (default). | +| 1 | [AIS_TYPE_RESERVED_1](#AIS_TYPE_RESERVED_1) | +| 2 | [AIS_TYPE_RESERVED_2](#AIS_TYPE_RESERVED_2) | +| 3 | [AIS_TYPE_RESERVED_3](#AIS_TYPE_RESERVED_3) | +| 4 | [AIS_TYPE_RESERVED_4](#AIS_TYPE_RESERVED_4) | +| 5 | [AIS_TYPE_RESERVED_5](#AIS_TYPE_RESERVED_5) | +| 6 | [AIS_TYPE_RESERVED_6](#AIS_TYPE_RESERVED_6) | +| 7 | [AIS_TYPE_RESERVED_7](#AIS_TYPE_RESERVED_7) | +| 8 | [AIS_TYPE_RESERVED_8](#AIS_TYPE_RESERVED_8) | +| 9 | [AIS_TYPE_RESERVED_9](#AIS_TYPE_RESERVED_9) | +| 10 | [AIS_TYPE_RESERVED_10](#AIS_TYPE_RESERVED_10) | +| 11 | [AIS_TYPE_RESERVED_11](#AIS_TYPE_RESERVED_11) | +| 12 | [AIS_TYPE_RESERVED_12](#AIS_TYPE_RESERVED_12) | +| 13 | [AIS_TYPE_RESERVED_13](#AIS_TYPE_RESERVED_13) | +| 14 | [AIS_TYPE_RESERVED_14](#AIS_TYPE_RESERVED_14) | +| 15 | [AIS_TYPE_RESERVED_15](#AIS_TYPE_RESERVED_15) | +| 16 | [AIS_TYPE_RESERVED_16](#AIS_TYPE_RESERVED_16) | +| 17 | [AIS_TYPE_RESERVED_17](#AIS_TYPE_RESERVED_17) | +| 18 | [AIS_TYPE_RESERVED_18](#AIS_TYPE_RESERVED_18) | +| 19 | [AIS_TYPE_RESERVED_19](#AIS_TYPE_RESERVED_19) | +| 20 | [AIS_TYPE_WIG](#AIS_TYPE_WIG) | Wing In Ground effect. | +| 21 | [AIS_TYPE_WIG_HAZARDOUS_A](#AIS_TYPE_WIG_HAZARDOUS_A) | +| 22 | [AIS_TYPE_WIG_HAZARDOUS_B](#AIS_TYPE_WIG_HAZARDOUS_B) | +| 23 | [AIS_TYPE_WIG_HAZARDOUS_C](#AIS_TYPE_WIG_HAZARDOUS_C) | +| 24 | [AIS_TYPE_WIG_HAZARDOUS_D](#AIS_TYPE_WIG_HAZARDOUS_D) | +| 25 | [AIS_TYPE_WIG_RESERVED_1](#AIS_TYPE_WIG_RESERVED_1) | +| 26 | [AIS_TYPE_WIG_RESERVED_2](#AIS_TYPE_WIG_RESERVED_2) | +| 27 | [AIS_TYPE_WIG_RESERVED_3](#AIS_TYPE_WIG_RESERVED_3) | +| 28 | [AIS_TYPE_WIG_RESERVED_4](#AIS_TYPE_WIG_RESERVED_4) | +| 29 | [AIS_TYPE_WIG_RESERVED_5](#AIS_TYPE_WIG_RESERVED_5) | +| 30 | [AIS_TYPE_FISHING](#AIS_TYPE_FISHING) | +| 31 | [AIS_TYPE_TOWING](#AIS_TYPE_TOWING) | +| 32 | [AIS_TYPE_TOWING_LARGE](#AIS_TYPE_TOWING_LARGE) | Towing: length exceeds 200m or breadth exceeds 25m. | +| 33 | [AIS_TYPE_DREDGING](#AIS_TYPE_DREDGING) | Dredging or other underwater ops. | +| 34 | [AIS_TYPE_DIVING](#AIS_TYPE_DIVING) | +| 35 | [AIS_TYPE_MILITARY](#AIS_TYPE_MILITARY) | +| 36 | [AIS_TYPE_SAILING](#AIS_TYPE_SAILING) | +| 37 | [AIS_TYPE_PLEASURE](#AIS_TYPE_PLEASURE) | +| 38 | [AIS_TYPE_RESERVED_20](#AIS_TYPE_RESERVED_20) | +| 39 | [AIS_TYPE_RESERVED_21](#AIS_TYPE_RESERVED_21) | +| 40 | [AIS_TYPE_HSC](#AIS_TYPE_HSC) | High Speed Craft. | +| 41 | [AIS_TYPE_HSC_HAZARDOUS_A](#AIS_TYPE_HSC_HAZARDOUS_A) | +| 42 | [AIS_TYPE_HSC_HAZARDOUS_B](#AIS_TYPE_HSC_HAZARDOUS_B) | +| 43 | [AIS_TYPE_HSC_HAZARDOUS_C](#AIS_TYPE_HSC_HAZARDOUS_C) | +| 44 | [AIS_TYPE_HSC_HAZARDOUS_D](#AIS_TYPE_HSC_HAZARDOUS_D) | +| 45 | [AIS_TYPE_HSC_RESERVED_1](#AIS_TYPE_HSC_RESERVED_1) | +| 46 | [AIS_TYPE_HSC_RESERVED_2](#AIS_TYPE_HSC_RESERVED_2) | +| 47 | [AIS_TYPE_HSC_RESERVED_3](#AIS_TYPE_HSC_RESERVED_3) | +| 48 | [AIS_TYPE_HSC_RESERVED_4](#AIS_TYPE_HSC_RESERVED_4) | +| 49 | [AIS_TYPE_HSC_UNKNOWN](#AIS_TYPE_HSC_UNKNOWN) | +| 50 | [AIS_TYPE_PILOT](#AIS_TYPE_PILOT) | +| 51 | [AIS_TYPE_SAR](#AIS_TYPE_SAR) | Search And Rescue vessel. | +| 52 | [AIS_TYPE_TUG](#AIS_TYPE_TUG) | +| 53 | [AIS_TYPE_PORT_TENDER](#AIS_TYPE_PORT_TENDER) | +| 54 | [AIS_TYPE_ANTI_POLLUTION](#AIS_TYPE_ANTI_POLLUTION) | Anti-pollution equipment. | +| 55 | [AIS_TYPE_LAW_ENFORCEMENT](#AIS_TYPE_LAW_ENFORCEMENT) | +| 56 | [AIS_TYPE_SPARE_LOCAL_1](#AIS_TYPE_SPARE_LOCAL_1) | +| 57 | [AIS_TYPE_SPARE_LOCAL_2](#AIS_TYPE_SPARE_LOCAL_2) | +| 58 | [AIS_TYPE_MEDICAL_TRANSPORT](#AIS_TYPE_MEDICAL_TRANSPORT) | +| 59 | [AIS_TYPE_NONECOMBATANT](#AIS_TYPE_NONECOMBATANT) | Noncombatant ship according to RR Resolution No. 18. | +| 60 | [AIS_TYPE_PASSENGER](#AIS_TYPE_PASSENGER) | +| 61 | [AIS_TYPE_PASSENGER_HAZARDOUS_A](#AIS_TYPE_PASSENGER_HAZARDOUS_A) | +| 62 | [AIS_TYPE_PASSENGER_HAZARDOUS_B](#AIS_TYPE_PASSENGER_HAZARDOUS_B) | +| 63 | [AIS_TYPE_PASSENGER_HAZARDOUS_C](#AIS_TYPE_PASSENGER_HAZARDOUS_C) | +| 64 | [AIS_TYPE_PASSENGER_HAZARDOUS_D](#AIS_TYPE_PASSENGER_HAZARDOUS_D) | +| 65 | [AIS_TYPE_PASSENGER_RESERVED_1](#AIS_TYPE_PASSENGER_RESERVED_1) | +| 66 | [AIS_TYPE_PASSENGER_RESERVED_2](#AIS_TYPE_PASSENGER_RESERVED_2) | +| 67 | [AIS_TYPE_PASSENGER_RESERVED_3](#AIS_TYPE_PASSENGER_RESERVED_3) | +| 68 | [AIS_TYPE_PASSENGER_RESERVED_4](#AIS_TYPE_PASSENGER_RESERVED_4) | +| 69 | [AIS_TYPE_PASSENGER_UNKNOWN](#AIS_TYPE_PASSENGER_UNKNOWN) | +| 70 | [AIS_TYPE_CARGO](#AIS_TYPE_CARGO) | +| 71 | [AIS_TYPE_CARGO_HAZARDOUS_A](#AIS_TYPE_CARGO_HAZARDOUS_A) | +| 72 | [AIS_TYPE_CARGO_HAZARDOUS_B](#AIS_TYPE_CARGO_HAZARDOUS_B) | +| 73 | [AIS_TYPE_CARGO_HAZARDOUS_C](#AIS_TYPE_CARGO_HAZARDOUS_C) | +| 74 | [AIS_TYPE_CARGO_HAZARDOUS_D](#AIS_TYPE_CARGO_HAZARDOUS_D) | +| 75 | [AIS_TYPE_CARGO_RESERVED_1](#AIS_TYPE_CARGO_RESERVED_1) | +| 76 | [AIS_TYPE_CARGO_RESERVED_2](#AIS_TYPE_CARGO_RESERVED_2) | +| 77 | [AIS_TYPE_CARGO_RESERVED_3](#AIS_TYPE_CARGO_RESERVED_3) | +| 78 | [AIS_TYPE_CARGO_RESERVED_4](#AIS_TYPE_CARGO_RESERVED_4) | +| 79 | [AIS_TYPE_CARGO_UNKNOWN](#AIS_TYPE_CARGO_UNKNOWN) | +| 80 | [AIS_TYPE_TANKER](#AIS_TYPE_TANKER) | +| 81 | [AIS_TYPE_TANKER_HAZARDOUS_A](#AIS_TYPE_TANKER_HAZARDOUS_A) | +| 82 | [AIS_TYPE_TANKER_HAZARDOUS_B](#AIS_TYPE_TANKER_HAZARDOUS_B) | +| 83 | [AIS_TYPE_TANKER_HAZARDOUS_C](#AIS_TYPE_TANKER_HAZARDOUS_C) | +| 84 | [AIS_TYPE_TANKER_HAZARDOUS_D](#AIS_TYPE_TANKER_HAZARDOUS_D) | +| 85 | [AIS_TYPE_TANKER_RESERVED_1](#AIS_TYPE_TANKER_RESERVED_1) | +| 86 | [AIS_TYPE_TANKER_RESERVED_2](#AIS_TYPE_TANKER_RESERVED_2) | +| 87 | [AIS_TYPE_TANKER_RESERVED_3](#AIS_TYPE_TANKER_RESERVED_3) | +| 88 | [AIS_TYPE_TANKER_RESERVED_4](#AIS_TYPE_TANKER_RESERVED_4) | +| 89 | [AIS_TYPE_TANKER_UNKNOWN](#AIS_TYPE_TANKER_UNKNOWN) | +| 90 | [AIS_TYPE_OTHER](#AIS_TYPE_OTHER) | +| 91 | [AIS_TYPE_OTHER_HAZARDOUS_A](#AIS_TYPE_OTHER_HAZARDOUS_A) | +| 92 | [AIS_TYPE_OTHER_HAZARDOUS_B](#AIS_TYPE_OTHER_HAZARDOUS_B) | +| 93 | [AIS_TYPE_OTHER_HAZARDOUS_C](#AIS_TYPE_OTHER_HAZARDOUS_C) | +| 94 | [AIS_TYPE_OTHER_HAZARDOUS_D](#AIS_TYPE_OTHER_HAZARDOUS_D) | +| 95 | [AIS_TYPE_OTHER_RESERVED_1](#AIS_TYPE_OTHER_RESERVED_1) | +| 96 | [AIS_TYPE_OTHER_RESERVED_2](#AIS_TYPE_OTHER_RESERVED_2) | +| 97 | [AIS_TYPE_OTHER_RESERVED_3](#AIS_TYPE_OTHER_RESERVED_3) | +| 98 | [AIS_TYPE_OTHER_RESERVED_4](#AIS_TYPE_OTHER_RESERVED_4) | +| 99 | [AIS_TYPE_OTHER_UNKNOWN](#AIS_TYPE_OTHER_UNKNOWN) | ### AIS_NAV_STATUS {#AIS_NAV_STATUS} Navigational status of AIS vessel, enum duplicated from AIS standard, https://gpsd.gitlab.io/gpsd/AIVDM.html -Value | Name | Description ---- | --- | --- -0 | [AIS_NAV_STATUS_UNDER_WAY](#AIS_NAV_STATUS_UNDER_WAY) | Under way using engine. -1 | [AIS_NAV_STATUS_ANCHORED](#AIS_NAV_STATUS_ANCHORED) | -2 | [AIS_NAV_STATUS_UN_COMMANDED](#AIS_NAV_STATUS_UN_COMMANDED) | -3 | [AIS_NAV_STATUS_RESTRICTED_MANOEUVERABILITY](#AIS_NAV_STATUS_RESTRICTED_MANOEUVERABILITY) | -4 | [AIS_NAV_STATUS_DRAUGHT_CONSTRAINED](#AIS_NAV_STATUS_DRAUGHT_CONSTRAINED) | -5 | [AIS_NAV_STATUS_MOORED](#AIS_NAV_STATUS_MOORED) | -6 | [AIS_NAV_STATUS_AGROUND](#AIS_NAV_STATUS_AGROUND) | -7 | [AIS_NAV_STATUS_FISHING](#AIS_NAV_STATUS_FISHING) | -8 | [AIS_NAV_STATUS_SAILING](#AIS_NAV_STATUS_SAILING) | -9 | [AIS_NAV_STATUS_RESERVED_HSC](#AIS_NAV_STATUS_RESERVED_HSC) | -10 | [AIS_NAV_STATUS_RESERVED_WIG](#AIS_NAV_STATUS_RESERVED_WIG) | -11 | [AIS_NAV_STATUS_RESERVED_1](#AIS_NAV_STATUS_RESERVED_1) | -12 | [AIS_NAV_STATUS_RESERVED_2](#AIS_NAV_STATUS_RESERVED_2) | -13 | [AIS_NAV_STATUS_RESERVED_3](#AIS_NAV_STATUS_RESERVED_3) | -14 | [AIS_NAV_STATUS_AIS_SART](#AIS_NAV_STATUS_AIS_SART) | Search And Rescue Transponder. -15 | [AIS_NAV_STATUS_UNKNOWN](#AIS_NAV_STATUS_UNKNOWN) | Not available (default). +| Value | Name | Description | +| -------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------------------------ | +| 0 | [AIS_NAV_STATUS_UNDER_WAY](#AIS_NAV_STATUS_UNDER_WAY) | Under way using engine. | +| 1 | [AIS_NAV_STATUS_ANCHORED](#AIS_NAV_STATUS_ANCHORED) | +| 2 | [AIS_NAV_STATUS_UN_COMMANDED](#AIS_NAV_STATUS_UN_COMMANDED) | +| 3 | [AIS_NAV_STATUS_RESTRICTED_MANOEUVERABILITY](#AIS_NAV_STATUS_RESTRICTED_MANOEUVERABILITY) | +| 4 | [AIS_NAV_STATUS_DRAUGHT_CONSTRAINED](#AIS_NAV_STATUS_DRAUGHT_CONSTRAINED) | +| 5 | [AIS_NAV_STATUS_MOORED](#AIS_NAV_STATUS_MOORED) | +| 6 | [AIS_NAV_STATUS_AGROUND](#AIS_NAV_STATUS_AGROUND) | +| 7 | [AIS_NAV_STATUS_FISHING](#AIS_NAV_STATUS_FISHING) | +| 8 | [AIS_NAV_STATUS_SAILING](#AIS_NAV_STATUS_SAILING) | +| 9 | [AIS_NAV_STATUS_RESERVED_HSC](#AIS_NAV_STATUS_RESERVED_HSC) | +| 10 | [AIS_NAV_STATUS_RESERVED_WIG](#AIS_NAV_STATUS_RESERVED_WIG) | +| 11 | [AIS_NAV_STATUS_RESERVED_1](#AIS_NAV_STATUS_RESERVED_1) | +| 12 | [AIS_NAV_STATUS_RESERVED_2](#AIS_NAV_STATUS_RESERVED_2) | +| 13 | [AIS_NAV_STATUS_RESERVED_3](#AIS_NAV_STATUS_RESERVED_3) | +| 14 | [AIS_NAV_STATUS_AIS_SART](#AIS_NAV_STATUS_AIS_SART) | Search And Rescue Transponder. | +| 15 | [AIS_NAV_STATUS_UNKNOWN](#AIS_NAV_STATUS_UNKNOWN) | Not available (default). | ### AIS_FLAGS {#AIS_FLAGS} (Bitmask) These flags are used in the [AIS_VESSEL](#AIS_VESSEL).fields bitmask to indicate validity of data in the other message fields. When set, the data is valid. -Value | Name | Description ---- | --- | --- -1 | [AIS_FLAGS_POSITION_ACCURACY](#AIS_FLAGS_POSITION_ACCURACY) | 1 = High (Position accuracy less than or equal to 10m), 0 = Low (position accuracy greater than 10m). -2 | [AIS_FLAGS_VALID_COG](#AIS_FLAGS_VALID_COG) | The COG field contains valid data -4 | [AIS_FLAGS_VALID_VELOCITY](#AIS_FLAGS_VALID_VELOCITY) | The velocity field contains valid data -8 | [AIS_FLAGS_HIGH_VELOCITY](#AIS_FLAGS_HIGH_VELOCITY) | 1 = Velocity over 52.5765m/s (102.2 knots) -16 | [AIS_FLAGS_VALID_TURN_RATE](#AIS_FLAGS_VALID_TURN_RATE) | The turn_rate field contains valid data -32 | [AIS_FLAGS_TURN_RATE_SIGN_ONLY](#AIS_FLAGS_TURN_RATE_SIGN_ONLY) | Only the sign of the returned turn_rate value is valid. The actual turn rate is either greater than 5deg/30s or less than -5deg/30s. -64 | [AIS_FLAGS_VALID_DIMENSIONS](#AIS_FLAGS_VALID_DIMENSIONS) | -128 | [AIS_FLAGS_LARGE_BOW_DIMENSION](#AIS_FLAGS_LARGE_BOW_DIMENSION) | Distance to bow is greater than or equal to 511m -256 | [AIS_FLAGS_LARGE_STERN_DIMENSION](#AIS_FLAGS_LARGE_STERN_DIMENSION) | Distance to stern is greater than or equal to 511m -512 | [AIS_FLAGS_LARGE_PORT_DIMENSION](#AIS_FLAGS_LARGE_PORT_DIMENSION) | Distance to port side is greater than or equal to 63m -1024 | [AIS_FLAGS_LARGE_STARBOARD_DIMENSION](#AIS_FLAGS_LARGE_STARBOARD_DIMENSION) | Distance to starboard side is greater than or equal to 63m -2048 | [AIS_FLAGS_VALID_CALLSIGN](#AIS_FLAGS_VALID_CALLSIGN) | The callsign field contains valid data -4096 | [AIS_FLAGS_VALID_NAME](#AIS_FLAGS_VALID_NAME) | The name field contains valid data +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| 1 | [AIS_FLAGS_POSITION_ACCURACY](#AIS_FLAGS_POSITION_ACCURACY) | 1 = High (Position accuracy less than or equal to 10m), 0 = Low (position accuracy greater than 10m). | +| 2 | [AIS_FLAGS_VALID_COG](#AIS_FLAGS_VALID_COG) | The COG field contains valid data | +| 4 | [AIS_FLAGS_VALID_VELOCITY](#AIS_FLAGS_VALID_VELOCITY) | The velocity field contains valid data | +| 8 | [AIS_FLAGS_HIGH_VELOCITY](#AIS_FLAGS_HIGH_VELOCITY) | 1 = Velocity over 52.5765m/s (102.2 knots) | +| 16 | [AIS_FLAGS_VALID_TURN_RATE](#AIS_FLAGS_VALID_TURN_RATE) | The turn_rate field contains valid data | +| 32 | [AIS_FLAGS_TURN_RATE_SIGN_ONLY](#AIS_FLAGS_TURN_RATE_SIGN_ONLY) | Only the sign of the returned turn_rate value is valid. The actual turn rate is either greater than 5deg/30s or less than -5deg/30s. | +| 64 | [AIS_FLAGS_VALID_DIMENSIONS](#AIS_FLAGS_VALID_DIMENSIONS) | +| 128 | [AIS_FLAGS_LARGE_BOW_DIMENSION](#AIS_FLAGS_LARGE_BOW_DIMENSION) | Distance to bow is greater than or equal to 511m | +| 256 | [AIS_FLAGS_LARGE_STERN_DIMENSION](#AIS_FLAGS_LARGE_STERN_DIMENSION) | Distance to stern is greater than or equal to 511m | +| 512 | [AIS_FLAGS_LARGE_PORT_DIMENSION](#AIS_FLAGS_LARGE_PORT_DIMENSION) | Distance to port side is greater than or equal to 63m | +| 1024 | [AIS_FLAGS_LARGE_STARBOARD_DIMENSION](#AIS_FLAGS_LARGE_STARBOARD_DIMENSION) | Distance to starboard side is greater than or equal to 63m | +| 2048 | [AIS_FLAGS_VALID_CALLSIGN](#AIS_FLAGS_VALID_CALLSIGN) | The callsign field contains valid data | +| 4096 | [AIS_FLAGS_VALID_NAME](#AIS_FLAGS_VALID_NAME) | The name field contains valid data | ### FAILURE_UNIT {#FAILURE_UNIT} List of possible units where failures can be injected. -Value | Name | Description ---- | --- | --- -0 | [FAILURE_UNIT_SENSOR_GYRO](#FAILURE_UNIT_SENSOR_GYRO) | -1 | [FAILURE_UNIT_SENSOR_ACCEL](#FAILURE_UNIT_SENSOR_ACCEL) | -2 | [FAILURE_UNIT_SENSOR_MAG](#FAILURE_UNIT_SENSOR_MAG) | -3 | [FAILURE_UNIT_SENSOR_BARO](#FAILURE_UNIT_SENSOR_BARO) | -4 | [FAILURE_UNIT_SENSOR_GPS](#FAILURE_UNIT_SENSOR_GPS) | -5 | [FAILURE_UNIT_SENSOR_OPTICAL_FLOW](#FAILURE_UNIT_SENSOR_OPTICAL_FLOW) | -6 | [FAILURE_UNIT_SENSOR_VIO](#FAILURE_UNIT_SENSOR_VIO) | -7 | [FAILURE_UNIT_SENSOR_DISTANCE_SENSOR](#FAILURE_UNIT_SENSOR_DISTANCE_SENSOR) | -8 | [FAILURE_UNIT_SENSOR_AIRSPEED](#FAILURE_UNIT_SENSOR_AIRSPEED) | -100 | [FAILURE_UNIT_SYSTEM_BATTERY](#FAILURE_UNIT_SYSTEM_BATTERY) | -101 | [FAILURE_UNIT_SYSTEM_MOTOR](#FAILURE_UNIT_SYSTEM_MOTOR) | -102 | [FAILURE_UNIT_SYSTEM_SERVO](#FAILURE_UNIT_SYSTEM_SERVO) | -103 | [FAILURE_UNIT_SYSTEM_AVOIDANCE](#FAILURE_UNIT_SYSTEM_AVOIDANCE) | -104 | [FAILURE_UNIT_SYSTEM_RC_SIGNAL](#FAILURE_UNIT_SYSTEM_RC_SIGNAL) | -105 | [FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL](#FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL) | +| Value | Name | Description | +| -------------------------------------------------- | --------------------------------------------------------------------------- | ----------- | +| 0 | [FAILURE_UNIT_SENSOR_GYRO](#FAILURE_UNIT_SENSOR_GYRO) | +| 1 | [FAILURE_UNIT_SENSOR_ACCEL](#FAILURE_UNIT_SENSOR_ACCEL) | +| 2 | [FAILURE_UNIT_SENSOR_MAG](#FAILURE_UNIT_SENSOR_MAG) | +| 3 | [FAILURE_UNIT_SENSOR_BARO](#FAILURE_UNIT_SENSOR_BARO) | +| 4 | [FAILURE_UNIT_SENSOR_GPS](#FAILURE_UNIT_SENSOR_GPS) | +| 5 | [FAILURE_UNIT_SENSOR_OPTICAL_FLOW](#FAILURE_UNIT_SENSOR_OPTICAL_FLOW) | +| 6 | [FAILURE_UNIT_SENSOR_VIO](#FAILURE_UNIT_SENSOR_VIO) | +| 7 | [FAILURE_UNIT_SENSOR_DISTANCE_SENSOR](#FAILURE_UNIT_SENSOR_DISTANCE_SENSOR) | +| 8 | [FAILURE_UNIT_SENSOR_AIRSPEED](#FAILURE_UNIT_SENSOR_AIRSPEED) | +| 100 | [FAILURE_UNIT_SYSTEM_BATTERY](#FAILURE_UNIT_SYSTEM_BATTERY) | +| 101 | [FAILURE_UNIT_SYSTEM_MOTOR](#FAILURE_UNIT_SYSTEM_MOTOR) | +| 102 | [FAILURE_UNIT_SYSTEM_SERVO](#FAILURE_UNIT_SYSTEM_SERVO) | +| 103 | [FAILURE_UNIT_SYSTEM_AVOIDANCE](#FAILURE_UNIT_SYSTEM_AVOIDANCE) | +| 104 | [FAILURE_UNIT_SYSTEM_RC_SIGNAL](#FAILURE_UNIT_SYSTEM_RC_SIGNAL) | +| 105 | [FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL](#FAILURE_UNIT_SYSTEM_MAVLINK_SIGNAL) | ### FAILURE_TYPE {#FAILURE_TYPE} List of possible failure type to inject. -Value | Name | Description ---- | --- | --- -0 | [FAILURE_TYPE_OK](#FAILURE_TYPE_OK) | No failure injected, used to reset a previous failure. -1 | [FAILURE_TYPE_OFF](#FAILURE_TYPE_OFF) | Sets unit off, so completely non-responsive. -2 | [FAILURE_TYPE_STUCK](#FAILURE_TYPE_STUCK) | Unit is stuck e.g. keeps reporting the same value. -3 | [FAILURE_TYPE_GARBAGE](#FAILURE_TYPE_GARBAGE) | Unit is reporting complete garbage. -4 | [FAILURE_TYPE_WRONG](#FAILURE_TYPE_WRONG) | Unit is consistently wrong. -5 | [FAILURE_TYPE_SLOW](#FAILURE_TYPE_SLOW) | Unit is slow, so e.g. reporting at slower than expected rate. -6 | [FAILURE_TYPE_DELAYED](#FAILURE_TYPE_DELAYED) | Data of unit is delayed in time. -7 | [FAILURE_TYPE_INTERMITTENT](#FAILURE_TYPE_INTERMITTENT) | Unit is sometimes working, sometimes not. +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------- | +| 0 | [FAILURE_TYPE_OK](#FAILURE_TYPE_OK) | No failure injected, used to reset a previous failure. | +| 1 | [FAILURE_TYPE_OFF](#FAILURE_TYPE_OFF) | Sets unit off, so completely non-responsive. | +| 2 | [FAILURE_TYPE_STUCK](#FAILURE_TYPE_STUCK) | Unit is stuck e.g. keeps reporting the same value. | +| 3 | [FAILURE_TYPE_GARBAGE](#FAILURE_TYPE_GARBAGE) | Unit is reporting complete garbage. | +| 4 | [FAILURE_TYPE_WRONG](#FAILURE_TYPE_WRONG) | Unit is consistently wrong. | +| 5 | [FAILURE_TYPE_SLOW](#FAILURE_TYPE_SLOW) | Unit is slow, so e.g. reporting at slower than expected rate. | +| 6 | [FAILURE_TYPE_DELAYED](#FAILURE_TYPE_DELAYED) | Data of unit is delayed in time. | +| 7 | [FAILURE_TYPE_INTERMITTENT](#FAILURE_TYPE_INTERMITTENT) | Unit is sometimes working, sometimes not. | ### NAV_VTOL_LAND_OPTIONS {#NAV_VTOL_LAND_OPTIONS} -Value | Name | Description ---- | --- | --- -0 | [NAV_VTOL_LAND_OPTIONS_DEFAULT](#NAV_VTOL_LAND_OPTIONS_DEFAULT) | Default autopilot landing behaviour. -1 | [NAV_VTOL_LAND_OPTIONS_FW_SPIRAL_APPROACH](#NAV_VTOL_LAND_OPTIONS_FW_SPIRAL_APPROACH) | Use a fixed wing spiral desent approach before landing. -2 | [NAV_VTOL_LAND_OPTIONS_FW_APPROACH](#NAV_VTOL_LAND_OPTIONS_FW_APPROACH) | Use a fixed wing approach before detransitioning and landing vertically. +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | +| 0 | [NAV_VTOL_LAND_OPTIONS_DEFAULT](#NAV_VTOL_LAND_OPTIONS_DEFAULT) | Default autopilot landing behaviour. | +| 1 | [NAV_VTOL_LAND_OPTIONS_FW_SPIRAL_APPROACH](#NAV_VTOL_LAND_OPTIONS_FW_SPIRAL_APPROACH) | Use a fixed wing spiral desent approach before landing. | +| 2 | [NAV_VTOL_LAND_OPTIONS_FW_APPROACH](#NAV_VTOL_LAND_OPTIONS_FW_APPROACH) | Use a fixed wing approach before detransitioning and landing vertically. | ### MAV_WINCH_STATUS_FLAG {#MAV_WINCH_STATUS_FLAG} (Bitmask) Winch status flags used in [WINCH_STATUS](#WINCH_STATUS) -Value | Name | Description ---- | --- | --- -1 | [MAV_WINCH_STATUS_HEALTHY](#MAV_WINCH_STATUS_HEALTHY) | Winch is healthy -2 | [MAV_WINCH_STATUS_FULLY_RETRACTED](#MAV_WINCH_STATUS_FULLY_RETRACTED) | Winch line is fully retracted -4 | [MAV_WINCH_STATUS_MOVING](#MAV_WINCH_STATUS_MOVING) | Winch motor is moving -8 | [MAV_WINCH_STATUS_CLUTCH_ENGAGED](#MAV_WINCH_STATUS_CLUTCH_ENGAGED) | Winch clutch is engaged allowing motor to move freely. -16 | [MAV_WINCH_STATUS_LOCKED](#MAV_WINCH_STATUS_LOCKED) | Winch is locked by locking mechanism. -32 | [MAV_WINCH_STATUS_DROPPING](#MAV_WINCH_STATUS_DROPPING) | Winch is gravity dropping payload. -64 | [MAV_WINCH_STATUS_ARRESTING](#MAV_WINCH_STATUS_ARRESTING) | Winch is arresting payload descent. -128 | [MAV_WINCH_STATUS_GROUND_SENSE](#MAV_WINCH_STATUS_GROUND_SENSE) | Winch is using torque measurements to sense the ground. -256 | [MAV_WINCH_STATUS_RETRACTING](#MAV_WINCH_STATUS_RETRACTING) | Winch is returning to the fully retracted position. -512 | [MAV_WINCH_STATUS_REDELIVER](#MAV_WINCH_STATUS_REDELIVER) | Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. -1024 | [MAV_WINCH_STATUS_ABANDON_LINE](#MAV_WINCH_STATUS_ABANDON_LINE) | Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attempts exceeds a threshold. -2048 | [MAV_WINCH_STATUS_LOCKING](#MAV_WINCH_STATUS_LOCKING) | Winch is engaging the locking mechanism. -4096 | [MAV_WINCH_STATUS_LOAD_LINE](#MAV_WINCH_STATUS_LOAD_LINE) | Winch is spooling on line. -8192 | [MAV_WINCH_STATUS_LOAD_PAYLOAD](#MAV_WINCH_STATUS_LOAD_PAYLOAD) | Winch is loading a payload. +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_WINCH_STATUS_HEALTHY](#MAV_WINCH_STATUS_HEALTHY) | Winch is healthy | +| 2 | [MAV_WINCH_STATUS_FULLY_RETRACTED](#MAV_WINCH_STATUS_FULLY_RETRACTED) | Winch line is fully retracted | +| 4 | [MAV_WINCH_STATUS_MOVING](#MAV_WINCH_STATUS_MOVING) | Winch motor is moving | +| 8 | [MAV_WINCH_STATUS_CLUTCH_ENGAGED](#MAV_WINCH_STATUS_CLUTCH_ENGAGED) | Winch clutch is engaged allowing motor to move freely. | +| 16 | [MAV_WINCH_STATUS_LOCKED](#MAV_WINCH_STATUS_LOCKED) | Winch is locked by locking mechanism. | +| 32 | [MAV_WINCH_STATUS_DROPPING](#MAV_WINCH_STATUS_DROPPING) | Winch is gravity dropping payload. | +| 64 | [MAV_WINCH_STATUS_ARRESTING](#MAV_WINCH_STATUS_ARRESTING) | Winch is arresting payload descent. | +| 128 | [MAV_WINCH_STATUS_GROUND_SENSE](#MAV_WINCH_STATUS_GROUND_SENSE) | Winch is using torque measurements to sense the ground. | +| 256 | [MAV_WINCH_STATUS_RETRACTING](#MAV_WINCH_STATUS_RETRACTING) | Winch is returning to the fully retracted position. | +| 512 | [MAV_WINCH_STATUS_REDELIVER](#MAV_WINCH_STATUS_REDELIVER) | Winch is redelivering the payload. This is a failover state if the line tension goes above a threshold during RETRACTING. | +| 1024 | [MAV_WINCH_STATUS_ABANDON_LINE](#MAV_WINCH_STATUS_ABANDON_LINE) | Winch is abandoning the line and possibly payload. Winch unspools the entire calculated line length. This is a failover state from REDELIVER if the number of attempts exceeds a threshold. | +| 2048 | [MAV_WINCH_STATUS_LOCKING](#MAV_WINCH_STATUS_LOCKING) | Winch is engaging the locking mechanism. | +| 4096 | [MAV_WINCH_STATUS_LOAD_LINE](#MAV_WINCH_STATUS_LOAD_LINE) | Winch is spooling on line. | +| 8192 | [MAV_WINCH_STATUS_LOAD_PAYLOAD](#MAV_WINCH_STATUS_LOAD_PAYLOAD) | Winch is loading a payload. | ### MAG_CAL_STATUS {#MAG_CAL_STATUS} -Value | Name | Description ---- | --- | --- -0 | [MAG_CAL_NOT_STARTED](#MAG_CAL_NOT_STARTED) | -1 | [MAG_CAL_WAITING_TO_START](#MAG_CAL_WAITING_TO_START) | -2 | [MAG_CAL_RUNNING_STEP_ONE](#MAG_CAL_RUNNING_STEP_ONE) | -3 | [MAG_CAL_RUNNING_STEP_TWO](#MAG_CAL_RUNNING_STEP_TWO) | -4 | [MAG_CAL_SUCCESS](#MAG_CAL_SUCCESS) | -5 | [MAG_CAL_FAILED](#MAG_CAL_FAILED) | -6 | [MAG_CAL_FAILED_ORIENTATION](#MAG_CAL_FAILED_ORIENTATION) | Compass calibration failed: the vehicle orientation is outside the required tolerance. -7 | [MAG_CAL_FAILED_RADIUS](#MAG_CAL_FAILED_RADIUS) | Compass calibration failed: the radius of the fitted sphere is unrealistically small or large. -8 | [MAG_CAL_FAILED_OFFSETS](#MAG_CAL_FAILED_OFFSETS) | Compass calibration failed: offset magnitude too large. -9 | [MAG_CAL_FAILED_DIAG_SCALING](#MAG_CAL_FAILED_DIAG_SCALING) | Compass calibration failed: diagonal or off-diagonal scaling values out of valid range. -10 | [MAG_CAL_FAILED_RESIDUALS_HIGH](#MAG_CAL_FAILED_RESIDUALS_HIGH) | Compass calibration failed: fitness (RMS residual) exceeds tolerance. +| Value | Name | Description | +| -------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| 0 | [MAG_CAL_NOT_STARTED](#MAG_CAL_NOT_STARTED) | +| 1 | [MAG_CAL_WAITING_TO_START](#MAG_CAL_WAITING_TO_START) | +| 2 | [MAG_CAL_RUNNING_STEP_ONE](#MAG_CAL_RUNNING_STEP_ONE) | +| 3 | [MAG_CAL_RUNNING_STEP_TWO](#MAG_CAL_RUNNING_STEP_TWO) | +| 4 | [MAG_CAL_SUCCESS](#MAG_CAL_SUCCESS) | +| 5 | [MAG_CAL_FAILED](#MAG_CAL_FAILED) | +| 6 | [MAG_CAL_FAILED_ORIENTATION](#MAG_CAL_FAILED_ORIENTATION) | Compass calibration failed: the vehicle orientation is outside the required tolerance. | +| 7 | [MAG_CAL_FAILED_RADIUS](#MAG_CAL_FAILED_RADIUS) | Compass calibration failed: the radius of the fitted sphere is unrealistically small or large. | +| 8 | [MAG_CAL_FAILED_OFFSETS](#MAG_CAL_FAILED_OFFSETS) | Compass calibration failed: offset magnitude too large. | +| 9 | [MAG_CAL_FAILED_DIAG_SCALING](#MAG_CAL_FAILED_DIAG_SCALING) | Compass calibration failed: diagonal or off-diagonal scaling values out of valid range. | +| 10 | [MAG_CAL_FAILED_RESIDUALS_HIGH](#MAG_CAL_FAILED_RESIDUALS_HIGH) | Compass calibration failed: fitness (RMS residual) exceeds tolerance. | ### MAV_EVENT_ERROR_REASON {#MAV_EVENT_ERROR_REASON} Reason for an event error response. -Value | Name | Description ---- | --- | --- -0 | [MAV_EVENT_ERROR_REASON_UNAVAILABLE](#MAV_EVENT_ERROR_REASON_UNAVAILABLE) | The requested event is not available (anymore). +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | ----------------------------------------------- | +| 0 | [MAV_EVENT_ERROR_REASON_UNAVAILABLE](#MAV_EVENT_ERROR_REASON_UNAVAILABLE) | The requested event is not available (anymore). | ### MAV_EVENT_CURRENT_SEQUENCE_FLAGS {#MAV_EVENT_CURRENT_SEQUENCE_FLAGS} (Bitmask) Flags for [CURRENT_EVENT_SEQUENCE](#CURRENT_EVENT_SEQUENCE). -Value | Name | Description ---- | --- | --- -1 | [MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET](#MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET) | A sequence reset has happened (e.g. vehicle reboot). +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------------- | ---------------------------------------------------- | +| 1 | [MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET](#MAV_EVENT_CURRENT_SEQUENCE_FLAGS_RESET) | A sequence reset has happened (e.g. vehicle reboot). | ### HIL_SENSOR_UPDATED_FLAGS {#HIL_SENSOR_UPDATED_FLAGS} (Bitmask) Flags in the [HIL_SENSOR](#HIL_SENSOR) message indicate which fields have updated since the last message -Value | Name | Description ---- | --- | --- -1 | [HIL_SENSOR_UPDATED_XACC](#HIL_SENSOR_UPDATED_XACC) | The value in the xacc field has been updated -2 | [HIL_SENSOR_UPDATED_YACC](#HIL_SENSOR_UPDATED_YACC) | The value in the yacc field has been updated -4 | [HIL_SENSOR_UPDATED_ZACC](#HIL_SENSOR_UPDATED_ZACC) | The value in the zacc field has been updated -8 | [HIL_SENSOR_UPDATED_XGYRO](#HIL_SENSOR_UPDATED_XGYRO) | The value in the xgyro field has been updated -16 | [HIL_SENSOR_UPDATED_YGYRO](#HIL_SENSOR_UPDATED_YGYRO) | The value in the ygyro field has been updated -32 | [HIL_SENSOR_UPDATED_ZGYRO](#HIL_SENSOR_UPDATED_ZGYRO) | The value in the zgyro field has been updated -64 | [HIL_SENSOR_UPDATED_XMAG](#HIL_SENSOR_UPDATED_XMAG) | The value in the xmag field has been updated -128 | [HIL_SENSOR_UPDATED_YMAG](#HIL_SENSOR_UPDATED_YMAG) | The value in the ymag field has been updated -256 | [HIL_SENSOR_UPDATED_ZMAG](#HIL_SENSOR_UPDATED_ZMAG) | The value in the zmag field has been updated -512 | [HIL_SENSOR_UPDATED_ABS_PRESSURE](#HIL_SENSOR_UPDATED_ABS_PRESSURE) | The value in the abs_pressure field has been updated -1024 | [HIL_SENSOR_UPDATED_DIFF_PRESSURE](#HIL_SENSOR_UPDATED_DIFF_PRESSURE) | The value in the diff_pressure field has been updated -2048 | [HIL_SENSOR_UPDATED_PRESSURE_ALT](#HIL_SENSOR_UPDATED_PRESSURE_ALT) | The value in the pressure_alt field has been updated -4096 | [HIL_SENSOR_UPDATED_TEMPERATURE](#HIL_SENSOR_UPDATED_TEMPERATURE) | The value in the temperature field has been updated -2147483648 | [HIL_SENSOR_UPDATED_RESET](#HIL_SENSOR_UPDATED_RESET) | Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| 1 | [HIL_SENSOR_UPDATED_XACC](#HIL_SENSOR_UPDATED_XACC) | The value in the xacc field has been updated | +| 2 | [HIL_SENSOR_UPDATED_YACC](#HIL_SENSOR_UPDATED_YACC) | The value in the yacc field has been updated | +| 4 | [HIL_SENSOR_UPDATED_ZACC](#HIL_SENSOR_UPDATED_ZACC) | The value in the zacc field has been updated | +| 8 | [HIL_SENSOR_UPDATED_XGYRO](#HIL_SENSOR_UPDATED_XGYRO) | The value in the xgyro field has been updated | +| 16 | [HIL_SENSOR_UPDATED_YGYRO](#HIL_SENSOR_UPDATED_YGYRO) | The value in the ygyro field has been updated | +| 32 | [HIL_SENSOR_UPDATED_ZGYRO](#HIL_SENSOR_UPDATED_ZGYRO) | The value in the zgyro field has been updated | +| 64 | [HIL_SENSOR_UPDATED_XMAG](#HIL_SENSOR_UPDATED_XMAG) | The value in the xmag field has been updated | +| 128 | [HIL_SENSOR_UPDATED_YMAG](#HIL_SENSOR_UPDATED_YMAG) | The value in the ymag field has been updated | +| 256 | [HIL_SENSOR_UPDATED_ZMAG](#HIL_SENSOR_UPDATED_ZMAG) | The value in the zmag field has been updated | +| 512 | [HIL_SENSOR_UPDATED_ABS_PRESSURE](#HIL_SENSOR_UPDATED_ABS_PRESSURE) | The value in the abs_pressure field has been updated | +| 1024 | [HIL_SENSOR_UPDATED_DIFF_PRESSURE](#HIL_SENSOR_UPDATED_DIFF_PRESSURE) | The value in the diff_pressure field has been updated | +| 2048 | [HIL_SENSOR_UPDATED_PRESSURE_ALT](#HIL_SENSOR_UPDATED_PRESSURE_ALT) | The value in the pressure_alt field has been updated | +| 4096 | [HIL_SENSOR_UPDATED_TEMPERATURE](#HIL_SENSOR_UPDATED_TEMPERATURE) | The value in the temperature field has been updated | +| 2147483648 | [HIL_SENSOR_UPDATED_RESET](#HIL_SENSOR_UPDATED_RESET) | Full reset of attitude/position/velocities/etc was performed in sim (Bit 31). | ### HIGHRES_IMU_UPDATED_FLAGS {#HIGHRES_IMU_UPDATED_FLAGS} (Bitmask) Flags in the [HIGHRES_IMU](#HIGHRES_IMU) message indicate which fields have updated since the last message -Value | Name | Description ---- | --- | --- -1 | [HIGHRES_IMU_UPDATED_XACC](#HIGHRES_IMU_UPDATED_XACC) | The value in the xacc field has been updated -2 | [HIGHRES_IMU_UPDATED_YACC](#HIGHRES_IMU_UPDATED_YACC) | The value in the yacc field has been updated -4 | [HIGHRES_IMU_UPDATED_ZACC](#HIGHRES_IMU_UPDATED_ZACC) | The value in the zacc field has been updated since -8 | [HIGHRES_IMU_UPDATED_XGYRO](#HIGHRES_IMU_UPDATED_XGYRO) | The value in the xgyro field has been updated -16 | [HIGHRES_IMU_UPDATED_YGYRO](#HIGHRES_IMU_UPDATED_YGYRO) | The value in the ygyro field has been updated -32 | [HIGHRES_IMU_UPDATED_ZGYRO](#HIGHRES_IMU_UPDATED_ZGYRO) | The value in the zgyro field has been updated -64 | [HIGHRES_IMU_UPDATED_XMAG](#HIGHRES_IMU_UPDATED_XMAG) | The value in the xmag field has been updated -128 | [HIGHRES_IMU_UPDATED_YMAG](#HIGHRES_IMU_UPDATED_YMAG) | The value in the ymag field has been updated -256 | [HIGHRES_IMU_UPDATED_ZMAG](#HIGHRES_IMU_UPDATED_ZMAG) | The value in the zmag field has been updated -512 | [HIGHRES_IMU_UPDATED_ABS_PRESSURE](#HIGHRES_IMU_UPDATED_ABS_PRESSURE) | The value in the abs_pressure field has been updated -1024 | [HIGHRES_IMU_UPDATED_DIFF_PRESSURE](#HIGHRES_IMU_UPDATED_DIFF_PRESSURE) | The value in the diff_pressure field has been updated -2048 | [HIGHRES_IMU_UPDATED_PRESSURE_ALT](#HIGHRES_IMU_UPDATED_PRESSURE_ALT) | The value in the pressure_alt field has been updated -4096 | [HIGHRES_IMU_UPDATED_TEMPERATURE](#HIGHRES_IMU_UPDATED_TEMPERATURE) | The value in the temperature field has been updated +| Value | Name | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------- | +| 1 | [HIGHRES_IMU_UPDATED_XACC](#HIGHRES_IMU_UPDATED_XACC) | The value in the xacc field has been updated | +| 2 | [HIGHRES_IMU_UPDATED_YACC](#HIGHRES_IMU_UPDATED_YACC) | The value in the yacc field has been updated | +| 4 | [HIGHRES_IMU_UPDATED_ZACC](#HIGHRES_IMU_UPDATED_ZACC) | The value in the zacc field has been updated since | +| 8 | [HIGHRES_IMU_UPDATED_XGYRO](#HIGHRES_IMU_UPDATED_XGYRO) | The value in the xgyro field has been updated | +| 16 | [HIGHRES_IMU_UPDATED_YGYRO](#HIGHRES_IMU_UPDATED_YGYRO) | The value in the ygyro field has been updated | +| 32 | [HIGHRES_IMU_UPDATED_ZGYRO](#HIGHRES_IMU_UPDATED_ZGYRO) | The value in the zgyro field has been updated | +| 64 | [HIGHRES_IMU_UPDATED_XMAG](#HIGHRES_IMU_UPDATED_XMAG) | The value in the xmag field has been updated | +| 128 | [HIGHRES_IMU_UPDATED_YMAG](#HIGHRES_IMU_UPDATED_YMAG) | The value in the ymag field has been updated | +| 256 | [HIGHRES_IMU_UPDATED_ZMAG](#HIGHRES_IMU_UPDATED_ZMAG) | The value in the zmag field has been updated | +| 512 | [HIGHRES_IMU_UPDATED_ABS_PRESSURE](#HIGHRES_IMU_UPDATED_ABS_PRESSURE) | The value in the abs_pressure field has been updated | +| 1024 | [HIGHRES_IMU_UPDATED_DIFF_PRESSURE](#HIGHRES_IMU_UPDATED_DIFF_PRESSURE) | The value in the diff_pressure field has been updated | +| 2048 | [HIGHRES_IMU_UPDATED_PRESSURE_ALT](#HIGHRES_IMU_UPDATED_PRESSURE_ALT) | The value in the pressure_alt field has been updated | +| 4096 | [HIGHRES_IMU_UPDATED_TEMPERATURE](#HIGHRES_IMU_UPDATED_TEMPERATURE) | The value in the temperature field has been updated | ### CAN_FILTER_OP {#CAN_FILTER_OP} -Value | Name | Description ---- | --- | --- -0 | [CAN_FILTER_REPLACE](#CAN_FILTER_REPLACE) | -1 | [CAN_FILTER_ADD](#CAN_FILTER_ADD) | -2 | [CAN_FILTER_REMOVE](#CAN_FILTER_REMOVE) | +| Value | Name | Description | +| -------------------------------- | ----------------------------------------- | ----------- | +| 0 | [CAN_FILTER_REPLACE](#CAN_FILTER_REPLACE) | +| 1 | [CAN_FILTER_ADD](#CAN_FILTER_ADD) | +| 2 | [CAN_FILTER_REMOVE](#CAN_FILTER_REMOVE) | ### MAV_FTP_ERR {#MAV_FTP_ERR} MAV FTP error codes (may be used in [FILE_TRANSFER_PROTOCOL](#FILE_TRANSFER_PROTOCOL)). See https://mavlink.io/en/services/ftp.html. -Value | Name | Description ---- | --- | --- -0 | [MAV_FTP_ERR_NONE](#MAV_FTP_ERR_NONE) | None: No error -1 | [MAV_FTP_ERR_FAIL](#MAV_FTP_ERR_FAIL) | Fail: Unknown failure -2 | [MAV_FTP_ERR_FAILERRNO](#MAV_FTP_ERR_FAILERRNO) | FailErrno: Command failed, Err number sent back in PayloadHeader.data[1].
This is a file-system error number understood by the server operating system. -3 | [MAV_FTP_ERR_INVALIDDATASIZE](#MAV_FTP_ERR_INVALIDDATASIZE) | InvalidDataSize: Payload size is invalid -4 | [MAV_FTP_ERR_INVALIDSESSION](#MAV_FTP_ERR_INVALIDSESSION) | InvalidSession: Session is not currently open -5 | [MAV_FTP_ERR_NOSESSIONSAVAILABLE](#MAV_FTP_ERR_NOSESSIONSAVAILABLE) | NoSessionsAvailable: All available sessions are already in use -6 | [MAV_FTP_ERR_EOF](#MAV_FTP_ERR_EOF) | EOF: Offset past end of file for ListDirectory and ReadFile commands -7 | [MAV_FTP_ERR_UNKNOWNCOMMAND](#MAV_FTP_ERR_UNKNOWNCOMMAND) | UnknownCommand: Unknown command / opcode -8 | [MAV_FTP_ERR_FILEEXISTS](#MAV_FTP_ERR_FILEEXISTS) | FileExists: File/directory already exists -9 | [MAV_FTP_ERR_FILEPROTECTED](#MAV_FTP_ERR_FILEPROTECTED) | FileProtected: File/directory is write protected -10 | [MAV_FTP_ERR_FILENOTFOUND](#MAV_FTP_ERR_FILENOTFOUND) | FileNotFound: File/directory not found +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_FTP_ERR_NONE](#MAV_FTP_ERR_NONE) | None: No error | +| 1 | [MAV_FTP_ERR_FAIL](#MAV_FTP_ERR_FAIL) | Fail: Unknown failure | +| 2 | [MAV_FTP_ERR_FAILERRNO](#MAV_FTP_ERR_FAILERRNO) | FailErrno: Command failed, Err number sent back in PayloadHeader.data[1].
This is a file-system error number understood by the server operating system. | +| 3 | [MAV_FTP_ERR_INVALIDDATASIZE](#MAV_FTP_ERR_INVALIDDATASIZE) | InvalidDataSize: Payload size is invalid | +| 4 | [MAV_FTP_ERR_INVALIDSESSION](#MAV_FTP_ERR_INVALIDSESSION) | InvalidSession: Session is not currently open | +| 5 | [MAV_FTP_ERR_NOSESSIONSAVAILABLE](#MAV_FTP_ERR_NOSESSIONSAVAILABLE) | NoSessionsAvailable: All available sessions are already in use | +| 6 | [MAV_FTP_ERR_EOF](#MAV_FTP_ERR_EOF) | EOF: Offset past end of file for ListDirectory and ReadFile commands | +| 7 | [MAV_FTP_ERR_UNKNOWNCOMMAND](#MAV_FTP_ERR_UNKNOWNCOMMAND) | UnknownCommand: Unknown command / opcode | +| 8 | [MAV_FTP_ERR_FILEEXISTS](#MAV_FTP_ERR_FILEEXISTS) | FileExists: File/directory already exists | +| 9 | [MAV_FTP_ERR_FILEPROTECTED](#MAV_FTP_ERR_FILEPROTECTED) | FileProtected: File/directory is write protected | +| 10 | [MAV_FTP_ERR_FILENOTFOUND](#MAV_FTP_ERR_FILENOTFOUND) | FileNotFound: File/directory not found | ### MAV_FTP_OPCODE {#MAV_FTP_OPCODE} MAV FTP opcodes (may be used in [FILE_TRANSFER_PROTOCOL](#FILE_TRANSFER_PROTOCOL)). See https://mavlink.io/en/services/ftp.html. -Value | Name | Description ---- | --- | --- -0 | [MAV_FTP_OPCODE_NONE](#MAV_FTP_OPCODE_NONE) | None. Ignored, always ACKed -1 | [MAV_FTP_OPCODE_TERMINATESESSION](#MAV_FTP_OPCODE_TERMINATESESSION) | TerminateSession: Terminates open Read session -2 | [MAV_FTP_OPCODE_RESETSESSION](#MAV_FTP_OPCODE_RESETSESSION) | ResetSessions: Terminates all open read sessions -3 | [MAV_FTP_OPCODE_LISTDIRECTORY](#MAV_FTP_OPCODE_LISTDIRECTORY) | ListDirectory. List files and directories in path from offset -4 | [MAV_FTP_OPCODE_OPENFILERO](#MAV_FTP_OPCODE_OPENFILERO) | OpenFileRO: Opens file at path for reading, returns session -5 | [MAV_FTP_OPCODE_READFILE](#MAV_FTP_OPCODE_READFILE) | ReadFile: Reads size bytes from offset in session -6 | [MAV_FTP_OPCODE_CREATEFILE](#MAV_FTP_OPCODE_CREATEFILE) | CreateFile: Creates file at path for writing, returns session -7 | [MAV_FTP_OPCODE_WRITEFILE](#MAV_FTP_OPCODE_WRITEFILE) | WriteFile: Writes size bytes to offset in session -8 | [MAV_FTP_OPCODE_REMOVEFILE](#MAV_FTP_OPCODE_REMOVEFILE) | RemoveFile: Remove file at path -9 | [MAV_FTP_OPCODE_CREATEDIRECTORY](#MAV_FTP_OPCODE_CREATEDIRECTORY) | CreateDirectory: Creates directory at path -10 | [MAV_FTP_OPCODE_REMOVEDIRECTORY](#MAV_FTP_OPCODE_REMOVEDIRECTORY) | RemoveDirectory: Removes directory at path. The directory must be empty. -11 | [MAV_FTP_OPCODE_OPENFILEWO](#MAV_FTP_OPCODE_OPENFILEWO) | OpenFileWO: Opens file at path for writing, returns session -12 | [MAV_FTP_OPCODE_TRUNCATEFILE](#MAV_FTP_OPCODE_TRUNCATEFILE) | TruncateFile: Truncate file at path to offset length -13 | [MAV_FTP_OPCODE_RENAME](#MAV_FTP_OPCODE_RENAME) | Rename: Rename path1 to path2 -14 | [MAV_FTP_OPCODE_CALCFILECRC](#MAV_FTP_OPCODE_CALCFILECRC) | CalcFileCRC32: Calculate CRC32 for file at path -15 | [MAV_FTP_OPCODE_BURSTREADFILE](#MAV_FTP_OPCODE_BURSTREADFILE) | BurstReadFile: Burst download session file -16 | [MAV_FTP_OPCODE_LISTDIRECTORYWITHTIME](#MAV_FTP_OPCODE_LISTDIRECTORYWITHTIME) | ListDirectoryWithTime: List files and directories, along with last-modification timestamps, in path from offset. This is the same as ListDirectory except for the addition of timestamps. Servers that do not support this opcode respond with a NAK ([MAV_FTP_ERR_UNKNOWNCOMMAND](#MAV_FTP_ERR_UNKNOWNCOMMAND)). -128 | [MAV_FTP_OPCODE_ACK](#MAV_FTP_OPCODE_ACK) | ACK: ACK response -129 | [MAV_FTP_OPCODE_NAK](#MAV_FTP_OPCODE_NAK) | NAK: NAK response +| Value | Name | Description | +| --------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_FTP_OPCODE_NONE](#MAV_FTP_OPCODE_NONE) | None. Ignored, always ACKed | +| 1 | [MAV_FTP_OPCODE_TERMINATESESSION](#MAV_FTP_OPCODE_TERMINATESESSION) | TerminateSession: Terminates open Read session | +| 2 | [MAV_FTP_OPCODE_RESETSESSION](#MAV_FTP_OPCODE_RESETSESSION) | ResetSessions: Terminates all open read sessions | +| 3 | [MAV_FTP_OPCODE_LISTDIRECTORY](#MAV_FTP_OPCODE_LISTDIRECTORY) | ListDirectory. List files and directories in path from offset | +| 4 | [MAV_FTP_OPCODE_OPENFILERO](#MAV_FTP_OPCODE_OPENFILERO) | OpenFileRO: Opens file at path for reading, returns session | +| 5 | [MAV_FTP_OPCODE_READFILE](#MAV_FTP_OPCODE_READFILE) | ReadFile: Reads size bytes from offset in session | +| 6 | [MAV_FTP_OPCODE_CREATEFILE](#MAV_FTP_OPCODE_CREATEFILE) | CreateFile: Creates file at path for writing, returns session | +| 7 | [MAV_FTP_OPCODE_WRITEFILE](#MAV_FTP_OPCODE_WRITEFILE) | WriteFile: Writes size bytes to offset in session | +| 8 | [MAV_FTP_OPCODE_REMOVEFILE](#MAV_FTP_OPCODE_REMOVEFILE) | RemoveFile: Remove file at path | +| 9 | [MAV_FTP_OPCODE_CREATEDIRECTORY](#MAV_FTP_OPCODE_CREATEDIRECTORY) | CreateDirectory: Creates directory at path | +| 10 | [MAV_FTP_OPCODE_REMOVEDIRECTORY](#MAV_FTP_OPCODE_REMOVEDIRECTORY) | RemoveDirectory: Removes directory at path. The directory must be empty. | +| 11 | [MAV_FTP_OPCODE_OPENFILEWO](#MAV_FTP_OPCODE_OPENFILEWO) | OpenFileWO: Opens file at path for writing, returns session | +| 12 | [MAV_FTP_OPCODE_TRUNCATEFILE](#MAV_FTP_OPCODE_TRUNCATEFILE) | TruncateFile: Truncate file at path to offset length | +| 13 | [MAV_FTP_OPCODE_RENAME](#MAV_FTP_OPCODE_RENAME) | Rename: Rename path1 to path2 | +| 14 | [MAV_FTP_OPCODE_CALCFILECRC](#MAV_FTP_OPCODE_CALCFILECRC) | CalcFileCRC32: Calculate CRC32 for file at path | +| 15 | [MAV_FTP_OPCODE_BURSTREADFILE](#MAV_FTP_OPCODE_BURSTREADFILE) | BurstReadFile: Burst download session file | +| 16 | [MAV_FTP_OPCODE_LISTDIRECTORYWITHTIME](#MAV_FTP_OPCODE_LISTDIRECTORYWITHTIME) | ListDirectoryWithTime: List files and directories, along with last-modification timestamps, in path from offset. This is the same as ListDirectory except for the addition of timestamps. Servers that do not support this opcode respond with a NAK ([MAV_FTP_ERR_UNKNOWNCOMMAND](#MAV_FTP_ERR_UNKNOWNCOMMAND)). | +| 128 | [MAV_FTP_OPCODE_ACK](#MAV_FTP_OPCODE_ACK) | ACK: ACK response | +| 129 | [MAV_FTP_OPCODE_NAK](#MAV_FTP_OPCODE_NAK) | NAK: NAK response | ### MISSION_STATE {#MISSION_STATE} @@ -6170,43 +5935,43 @@ States of the mission state machine. Note that these states are independent of whether the mission is in a mode that can execute mission items or not (is suspended). They may not all be relevant on all vehicles. -Value | Name | Description ---- | --- | --- -0 | [MISSION_STATE_UNKNOWN](#MISSION_STATE_UNKNOWN) | The mission status reporting is not supported. -1 | [MISSION_STATE_NO_MISSION](#MISSION_STATE_NO_MISSION) | No mission on the vehicle. -2 | [MISSION_STATE_NOT_STARTED](#MISSION_STATE_NOT_STARTED) | Mission has not started. This is the case after a mission has uploaded but not yet started executing. -3 | [MISSION_STATE_ACTIVE](#MISSION_STATE_ACTIVE) | Mission is active, and will execute mission items when in auto mode. -4 | [MISSION_STATE_PAUSED](#MISSION_STATE_PAUSED) | Mission is paused when in auto mode. -5 | [MISSION_STATE_COMPLETE](#MISSION_STATE_COMPLETE) | Mission has executed all mission items. +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| 0 | [MISSION_STATE_UNKNOWN](#MISSION_STATE_UNKNOWN) | The mission status reporting is not supported. | +| 1 | [MISSION_STATE_NO_MISSION](#MISSION_STATE_NO_MISSION) | No mission on the vehicle. | +| 2 | [MISSION_STATE_NOT_STARTED](#MISSION_STATE_NOT_STARTED) | Mission has not started. This is the case after a mission has uploaded but not yet started executing. | +| 3 | [MISSION_STATE_ACTIVE](#MISSION_STATE_ACTIVE) | Mission is active, and will execute mission items when in auto mode. | +| 4 | [MISSION_STATE_PAUSED](#MISSION_STATE_PAUSED) | Mission is paused when in auto mode. | +| 5 | [MISSION_STATE_COMPLETE](#MISSION_STATE_COMPLETE) | Mission has executed all mission items. | ### SAFETY_SWITCH_STATE {#SAFETY_SWITCH_STATE} Possible safety switch states. -Value | Name | Description ---- | --- | --- -0 | [SAFETY_SWITCH_STATE_SAFE](#SAFETY_SWITCH_STATE_SAFE) | Safety switch is engaged and vehicle should be safe to approach. -1 | [SAFETY_SWITCH_STATE_DANGEROUS](#SAFETY_SWITCH_STATE_DANGEROUS) | Safety switch is NOT engaged and motors, propellers and other actuators should be considered active. +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | +| 0 | [SAFETY_SWITCH_STATE_SAFE](#SAFETY_SWITCH_STATE_SAFE) | Safety switch is engaged and vehicle should be safe to approach. | +| 1 | [SAFETY_SWITCH_STATE_DANGEROUS](#SAFETY_SWITCH_STATE_DANGEROUS) | Safety switch is NOT engaged and motors, propellers and other actuators should be considered active. | ### ILLUMINATOR_MODE {#ILLUMINATOR_MODE} Modes of illuminator -Value | Name | Description ---- | --- | --- -0 | [ILLUMINATOR_MODE_UNKNOWN](#ILLUMINATOR_MODE_UNKNOWN) | Illuminator mode is not specified/unknown -1 | [ILLUMINATOR_MODE_INTERNAL_CONTROL](#ILLUMINATOR_MODE_INTERNAL_CONTROL) | Illuminator behavior is controlled by [MAV_CMD_DO_ILLUMINATOR_CONFIGURE](#MAV_CMD_DO_ILLUMINATOR_CONFIGURE) settings -2 | [ILLUMINATOR_MODE_EXTERNAL_SYNC](#ILLUMINATOR_MODE_EXTERNAL_SYNC) | Illuminator behavior is controlled by external factors: e.g. an external hardware signal +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| 0 | [ILLUMINATOR_MODE_UNKNOWN](#ILLUMINATOR_MODE_UNKNOWN) | Illuminator mode is not specified/unknown | +| 1 | [ILLUMINATOR_MODE_INTERNAL_CONTROL](#ILLUMINATOR_MODE_INTERNAL_CONTROL) | Illuminator behavior is controlled by [MAV_CMD_DO_ILLUMINATOR_CONFIGURE](#MAV_CMD_DO_ILLUMINATOR_CONFIGURE) settings | +| 2 | [ILLUMINATOR_MODE_EXTERNAL_SYNC](#ILLUMINATOR_MODE_EXTERNAL_SYNC) | Illuminator behavior is controlled by external factors: e.g. an external hardware signal | ### ILLUMINATOR_ERROR_FLAGS {#ILLUMINATOR_ERROR_FLAGS} (Bitmask) Illuminator module error flags (bitmap, 0 means no error) -Value | Name | Description ---- | --- | --- -1 | [ILLUMINATOR_ERROR_FLAGS_THERMAL_THROTTLING](#ILLUMINATOR_ERROR_FLAGS_THERMAL_THROTTLING) | Illuminator thermal throttling error. -2 | [ILLUMINATOR_ERROR_FLAGS_OVER_TEMPERATURE_SHUTDOWN](#ILLUMINATOR_ERROR_FLAGS_OVER_TEMPERATURE_SHUTDOWN) | Illuminator over temperature shutdown error. -4 | [ILLUMINATOR_ERROR_FLAGS_THERMISTOR_FAILURE](#ILLUMINATOR_ERROR_FLAGS_THERMISTOR_FAILURE) | Illuminator thermistor failure. +| Value | Name | Description | +| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------- | +| 1 | [ILLUMINATOR_ERROR_FLAGS_THERMAL_THROTTLING](#ILLUMINATOR_ERROR_FLAGS_THERMAL_THROTTLING) | Illuminator thermal throttling error. | +| 2 | [ILLUMINATOR_ERROR_FLAGS_OVER_TEMPERATURE_SHUTDOWN](#ILLUMINATOR_ERROR_FLAGS_OVER_TEMPERATURE_SHUTDOWN) | Illuminator over temperature shutdown error. | +| 4 | [ILLUMINATOR_ERROR_FLAGS_THERMISTOR_FAILURE](#ILLUMINATOR_ERROR_FLAGS_THERMISTOR_FAILURE) | Illuminator thermistor failure. | ### MAV_STANDARD_MODE {#MAV_STANDARD_MODE} @@ -6217,263 +5982,262 @@ The modes supported by a flight stack can be queried using [AVAILABLE_MODES](#AV The current mode is streamed in [CURRENT_MODE](#CURRENT_MODE). See https://mavlink.io/en/services/standard_modes.html -Value | Name | Description ---- | --- | --- -0 | [MAV_STANDARD_MODE_NON_STANDARD](#MAV_STANDARD_MODE_NON_STANDARD) | Non standard mode.
This may be used when reporting the mode if the current flight mode is not a standard mode. -1 | [MAV_STANDARD_MODE_POSITION_HOLD](#MAV_STANDARD_MODE_POSITION_HOLD) | Position mode (manual).
Position-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold both position and altitude against wind and external forces.
This mode can only be set by vehicles that can hold a fixed position.
Multicopter (MC) vehicles actively brake and hold both position and altitude against wind and external forces.
Hybrid MC/FW ("VTOL") vehicles first transition to multicopter mode (if needed) but otherwise behave in the same way as MC vehicles.
Fixed-wing (FW) vehicles must not support this mode.
Other vehicle types must not support this mode (this may be revisited through the PR process). -2 | [MAV_STANDARD_MODE_ORBIT](#MAV_STANDARD_MODE_ORBIT) | Orbit (manual).
Position-controlled and stabilized manual mode.
The vehicle circles around a fixed setpoint in the horizontal plane at a particular radius, altitude, and direction.
Flight stacks may further allow manual control over the setpoint position, radius, direction, speed, and/or altitude of the circle, but this is not mandated.
Flight stacks may support the [MAV_CMD_DO_ORBIT](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_ORBIT) for changing the orbit parameters.
MC and FW vehicles may support this mode.
Hybrid MC/FW ("VTOL") vehicles may support this mode in MC/FW or both modes; if the mode is not supported by the current configuration the vehicle should transition to the supported configuration.
Other vehicle types must not support this mode (this may be revisited through the PR process). -3 | [MAV_STANDARD_MODE_CRUISE](#MAV_STANDARD_MODE_CRUISE) | Cruise mode (manual).
Position-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold their original track against wind and external forces.
Fixed-wing (FW) vehicles level orientation and maintain current track and altitude against wind and external forces.
Hybrid MC/FW ("VTOL") vehicles first transition to FW mode (if needed) but otherwise behave in the same way as MC vehicles.
Multicopter (MC) vehicles must not support this mode.
Other vehicle types must not support this mode (this may be revisited through the PR process). -4 | [MAV_STANDARD_MODE_ALTITUDE_HOLD](#MAV_STANDARD_MODE_ALTITUDE_HOLD) | Altitude hold (manual).
Altitude-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold their altitude.
MC vehicles continue with existing momentum and may move with wind (or other external forces).
FW vehicles continue with current heading, but may be moved off-track by wind.
Hybrid MC/FW ("VTOL") vehicles behave according to their current configuration/mode (FW or MC).
Other vehicle types must not support this mode (this may be revisited through the PR process). -5 | [MAV_STANDARD_MODE_SAFE_RECOVERY](#MAV_STANDARD_MODE_SAFE_RECOVERY) | Safe recovery mode (auto).
Automatic mode that takes vehicle to a predefined safe location via a safe flight path, and may also automatically land the vehicle.
This mode is more commonly referred to as RTL and/or or Smart RTL.
The precise return location, flight path, and landing behaviour depend on vehicle configuration and type.
For example, the vehicle might return to the home/launch location, a rally point, or the start of a mission landing, it might follow a direct path, mission path, or breadcrumb path, and land using a mission landing pattern or some other kind of descent. -6 | [MAV_STANDARD_MODE_MISSION](#MAV_STANDARD_MODE_MISSION) | Mission mode (automatic).
Automatic mode that executes MAVLink missions.
Missions are executed from the current waypoint as soon as the mode is enabled. -7 | [MAV_STANDARD_MODE_LAND](#MAV_STANDARD_MODE_LAND) | Land mode (auto).
Automatic mode that lands the vehicle at the current location.
The precise landing behaviour depends on vehicle configuration and type. -8 | [MAV_STANDARD_MODE_TAKEOFF](#MAV_STANDARD_MODE_TAKEOFF) | Takeoff mode (auto).
Automatic takeoff mode.
The precise takeoff behaviour depends on vehicle configuration and type. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_STANDARD_MODE_NON_STANDARD](#MAV_STANDARD_MODE_NON_STANDARD) | Non standard mode.
This may be used when reporting the mode if the current flight mode is not a standard mode. | +| 1 | [MAV_STANDARD_MODE_POSITION_HOLD](#MAV_STANDARD_MODE_POSITION_HOLD) | Position mode (manual).
Position-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold both position and altitude against wind and external forces.
This mode can only be set by vehicles that can hold a fixed position.
Multicopter (MC) vehicles actively brake and hold both position and altitude against wind and external forces.
Hybrid MC/FW ("VTOL") vehicles first transition to multicopter mode (if needed) but otherwise behave in the same way as MC vehicles.
Fixed-wing (FW) vehicles must not support this mode.
Other vehicle types must not support this mode (this may be revisited through the PR process). | +| 2 | [MAV_STANDARD_MODE_ORBIT](#MAV_STANDARD_MODE_ORBIT) | Orbit (manual).
Position-controlled and stabilized manual mode.
The vehicle circles around a fixed setpoint in the horizontal plane at a particular radius, altitude, and direction.
Flight stacks may further allow manual control over the setpoint position, radius, direction, speed, and/or altitude of the circle, but this is not mandated.
Flight stacks may support the [MAV_CMD_DO_ORBIT](https://mavlink.io/en/messages/common.html#MAV_CMD_DO_ORBIT) for changing the orbit parameters.
MC and FW vehicles may support this mode.
Hybrid MC/FW ("VTOL") vehicles may support this mode in MC/FW or both modes; if the mode is not supported by the current configuration the vehicle should transition to the supported configuration.
Other vehicle types must not support this mode (this may be revisited through the PR process). | +| 3 | [MAV_STANDARD_MODE_CRUISE](#MAV_STANDARD_MODE_CRUISE) | Cruise mode (manual).
Position-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold their original track against wind and external forces.
Fixed-wing (FW) vehicles level orientation and maintain current track and altitude against wind and external forces.
Hybrid MC/FW ("VTOL") vehicles first transition to FW mode (if needed) but otherwise behave in the same way as MC vehicles.
Multicopter (MC) vehicles must not support this mode.
Other vehicle types must not support this mode (this may be revisited through the PR process). | +| 4 | [MAV_STANDARD_MODE_ALTITUDE_HOLD](#MAV_STANDARD_MODE_ALTITUDE_HOLD) | Altitude hold (manual).
Altitude-controlled and stabilized manual mode.
When sticks are released vehicles return to their level-flight orientation and hold their altitude.
MC vehicles continue with existing momentum and may move with wind (or other external forces).
FW vehicles continue with current heading, but may be moved off-track by wind.
Hybrid MC/FW ("VTOL") vehicles behave according to their current configuration/mode (FW or MC).
Other vehicle types must not support this mode (this may be revisited through the PR process). | +| 5 | [MAV_STANDARD_MODE_SAFE_RECOVERY](#MAV_STANDARD_MODE_SAFE_RECOVERY) | Safe recovery mode (auto).
Automatic mode that takes vehicle to a predefined safe location via a safe flight path, and may also automatically land the vehicle.
This mode is more commonly referred to as RTL and/or or Smart RTL.
The precise return location, flight path, and landing behaviour depend on vehicle configuration and type.
For example, the vehicle might return to the home/launch location, a rally point, or the start of a mission landing, it might follow a direct path, mission path, or breadcrumb path, and land using a mission landing pattern or some other kind of descent. | +| 6 | [MAV_STANDARD_MODE_MISSION](#MAV_STANDARD_MODE_MISSION) | Mission mode (automatic).
Automatic mode that executes MAVLink missions.
Missions are executed from the current waypoint as soon as the mode is enabled. | +| 7 | [MAV_STANDARD_MODE_LAND](#MAV_STANDARD_MODE_LAND) | Land mode (auto).
Automatic mode that lands the vehicle at the current location.
The precise landing behaviour depends on vehicle configuration and type. | +| 8 | [MAV_STANDARD_MODE_TAKEOFF](#MAV_STANDARD_MODE_TAKEOFF) | Takeoff mode (auto).
Automatic takeoff mode.
The precise takeoff behaviour depends on vehicle configuration and type. | ### MAV_MODE_PROPERTY {#MAV_MODE_PROPERTY} (Bitmask) Mode properties. -Value | Name | Description ---- | --- | --- -1 | [MAV_MODE_PROPERTY_ADVANCED](#MAV_MODE_PROPERTY_ADVANCED) | If set, this mode is an advanced mode.
For example a rate-controlled manual mode might be advanced, whereas a position-controlled manual mode is not.
A GCS can optionally use this flag to configure the UI for its intended users. -2 | [MAV_MODE_PROPERTY_NOT_USER_SELECTABLE](#MAV_MODE_PROPERTY_NOT_USER_SELECTABLE) | If set, this mode should not be added to the list of selectable modes.
The mode might still be selected by the FC directly (for example as part of a failsafe). -4 | [MAV_MODE_PROPERTY_AUTO_MODE](#MAV_MODE_PROPERTY_AUTO_MODE) | If set, this mode is automatically controlled (it may use but does not require a manual controller).
If unset the mode is a assumed to require user input (be a manual mode). +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 1 | [MAV_MODE_PROPERTY_ADVANCED](#MAV_MODE_PROPERTY_ADVANCED) | If set, this mode is an advanced mode.
For example a rate-controlled manual mode might be advanced, whereas a position-controlled manual mode is not.
A GCS can optionally use this flag to configure the UI for its intended users. | +| 2 | [MAV_MODE_PROPERTY_NOT_USER_SELECTABLE](#MAV_MODE_PROPERTY_NOT_USER_SELECTABLE) | If set, this mode should not be added to the list of selectable modes.
The mode might still be selected by the FC directly (for example as part of a failsafe). | +| 4 | [MAV_MODE_PROPERTY_AUTO_MODE](#MAV_MODE_PROPERTY_AUTO_MODE) | If set, this mode is automatically controlled (it may use but does not require a manual controller).
If unset the mode is a assumed to require user input (be a manual mode). | ### HIL_ACTUATOR_CONTROLS_FLAGS {#HIL_ACTUATOR_CONTROLS_FLAGS} (Bitmask) Flags used in [HIL_ACTUATOR_CONTROLS](#HIL_ACTUATOR_CONTROLS) message. -Value | Name | Description ---- | --- | --- -1 | [HIL_ACTUATOR_CONTROLS_FLAGS_LOCKSTEP](#HIL_ACTUATOR_CONTROLS_FLAGS_LOCKSTEP) | Simulation is using lockstep +| Value | Name | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------------- | ---------------------------- | +| 1 | [HIL_ACTUATOR_CONTROLS_FLAGS_LOCKSTEP](#HIL_ACTUATOR_CONTROLS_FLAGS_LOCKSTEP) | Simulation is using lockstep | ### COMPUTER_STATUS_FLAGS {#COMPUTER_STATUS_FLAGS} (Bitmask) Flags used to report computer status. -Value | Name | Description ---- | --- | --- -1 | [COMPUTER_STATUS_FLAGS_UNDER_VOLTAGE](#COMPUTER_STATUS_FLAGS_UNDER_VOLTAGE) | Indicates if the system is experiencing voltage outside of acceptable range. -2 | [COMPUTER_STATUS_FLAGS_CPU_THROTTLE](#COMPUTER_STATUS_FLAGS_CPU_THROTTLE) | Indicates if CPU throttling is active. -4 | [COMPUTER_STATUS_FLAGS_THERMAL_THROTTLE](#COMPUTER_STATUS_FLAGS_THERMAL_THROTTLE) | Indicates if thermal throttling is active. -8 | [COMPUTER_STATUS_FLAGS_DISK_FULL](#COMPUTER_STATUS_FLAGS_DISK_FULL) | Indicates if main disk is full. +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | +| 1 | [COMPUTER_STATUS_FLAGS_UNDER_VOLTAGE](#COMPUTER_STATUS_FLAGS_UNDER_VOLTAGE) | Indicates if the system is experiencing voltage outside of acceptable range. | +| 2 | [COMPUTER_STATUS_FLAGS_CPU_THROTTLE](#COMPUTER_STATUS_FLAGS_CPU_THROTTLE) | Indicates if CPU throttling is active. | +| 4 | [COMPUTER_STATUS_FLAGS_THERMAL_THROTTLE](#COMPUTER_STATUS_FLAGS_THERMAL_THROTTLE) | Indicates if thermal throttling is active. | +| 8 | [COMPUTER_STATUS_FLAGS_DISK_FULL](#COMPUTER_STATUS_FLAGS_DISK_FULL) | Indicates if main disk is full. | ### AIRSPEED_SENSOR_FLAGS {#AIRSPEED_SENSOR_FLAGS} (Bitmask) Airspeed sensor flags -Value | Name | Description ---- | --- | --- -1 | [AIRSPEED_SENSOR_UNHEALTHY](#AIRSPEED_SENSOR_UNHEALTHY) | Airspeed sensor is unhealthy -2 | [AIRSPEED_SENSOR_USING](#AIRSPEED_SENSOR_USING) | True if the data from this sensor is being actively used by the flight controller for guidance, navigation or control. +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | +| 1 | [AIRSPEED_SENSOR_UNHEALTHY](#AIRSPEED_SENSOR_UNHEALTHY) | Airspeed sensor is unhealthy | +| 2 | [AIRSPEED_SENSOR_USING](#AIRSPEED_SENSOR_USING) | True if the data from this sensor is being actively used by the flight controller for guidance, navigation or control. | ### GLOBAL_POSITION_SRC {#GLOBAL_POSITION_SRC} Source for [GLOBAL_POSITION](#GLOBAL_POSITION) measurement or estimate. -Value | Name | Description ---- | --- | --- -0 | [GLOBAL_POSITION_SRC_UNKNOWN](#GLOBAL_POSITION_SRC_UNKNOWN) | Source is unknown or not one of the listed types. -1 | [GLOBAL_POSITION_SRC_GNSS](#GLOBAL_POSITION_SRC_GNSS) | Global Navigation Satellite System (e.g.: GPS, Galileo, Glonass, BeiDou). -2 | [GLOBAL_POSITION_SRC_VISION](#GLOBAL_POSITION_SRC_VISION) | Vision system (e.g.: map matching). -3 | [GLOBAL_POSITION_SRC_PSEUDOLITES](#GLOBAL_POSITION_SRC_PSEUDOLITES) | A pseudo-satellite system using transceiver beacons to perform GNSS-like positioning. -4 | [GLOBAL_POSITION_SRC_TERRAIN](#GLOBAL_POSITION_SRC_TERRAIN) | Terrain referenced navigation. -5 | [GLOBAL_POSITION_SRC_MAGNETIC](#GLOBAL_POSITION_SRC_MAGNETIC) | Magnetic positioning. -6 | [GLOBAL_POSITION_SRC_ESTIMATOR](#GLOBAL_POSITION_SRC_ESTIMATOR) | Estimated position based on various sensors (eg. a Kalman Filter). -7 | [GLOBAL_POSITION_SRC_LEO](#GLOBAL_POSITION_SRC_LEO) | Low Earth Orbit satellite-based positioning (e.g.: Starlink, Xona PULSAR). +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| 0 | [GLOBAL_POSITION_SRC_UNKNOWN](#GLOBAL_POSITION_SRC_UNKNOWN) | Source is unknown or not one of the listed types. | +| 1 | [GLOBAL_POSITION_SRC_GNSS](#GLOBAL_POSITION_SRC_GNSS) | Global Navigation Satellite System (e.g.: GPS, Galileo, Glonass, BeiDou). | +| 2 | [GLOBAL_POSITION_SRC_VISION](#GLOBAL_POSITION_SRC_VISION) | Vision system (e.g.: map matching). | +| 3 | [GLOBAL_POSITION_SRC_PSEUDOLITES](#GLOBAL_POSITION_SRC_PSEUDOLITES) | A pseudo-satellite system using transceiver beacons to perform GNSS-like positioning. | +| 4 | [GLOBAL_POSITION_SRC_TERRAIN](#GLOBAL_POSITION_SRC_TERRAIN) | Terrain referenced navigation. | +| 5 | [GLOBAL_POSITION_SRC_MAGNETIC](#GLOBAL_POSITION_SRC_MAGNETIC) | Magnetic positioning. | +| 6 | [GLOBAL_POSITION_SRC_ESTIMATOR](#GLOBAL_POSITION_SRC_ESTIMATOR) | Estimated position based on various sensors (eg. a Kalman Filter). | +| 7 | [GLOBAL_POSITION_SRC_LEO](#GLOBAL_POSITION_SRC_LEO) | Low Earth Orbit satellite-based positioning (e.g.: Starlink, Xona PULSAR). | ### GLOBAL_POSITION_FLAGS {#GLOBAL_POSITION_FLAGS} (Bitmask) Status flags for [GLOBAL_POSITION](#GLOBAL_POSITION) -Value | Name | Description ---- | --- | --- -1 | [GLOBAL_POSITION_UNHEALTHY](#GLOBAL_POSITION_UNHEALTHY) | Unhealthy sensor/estimator. -2 | [GLOBAL_POSITION_PRIMARY](#GLOBAL_POSITION_PRIMARY) | True if the data originates from or is consumed by the primary estimator. +| Value | Name | Description | +| --------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------------------- | +| 1 | [GLOBAL_POSITION_UNHEALTHY](#GLOBAL_POSITION_UNHEALTHY) | Unhealthy sensor/estimator. | +| 2 | [GLOBAL_POSITION_PRIMARY](#GLOBAL_POSITION_PRIMARY) | True if the data originates from or is consumed by the primary estimator. | ### MAV_BOOL — \[from: [standard](../messages/standard.md#MAV_BOOL)\] {#MAV_BOOL} (Bitmask) Enum used to indicate true or false (also: success or failure, enabled or disabled, active or inactive). -Value | Name | Description ---- | --- | --- -0 | [MAV_BOOL_FALSE](#MAV_BOOL_FALSE) | False. -1 | [MAV_BOOL_TRUE](#MAV_BOOL_TRUE) | True. +| Value | Name | Description | +| ---------------------------- | --------------------------------- | ----------- | +| 0 | [MAV_BOOL_FALSE](#MAV_BOOL_FALSE) | False. | +| 1 | [MAV_BOOL_TRUE](#MAV_BOOL_TRUE) | True. | ### MAV_PROTOCOL_CAPABILITY — \[from: [standard](../messages/standard.md#MAV_PROTOCOL_CAPABILITY)\] {#MAV_PROTOCOL_CAPABILITY} (Bitmask) Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. -Value | Name | Description ---- | --- | --- -1 | [MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT](#MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT) | Autopilot supports the [MISSION_ITEM](#MISSION_ITEM) float message type.
Note that [MISSION_ITEM](#MISSION_ITEM) is deprecated, and autopilots should use [MISSION_ITEM_INT](#MISSION_ITEM_INT) instead. -2 | [MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT](#MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT) | Autopilot supports the new param float message type.
**DEPRECATED:** Replaced By [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) (2022-03) -4 | [MAV_PROTOCOL_CAPABILITY_MISSION_INT](#MAV_PROTOCOL_CAPABILITY_MISSION_INT) | Autopilot supports [MISSION_ITEM_INT](#MISSION_ITEM_INT) scaled integer message type.
Note that this flag must always be set if missions are supported, because missions must always use [MISSION_ITEM_INT](#MISSION_ITEM_INT) (rather than [MISSION_ITEM](#MISSION_ITEM), which is deprecated). -8 | [MAV_PROTOCOL_CAPABILITY_COMMAND_INT](#MAV_PROTOCOL_CAPABILITY_COMMAND_INT) | Autopilot supports [COMMAND_INT](#COMMAND_INT) scaled integer message type. -16 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) | Parameter protocol uses byte-wise encoding of parameter values into param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) should be set if the parameter protocol is supported. -32 | [MAV_PROTOCOL_CAPABILITY_FTP](#MAV_PROTOCOL_CAPABILITY_FTP) | Autopilot supports the File Transfer Protocol v1: https://mavlink.io/en/services/ftp.html. -64 | [MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET](#MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET) | Autopilot supports commanding attitude offboard. -128 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED) | Autopilot supports commanding position and velocity targets in local NED frame. -256 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT) | Autopilot supports commanding position and velocity targets in global scaled integers. -512 | [MAV_PROTOCOL_CAPABILITY_TERRAIN](#MAV_PROTOCOL_CAPABILITY_TERRAIN) | Autopilot supports terrain protocol / data handling. -1024 | [MAV_PROTOCOL_CAPABILITY_RESERVED3](#MAV_PROTOCOL_CAPABILITY_RESERVED3) | Reserved for future use. -2048 | [MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION](#MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION) | Autopilot supports the [MAV_CMD_DO_FLIGHTTERMINATION](#MAV_CMD_DO_FLIGHTTERMINATION) command (flight termination). -4096 | [MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION](#MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION) | Autopilot supports onboard compass calibration. -8192 | [MAV_PROTOCOL_CAPABILITY_MAVLINK2](#MAV_PROTOCOL_CAPABILITY_MAVLINK2) | Autopilot supports MAVLink version 2. -16384 | [MAV_PROTOCOL_CAPABILITY_MISSION_FENCE](#MAV_PROTOCOL_CAPABILITY_MISSION_FENCE) | Autopilot supports mission fence protocol. -32768 | [MAV_PROTOCOL_CAPABILITY_MISSION_RALLY](#MAV_PROTOCOL_CAPABILITY_MISSION_RALLY) | Autopilot supports mission rally point protocol. -65536 | [MAV_PROTOCOL_CAPABILITY_RESERVED2](#MAV_PROTOCOL_CAPABILITY_RESERVED2) | Reserved for future use. -131072 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) | Parameter protocol uses C-cast of parameter values to set the param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) should be set if the parameter protocol is supported. -262144 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER](#MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER) | This component implements/is a gimbal manager. This means the [GIMBAL_MANAGER_INFORMATION](#GIMBAL_MANAGER_INFORMATION), and other messages can be requested. -524288 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL](#MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL) | Component supports locking control to a particular GCS independent of its system (via [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). -1048576 | [MAV_PROTOCOL_CAPABILITY_GRIPPER](#MAV_PROTOCOL_CAPABILITY_GRIPPER) | Autopilot has a connected gripper. MAVLink Grippers would set [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) instead.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). +| Value | Name | Description | +| ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT](#MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT) | Autopilot supports the [MISSION_ITEM](#MISSION_ITEM) float message type.
Note that [MISSION_ITEM](#MISSION_ITEM) is deprecated, and autopilots should use [MISSION_ITEM_INT](#MISSION_ITEM_INT) instead. | +| 2 | [MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT](#MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT) | Autopilot supports the new param float message type.
**DEPRECATED:** Replaced By [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) (2022-03) | +| 4 | [MAV_PROTOCOL_CAPABILITY_MISSION_INT](#MAV_PROTOCOL_CAPABILITY_MISSION_INT) | Autopilot supports [MISSION_ITEM_INT](#MISSION_ITEM_INT) scaled integer message type.
Note that this flag must always be set if missions are supported, because missions must always use [MISSION_ITEM_INT](#MISSION_ITEM_INT) (rather than [MISSION_ITEM](#MISSION_ITEM), which is deprecated). | +| 8 | [MAV_PROTOCOL_CAPABILITY_COMMAND_INT](#MAV_PROTOCOL_CAPABILITY_COMMAND_INT) | Autopilot supports [COMMAND_INT](#COMMAND_INT) scaled integer message type. | +| 16 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) | Parameter protocol uses byte-wise encoding of parameter values into param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) should be set if the parameter protocol is supported. | +| 32 | [MAV_PROTOCOL_CAPABILITY_FTP](#MAV_PROTOCOL_CAPABILITY_FTP) | Autopilot supports the File Transfer Protocol v1: https://mavlink.io/en/services/ftp.html. | +| 64 | [MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET](#MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET) | Autopilot supports commanding attitude offboard. | +| 128 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED) | Autopilot supports commanding position and velocity targets in local NED frame. | +| 256 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT) | Autopilot supports commanding position and velocity targets in global scaled integers. | +| 512 | [MAV_PROTOCOL_CAPABILITY_TERRAIN](#MAV_PROTOCOL_CAPABILITY_TERRAIN) | Autopilot supports terrain protocol / data handling. | +| 1024 | [MAV_PROTOCOL_CAPABILITY_RESERVED3](#MAV_PROTOCOL_CAPABILITY_RESERVED3) | Reserved for future use. | +| 2048 | [MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION](#MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION) | Autopilot supports the [MAV_CMD_DO_FLIGHTTERMINATION](#MAV_CMD_DO_FLIGHTTERMINATION) command (flight termination). | +| 4096 | [MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION](#MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION) | Autopilot supports onboard compass calibration. | +| 8192 | [MAV_PROTOCOL_CAPABILITY_MAVLINK2](#MAV_PROTOCOL_CAPABILITY_MAVLINK2) | Autopilot supports MAVLink version 2. | +| 16384 | [MAV_PROTOCOL_CAPABILITY_MISSION_FENCE](#MAV_PROTOCOL_CAPABILITY_MISSION_FENCE) | Autopilot supports mission fence protocol. | +| 32768 | [MAV_PROTOCOL_CAPABILITY_MISSION_RALLY](#MAV_PROTOCOL_CAPABILITY_MISSION_RALLY) | Autopilot supports mission rally point protocol. | +| 65536 | [MAV_PROTOCOL_CAPABILITY_RESERVED2](#MAV_PROTOCOL_CAPABILITY_RESERVED2) | Reserved for future use. | +| 131072 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) | Parameter protocol uses C-cast of parameter values to set the param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) should be set if the parameter protocol is supported. | +| 262144 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER](#MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER) | This component implements/is a gimbal manager. This means the [GIMBAL_MANAGER_INFORMATION](#GIMBAL_MANAGER_INFORMATION), and other messages can be requested. | +| 524288 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL](#MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL) | Component supports locking control to a particular GCS independent of its system (via [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | +| 1048576 | [MAV_PROTOCOL_CAPABILITY_GRIPPER](#MAV_PROTOCOL_CAPABILITY_GRIPPER) | Autopilot has a connected gripper. MAVLink Grippers would set [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) instead.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | ### FIRMWARE_VERSION_TYPE — \[from: [standard](../messages/standard.md#FIRMWARE_VERSION_TYPE)\] {#FIRMWARE_VERSION_TYPE} -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. +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. -Value | Name | Description ---- | --- | --- -0 | [FIRMWARE_VERSION_TYPE_DEV](#FIRMWARE_VERSION_TYPE_DEV) | development release -64 | [FIRMWARE_VERSION_TYPE_ALPHA](#FIRMWARE_VERSION_TYPE_ALPHA) | alpha release -128 | [FIRMWARE_VERSION_TYPE_BETA](#FIRMWARE_VERSION_TYPE_BETA) | beta release -192 | [FIRMWARE_VERSION_TYPE_RC](#FIRMWARE_VERSION_TYPE_RC) | release candidate -255 | [FIRMWARE_VERSION_TYPE_OFFICIAL](#FIRMWARE_VERSION_TYPE_OFFICIAL) | official stable release +| Value | Name | Description | +| ---------------------------------------------- | ----------------------------------------------------------------- | ----------------------- | +| 0 | [FIRMWARE_VERSION_TYPE_DEV](#FIRMWARE_VERSION_TYPE_DEV) | development release | +| 64 | [FIRMWARE_VERSION_TYPE_ALPHA](#FIRMWARE_VERSION_TYPE_ALPHA) | alpha release | +| 128 | [FIRMWARE_VERSION_TYPE_BETA](#FIRMWARE_VERSION_TYPE_BETA) | beta release | +| 192 | [FIRMWARE_VERSION_TYPE_RC](#FIRMWARE_VERSION_TYPE_RC) | release candidate | +| 255 | [FIRMWARE_VERSION_TYPE_OFFICIAL](#FIRMWARE_VERSION_TYPE_OFFICIAL) | official stable release | ### MAV_AUTOPILOT — \[from: [minimal](../messages/minimal.md#MAV_AUTOPILOT)\] {#MAV_AUTOPILOT} Micro air vehicle / autopilot classes. This identifies the individual model. -Value | Name | Description ---- | --- | --- -0 | [MAV_AUTOPILOT_GENERIC](#MAV_AUTOPILOT_GENERIC) | Generic autopilot, full support for everything -1 | [MAV_AUTOPILOT_RESERVED](#MAV_AUTOPILOT_RESERVED) | Reserved for future use. -2 | [MAV_AUTOPILOT_SLUGS](#MAV_AUTOPILOT_SLUGS) | SLUGS autopilot, http://slugsuav.soe.ucsc.edu -3 | [MAV_AUTOPILOT_ARDUPILOTMEGA](#MAV_AUTOPILOT_ARDUPILOTMEGA) | ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org -4 | [MAV_AUTOPILOT_OPENPILOT](#MAV_AUTOPILOT_OPENPILOT) | OpenPilot, http://openpilot.org -5 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY) | Generic autopilot only supporting simple waypoints -6 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY) | Generic autopilot supporting waypoints and other simple navigation commands -7 | [MAV_AUTOPILOT_GENERIC_MISSION_FULL](#MAV_AUTOPILOT_GENERIC_MISSION_FULL) | Generic autopilot supporting the full mission command set -8 | [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) | No valid autopilot, e.g. a GCS or other MAVLink component -9 | [MAV_AUTOPILOT_PPZ](#MAV_AUTOPILOT_PPZ) | PPZ UAV - http://nongnu.org/paparazzi -10 | [MAV_AUTOPILOT_UDB](#MAV_AUTOPILOT_UDB) | UAV Dev Board -11 | [MAV_AUTOPILOT_FP](#MAV_AUTOPILOT_FP) | FlexiPilot -12 | [MAV_AUTOPILOT_PX4](#MAV_AUTOPILOT_PX4) | PX4 Autopilot - http://px4.io/ -13 | [MAV_AUTOPILOT_SMACCMPILOT](#MAV_AUTOPILOT_SMACCMPILOT) | SMACCMPilot - http://smaccmpilot.org -14 | [MAV_AUTOPILOT_AUTOQUAD](#MAV_AUTOPILOT_AUTOQUAD) | AutoQuad -- http://autoquad.org -15 | [MAV_AUTOPILOT_ARMAZILA](#MAV_AUTOPILOT_ARMAZILA) | Armazila -- http://armazila.com -16 | [MAV_AUTOPILOT_AEROB](#MAV_AUTOPILOT_AEROB) | Aerob -- http://aerob.ru -17 | [MAV_AUTOPILOT_ASLUAV](#MAV_AUTOPILOT_ASLUAV) | ASLUAV autopilot -- http://www.asl.ethz.ch -18 | [MAV_AUTOPILOT_SMARTAP](#MAV_AUTOPILOT_SMARTAP) | SmartAP Autopilot - http://sky-drones.com -19 | [MAV_AUTOPILOT_AIRRAILS](#MAV_AUTOPILOT_AIRRAILS) | AirRails - http://uaventure.com -20 | [MAV_AUTOPILOT_REFLEX](#MAV_AUTOPILOT_REFLEX) | Fusion Reflex - https://fusion.engineering +| Value | Name | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| 0 | [MAV_AUTOPILOT_GENERIC](#MAV_AUTOPILOT_GENERIC) | Generic autopilot, full support for everything | +| 1 | [MAV_AUTOPILOT_RESERVED](#MAV_AUTOPILOT_RESERVED) | Reserved for future use. | +| 2 | [MAV_AUTOPILOT_SLUGS](#MAV_AUTOPILOT_SLUGS) | SLUGS autopilot, http://slugsuav.soe.ucsc.edu | +| 3 | [MAV_AUTOPILOT_ARDUPILOTMEGA](#MAV_AUTOPILOT_ARDUPILOTMEGA) | ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org | +| 4 | [MAV_AUTOPILOT_OPENPILOT](#MAV_AUTOPILOT_OPENPILOT) | OpenPilot, http://openpilot.org | +| 5 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY) | Generic autopilot only supporting simple waypoints | +| 6 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY) | Generic autopilot supporting waypoints and other simple navigation commands | +| 7 | [MAV_AUTOPILOT_GENERIC_MISSION_FULL](#MAV_AUTOPILOT_GENERIC_MISSION_FULL) | Generic autopilot supporting the full mission command set | +| 8 | [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) | No valid autopilot, e.g. a GCS or other MAVLink component | +| 9 | [MAV_AUTOPILOT_PPZ](#MAV_AUTOPILOT_PPZ) | PPZ UAV - http://nongnu.org/paparazzi | +| 10 | [MAV_AUTOPILOT_UDB](#MAV_AUTOPILOT_UDB) | UAV Dev Board | +| 11 | [MAV_AUTOPILOT_FP](#MAV_AUTOPILOT_FP) | FlexiPilot | +| 12 | [MAV_AUTOPILOT_PX4](#MAV_AUTOPILOT_PX4) | PX4 Autopilot - http://px4.io/ | +| 13 | [MAV_AUTOPILOT_SMACCMPILOT](#MAV_AUTOPILOT_SMACCMPILOT) | SMACCMPilot - http://smaccmpilot.org | +| 14 | [MAV_AUTOPILOT_AUTOQUAD](#MAV_AUTOPILOT_AUTOQUAD) | AutoQuad -- http://autoquad.org | +| 15 | [MAV_AUTOPILOT_ARMAZILA](#MAV_AUTOPILOT_ARMAZILA) | Armazila -- http://armazila.com | +| 16 | [MAV_AUTOPILOT_AEROB](#MAV_AUTOPILOT_AEROB) | Aerob -- http://aerob.ru | +| 17 | [MAV_AUTOPILOT_ASLUAV](#MAV_AUTOPILOT_ASLUAV) | ASLUAV autopilot -- http://www.asl.ethz.ch | +| 18 | [MAV_AUTOPILOT_SMARTAP](#MAV_AUTOPILOT_SMARTAP) | SmartAP Autopilot - http://sky-drones.com | +| 19 | [MAV_AUTOPILOT_AIRRAILS](#MAV_AUTOPILOT_AIRRAILS) | AirRails - http://uaventure.com | +| 20 | [MAV_AUTOPILOT_REFLEX](#MAV_AUTOPILOT_REFLEX) | Fusion Reflex - https://fusion.engineering | ### MAV_TYPE — \[from: [minimal](../messages/minimal.md#MAV_TYPE)\] {#MAV_TYPE} MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR)). All other components must report a value appropriate for their type (e.g. a camera must use [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA)). -Value | Name | Description ---- | --- | --- -0 | [MAV_TYPE_GENERIC](#MAV_TYPE_GENERIC) | Generic micro air vehicle -1 | [MAV_TYPE_FIXED_WING](#MAV_TYPE_FIXED_WING) | Fixed wing aircraft. -2 | [MAV_TYPE_QUADROTOR](#MAV_TYPE_QUADROTOR) | Quadrotor -3 | [MAV_TYPE_COAXIAL](#MAV_TYPE_COAXIAL) | Coaxial helicopter -4 | [MAV_TYPE_HELICOPTER](#MAV_TYPE_HELICOPTER) | Normal helicopter with tail rotor. -5 | [MAV_TYPE_ANTENNA_TRACKER](#MAV_TYPE_ANTENNA_TRACKER) | Ground installation -6 | [MAV_TYPE_GCS](#MAV_TYPE_GCS) | Operator control unit / ground control station -7 | [MAV_TYPE_AIRSHIP](#MAV_TYPE_AIRSHIP) | Airship, controlled -8 | [MAV_TYPE_FREE_BALLOON](#MAV_TYPE_FREE_BALLOON) | Free balloon, uncontrolled -9 | [MAV_TYPE_ROCKET](#MAV_TYPE_ROCKET) | Rocket -10 | [MAV_TYPE_GROUND_ROVER](#MAV_TYPE_GROUND_ROVER) | Ground rover -11 | [MAV_TYPE_SURFACE_BOAT](#MAV_TYPE_SURFACE_BOAT) | Surface vessel, boat, ship -12 | [MAV_TYPE_SUBMARINE](#MAV_TYPE_SUBMARINE) | Submarine -13 | [MAV_TYPE_HEXAROTOR](#MAV_TYPE_HEXAROTOR) | Hexarotor -14 | [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR) | Octorotor -15 | [MAV_TYPE_TRICOPTER](#MAV_TYPE_TRICOPTER) | Tricopter -16 | [MAV_TYPE_FLAPPING_WING](#MAV_TYPE_FLAPPING_WING) | Flapping wing -17 | [MAV_TYPE_KITE](#MAV_TYPE_KITE) | Kite -18 | [MAV_TYPE_ONBOARD_CONTROLLER](#MAV_TYPE_ONBOARD_CONTROLLER) | Onboard companion controller -19 | [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) | Two-rotor Tailsitter VTOL that additionally uses control surfaces in vertical operation. Note, value previously named [MAV_TYPE_VTOL_DUOROTOR](#MAV_TYPE_VTOL_DUOROTOR). -20 | [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) | Quad-rotor Tailsitter VTOL using a V-shaped quad config in vertical operation. Note: value previously named [MAV_TYPE_VTOL_QUADROTOR](#MAV_TYPE_VTOL_QUADROTOR). -21 | [MAV_TYPE_VTOL_TILTROTOR](#MAV_TYPE_VTOL_TILTROTOR) | Tiltrotor VTOL. Fuselage and wings stay (nominally) horizontal in all flight phases. It able to tilt (some) rotors to provide thrust in cruise flight. -22 | [MAV_TYPE_VTOL_FIXEDROTOR](#MAV_TYPE_VTOL_FIXEDROTOR) | VTOL with separate fixed rotors for hover and cruise flight. Fuselage and wings stay (nominally) horizontal in all flight phases. -23 | [MAV_TYPE_VTOL_TAILSITTER](#MAV_TYPE_VTOL_TAILSITTER) | Tailsitter VTOL. Fuselage and wings orientation changes depending on flight phase: vertical for hover, horizontal for cruise. Use more specific VTOL [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) or [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) if appropriate. -24 | [MAV_TYPE_VTOL_TILTWING](#MAV_TYPE_VTOL_TILTWING) | Tiltwing VTOL. Fuselage stays horizontal in all flight phases. The whole wing, along with any attached engine, can tilt between vertical and horizontal mode. -25 | [MAV_TYPE_VTOL_RESERVED5](#MAV_TYPE_VTOL_RESERVED5) | VTOL reserved 5 -26 | [MAV_TYPE_GIMBAL](#MAV_TYPE_GIMBAL) | Gimbal -27 | [MAV_TYPE_ADSB](#MAV_TYPE_ADSB) | ADSB system -28 | [MAV_TYPE_PARAFOIL](#MAV_TYPE_PARAFOIL) | Steerable, nonrigid airfoil -29 | [MAV_TYPE_DODECAROTOR](#MAV_TYPE_DODECAROTOR) | Dodecarotor -30 | [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA) | Camera -31 | [MAV_TYPE_CHARGING_STATION](#MAV_TYPE_CHARGING_STATION) | Charging station -32 | [MAV_TYPE_FLARM](#MAV_TYPE_FLARM) | FLARM collision avoidance system -33 | [MAV_TYPE_SERVO](#MAV_TYPE_SERVO) | Servo -34 | [MAV_TYPE_ODID](#MAV_TYPE_ODID) | Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. -35 | [MAV_TYPE_DECAROTOR](#MAV_TYPE_DECAROTOR) | Decarotor -36 | [MAV_TYPE_BATTERY](#MAV_TYPE_BATTERY) | Battery -37 | [MAV_TYPE_PARACHUTE](#MAV_TYPE_PARACHUTE) | Parachute -38 | [MAV_TYPE_LOG](#MAV_TYPE_LOG) | Log -39 | [MAV_TYPE_OSD](#MAV_TYPE_OSD) | OSD -40 | [MAV_TYPE_IMU](#MAV_TYPE_IMU) | IMU -41 | [MAV_TYPE_GPS](#MAV_TYPE_GPS) | GPS -42 | [MAV_TYPE_WINCH](#MAV_TYPE_WINCH) | Winch -43 | [MAV_TYPE_GENERIC_MULTIROTOR](#MAV_TYPE_GENERIC_MULTIROTOR) | Generic multirotor that does not fit into a specific type or whose type is unknown -44 | [MAV_TYPE_ILLUMINATOR](#MAV_TYPE_ILLUMINATOR) | Illuminator. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). -45 | [MAV_TYPE_SPACECRAFT_ORBITER](#MAV_TYPE_SPACECRAFT_ORBITER) | Orbiter spacecraft. Includes satellites orbiting terrestrial and extra-terrestrial bodies. Follows NASA Spacecraft Classification. -46 | [MAV_TYPE_GROUND_QUADRUPED](#MAV_TYPE_GROUND_QUADRUPED) | A generic four-legged ground vehicle (e.g., a robot dog). -47 | [MAV_TYPE_VTOL_GYRODYNE](#MAV_TYPE_VTOL_GYRODYNE) | VTOL hybrid of helicopter and autogyro. It has a main rotor for lift and separate propellers for forward flight. The rotor must be powered for hover but can autorotate in cruise flight. See: https://en.wikipedia.org/wiki/Gyrodyne -48 | [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) | Gripper -49 | [MAV_TYPE_RADIO](#MAV_TYPE_RADIO) | Radio +| Value | Name | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_TYPE_GENERIC](#MAV_TYPE_GENERIC) | Generic micro air vehicle | +| 1 | [MAV_TYPE_FIXED_WING](#MAV_TYPE_FIXED_WING) | Fixed wing aircraft. | +| 2 | [MAV_TYPE_QUADROTOR](#MAV_TYPE_QUADROTOR) | Quadrotor | +| 3 | [MAV_TYPE_COAXIAL](#MAV_TYPE_COAXIAL) | Coaxial helicopter | +| 4 | [MAV_TYPE_HELICOPTER](#MAV_TYPE_HELICOPTER) | Normal helicopter with tail rotor. | +| 5 | [MAV_TYPE_ANTENNA_TRACKER](#MAV_TYPE_ANTENNA_TRACKER) | Ground installation | +| 6 | [MAV_TYPE_GCS](#MAV_TYPE_GCS) | Operator control unit / ground control station | +| 7 | [MAV_TYPE_AIRSHIP](#MAV_TYPE_AIRSHIP) | Airship, controlled | +| 8 | [MAV_TYPE_FREE_BALLOON](#MAV_TYPE_FREE_BALLOON) | Free balloon, uncontrolled | +| 9 | [MAV_TYPE_ROCKET](#MAV_TYPE_ROCKET) | Rocket | +| 10 | [MAV_TYPE_GROUND_ROVER](#MAV_TYPE_GROUND_ROVER) | Ground rover | +| 11 | [MAV_TYPE_SURFACE_BOAT](#MAV_TYPE_SURFACE_BOAT) | Surface vessel, boat, ship | +| 12 | [MAV_TYPE_SUBMARINE](#MAV_TYPE_SUBMARINE) | Submarine | +| 13 | [MAV_TYPE_HEXAROTOR](#MAV_TYPE_HEXAROTOR) | Hexarotor | +| 14 | [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR) | Octorotor | +| 15 | [MAV_TYPE_TRICOPTER](#MAV_TYPE_TRICOPTER) | Tricopter | +| 16 | [MAV_TYPE_FLAPPING_WING](#MAV_TYPE_FLAPPING_WING) | Flapping wing | +| 17 | [MAV_TYPE_KITE](#MAV_TYPE_KITE) | Kite | +| 18 | [MAV_TYPE_ONBOARD_CONTROLLER](#MAV_TYPE_ONBOARD_CONTROLLER) | Onboard companion controller | +| 19 | [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) | Two-rotor Tailsitter VTOL that additionally uses control surfaces in vertical operation. Note, value previously named [MAV_TYPE_VTOL_DUOROTOR](#MAV_TYPE_VTOL_DUOROTOR). | +| 20 | [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) | Quad-rotor Tailsitter VTOL using a V-shaped quad config in vertical operation. Note: value previously named [MAV_TYPE_VTOL_QUADROTOR](#MAV_TYPE_VTOL_QUADROTOR). | +| 21 | [MAV_TYPE_VTOL_TILTROTOR](#MAV_TYPE_VTOL_TILTROTOR) | Tiltrotor VTOL. Fuselage and wings stay (nominally) horizontal in all flight phases. It able to tilt (some) rotors to provide thrust in cruise flight. | +| 22 | [MAV_TYPE_VTOL_FIXEDROTOR](#MAV_TYPE_VTOL_FIXEDROTOR) | VTOL with separate fixed rotors for hover and cruise flight. Fuselage and wings stay (nominally) horizontal in all flight phases. | +| 23 | [MAV_TYPE_VTOL_TAILSITTER](#MAV_TYPE_VTOL_TAILSITTER) | Tailsitter VTOL. Fuselage and wings orientation changes depending on flight phase: vertical for hover, horizontal for cruise. Use more specific VTOL [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) or [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) if appropriate. | +| 24 | [MAV_TYPE_VTOL_TILTWING](#MAV_TYPE_VTOL_TILTWING) | Tiltwing VTOL. Fuselage stays horizontal in all flight phases. The whole wing, along with any attached engine, can tilt between vertical and horizontal mode. | +| 25 | [MAV_TYPE_VTOL_RESERVED5](#MAV_TYPE_VTOL_RESERVED5) | VTOL reserved 5 | +| 26 | [MAV_TYPE_GIMBAL](#MAV_TYPE_GIMBAL) | Gimbal | +| 27 | [MAV_TYPE_ADSB](#MAV_TYPE_ADSB) | ADSB system | +| 28 | [MAV_TYPE_PARAFOIL](#MAV_TYPE_PARAFOIL) | Steerable, nonrigid airfoil | +| 29 | [MAV_TYPE_DODECAROTOR](#MAV_TYPE_DODECAROTOR) | Dodecarotor | +| 30 | [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA) | Camera | +| 31 | [MAV_TYPE_CHARGING_STATION](#MAV_TYPE_CHARGING_STATION) | Charging station | +| 32 | [MAV_TYPE_FLARM](#MAV_TYPE_FLARM) | FLARM collision avoidance system | +| 33 | [MAV_TYPE_SERVO](#MAV_TYPE_SERVO) | Servo | +| 34 | [MAV_TYPE_ODID](#MAV_TYPE_ODID) | Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. | +| 35 | [MAV_TYPE_DECAROTOR](#MAV_TYPE_DECAROTOR) | Decarotor | +| 36 | [MAV_TYPE_BATTERY](#MAV_TYPE_BATTERY) | Battery | +| 37 | [MAV_TYPE_PARACHUTE](#MAV_TYPE_PARACHUTE) | Parachute | +| 38 | [MAV_TYPE_LOG](#MAV_TYPE_LOG) | Log | +| 39 | [MAV_TYPE_OSD](#MAV_TYPE_OSD) | OSD | +| 40 | [MAV_TYPE_IMU](#MAV_TYPE_IMU) | IMU | +| 41 | [MAV_TYPE_GPS](#MAV_TYPE_GPS) | GPS | +| 42 | [MAV_TYPE_WINCH](#MAV_TYPE_WINCH) | Winch | +| 43 | [MAV_TYPE_GENERIC_MULTIROTOR](#MAV_TYPE_GENERIC_MULTIROTOR) | Generic multirotor that does not fit into a specific type or whose type is unknown | +| 44 | [MAV_TYPE_ILLUMINATOR](#MAV_TYPE_ILLUMINATOR) | Illuminator. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). | +| 45 | [MAV_TYPE_SPACECRAFT_ORBITER](#MAV_TYPE_SPACECRAFT_ORBITER) | Orbiter spacecraft. Includes satellites orbiting terrestrial and extra-terrestrial bodies. Follows NASA Spacecraft Classification. | +| 46 | [MAV_TYPE_GROUND_QUADRUPED](#MAV_TYPE_GROUND_QUADRUPED) | A generic four-legged ground vehicle (e.g., a robot dog). | +| 47 | [MAV_TYPE_VTOL_GYRODYNE](#MAV_TYPE_VTOL_GYRODYNE) | VTOL hybrid of helicopter and autogyro. It has a main rotor for lift and separate propellers for forward flight. The rotor must be powered for hover but can autorotate in cruise flight. See: https://en.wikipedia.org/wiki/Gyrodyne | +| 48 | [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) | Gripper | +| 49 | [MAV_TYPE_RADIO](#MAV_TYPE_RADIO) | Radio | ### MAV_MODE_FLAG — \[from: [minimal](../messages/minimal.md#MAV_MODE_FLAG)\] {#MAV_MODE_FLAG} (Bitmask) These flags encode the MAV mode, see [MAV_MODE](#MAV_MODE) enum for useful combinations. -Value | Name | Description ---- | --- | --- -1 | [MAV_MODE_FLAG_CUSTOM_MODE_ENABLED](#MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) | 0b00000001 system-specific custom mode is enabled. When using this flag to enable a custom mode all other flags should be ignored. -2 | [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED) | 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. -4 | [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED) | 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. -8 | [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED) | 0b00001000 guided mode enabled, system flies waypoints / mission items. -16 | [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED) | 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. -32 | [MAV_MODE_FLAG_HIL_ENABLED](#MAV_MODE_FLAG_HIL_ENABLED) | 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. -64 | [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED) | 0b01000000 remote control input is enabled. -128 | [MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED) | 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) and [MAV_CMD_COMPONENT_ARM_DISARM](#MAV_CMD_COMPONENT_ARM_DISARM) shall be used instead. The flag can still be used to report the armed state. +| Value | Name | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_MODE_FLAG_CUSTOM_MODE_ENABLED](#MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) | 0b00000001 system-specific custom mode is enabled. When using this flag to enable a custom mode all other flags should be ignored. | +| 2 | [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED) | 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. | +| 4 | [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED) | 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. | +| 8 | [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED) | 0b00001000 guided mode enabled, system flies waypoints / mission items. | +| 16 | [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED) | 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. | +| 32 | [MAV_MODE_FLAG_HIL_ENABLED](#MAV_MODE_FLAG_HIL_ENABLED) | 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. | +| 64 | [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED) | 0b01000000 remote control input is enabled. | +| 128 | [MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED) | 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) and [MAV_CMD_COMPONENT_ARM_DISARM](#MAV_CMD_COMPONENT_ARM_DISARM) shall be used instead. The flag can still be used to report the armed state. | ### MAV_MODE_FLAG_DECODE_POSITION — \[from: [minimal](../messages/minimal.md#MAV_MODE_FLAG_DECODE_POSITION)\] {#MAV_MODE_FLAG_DECODE_POSITION} (Bitmask) 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. -Value | Name | Description ---- | --- | --- -1 | [MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE](#MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE) | Eighth bit: 00000001 -2 | [MAV_MODE_FLAG_DECODE_POSITION_TEST](#MAV_MODE_FLAG_DECODE_POSITION_TEST) | Seventh bit: 00000010 -4 | [MAV_MODE_FLAG_DECODE_POSITION_AUTO](#MAV_MODE_FLAG_DECODE_POSITION_AUTO) | Sixth bit: 00000100 -8 | [MAV_MODE_FLAG_DECODE_POSITION_GUIDED](#MAV_MODE_FLAG_DECODE_POSITION_GUIDED) | Fifth bit: 00001000 -16 | [MAV_MODE_FLAG_DECODE_POSITION_STABILIZE](#MAV_MODE_FLAG_DECODE_POSITION_STABILIZE) | Fourth bit: 00010000 -32 | [MAV_MODE_FLAG_DECODE_POSITION_HIL](#MAV_MODE_FLAG_DECODE_POSITION_HIL) | Third bit: 00100000 -64 | [MAV_MODE_FLAG_DECODE_POSITION_MANUAL](#MAV_MODE_FLAG_DECODE_POSITION_MANUAL) | Second bit: 01000000 -128 | [MAV_MODE_FLAG_DECODE_POSITION_SAFETY](#MAV_MODE_FLAG_DECODE_POSITION_SAFETY) | First bit: 10000000 +| Value | Name | Description | +| ------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------- | +| 1 | [MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE](#MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE) | Eighth bit: 00000001 | +| 2 | [MAV_MODE_FLAG_DECODE_POSITION_TEST](#MAV_MODE_FLAG_DECODE_POSITION_TEST) | Seventh bit: 00000010 | +| 4 | [MAV_MODE_FLAG_DECODE_POSITION_AUTO](#MAV_MODE_FLAG_DECODE_POSITION_AUTO) | Sixth bit: 00000100 | +| 8 | [MAV_MODE_FLAG_DECODE_POSITION_GUIDED](#MAV_MODE_FLAG_DECODE_POSITION_GUIDED) | Fifth bit: 00001000 | +| 16 | [MAV_MODE_FLAG_DECODE_POSITION_STABILIZE](#MAV_MODE_FLAG_DECODE_POSITION_STABILIZE) | Fourth bit: 00010000 | +| 32 | [MAV_MODE_FLAG_DECODE_POSITION_HIL](#MAV_MODE_FLAG_DECODE_POSITION_HIL) | Third bit: 00100000 | +| 64 | [MAV_MODE_FLAG_DECODE_POSITION_MANUAL](#MAV_MODE_FLAG_DECODE_POSITION_MANUAL) | Second bit: 01000000 | +| 128 | [MAV_MODE_FLAG_DECODE_POSITION_SAFETY](#MAV_MODE_FLAG_DECODE_POSITION_SAFETY) | First bit: 10000000 | ### MAV_STATE — \[from: [minimal](../messages/minimal.md#MAV_STATE)\] {#MAV_STATE} -Value | Name | Description ---- | --- | --- -0 | [MAV_STATE_UNINIT](#MAV_STATE_UNINIT) | Uninitialized system, state is unknown. -1 | [MAV_STATE_BOOT](#MAV_STATE_BOOT) | System is booting up. -2 | [MAV_STATE_CALIBRATING](#MAV_STATE_CALIBRATING) | System is calibrating and not flight-ready. -3 | [MAV_STATE_STANDBY](#MAV_STATE_STANDBY) | System is grounded and on standby. It can be launched any time. -4 | [MAV_STATE_ACTIVE](#MAV_STATE_ACTIVE) | System is active and might be already airborne. Motors are engaged. -5 | [MAV_STATE_CRITICAL](#MAV_STATE_CRITICAL) | System is in a non-normal flight mode (failsafe). It can however still navigate. -6 | [MAV_STATE_EMERGENCY](#MAV_STATE_EMERGENCY) | System is in a non-normal flight mode (failsafe). It lost control over parts or over the whole airframe. It is in mayday and going down. -7 | [MAV_STATE_POWEROFF](#MAV_STATE_POWEROFF) | System just initialized its power-down sequence, will shut down now. -8 | [MAV_STATE_FLIGHT_TERMINATION](#MAV_STATE_FLIGHT_TERMINATION) | System is terminating itself (failsafe or commanded). +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_STATE_UNINIT](#MAV_STATE_UNINIT) | Uninitialized system, state is unknown. | +| 1 | [MAV_STATE_BOOT](#MAV_STATE_BOOT) | System is booting up. | +| 2 | [MAV_STATE_CALIBRATING](#MAV_STATE_CALIBRATING) | System is calibrating and not flight-ready. | +| 3 | [MAV_STATE_STANDBY](#MAV_STATE_STANDBY) | System is grounded and on standby. It can be launched any time. | +| 4 | [MAV_STATE_ACTIVE](#MAV_STATE_ACTIVE) | System is active and might be already airborne. Motors are engaged. | +| 5 | [MAV_STATE_CRITICAL](#MAV_STATE_CRITICAL) | System is in a non-normal flight mode (failsafe). It can however still navigate. | +| 6 | [MAV_STATE_EMERGENCY](#MAV_STATE_EMERGENCY) | System is in a non-normal flight mode (failsafe). It lost control over parts or over the whole airframe. It is in mayday and going down. | +| 7 | [MAV_STATE_POWEROFF](#MAV_STATE_POWEROFF) | System just initialized its power-down sequence, will shut down now. | +| 8 | [MAV_STATE_FLIGHT_TERMINATION](#MAV_STATE_FLIGHT_TERMINATION) | System is terminating itself (failsafe or commanded). | ### MAV_COMPONENT — \[from: [minimal](../messages/minimal.md#MAV_COMPONENT)\] {#MAV_COMPONENT} Legacy component ID values for particular types of hardware/software that might make up a MAVLink system (autopilot, cameras, servos, avoidance systems etc.). - Components are not required or expected to use IDs with names that correspond to their type or function, but may choose to do so. Using an ID that matches the type may slightly reduce the chances of component id clashes, as, for historical reasons, it is less likely to be used by some other type of component. System integration will still need to ensure that all components have unique IDs. @@ -6484,147 +6248,147 @@ A component can use any unique ID between 1 and 255 ([MAV_COMP_ID_ALL](#MAV_COMP Historically component ID were also used for identifying the type of component. New code must not use component IDs to infer the component type, but instead check the [MAV_TYPE](#MAV_TYPE) in the HEARTBEAT message! -Value | Name | Description ---- | --- | --- -0 | [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) | Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. -1 | [MAV_COMP_ID_AUTOPILOT1](#MAV_COMP_ID_AUTOPILOT1) | System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. -25 | [MAV_COMP_ID_USER1](#MAV_COMP_ID_USER1) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -26 | [MAV_COMP_ID_USER2](#MAV_COMP_ID_USER2) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -27 | [MAV_COMP_ID_USER3](#MAV_COMP_ID_USER3) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -28 | [MAV_COMP_ID_USER4](#MAV_COMP_ID_USER4) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -29 | [MAV_COMP_ID_USER5](#MAV_COMP_ID_USER5) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -30 | [MAV_COMP_ID_USER6](#MAV_COMP_ID_USER6) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -31 | [MAV_COMP_ID_USER7](#MAV_COMP_ID_USER7) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -32 | [MAV_COMP_ID_USER8](#MAV_COMP_ID_USER8) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -33 | [MAV_COMP_ID_USER9](#MAV_COMP_ID_USER9) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -34 | [MAV_COMP_ID_USER10](#MAV_COMP_ID_USER10) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -35 | [MAV_COMP_ID_USER11](#MAV_COMP_ID_USER11) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -36 | [MAV_COMP_ID_USER12](#MAV_COMP_ID_USER12) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -37 | [MAV_COMP_ID_USER13](#MAV_COMP_ID_USER13) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -38 | [MAV_COMP_ID_USER14](#MAV_COMP_ID_USER14) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -39 | [MAV_COMP_ID_USER15](#MAV_COMP_ID_USER15) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -40 | [MAV_COMP_ID_USER16](#MAV_COMP_ID_USER16) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -41 | [MAV_COMP_ID_USER17](#MAV_COMP_ID_USER17) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -42 | [MAV_COMP_ID_USER18](#MAV_COMP_ID_USER18) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -43 | [MAV_COMP_ID_USER19](#MAV_COMP_ID_USER19) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -44 | [MAV_COMP_ID_USER20](#MAV_COMP_ID_USER20) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -45 | [MAV_COMP_ID_USER21](#MAV_COMP_ID_USER21) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -46 | [MAV_COMP_ID_USER22](#MAV_COMP_ID_USER22) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -47 | [MAV_COMP_ID_USER23](#MAV_COMP_ID_USER23) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -48 | [MAV_COMP_ID_USER24](#MAV_COMP_ID_USER24) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -49 | [MAV_COMP_ID_USER25](#MAV_COMP_ID_USER25) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -50 | [MAV_COMP_ID_USER26](#MAV_COMP_ID_USER26) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -51 | [MAV_COMP_ID_USER27](#MAV_COMP_ID_USER27) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -52 | [MAV_COMP_ID_USER28](#MAV_COMP_ID_USER28) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -53 | [MAV_COMP_ID_USER29](#MAV_COMP_ID_USER29) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -54 | [MAV_COMP_ID_USER30](#MAV_COMP_ID_USER30) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -55 | [MAV_COMP_ID_USER31](#MAV_COMP_ID_USER31) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -56 | [MAV_COMP_ID_USER32](#MAV_COMP_ID_USER32) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -57 | [MAV_COMP_ID_USER33](#MAV_COMP_ID_USER33) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -58 | [MAV_COMP_ID_USER34](#MAV_COMP_ID_USER34) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -59 | [MAV_COMP_ID_USER35](#MAV_COMP_ID_USER35) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -60 | [MAV_COMP_ID_USER36](#MAV_COMP_ID_USER36) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -61 | [MAV_COMP_ID_USER37](#MAV_COMP_ID_USER37) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -62 | [MAV_COMP_ID_USER38](#MAV_COMP_ID_USER38) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -63 | [MAV_COMP_ID_USER39](#MAV_COMP_ID_USER39) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -64 | [MAV_COMP_ID_USER40](#MAV_COMP_ID_USER40) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -65 | [MAV_COMP_ID_USER41](#MAV_COMP_ID_USER41) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -66 | [MAV_COMP_ID_USER42](#MAV_COMP_ID_USER42) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -67 | [MAV_COMP_ID_USER43](#MAV_COMP_ID_USER43) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -68 | [MAV_COMP_ID_TELEMETRY_RADIO](#MAV_COMP_ID_TELEMETRY_RADIO) | Telemetry radio (e.g. SiK radio, or other component that emits [RADIO_STATUS](#RADIO_STATUS) messages). -69 | [MAV_COMP_ID_USER45](#MAV_COMP_ID_USER45) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -70 | [MAV_COMP_ID_USER46](#MAV_COMP_ID_USER46) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -71 | [MAV_COMP_ID_USER47](#MAV_COMP_ID_USER47) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -72 | [MAV_COMP_ID_USER48](#MAV_COMP_ID_USER48) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -73 | [MAV_COMP_ID_USER49](#MAV_COMP_ID_USER49) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -74 | [MAV_COMP_ID_USER50](#MAV_COMP_ID_USER50) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -75 | [MAV_COMP_ID_USER51](#MAV_COMP_ID_USER51) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -76 | [MAV_COMP_ID_USER52](#MAV_COMP_ID_USER52) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -77 | [MAV_COMP_ID_USER53](#MAV_COMP_ID_USER53) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -78 | [MAV_COMP_ID_USER54](#MAV_COMP_ID_USER54) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -79 | [MAV_COMP_ID_USER55](#MAV_COMP_ID_USER55) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -80 | [MAV_COMP_ID_USER56](#MAV_COMP_ID_USER56) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -81 | [MAV_COMP_ID_USER57](#MAV_COMP_ID_USER57) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -82 | [MAV_COMP_ID_USER58](#MAV_COMP_ID_USER58) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -83 | [MAV_COMP_ID_USER59](#MAV_COMP_ID_USER59) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -84 | [MAV_COMP_ID_USER60](#MAV_COMP_ID_USER60) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -85 | [MAV_COMP_ID_USER61](#MAV_COMP_ID_USER61) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -86 | [MAV_COMP_ID_USER62](#MAV_COMP_ID_USER62) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -87 | [MAV_COMP_ID_USER63](#MAV_COMP_ID_USER63) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -88 | [MAV_COMP_ID_USER64](#MAV_COMP_ID_USER64) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -89 | [MAV_COMP_ID_USER65](#MAV_COMP_ID_USER65) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -90 | [MAV_COMP_ID_USER66](#MAV_COMP_ID_USER66) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -91 | [MAV_COMP_ID_USER67](#MAV_COMP_ID_USER67) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -92 | [MAV_COMP_ID_USER68](#MAV_COMP_ID_USER68) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -93 | [MAV_COMP_ID_USER69](#MAV_COMP_ID_USER69) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -94 | [MAV_COMP_ID_USER70](#MAV_COMP_ID_USER70) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -95 | [MAV_COMP_ID_USER71](#MAV_COMP_ID_USER71) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -96 | [MAV_COMP_ID_USER72](#MAV_COMP_ID_USER72) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -97 | [MAV_COMP_ID_USER73](#MAV_COMP_ID_USER73) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -98 | [MAV_COMP_ID_USER74](#MAV_COMP_ID_USER74) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -99 | [MAV_COMP_ID_USER75](#MAV_COMP_ID_USER75) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -100 | [MAV_COMP_ID_CAMERA](#MAV_COMP_ID_CAMERA) | Camera #1. -101 | [MAV_COMP_ID_CAMERA2](#MAV_COMP_ID_CAMERA2) | Camera #2. -102 | [MAV_COMP_ID_CAMERA3](#MAV_COMP_ID_CAMERA3) | Camera #3. -103 | [MAV_COMP_ID_CAMERA4](#MAV_COMP_ID_CAMERA4) | Camera #4. -104 | [MAV_COMP_ID_CAMERA5](#MAV_COMP_ID_CAMERA5) | Camera #5. -105 | [MAV_COMP_ID_CAMERA6](#MAV_COMP_ID_CAMERA6) | Camera #6. -110 | [MAV_COMP_ID_RADIO](#MAV_COMP_ID_RADIO) | Radio #1. -111 | [MAV_COMP_ID_RADIO2](#MAV_COMP_ID_RADIO2) | Radio #2. -112 | [MAV_COMP_ID_RADIO3](#MAV_COMP_ID_RADIO3) | Radio #3. -140 | [MAV_COMP_ID_SERVO1](#MAV_COMP_ID_SERVO1) | Servo #1. -141 | [MAV_COMP_ID_SERVO2](#MAV_COMP_ID_SERVO2) | Servo #2. -142 | [MAV_COMP_ID_SERVO3](#MAV_COMP_ID_SERVO3) | Servo #3. -143 | [MAV_COMP_ID_SERVO4](#MAV_COMP_ID_SERVO4) | Servo #4. -144 | [MAV_COMP_ID_SERVO5](#MAV_COMP_ID_SERVO5) | Servo #5. -145 | [MAV_COMP_ID_SERVO6](#MAV_COMP_ID_SERVO6) | Servo #6. -146 | [MAV_COMP_ID_SERVO7](#MAV_COMP_ID_SERVO7) | Servo #7. -147 | [MAV_COMP_ID_SERVO8](#MAV_COMP_ID_SERVO8) | Servo #8. -148 | [MAV_COMP_ID_SERVO9](#MAV_COMP_ID_SERVO9) | Servo #9. -149 | [MAV_COMP_ID_SERVO10](#MAV_COMP_ID_SERVO10) | Servo #10. -150 | [MAV_COMP_ID_SERVO11](#MAV_COMP_ID_SERVO11) | Servo #11. -151 | [MAV_COMP_ID_SERVO12](#MAV_COMP_ID_SERVO12) | Servo #12. -152 | [MAV_COMP_ID_SERVO13](#MAV_COMP_ID_SERVO13) | Servo #13. -153 | [MAV_COMP_ID_SERVO14](#MAV_COMP_ID_SERVO14) | Servo #14. -154 | [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) | Gimbal #1. -155 | [MAV_COMP_ID_LOG](#MAV_COMP_ID_LOG) | Logging component. -156 | [MAV_COMP_ID_ADSB](#MAV_COMP_ID_ADSB) | Automatic Dependent Surveillance-Broadcast (ADS-B) component. -157 | [MAV_COMP_ID_OSD](#MAV_COMP_ID_OSD) | On Screen Display (OSD) devices for video links. -158 | [MAV_COMP_ID_PERIPHERAL](#MAV_COMP_ID_PERIPHERAL) | Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. -159 | [MAV_COMP_ID_QX1_GIMBAL](#MAV_COMP_ID_QX1_GIMBAL) | Gimbal ID for QX1.
**DEPRECATED:** Replaced By [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) (2018-11) — All gimbals should use [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL).) -160 | [MAV_COMP_ID_FLARM](#MAV_COMP_ID_FLARM) | FLARM collision alert component. -161 | [MAV_COMP_ID_PARACHUTE](#MAV_COMP_ID_PARACHUTE) | Parachute component. -169 | [MAV_COMP_ID_WINCH](#MAV_COMP_ID_WINCH) | Winch component. -171 | [MAV_COMP_ID_GIMBAL2](#MAV_COMP_ID_GIMBAL2) | Gimbal #2. -172 | [MAV_COMP_ID_GIMBAL3](#MAV_COMP_ID_GIMBAL3) | Gimbal #3. -173 | [MAV_COMP_ID_GIMBAL4](#MAV_COMP_ID_GIMBAL4) | Gimbal #4 -174 | [MAV_COMP_ID_GIMBAL5](#MAV_COMP_ID_GIMBAL5) | Gimbal #5. -175 | [MAV_COMP_ID_GIMBAL6](#MAV_COMP_ID_GIMBAL6) | Gimbal #6. -180 | [MAV_COMP_ID_BATTERY](#MAV_COMP_ID_BATTERY) | Battery #1. -181 | [MAV_COMP_ID_BATTERY2](#MAV_COMP_ID_BATTERY2) | Battery #2. -189 | [MAV_COMP_ID_MAVCAN](#MAV_COMP_ID_MAVCAN) | CAN over MAVLink client. -190 | [MAV_COMP_ID_MISSIONPLANNER](#MAV_COMP_ID_MISSIONPLANNER) | Component that can generate/supply a mission flight plan (e.g. GCS or developer API). -191 | [MAV_COMP_ID_ONBOARD_COMPUTER](#MAV_COMP_ID_ONBOARD_COMPUTER) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -192 | [MAV_COMP_ID_ONBOARD_COMPUTER2](#MAV_COMP_ID_ONBOARD_COMPUTER2) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -193 | [MAV_COMP_ID_ONBOARD_COMPUTER3](#MAV_COMP_ID_ONBOARD_COMPUTER3) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -194 | [MAV_COMP_ID_ONBOARD_COMPUTER4](#MAV_COMP_ID_ONBOARD_COMPUTER4) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -195 | [MAV_COMP_ID_PATHPLANNER](#MAV_COMP_ID_PATHPLANNER) | Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). -196 | [MAV_COMP_ID_OBSTACLE_AVOIDANCE](#MAV_COMP_ID_OBSTACLE_AVOIDANCE) | Component that plans a collision free path between two points. -197 | [MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY](#MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY) | Component that provides position estimates using VIO techniques. -198 | [MAV_COMP_ID_PAIRING_MANAGER](#MAV_COMP_ID_PAIRING_MANAGER) | Component that manages pairing of vehicle and GCS. -200 | [MAV_COMP_ID_IMU](#MAV_COMP_ID_IMU) | Inertial Measurement Unit (IMU) #1. -201 | [MAV_COMP_ID_IMU_2](#MAV_COMP_ID_IMU_2) | Inertial Measurement Unit (IMU) #2. -202 | [MAV_COMP_ID_IMU_3](#MAV_COMP_ID_IMU_3) | Inertial Measurement Unit (IMU) #3. -220 | [MAV_COMP_ID_GPS](#MAV_COMP_ID_GPS) | GPS #1. -221 | [MAV_COMP_ID_GPS2](#MAV_COMP_ID_GPS2) | GPS #2. -236 | [MAV_COMP_ID_ODID_TXRX_1](#MAV_COMP_ID_ODID_TXRX_1) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -237 | [MAV_COMP_ID_ODID_TXRX_2](#MAV_COMP_ID_ODID_TXRX_2) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -238 | [MAV_COMP_ID_ODID_TXRX_3](#MAV_COMP_ID_ODID_TXRX_3) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -240 | [MAV_COMP_ID_UDP_BRIDGE](#MAV_COMP_ID_UDP_BRIDGE) | Component to bridge MAVLink to UDP (i.e. from a UART). -241 | [MAV_COMP_ID_UART_BRIDGE](#MAV_COMP_ID_UART_BRIDGE) | Component to bridge to UART (i.e. from UDP). -242 | [MAV_COMP_ID_TUNNEL_NODE](#MAV_COMP_ID_TUNNEL_NODE) | Component handling TUNNEL messages (e.g. vendor specific GUI of a component). -243 | [MAV_COMP_ID_ILLUMINATOR](#MAV_COMP_ID_ILLUMINATOR) | Illuminator -250 | [MAV_COMP_ID_SYSTEM_CONTROL](#MAV_COMP_ID_SYSTEM_CONTROL) | Deprecated, don't use. Component for handling system messages (e.g. to ARM, takeoff, etc.).
**DEPRECATED:** Replaced By [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) (2018-11) — System control does not require a separate component ID. Instead, system commands should be sent with target_component=MAV_COMP_ID_ALL allowing the target component to use any appropriate component id.) +| Value | Name | Description | +| ---------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) | Target id (target*component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid \_source* component id for a message. | +| 1 | [MAV_COMP_ID_AUTOPILOT1](#MAV_COMP_ID_AUTOPILOT1) | System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. | +| 25 | [MAV_COMP_ID_USER1](#MAV_COMP_ID_USER1) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 26 | [MAV_COMP_ID_USER2](#MAV_COMP_ID_USER2) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 27 | [MAV_COMP_ID_USER3](#MAV_COMP_ID_USER3) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 28 | [MAV_COMP_ID_USER4](#MAV_COMP_ID_USER4) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 29 | [MAV_COMP_ID_USER5](#MAV_COMP_ID_USER5) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 30 | [MAV_COMP_ID_USER6](#MAV_COMP_ID_USER6) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 31 | [MAV_COMP_ID_USER7](#MAV_COMP_ID_USER7) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 32 | [MAV_COMP_ID_USER8](#MAV_COMP_ID_USER8) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 33 | [MAV_COMP_ID_USER9](#MAV_COMP_ID_USER9) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 34 | [MAV_COMP_ID_USER10](#MAV_COMP_ID_USER10) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 35 | [MAV_COMP_ID_USER11](#MAV_COMP_ID_USER11) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 36 | [MAV_COMP_ID_USER12](#MAV_COMP_ID_USER12) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 37 | [MAV_COMP_ID_USER13](#MAV_COMP_ID_USER13) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 38 | [MAV_COMP_ID_USER14](#MAV_COMP_ID_USER14) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 39 | [MAV_COMP_ID_USER15](#MAV_COMP_ID_USER15) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 40 | [MAV_COMP_ID_USER16](#MAV_COMP_ID_USER16) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 41 | [MAV_COMP_ID_USER17](#MAV_COMP_ID_USER17) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 42 | [MAV_COMP_ID_USER18](#MAV_COMP_ID_USER18) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 43 | [MAV_COMP_ID_USER19](#MAV_COMP_ID_USER19) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 44 | [MAV_COMP_ID_USER20](#MAV_COMP_ID_USER20) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 45 | [MAV_COMP_ID_USER21](#MAV_COMP_ID_USER21) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 46 | [MAV_COMP_ID_USER22](#MAV_COMP_ID_USER22) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 47 | [MAV_COMP_ID_USER23](#MAV_COMP_ID_USER23) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 48 | [MAV_COMP_ID_USER24](#MAV_COMP_ID_USER24) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 49 | [MAV_COMP_ID_USER25](#MAV_COMP_ID_USER25) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 50 | [MAV_COMP_ID_USER26](#MAV_COMP_ID_USER26) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 51 | [MAV_COMP_ID_USER27](#MAV_COMP_ID_USER27) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 52 | [MAV_COMP_ID_USER28](#MAV_COMP_ID_USER28) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 53 | [MAV_COMP_ID_USER29](#MAV_COMP_ID_USER29) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 54 | [MAV_COMP_ID_USER30](#MAV_COMP_ID_USER30) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 55 | [MAV_COMP_ID_USER31](#MAV_COMP_ID_USER31) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 56 | [MAV_COMP_ID_USER32](#MAV_COMP_ID_USER32) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 57 | [MAV_COMP_ID_USER33](#MAV_COMP_ID_USER33) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 58 | [MAV_COMP_ID_USER34](#MAV_COMP_ID_USER34) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 59 | [MAV_COMP_ID_USER35](#MAV_COMP_ID_USER35) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 60 | [MAV_COMP_ID_USER36](#MAV_COMP_ID_USER36) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 61 | [MAV_COMP_ID_USER37](#MAV_COMP_ID_USER37) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 62 | [MAV_COMP_ID_USER38](#MAV_COMP_ID_USER38) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 63 | [MAV_COMP_ID_USER39](#MAV_COMP_ID_USER39) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 64 | [MAV_COMP_ID_USER40](#MAV_COMP_ID_USER40) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 65 | [MAV_COMP_ID_USER41](#MAV_COMP_ID_USER41) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 66 | [MAV_COMP_ID_USER42](#MAV_COMP_ID_USER42) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 67 | [MAV_COMP_ID_USER43](#MAV_COMP_ID_USER43) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 68 | [MAV_COMP_ID_TELEMETRY_RADIO](#MAV_COMP_ID_TELEMETRY_RADIO) | Telemetry radio (e.g. SiK radio, or other component that emits [RADIO_STATUS](#RADIO_STATUS) messages). | +| 69 | [MAV_COMP_ID_USER45](#MAV_COMP_ID_USER45) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 70 | [MAV_COMP_ID_USER46](#MAV_COMP_ID_USER46) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 71 | [MAV_COMP_ID_USER47](#MAV_COMP_ID_USER47) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 72 | [MAV_COMP_ID_USER48](#MAV_COMP_ID_USER48) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 73 | [MAV_COMP_ID_USER49](#MAV_COMP_ID_USER49) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 74 | [MAV_COMP_ID_USER50](#MAV_COMP_ID_USER50) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 75 | [MAV_COMP_ID_USER51](#MAV_COMP_ID_USER51) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 76 | [MAV_COMP_ID_USER52](#MAV_COMP_ID_USER52) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 77 | [MAV_COMP_ID_USER53](#MAV_COMP_ID_USER53) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 78 | [MAV_COMP_ID_USER54](#MAV_COMP_ID_USER54) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 79 | [MAV_COMP_ID_USER55](#MAV_COMP_ID_USER55) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 80 | [MAV_COMP_ID_USER56](#MAV_COMP_ID_USER56) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 81 | [MAV_COMP_ID_USER57](#MAV_COMP_ID_USER57) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 82 | [MAV_COMP_ID_USER58](#MAV_COMP_ID_USER58) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 83 | [MAV_COMP_ID_USER59](#MAV_COMP_ID_USER59) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 84 | [MAV_COMP_ID_USER60](#MAV_COMP_ID_USER60) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 85 | [MAV_COMP_ID_USER61](#MAV_COMP_ID_USER61) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 86 | [MAV_COMP_ID_USER62](#MAV_COMP_ID_USER62) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 87 | [MAV_COMP_ID_USER63](#MAV_COMP_ID_USER63) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 88 | [MAV_COMP_ID_USER64](#MAV_COMP_ID_USER64) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 89 | [MAV_COMP_ID_USER65](#MAV_COMP_ID_USER65) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 90 | [MAV_COMP_ID_USER66](#MAV_COMP_ID_USER66) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 91 | [MAV_COMP_ID_USER67](#MAV_COMP_ID_USER67) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 92 | [MAV_COMP_ID_USER68](#MAV_COMP_ID_USER68) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 93 | [MAV_COMP_ID_USER69](#MAV_COMP_ID_USER69) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 94 | [MAV_COMP_ID_USER70](#MAV_COMP_ID_USER70) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 95 | [MAV_COMP_ID_USER71](#MAV_COMP_ID_USER71) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 96 | [MAV_COMP_ID_USER72](#MAV_COMP_ID_USER72) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 97 | [MAV_COMP_ID_USER73](#MAV_COMP_ID_USER73) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 98 | [MAV_COMP_ID_USER74](#MAV_COMP_ID_USER74) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 99 | [MAV_COMP_ID_USER75](#MAV_COMP_ID_USER75) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 100 | [MAV_COMP_ID_CAMERA](#MAV_COMP_ID_CAMERA) | Camera #1. | +| 101 | [MAV_COMP_ID_CAMERA2](#MAV_COMP_ID_CAMERA2) | Camera #2. | +| 102 | [MAV_COMP_ID_CAMERA3](#MAV_COMP_ID_CAMERA3) | Camera #3. | +| 103 | [MAV_COMP_ID_CAMERA4](#MAV_COMP_ID_CAMERA4) | Camera #4. | +| 104 | [MAV_COMP_ID_CAMERA5](#MAV_COMP_ID_CAMERA5) | Camera #5. | +| 105 | [MAV_COMP_ID_CAMERA6](#MAV_COMP_ID_CAMERA6) | Camera #6. | +| 110 | [MAV_COMP_ID_RADIO](#MAV_COMP_ID_RADIO) | Radio #1. | +| 111 | [MAV_COMP_ID_RADIO2](#MAV_COMP_ID_RADIO2) | Radio #2. | +| 112 | [MAV_COMP_ID_RADIO3](#MAV_COMP_ID_RADIO3) | Radio #3. | +| 140 | [MAV_COMP_ID_SERVO1](#MAV_COMP_ID_SERVO1) | Servo #1. | +| 141 | [MAV_COMP_ID_SERVO2](#MAV_COMP_ID_SERVO2) | Servo #2. | +| 142 | [MAV_COMP_ID_SERVO3](#MAV_COMP_ID_SERVO3) | Servo #3. | +| 143 | [MAV_COMP_ID_SERVO4](#MAV_COMP_ID_SERVO4) | Servo #4. | +| 144 | [MAV_COMP_ID_SERVO5](#MAV_COMP_ID_SERVO5) | Servo #5. | +| 145 | [MAV_COMP_ID_SERVO6](#MAV_COMP_ID_SERVO6) | Servo #6. | +| 146 | [MAV_COMP_ID_SERVO7](#MAV_COMP_ID_SERVO7) | Servo #7. | +| 147 | [MAV_COMP_ID_SERVO8](#MAV_COMP_ID_SERVO8) | Servo #8. | +| 148 | [MAV_COMP_ID_SERVO9](#MAV_COMP_ID_SERVO9) | Servo #9. | +| 149 | [MAV_COMP_ID_SERVO10](#MAV_COMP_ID_SERVO10) | Servo #10. | +| 150 | [MAV_COMP_ID_SERVO11](#MAV_COMP_ID_SERVO11) | Servo #11. | +| 151 | [MAV_COMP_ID_SERVO12](#MAV_COMP_ID_SERVO12) | Servo #12. | +| 152 | [MAV_COMP_ID_SERVO13](#MAV_COMP_ID_SERVO13) | Servo #13. | +| 153 | [MAV_COMP_ID_SERVO14](#MAV_COMP_ID_SERVO14) | Servo #14. | +| 154 | [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) | Gimbal #1. | +| 155 | [MAV_COMP_ID_LOG](#MAV_COMP_ID_LOG) | Logging component. | +| 156 | [MAV_COMP_ID_ADSB](#MAV_COMP_ID_ADSB) | Automatic Dependent Surveillance-Broadcast (ADS-B) component. | +| 157 | [MAV_COMP_ID_OSD](#MAV_COMP_ID_OSD) | On Screen Display (OSD) devices for video links. | +| 158 | [MAV_COMP_ID_PERIPHERAL](#MAV_COMP_ID_PERIPHERAL) | Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. | +| 159 | [MAV_COMP_ID_QX1_GIMBAL](#MAV_COMP_ID_QX1_GIMBAL) | Gimbal ID for QX1.
**DEPRECATED:** Replaced By [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) (2018-11) — All gimbals should use [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL).) | +| 160 | [MAV_COMP_ID_FLARM](#MAV_COMP_ID_FLARM) | FLARM collision alert component. | +| 161 | [MAV_COMP_ID_PARACHUTE](#MAV_COMP_ID_PARACHUTE) | Parachute component. | +| 169 | [MAV_COMP_ID_WINCH](#MAV_COMP_ID_WINCH) | Winch component. | +| 171 | [MAV_COMP_ID_GIMBAL2](#MAV_COMP_ID_GIMBAL2) | Gimbal #2. | +| 172 | [MAV_COMP_ID_GIMBAL3](#MAV_COMP_ID_GIMBAL3) | Gimbal #3. | +| 173 | [MAV_COMP_ID_GIMBAL4](#MAV_COMP_ID_GIMBAL4) | Gimbal #4 | +| 174 | [MAV_COMP_ID_GIMBAL5](#MAV_COMP_ID_GIMBAL5) | Gimbal #5. | +| 175 | [MAV_COMP_ID_GIMBAL6](#MAV_COMP_ID_GIMBAL6) | Gimbal #6. | +| 180 | [MAV_COMP_ID_BATTERY](#MAV_COMP_ID_BATTERY) | Battery #1. | +| 181 | [MAV_COMP_ID_BATTERY2](#MAV_COMP_ID_BATTERY2) | Battery #2. | +| 189 | [MAV_COMP_ID_MAVCAN](#MAV_COMP_ID_MAVCAN) | CAN over MAVLink client. | +| 190 | [MAV_COMP_ID_MISSIONPLANNER](#MAV_COMP_ID_MISSIONPLANNER) | Component that can generate/supply a mission flight plan (e.g. GCS or developer API). | +| 191 | [MAV_COMP_ID_ONBOARD_COMPUTER](#MAV_COMP_ID_ONBOARD_COMPUTER) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 192 | [MAV_COMP_ID_ONBOARD_COMPUTER2](#MAV_COMP_ID_ONBOARD_COMPUTER2) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 193 | [MAV_COMP_ID_ONBOARD_COMPUTER3](#MAV_COMP_ID_ONBOARD_COMPUTER3) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 194 | [MAV_COMP_ID_ONBOARD_COMPUTER4](#MAV_COMP_ID_ONBOARD_COMPUTER4) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 195 | [MAV_COMP_ID_PATHPLANNER](#MAV_COMP_ID_PATHPLANNER) | Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). | +| 196 | [MAV_COMP_ID_OBSTACLE_AVOIDANCE](#MAV_COMP_ID_OBSTACLE_AVOIDANCE) | Component that plans a collision free path between two points. | +| 197 | [MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY](#MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY) | Component that provides position estimates using VIO techniques. | +| 198 | [MAV_COMP_ID_PAIRING_MANAGER](#MAV_COMP_ID_PAIRING_MANAGER) | Component that manages pairing of vehicle and GCS. | +| 200 | [MAV_COMP_ID_IMU](#MAV_COMP_ID_IMU) | Inertial Measurement Unit (IMU) #1. | +| 201 | [MAV_COMP_ID_IMU_2](#MAV_COMP_ID_IMU_2) | Inertial Measurement Unit (IMU) #2. | +| 202 | [MAV_COMP_ID_IMU_3](#MAV_COMP_ID_IMU_3) | Inertial Measurement Unit (IMU) #3. | +| 220 | [MAV_COMP_ID_GPS](#MAV_COMP_ID_GPS) | GPS #1. | +| 221 | [MAV_COMP_ID_GPS2](#MAV_COMP_ID_GPS2) | GPS #2. | +| 236 | [MAV_COMP_ID_ODID_TXRX_1](#MAV_COMP_ID_ODID_TXRX_1) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 237 | [MAV_COMP_ID_ODID_TXRX_2](#MAV_COMP_ID_ODID_TXRX_2) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 238 | [MAV_COMP_ID_ODID_TXRX_3](#MAV_COMP_ID_ODID_TXRX_3) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 240 | [MAV_COMP_ID_UDP_BRIDGE](#MAV_COMP_ID_UDP_BRIDGE) | Component to bridge MAVLink to UDP (i.e. from a UART). | +| 241 | [MAV_COMP_ID_UART_BRIDGE](#MAV_COMP_ID_UART_BRIDGE) | Component to bridge to UART (i.e. from UDP). | +| 242 | [MAV_COMP_ID_TUNNEL_NODE](#MAV_COMP_ID_TUNNEL_NODE) | Component handling TUNNEL messages (e.g. vendor specific GUI of a component). | +| 243 | [MAV_COMP_ID_ILLUMINATOR](#MAV_COMP_ID_ILLUMINATOR) | Illuminator | +| 250 | [MAV_COMP_ID_SYSTEM_CONTROL](#MAV_COMP_ID_SYSTEM_CONTROL) | Deprecated, don't use. Component for handling system messages (e.g. to ARM, takeoff, etc.).
**DEPRECATED:** Replaced By [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) (2018-11) — System control does not require a separate component ID. Instead, system commands should be sent with target_component=MAV_COMP_ID_ALL allowing the target component to use any appropriate component id.) | ## Commands (MAV_CMD) {#mav_commands} @@ -6632,226 +6396,211 @@ Value | Name | Description Navigate to waypoint. This is intended for use in missions (for guided commands outside of missions use [MAV_CMD_DO_REPOSITION](#MAV_CMD_DO_REPOSITION)). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Hold) | Hold time. (ignored by fixed wing, time to stay at waypoint for rotary wing) | min: 0 | s -2 (Accept Radius) | Acceptance radius (if the sphere with this radius is hit, the waypoint counts as reached) | min: 0 | m -3 (Pass Radius) | 0 to pass through the WP, if > 0 radius to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control. | | m -4 (Yaw) | Desired yaw angle at waypoint (rotary wing). NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----- | +| 1 (Hold) | Hold time. (ignored by fixed wing, time to stay at waypoint for rotary wing) | min: 0 | s | +| 2 (Accept Radius) | Acceptance radius (if the sphere with this radius is hit, the waypoint counts as reached) | min: 0 | m | +| 3 (Pass Radius) | 0 to pass through the WP, if > 0 radius to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control. | | m | +| 4 (Yaw) | Desired yaw angle at waypoint (rotary wing). NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_LOITER_UNLIM (17) {#MAV_CMD_NAV_LOITER_UNLIM} Loiter around this waypoint an unlimited amount of time -Param (Label) | Description | Units ---- | --- | --- -1 | Empty | -2 | Empty | -3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise | m -4 (Yaw) | Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | deg -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 (Altitude) | Altitude | m - +| Param (Label) | Description | Units | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| 1 | Empty | +| 2 | Empty | +| 3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise | m | +| 4 (Yaw) | Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | deg | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 (Altitude) | Altitude | m | ### MAV_CMD_NAV_LOITER_TURNS (18) {#MAV_CMD_NAV_LOITER_TURNS} Loiter around this waypoint for X turns -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Turns) | Number of turns. | min: 0 | -2 (Heading Required) | Leave loiter circle only when track heads towards the next waypoint (MAV_BOOL_FALSE: Leave when turns complete). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise | | m -4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Turns) | Number of turns. | min: 0 | +| 2 (Heading Required) | Leave loiter circle only when track heads towards the next waypoint (MAV_BOOL_FALSE: Leave when turns complete). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise | | m | +| 4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_LOITER_TIME (19) {#MAV_CMD_NAV_LOITER_TIME} Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once heading towards the next waypoint. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Time) | Loiter time (only starts once Lat, Lon and Alt is reached). | min: 0 | s -2 (Heading Required) | Leave loiter circle only when track heading towards the next waypoint (MAV_BOOL_FALSE: Leave on time expiry). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise. | | m -4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Time) | Loiter time (only starts once Lat, Lon and Alt is reached). | min: 0 | s | +| 2 (Heading Required) | Leave loiter circle only when track heading towards the next waypoint (MAV_BOOL_FALSE: Leave on time expiry). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise. | | m | +| 4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_RETURN_TO_LAUNCH (20) {#MAV_CMD_NAV_RETURN_TO_LAUNCH} Return to launch location -Param (Label) | Description ---- | --- -1 | Empty -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_NAV_LAND (21) {#MAV_CMD_NAV_LAND} Land at location. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Abort Alt) | Minimum target altitude if landing is aborted (0 = undefined/use system default). | | m -2 (Land Mode) | Precision land mode. | [PRECISION_LAND_MODE](#PRECISION_LAND_MODE) | -3 | Empty. | | -4 (Yaw Angle) | Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg -5 (Latitude) | Latitude. | | -6 (Longitude) | Longitude. | | -7 (Altitude) | Landing altitude (ground level in current frame). | | m - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | ----- | +| 1 (Abort Alt) | Minimum target altitude if landing is aborted (0 = undefined/use system default). | | m | +| 2 (Land Mode) | Precision land mode. | [PRECISION_LAND_MODE](#PRECISION_LAND_MODE) | +| 3 | Empty. | | +| 4 (Yaw Angle) | Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg | +| 5 (Latitude) | Latitude. | | +| 6 (Longitude) | Longitude. | | +| 7 (Altitude) | Landing altitude (ground level in current frame). | | m | ### MAV_CMD_NAV_TAKEOFF (22) {#MAV_CMD_NAV_TAKEOFF} Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane) should take off using the currently configured mode. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Pitch) | Minimum pitch (if airspeed sensor present), desired pitch without sensor | | deg -2 | Empty | | -3 (Flags) | Bitmask of options flags. | [NAV_TAKEOFF_FLAGS](#NAV_TAKEOFF_FLAGS) | -4 (Yaw) | Yaw angle (if magnetometer present), ignored without magnetometer. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------- | ----- | +| 1 (Pitch) | Minimum pitch (if airspeed sensor present), desired pitch without sensor | | deg | +| 2 | Empty | | +| 3 (Flags) | Bitmask of options flags. | [NAV_TAKEOFF_FLAGS](#NAV_TAKEOFF_FLAGS) | +| 4 (Yaw) | Yaw angle (if magnetometer present), ignored without magnetometer. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_LAND_LOCAL (23) {#MAV_CMD_NAV_LAND_LOCAL} Land at local position (local frame only) -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Target) | Landing target number (if available) | min: 0 inc: 1 | -2 (Offset) | Maximum accepted offset from desired landing position - computed magnitude from spherical coordinates: d = sqrt(x^2 + y^2 + z^2), which gives the maximum accepted distance between the desired landing position and the position where the vehicle is about to land | min: 0 | m -3 (Descend Rate) | Landing descend rate | | m/s -4 (Yaw) | Desired yaw angle | | rad -5 (Y Position) | Y-axis position | | m -6 (X Position) | X-axis position | | m -7 (Z Position) | Z-axis / ground level position | | m - +| Param (Label) | Description | Values | Units | +| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ----- | +| 1 (Target) | Landing target number (if available) | min: 0 inc: 1 | +| 2 (Offset) | Maximum accepted offset from desired landing position - computed magnitude from spherical coordinates: d = sqrt(x^2 + y^2 + z^2), which gives the maximum accepted distance between the desired landing position and the position where the vehicle is about to land | min: 0 | m | +| 3 (Descend Rate) | Landing descend rate | | m/s | +| 4 (Yaw) | Desired yaw angle | | rad | +| 5 (Y Position) | Y-axis position | | m | +| 6 (X Position) | X-axis position | | m | +| 7 (Z Position) | Z-axis / ground level position | | m | ### MAV_CMD_NAV_TAKEOFF_LOCAL (24) {#MAV_CMD_NAV_TAKEOFF_LOCAL} Takeoff from local position (local frame only) -Param (Label) | Description | Units ---- | --- | --- -1 (Pitch) | Minimum pitch (if airspeed sensor present), desired pitch without sensor | rad -2 | Empty | -3 (Ascend Rate) | Takeoff ascend rate | m/s -4 (Yaw) | Yaw angle (if magnetometer or another yaw estimation source present), ignored without one of these | rad -5 (Y Position) | Y-axis position | m -6 (X Position) | X-axis position | m -7 (Z Position) | Z-axis position | m - +| Param (Label) | Description | Units | +| --------------- | -------------------------------------------------------------------------------------------------- | ----- | +| 1 (Pitch) | Minimum pitch (if airspeed sensor present), desired pitch without sensor | rad | +| 2 | Empty | +| 3 (Ascend Rate) | Takeoff ascend rate | m/s | +| 4 (Yaw) | Yaw angle (if magnetometer or another yaw estimation source present), ignored without one of these | rad | +| 5 (Y Position) | Y-axis position | m | +| 6 (X Position) | X-axis position | m | +| 7 (Z Position) | Z-axis position | m | ### MAV_CMD_NAV_FOLLOW (25) {#MAV_CMD_NAV_FOLLOW} Vehicle following, i.e. this waypoint represents the position of a moving vehicle -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Following) | Following logic to use (e.g. loitering or sinusoidal following) - depends on specific autopilot implementation | inc: 1 | -2 (Ground Speed) | Ground speed of vehicle to be followed | | m/s -3 (Radius) | Radius around waypoint. If positive loiter clockwise, else counter-clockwise | | m -4 (Yaw) | Desired yaw angle. | | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ---------------- | -------------------------------------------------------------------------------------------------------------- | ------ | ----- | +| 1 (Following) | Following logic to use (e.g. loitering or sinusoidal following) - depends on specific autopilot implementation | inc: 1 | +| 2 (Ground Speed) | Ground speed of vehicle to be followed | | m/s | +| 3 (Radius) | Radius around waypoint. If positive loiter clockwise, else counter-clockwise | | m | +| 4 (Yaw) | Desired yaw angle. | | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT (30) {#MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT} -Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. - -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Action) | Climb or Descend (0 = Neutral, command completes when within 5m of this command's altitude, 1 = Climbing, command completes when at or above this command's altitude, 2 = Descending, command completes when at or below this command's altitude. | min: 0 max: 2 inc: 1 | -2 | Empty | | -3 | Empty | | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 (Altitude) | Desired altitude | | m +Continue on the current course and climb/descend to specified altitude. When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. +| Param (Label) | Description | Values | Units | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----- | +| 1 (Action) | Climb or Descend (0 = Neutral, command completes when within 5m of this command's altitude, 1 = Climbing, command completes when at or above this command's altitude, 2 = Descending, command completes when at or below this command's altitude. | min: 0 max: 2 inc: 1 | +| 2 | Empty | | +| 3 | Empty | | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 (Altitude) | Desired altitude | | m | ### MAV_CMD_NAV_LOITER_TO_ALT (31) {#MAV_CMD_NAV_LOITER_TO_ALT} -Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. - -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Heading Required) | Leave loiter circle only when track heading towards the next waypoint (MAV_BOOL_FALSE: Leave when altitude reached). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -2 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, negative counter-clockwise, 0 means no change to standard loiter. | | m -3 | Empty | | -4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | min: 0 max: 1 inc: 1 | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m +Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current position. Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not leave the loiter until heading toward the next waypoint. +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Heading Required) | Leave loiter circle only when track heading towards the next waypoint (MAV_BOOL_FALSE: Leave when altitude reached). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Radius) | Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, negative counter-clockwise, 0 means no change to standard loiter. | | m | +| 3 | Empty | | +| 4 (Xtrack Location) | Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. NaN to use the current system default xtrack behaviour. | min: 0 max: 1 inc: 1 | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_DO_FOLLOW (32) {#MAV_CMD_DO_FOLLOW} Begin following a target -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (System ID) | System ID (of the FOLLOW_TARGET beacon). Send 0 to disable follow-me and return to the default position hold mode. | min: 0 max: 255 inc: 1 | -2 | Reserved | | -3 | Reserved | | -4 (Altitude Mode) | Altitude mode: 0: Keep current altitude, 1: keep altitude difference to target, 2: go to a fixed altitude above home. | min: 0 max: 2 inc: 1 | -5 (Altitude) | Altitude above home. (used if mode=2) | | m -6 | Reserved | | -7 (Time to Land) | Time to land in which the MAV should go to the default position hold mode after a message RX timeout. | min: 0 | s - +| Param (Label) | Description | Values | Units | +| ----------------- | --------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (System ID) | System ID (of the FOLLOW_TARGET beacon). Send 0 to disable follow-me and return to the default position hold mode. | min: 0 max: 255 inc: 1 | +| 2 | Reserved | | +| 3 | Reserved | | +| 4 (Altitude Mode) | Altitude mode: 0: Keep current altitude, 1: keep altitude difference to target, 2: go to a fixed altitude above home. | min: 0 max: 2 inc: 1 | +| 5 (Altitude) | Altitude above home. (used if mode=2) | | m | +| 6 | Reserved | | +| 7 (Time to Land) | Time to land in which the MAV should go to the default position hold mode after a message RX timeout. | min: 0 | s | ### MAV_CMD_DO_FOLLOW_REPOSITION (33) {#MAV_CMD_DO_FOLLOW_REPOSITION} Reposition the MAV after a follow target command has been sent -Param (Label) | Description | Units ---- | --- | --- -1 (Camera Q1) | Camera q1 (where 0 is on the ray from the camera to the tracking device) | -2 (Camera Q2) | Camera q2 | -3 (Camera Q3) | Camera q3 | -4 (Camera Q4) | Camera q4 | -5 (Altitude Offset) | altitude offset from target | m -6 (X Offset) | X offset from target | m -7 (Y Offset) | Y offset from target | m - +| Param (Label) | Description | Units | +| ------------------- | ------------------------------------------------------------------------ | ----- | +| 1 (Camera Q1) | Camera q1 (where 0 is on the ray from the camera to the tracking device) | +| 2 (Camera Q2) | Camera q2 | +| 3 (Camera Q3) | Camera q3 | +| 4 (Camera Q4) | Camera q4 | +| 5 (Altitude Offset) | altitude offset from target | m | +| 6 (X Offset) | X offset from target | m | +| 7 (Y Offset) | Y offset from target | m | ### MAV_CMD_DO_ORBIT (34) {#MAV_CMD_DO_ORBIT} Start orbiting on the circumference of a circle defined by the parameters. Setting values to NaN/INT32_MAX (as appropriate) results in using defaults. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Radius) | Radius of the circle. Positive: orbit clockwise. Negative: orbit counter-clockwise. NaN: Use vehicle default radius, or current radius if already orbiting. | | m -2 (Velocity) | Tangential Velocity. NaN: Use vehicle default velocity, or current velocity if already orbiting. | | m/s -3 (Yaw Behavior) | Yaw behavior of the vehicle. | [ORBIT_YAW_BEHAVIOUR](#ORBIT_YAW_BEHAVIOUR) | -4 (Orbits) | Orbit around the centre point for this many radians (i.e. for a three-quarter orbit set 270*Pi/180). 0: Orbit forever. NaN: Use vehicle default, or current value if already orbiting. | min: 0 | rad -5 (Latitude/X) | Center point latitude (if no MAV_FRAME specified) / X coordinate according to MAV_FRAME. INT32_MAX (or NaN if sent in COMMAND_LONG): Use current vehicle position, or current center if already orbiting. | | -6 (Longitude/Y) | Center point longitude (if no MAV_FRAME specified) / Y coordinate according to MAV_FRAME. INT32_MAX (or NaN if sent in COMMAND_LONG): Use current vehicle position, or current center if already orbiting. | | -7 (Altitude/Z) | Center point altitude (MSL) (if no MAV_FRAME specified) / Z coordinate according to MAV_FRAME. NaN: Use current vehicle altitude. | | - +| Param (Label) | Description | Values | Units | +| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | ----- | +| 1 (Radius) | Radius of the circle. Positive: orbit clockwise. Negative: orbit counter-clockwise. NaN: Use vehicle default radius, or current radius if already orbiting. | | m | +| 2 (Velocity) | Tangential Velocity. NaN: Use vehicle default velocity, or current velocity if already orbiting. | | m/s | +| 3 (Yaw Behavior) | Yaw behavior of the vehicle. | [ORBIT_YAW_BEHAVIOUR](#ORBIT_YAW_BEHAVIOUR) | +| 4 (Orbits) | Orbit around the centre point for this many radians (i.e. for a three-quarter orbit set 270\*Pi/180). 0: Orbit forever. NaN: Use vehicle default, or current value if already orbiting. | min: 0 | rad | +| 5 (Latitude/X) | Center point latitude (if no MAV_FRAME specified) / X coordinate according to MAV_FRAME. INT32_MAX (or NaN if sent in COMMAND_LONG): Use current vehicle position, or current center if already orbiting. | | +| 6 (Longitude/Y) | Center point longitude (if no MAV_FRAME specified) / Y coordinate according to MAV_FRAME. INT32_MAX (or NaN if sent in COMMAND_LONG): Use current vehicle position, or current center if already orbiting. | | +| 7 (Altitude/Z) | Center point altitude (MSL) (if no MAV_FRAME specified) / Z coordinate according to MAV_FRAME. NaN: Use current vehicle altitude. | | ### MAV_CMD_DO_FIGURE_EIGHT (35) {#MAV_CMD_DO_FIGURE_EIGHT} @@ -6862,16 +6611,15 @@ The command is intended for fixed wing vehicles (and VTOL hybrids flying in fixe This command only defines the flight path. Speed should be set independently (use e.g. [MAV_CMD_DO_CHANGE_SPEED](#MAV_CMD_DO_CHANGE_SPEED)). Yaw and other degrees of freedom are not specified, and will be flight-stack specific (on vehicles where they can be controlled independent of the heading). -Param (Label) | Description | Units ---- | --- | --- -1 (Major Radius) | Major axis radius of the figure eight. Positive: orbit the north circle clockwise. Negative: orbit the north circle counter-clockwise.
NaN: The radius will be set to 2.5 times the minor radius and direction is clockwise.
Must be greater or equal to two times the minor radius for feasible values. | m -2 (Minor Radius) | Minor axis radius of the figure eight. Defines the radius of the two circles that make up the figure. Negative value has no effect.
NaN: The radius will be set to the default loiter radius. | m -3 | | -4 (Orientation) | Orientation of the figure eight major axis with respect to true north (range: [-pi,pi]). NaN: use default orientation aligned to true north. | rad -5 (Latitude/X) | Center point latitude/X coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle position, or current center if already loitering. | -6 (Longitude/Y) | Center point longitude/Y coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle position, or current center if already loitering. | -7 (Altitude/Z) | Center point altitude MSL/Z coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle altitude. | - +| Param (Label) | Description | Units | +| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| 1 (Major Radius) | Major axis radius of the figure eight. Positive: orbit the north circle clockwise. Negative: orbit the north circle counter-clockwise.
NaN: The radius will be set to 2.5 times the minor radius and direction is clockwise.
Must be greater or equal to two times the minor radius for feasible values. | m | +| 2 (Minor Radius) | Minor axis radius of the figure eight. Defines the radius of the two circles that make up the figure. Negative value has no effect.
NaN: The radius will be set to the default loiter radius. | m | +| 3 | | +| 4 (Orientation) | Orientation of the figure eight major axis with respect to true north (range: [-pi,pi]). NaN: use default orientation aligned to true north. | rad | +| 5 (Latitude/X) | Center point latitude/X coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle position, or current center if already loitering. | +| 6 (Longitude/Y) | Center point longitude/Y coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle position, or current center if already loitering. | +| 7 (Altitude/Z) | Center point altitude MSL/Z coordinate according to MAV_FRAME. If no MAV_FRAME specified, MAV_FRAME_GLOBAL is assumed.
INT32_MAX or NaN: Use current vehicle altitude. | ### MAV_CMD_NAV_ARC_WAYPOINT (36) {#MAV_CMD_NAV_ARC_WAYPOINT} @@ -6880,13 +6628,12 @@ Circular arc path waypoint. This defines the end/exit point and angle (param1) of an arc path from the previous waypoint. A position is required before this command to define the start of the arc (e.g. current position, a [MAV_CMD_NAV_WAYPOINT](#MAV_CMD_NAV_WAYPOINT), or a [MAV_CMD_NAV_ARC_WAYPOINT](#MAV_CMD_NAV_ARC_WAYPOINT)). The resulting path is a circular arc in the NE frame, with the difference in height being defined by the difference in waypoint altitudes. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Arc Angle) | The angle in degrees from the starting position to the exit position of the arc in the NE frame. Positive values are CW arcs and negative values are CCW arcs. | min: -359 max: 359 inc: 1 | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | ----- | +| 1 (Arc Angle) | The angle in degrees from the starting position to the exit position of the arc in the NE frame. Positive values are CW arcs and negative values are CCW arcs. | min: -359 max: 359 inc: 1 | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_ROI (80) — [SUP] {#MAV_CMD_NAV_ROI} @@ -6894,256 +6641,239 @@ Param (Label) | Description | Values | Units Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. -Param (Label) | Description | Values ---- | --- | --- -1 (ROI Mode) | Region of interest mode. | [MAV_ROI](#MAV_ROI) -2 (WP Index) | Waypoint index/ target ID. (see MAV_ROI enum) | min: 0 inc: 1 -3 (ROI Index) | ROI index (allows a vehicle to manage multiple ROI's) | min: 0 inc: 1 -4 | Empty | -5 (X) | x the location of the fixed ROI (see MAV_FRAME) | -6 (Y) | y | -7 (Z) | z | - +| Param (Label) | Description | Values | +| ------------- | ----------------------------------------------------- | ------------------- | +| 1 (ROI Mode) | Region of interest mode. | [MAV_ROI](#MAV_ROI) | +| 2 (WP Index) | Waypoint index/ target ID. (see MAV_ROI enum) | min: 0 inc: 1 | +| 3 (ROI Index) | ROI index (allows a vehicle to manage multiple ROI's) | min: 0 inc: 1 | +| 4 | Empty | +| 5 (X) | x the location of the fixed ROI (see MAV_FRAME) | +| 6 (Y) | y | +| 7 (Z) | z | ### MAV_CMD_NAV_PATHPLANNING (81) {#MAV_CMD_NAV_PATHPLANNING} Control autonomous path planning on the MAV. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Local Ctrl) | 0: Disable local obstacle avoidance / local path planning (without resetting map), 1: Enable local path planning, 2: Enable and reset local path planning | min: 0 max: 2 inc: 1 | -2 (Global Ctrl) | 0: Disable full path planning (without resetting map), 1: Enable, 2: Enable and reset map/occupancy grid, 3: Enable and reset planned route, but not occupancy grid | min: 0 max: 3 inc: 1 | -3 | Empty | | -4 (Yaw) | Yaw angle at goal | | deg -5 (Latitude/X) | Latitude/X of goal | | -6 (Longitude/Y) | Longitude/Y of goal | | -7 (Altitude/Z) | Altitude/Z of goal | | - +| Param (Label) | Description | Values | Units | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----- | +| 1 (Local Ctrl) | 0: Disable local obstacle avoidance / local path planning (without resetting map), 1: Enable local path planning, 2: Enable and reset local path planning | min: 0 max: 2 inc: 1 | +| 2 (Global Ctrl) | 0: Disable full path planning (without resetting map), 1: Enable, 2: Enable and reset map/occupancy grid, 3: Enable and reset planned route, but not occupancy grid | min: 0 max: 3 inc: 1 | +| 3 | Empty | | +| 4 (Yaw) | Yaw angle at goal | | deg | +| 5 (Latitude/X) | Latitude/X of goal | | +| 6 (Longitude/Y) | Longitude/Y of goal | | +| 7 (Altitude/Z) | Altitude/Z of goal | | ### MAV_CMD_NAV_SPLINE_WAYPOINT (82) {#MAV_CMD_NAV_SPLINE_WAYPOINT} Navigate to waypoint using a spline path. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Hold) | Hold time. (ignored by fixed wing, time to stay at waypoint for rotary wing) | min: 0 | s -2 | Empty | | -3 | Empty | | -4 | Empty | | -5 (Latitude/X) | Latitude/X of goal | | -6 (Longitude/Y) | Longitude/Y of goal | | -7 (Altitude/Z) | Altitude/Z of goal | | - +| Param (Label) | Description | Values | Units | +| --------------- | ---------------------------------------------------------------------------- | ------ | ----- | +| 1 (Hold) | Hold time. (ignored by fixed wing, time to stay at waypoint for rotary wing) | min: 0 | s | +| 2 | Empty | | +| 3 | Empty | | +| 4 | Empty | | +| 5 (Latitude/X) | Latitude/X of goal | | +| 6 (Longitude/Y) | Longitude/Y of goal | | +| 7 (Altitude/Z) | Altitude/Z of goal | | ### MAV_CMD_NAV_VTOL_TAKEOFF (84) {#MAV_CMD_NAV_VTOL_TAKEOFF} Takeoff from ground using VTOL mode, and transition to forward flight with specified heading. The command should be ignored by vehicles that dont support both VTOL and fixed-wing flight (multicopters, boats,etc.). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 | Empty | | -2 (Transition Heading) | Front transition heading. | [VTOL_TRANSITION_HEADING](#VTOL_TRANSITION_HEADING) | -3 | Empty | | -4 (Yaw Angle) | Yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ---------------------- | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ----- | +| 1 | Empty | | +| 2 (Transition Heading) | Front transition heading. | [VTOL_TRANSITION_HEADING](#VTOL_TRANSITION_HEADING) | +| 3 | Empty | | +| 4 (Yaw Angle) | Yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_VTOL_LAND (85) {#MAV_CMD_NAV_VTOL_LAND} Land using VTOL mode -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Land Options) | Landing behaviour. | [NAV_VTOL_LAND_OPTIONS](#NAV_VTOL_LAND_OPTIONS) | -2 | Empty | | -3 (Approach Altitude) | Approach altitude (with the same reference as the Altitude field). NaN if unspecified. | | m -4 (Yaw) | Yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Ground Altitude) | Altitude (ground level) relative to the current coordinate frame. NaN to use system default landing altitude (ignore value). | | m - +| Param (Label) | Description | Values | Units | +| --------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | ----- | +| 1 (Land Options) | Landing behaviour. | [NAV_VTOL_LAND_OPTIONS](#NAV_VTOL_LAND_OPTIONS) | +| 2 | Empty | | +| 3 (Approach Altitude) | Approach altitude (with the same reference as the Altitude field). NaN if unspecified. | | m | +| 4 (Yaw) | Yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). | | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Ground Altitude) | Altitude (ground level) relative to the current coordinate frame. NaN to use system default landing altitude (ignore value). | | m | ### MAV_CMD_NAV_GUIDED_ENABLE (92) {#MAV_CMD_NAV_GUIDED_ENABLE} Hand control over to an external controller -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | Guided mode on (MAV_BOOL_FALSE: Off). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ----------------------------------------------------------------------------- | --------------------- | +| 1 (Enable) | Guided mode on (MAV_BOOL_FALSE: Off). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_NAV_DELAY (93) {#MAV_CMD_NAV_DELAY} Delay the next navigation command a number of seconds or until a specified time -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Delay) | Delay (-1 to enable time-of-day fields) | min: -1 inc: 1 | s -2 (Hour) | hour (24h format, UTC, -1 to ignore) | min: -1 max: 23 inc: 1 | -3 (Minute) | minute (24h format, UTC, -1 to ignore) | min: -1 max: 59 inc: 1 | -4 (Second) | second (24h format, UTC, -1 to ignore) | min: -1 max: 59 inc: 1 | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | --------------------------------------- | ---------------------- | ----- | +| 1 (Delay) | Delay (-1 to enable time-of-day fields) | min: -1 inc: 1 | s | +| 2 (Hour) | hour (24h format, UTC, -1 to ignore) | min: -1 max: 23 inc: 1 | +| 3 (Minute) | minute (24h format, UTC, -1 to ignore) | min: -1 max: 59 inc: 1 | +| 4 (Second) | second (24h format, UTC, -1 to ignore) | min: -1 max: 59 inc: 1 | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_NAV_PAYLOAD_PLACE (94) {#MAV_CMD_NAV_PAYLOAD_PLACE} Descend and place payload. Vehicle moves to specified location, descends until it detects a hanging payload has reached the ground, and then releases the payload. If ground is not detected before the reaching the maximum descent value (param1), the command will complete without releasing the payload. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Max Descent) | Maximum distance to descend. | min: 0 | m -2 | Empty | | -3 | Empty | | -4 | Empty | | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| --------------- | ---------------------------- | ------ | ----- | +| 1 (Max Descent) | Maximum distance to descend. | min: 0 | m | +| 2 | Empty | | +| 3 | Empty | | +| 4 | Empty | | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_LAST (95) {#MAV_CMD_NAV_LAST} NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration -Param (Label) | Description ---- | --- -1 | Empty -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_CONDITION_DELAY (112) {#MAV_CMD_CONDITION_DELAY} Delay mission state machine. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Delay) | Delay | min: 0 | s -2 | Empty | | -3 | Empty | | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------- | ------ | ----- | +| 1 (Delay) | Delay | min: 0 | s | +| 2 | Empty | | +| 3 | Empty | | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_CONDITION_CHANGE_ALT (113) {#MAV_CMD_CONDITION_CHANGE_ALT} Ascend/descend to target altitude at specified rate. Delay mission state machine until desired altitude reached. -Param (Label) | Description | Units ---- | --- | --- -1 (Rate) | Descent / Ascend rate. | m/s -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 (Altitude) | Target Altitude | m - +| Param (Label) | Description | Units | +| ------------- | ---------------------- | ----- | +| 1 (Rate) | Descent / Ascend rate. | m/s | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 (Altitude) | Target Altitude | m | ### MAV_CMD_CONDITION_DISTANCE (114) {#MAV_CMD_CONDITION_DISTANCE} Delay mission state machine until within desired distance of next NAV point. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Distance) | Distance. | min: 0 | m -2 | Empty | | -3 | Empty | | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------- | ------ | ----- | +| 1 (Distance) | Distance. | min: 0 | m | +| 2 | Empty | | +| 3 | Empty | | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_CONDITION_YAW (115) {#MAV_CMD_CONDITION_YAW} Reach a certain target angle. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Angle) | target angle [0-360]. Absolute angles: 0 is north. Relative angle: 0 is initial yaw. Direction set by param3. | min: 0 max: 360 | deg -2 (Angular Speed) | angular speed | min: 0 | deg/s -3 (Direction) | direction: -1: counter clockwise, 0: shortest direction, 1: clockwise | min: -1 max: 1 inc: 1 | -4 (Relative) | Relative offset (MAV_BOOL_FALSE: absolute angle). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ----------------- | ------------------------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Angle) | target angle [0-360]. Absolute angles: 0 is north. Relative angle: 0 is initial yaw. Direction set by param3. | min: 0 max: 360 | deg | +| 2 (Angular Speed) | angular speed | min: 0 | deg/s | +| 3 (Direction) | direction: -1: counter clockwise, 0: shortest direction, 1: clockwise | min: -1 max: 1 inc: 1 | +| 4 (Relative) | Relative offset (MAV_BOOL_FALSE: absolute angle). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_CONDITION_LAST (159) {#MAV_CMD_CONDITION_LAST} NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration -Param (Label) | Description ---- | --- -1 | Empty -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_SET_MODE (176) {#MAV_CMD_DO_SET_MODE} Set system mode. -Param (Label) | Description | Values ---- | --- | --- -1 (Mode) | Mode flags. MAV_MODE values can be used to set some mode flag combinations. | [MAV_MODE_FLAG](#MAV_MODE_FLAG) -2 (Custom Mode) | Custom system-specific mode (see target autopilot specifications for mode information). If MAV_MODE_FLAG_CUSTOM_MODE_ENABLED is set in param1 (mode) this mode is used: otherwise the field is ignored. | -3 (Custom Submode) | Custom sub mode - this is system specific, please refer to the individual autopilot specifications for details. | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | +| 1 (Mode) | Mode flags. MAV_MODE values can be used to set some mode flag combinations. | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | +| 2 (Custom Mode) | Custom system-specific mode (see target autopilot specifications for mode information). If MAV_MODE_FLAG_CUSTOM_MODE_ENABLED is set in param1 (mode) this mode is used: otherwise the field is ignored. | +| 3 (Custom Submode) | Custom sub mode - this is system specific, please refer to the individual autopilot specifications for details. | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_JUMP (177) {#MAV_CMD_DO_JUMP} -Jump to the desired command in the mission list. Repeat this action only the specified number of times - -Param (Label) | Description | Values ---- | --- | --- -1 (Number) | Sequence number | min: 0 inc: 1 -2 (Repeat) | Repeat count | min: 0 inc: 1 -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | +Jump to the desired command in the mission list. Repeat this action only the specified number of times +| Param (Label) | Description | Values | +| ------------- | --------------- | ------------- | +| 1 (Number) | Sequence number | min: 0 inc: 1 | +| 2 (Repeat) | Repeat count | min: 0 inc: 1 | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_CHANGE_SPEED (178) {#MAV_CMD_DO_CHANGE_SPEED} Change speed and/or throttle set points. The value persists until it is overridden or there is a mode change -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Speed Type) | Speed type of value set in param2 (such as airspeed, ground speed, and so on) | [SPEED_TYPE](#SPEED_TYPE) | -2 (Speed) | Speed (-1 indicates no change, -2 indicates return to default vehicle speed) | min: -2 | m/s -3 (Throttle) | Throttle (-1 indicates no change, -2 indicates return to default vehicle throttle value) | min: -2 | % -4 | | | -5 | | | -6 | | | -7 | | | - +| Param (Label) | Description | Values | Units | +| -------------- | ---------------------------------------------------------------------------------------- | ------------------------- | ----- | +| 1 (Speed Type) | Speed type of value set in param2 (such as airspeed, ground speed, and so on) | [SPEED_TYPE](#SPEED_TYPE) | +| 2 (Speed) | Speed (-1 indicates no change, -2 indicates return to default vehicle speed) | min: -2 | m/s | +| 3 (Throttle) | Throttle (-1 indicates no change, -2 indicates return to default vehicle throttle value) | min: -2 | % | +| 4 | | | +| 5 | | | +| 6 | | | +| 7 | | | ### MAV_CMD_DO_SET_HOME (179) {#MAV_CMD_DO_SET_HOME} @@ -7152,93 +6882,87 @@ The home position is the default position that the system will return to and lan The position is set automatically by the system during the takeoff (and may also be set using this command). Note: the current home position may be emitted in a [HOME_POSITION](#HOME_POSITION) message on request (using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE) with param1=242). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Use Current) | Use current location (MAV_BOOL_FALSE: use specified location). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -2 (Roll) | Roll angle (of surface). Range: -180..180 degrees. NAN or 0 means value not set. 0.01 indicates zero roll. | min: -180 max: 180 | deg -3 (Pitch) | Pitch angle (of surface). Range: -90..90 degrees. NAN or 0 means value not set. 0.01 means zero pitch. | min: -90 max: 90 | deg -4 (Yaw) | Yaw angle. NaN to use default heading. Range: -180..180 degrees. | min: -180 max: 180 | deg -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| --------------- | ---------------------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Use Current) | Use current location (MAV_BOOL_FALSE: use specified location). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Roll) | Roll angle (of surface). Range: -180..180 degrees. NAN or 0 means value not set. 0.01 indicates zero roll. | min: -180 max: 180 | deg | +| 3 (Pitch) | Pitch angle (of surface). Range: -90..90 degrees. NAN or 0 means value not set. 0.01 means zero pitch. | min: -90 max: 90 | deg | +| 4 (Yaw) | Yaw angle. NaN to use default heading. Range: -180..180 degrees. | min: -180 max: 180 | deg | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_DO_SET_PARAMETER (180) — [DEP] {#MAV_CMD_DO_SET_PARAMETER} **DEPRECATED:** Replaced By [PARAM_SET](#PARAM_SET) (2024-04) -Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. - -Param (Label) | Description | Values ---- | --- | --- -1 (Number) | Parameter number | min: 0 inc: 1 -2 (Value) | Parameter value | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | +Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. +| Param (Label) | Description | Values | +| ------------- | ---------------- | ------------- | +| 1 (Number) | Parameter number | min: 0 inc: 1 | +| 2 (Value) | Parameter value | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_SET_RELAY (181) {#MAV_CMD_DO_SET_RELAY} Set a relay to a condition. The current value may optionally be reported using [RELAY_STATUS](#RELAY_STATUS). -Param (Label) | Description | Values ---- | --- | --- -1 (Instance) | Relay instance number. | min: 0 inc: 1 -2 (Setting) | Setting. (1=on, 0=off, others possible depending on system hardware) | min: 0 inc: 1 -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------- | ------------- | +| 1 (Instance) | Relay instance number. | min: 0 inc: 1 | +| 2 (Setting) | Setting. (1=on, 0=off, others possible depending on system hardware) | min: 0 inc: 1 | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_REPEAT_RELAY (182) {#MAV_CMD_DO_REPEAT_RELAY} Cycle a relay on and off for a desired number of cycles with a desired period. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Instance) | Relay instance number. | min: 0 inc: 1 | -2 (Count) | Cycle count. | min: 1 inc: 1 | -3 (Time) | Cycle time. | min: 0 | s -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------- | ------------- | ----- | +| 1 (Instance) | Relay instance number. | min: 0 inc: 1 | +| 2 (Count) | Cycle count. | min: 1 inc: 1 | +| 3 (Time) | Cycle time. | min: 0 | s | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_SET_SERVO (183) {#MAV_CMD_DO_SET_SERVO} Set a servo to a desired PWM value. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Instance) | Servo instance number. | min: 0 inc: 1 | -2 (PWM) | Pulse Width Modulation. | min: 0 inc: 1 | us -3 | Empty | | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------------------- | ------------- | ----- | +| 1 (Instance) | Servo instance number. | min: 0 inc: 1 | +| 2 (PWM) | Pulse Width Modulation. | min: 0 inc: 1 | us | +| 3 | Empty | | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_REPEAT_SERVO (184) {#MAV_CMD_DO_REPEAT_SERVO} Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Instance) | Servo instance number. | min: 0 inc: 1 | -2 (PWM) | Pulse Width Modulation. | min: 0 inc: 1 | us -3 (Count) | Cycle count. | min: 1 inc: 1 | -4 (Time) | Cycle time. | min: 0 | s -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------------------- | ------------- | ----- | +| 1 (Instance) | Servo instance number. | min: 0 inc: 1 | +| 2 (PWM) | Pulse Width Modulation. | min: 0 inc: 1 | us | +| 3 (Count) | Cycle count. | min: 1 inc: 1 | +| 4 (Time) | Cycle time. | min: 0 | s | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_FLIGHTTERMINATION (185) {#MAV_CMD_DO_FLIGHTTERMINATION} @@ -7251,46 +6975,43 @@ On multicopters without a parachute it may trigger a crash landing. Support for this command can be tested using the protocol bit: [MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION](#MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION). Support for this command can also be tested by sending the command with param1=0 (< 0.5); the ACK should be either [MAV_RESULT_FAILED](#MAV_RESULT_FAILED) or [MAV_RESULT_UNSUPPORTED](#MAV_RESULT_UNSUPPORTED). -Param (Label) | Description | Values ---- | --- | --- -1 (Terminate) | Flight termination activated if > 0.5. Otherwise not activated and ACK with MAV_RESULT_FAILED. | min: 0 max: 1 inc: 1 -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ---------------------------------------------------------------------------------------------- | -------------------- | +| 1 (Terminate) | Flight termination activated if > 0.5. Otherwise not activated and ACK with MAV_RESULT_FAILED. | min: 0 max: 1 inc: 1 | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_CHANGE_ALTITUDE (186) {#MAV_CMD_DO_CHANGE_ALTITUDE} Change altitude set point. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Altitude) | Altitude. | | m -2 (Frame) | Frame of new altitude. | [MAV_FRAME](#MAV_FRAME) | -3 | Empty | | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------- | ----------------------- | ----- | +| 1 (Altitude) | Altitude. | | m | +| 2 (Frame) | Frame of new altitude. | [MAV_FRAME](#MAV_FRAME) | +| 3 | Empty | | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_SET_ACTUATOR (187) {#MAV_CMD_DO_SET_ACTUATOR} Sets actuators (e.g. servos) to a desired value. The actuator numbers are mapped to specific outputs (e.g. on any MAIN or AUX PWM or UAVCAN) using a flight-stack specific mechanism (i.e. a parameter). -Param (Label) | Description | Values ---- | --- | --- -1 (Actuator 1) | Actuator 1 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 -2 (Actuator 2) | Actuator 2 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 -3 (Actuator 3) | Actuator 3 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 -4 (Actuator 4) | Actuator 4 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 -5 (Actuator 5) | Actuator 5 value.
If sent in COMMAND_LONG: value is scaled from [-1 to 1]. NaN to ignore.
If sent in COMMAND_INT or MISSION_ITEM_INT: value is scaled by 1e7. INT32_MAX to ignore. | -6 (Actuator 6) | Actuator 6 value.
If sent in COMMAND_LONG: value is scaled from [-1 to 1]. NaN to ignore.
If sent in COMMAND_INT or MISSION_ITEM_INT: value is scaled by 1e7. INT32_MAX to ignore. | -7 (Index) | Index of actuator set (i.e if set to 1, Actuator 1 becomes Actuator 7) | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | +| 1 (Actuator 1) | Actuator 1 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 | +| 2 (Actuator 2) | Actuator 2 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 | +| 3 (Actuator 3) | Actuator 3 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 | +| 4 (Actuator 4) | Actuator 4 value, scaled from [-1 to 1]. NaN to ignore. | min: -1 max: 1 | +| 5 (Actuator 5) | Actuator 5 value.
If sent in COMMAND_LONG: value is scaled from [-1 to 1]. NaN to ignore.
If sent in COMMAND_INT or MISSION_ITEM_INT: value is scaled by 1e7. INT32_MAX to ignore. | +| 6 (Actuator 6) | Actuator 6 value.
If sent in COMMAND_LONG: value is scaled from [-1 to 1]. NaN to ignore.
If sent in COMMAND_INT or MISSION_ITEM_INT: value is scaled by 1e7. INT32_MAX to ignore. | +| 7 (Index) | Index of actuator set (i.e if set to 1, Actuator 1 becomes Actuator 7) | min: 0 inc: 1 | ### MAV_CMD_DO_RETURN_PATH_START (188) {#MAV_CMD_DO_RETURN_PATH_START} @@ -7305,22 +7026,20 @@ The Latitude/Longitude/Altitude are optional, and may be set to 0 if not needed. If specified, the item defines the waypoint at which the return segment starts. If sent using as a command, the vehicle will perform a mission landing (using the land segment if defined) or reject the command if mission landings are not supported, or no mission landing is defined. When used as a command any position information in the command is ignored. -Param (Label) | Description | Units ---- | --- | --- -1 | Empty | -2 | Empty | -3 | Empty | -4 | Empty | -5 (Latitude) | Latitudee. 0: not used. | -6 (Longitude) | Longitudee. 0: not used. | -7 (Altitude) | Altitudee. 0: not used. | m - +| Param (Label) | Description | Units | +| ------------- | ------------------------ | ----- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 (Latitude) | Latitudee. 0: not used. | +| 6 (Longitude) | Longitudee. 0: not used. | +| 7 (Altitude) | Altitudee. 0: not used. | m | ### MAV_CMD_DO_LAND_START (189) {#MAV_CMD_DO_LAND_START} Mission item to mark the start of a mission landing pattern, or a command to land with a mission landing pattern. - When used in a mission, this is a marker for the start of a sequence of mission items that represent a landing pattern. It should be followed by a navigation item that defines the first waypoint of the landing sequence. The start marker positional params are used only for selecting what landing pattern to use if several are defined in the mission (the selected pattern will be the one with the marker position that is closest to the vehicle when a landing is commanded). @@ -7329,161 +7048,150 @@ If the marker item position has zero-values for latitude, longitude, and altitud When sent as a command it triggers a landing using a mission landing pattern. The location parameters are not used in this case, and should be set to 0. -Param (Label) | Description | Units ---- | --- | --- -1 | Empty | -2 | Empty | -3 | Empty | -4 | Empty | -5 (Latitude) | Latitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | -6 (Longitude) | Longitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | -7 (Altitude) | Altitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | m - +| Param (Label) | Description | Units | +| ------------- | ---------------------------------------------------------------------------------------------- | ----- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 (Latitude) | Latitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | +| 6 (Longitude) | Longitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | +| 7 (Altitude) | Altitude for landing sequence selection, or 0 (see description). Ignored in commands (set 0). | m | ### MAV_CMD_DO_RALLY_LAND (190) {#MAV_CMD_DO_RALLY_LAND} Mission command to perform a landing from a rally point. -Param (Label) | Description | Units ---- | --- | --- -1 (Altitude) | Break altitude | m -2 (Speed) | Landing speed | m/s -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Units | +| ------------- | -------------- | ----- | +| 1 (Altitude) | Break altitude | m | +| 2 (Speed) | Landing speed | m/s | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_GO_AROUND (191) {#MAV_CMD_DO_GO_AROUND} Mission command to safely abort an autonomous landing. -Param (Label) | Description | Units ---- | --- | --- -1 (Altitude) | Altitude | m -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 1 (Altitude) | Altitude | m | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_REPOSITION (192) {#MAV_CMD_DO_REPOSITION} Reposition the vehicle to a specific WGS84 global position. This command is intended for guided commands (for missions use [MAV_CMD_NAV_WAYPOINT](#MAV_CMD_NAV_WAYPOINT) instead). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Speed) | Ground speed, less than 0 (-1) for default | min: -1 | m/s -2 (Bitmask) | Bitmask of option flags. | [MAV_DO_REPOSITION_FLAGS](#MAV_DO_REPOSITION_FLAGS) | -3 (Radius) | Loiter radius for planes. Positive values only, direction is controlled by Yaw value. A value of zero or NaN is ignored. | | m -4 (Yaw) | Yaw heading (heading reference defined in Bitmask field). NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). For planes indicates loiter direction (0: clockwise, 1: counter clockwise) | | rad -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ----- | +| 1 (Speed) | Ground speed, less than 0 (-1) for default | min: -1 | m/s | +| 2 (Bitmask) | Bitmask of option flags. | [MAV_DO_REPOSITION_FLAGS](#MAV_DO_REPOSITION_FLAGS) | +| 3 (Radius) | Loiter radius for planes. Positive values only, direction is controlled by Yaw value. A value of zero or NaN is ignored. | | m | +| 4 (Yaw) | Yaw heading (heading reference defined in Bitmask field). NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.). For planes indicates loiter direction (0: clockwise, 1: counter clockwise) | | rad | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_DO_PAUSE_CONTINUE (193) {#MAV_CMD_DO_PAUSE_CONTINUE} If in a GPS controlled position mode, hold the current position or continue. -Param (Label) | Description | Values ---- | --- | --- -1 (Continue) | Continue mission (MAV_BOOL_TRUE), Pause current mission or reposition command, hold current position (MAV_BOOL_FALSE). Values not equal to 0 or 1 are invalid. A VTOL capable vehicle should enter hover mode (multicopter and VTOL planes). A plane should loiter with the default loiter radius. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 | Reserved | -6 | Reserved | -7 | Reserved | - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Continue) | Continue mission (MAV_BOOL_TRUE), Pause current mission or reposition command, hold current position (MAV_BOOL_FALSE). Values not equal to 0 or 1 are invalid. A VTOL capable vehicle should enter hover mode (multicopter and VTOL planes). A plane should loiter with the default loiter radius. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 | Reserved | +| 6 | Reserved | +| 7 | Reserved | ### MAV_CMD_DO_SET_REVERSE (194) {#MAV_CMD_DO_SET_REVERSE} Set moving direction to forward or reverse. -Param (Label) | Description | Values ---- | --- | --- -1 (Reverse) | Reverse direction (MAV_BOOL_FALSE: Forward direction). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ---------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Reverse) | Reverse direction (MAV_BOOL_FALSE: Forward direction). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_SET_ROI_LOCATION (195) {#MAV_CMD_DO_SET_ROI_LOCATION} Sets the region of interest (ROI) to a location. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal is not to react to this message. -Param (Label) | Description | Units ---- | --- | --- -1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | -2 | Empty | -3 | Empty | -4 | Empty | -5 (Latitude) | Latitude of ROI location | -6 (Longitude) | Longitude of ROI location | -7 (Altitude) | Altitude of ROI location | m - +| Param (Label) | Description | Units | +| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| 1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 (Latitude) | Latitude of ROI location | +| 6 (Longitude) | Longitude of ROI location | +| 7 (Altitude) | Altitude of ROI location | m | ### MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET (196) {#MAV_CMD_DO_SET_ROI_WPNEXT_OFFSET} Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. -Param (Label) | Description | Units ---- | --- | --- -1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | -2 | Empty | -3 | Empty | -4 | Empty | -5 (Pitch Offset) | Pitch offset from next waypoint, positive pitching up | deg -6 (Roll Offset) | Roll offset from next waypoint, positive rolling to the right | deg -7 (Yaw Offset) | Yaw offset from next waypoint, positive yawing to the right | deg - +| Param (Label) | Description | Units | +| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| 1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 (Pitch Offset) | Pitch offset from next waypoint, positive pitching up | deg | +| 6 (Roll Offset) | Roll offset from next waypoint, positive rolling to the right | deg | +| 7 (Yaw Offset) | Yaw offset from next waypoint, positive yawing to the right | deg | ### MAV_CMD_DO_SET_ROI_NONE (197) {#MAV_CMD_DO_SET_ROI_NONE} Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. After this command the gimbal manager should go back to manual input if available, and otherwise assume a neutral position. -Param (Label) | Description ---- | --- -1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_SET_ROI_SYSID (198) {#MAV_CMD_DO_SET_ROI_SYSID} Mount tracks system with specified system ID. Determination of target vehicle position may be done with [GLOBAL_POSITION_INT](#GLOBAL_POSITION_INT) or any other means. This command can be sent to a gimbal manager but not to a gimbal device. A gimbal device is not to react to this message. -Param (Label) | Description | Values ---- | --- | --- -1 (System ID) | System ID | min: 1 max: 255 inc: 1 -2 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | - +| Param (Label) | Description | Values | +| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (System ID) | System ID | min: 1 max: 255 inc: 1 | +| 2 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | ### MAV_CMD_DO_CONTROL_VIDEO (200) {#MAV_CMD_DO_CONTROL_VIDEO} Control onboard camera system. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (ID) | Camera ID (-1 for all) | min: -1 inc: 1 | -2 (Transmission) | Transmission: 0: disabled, 1: enabled compressed, 2: enabled raw | min: 0 max: 2 inc: 1 | -3 (Interval) | Transmission mode: 0: video stream, >0: single images every n seconds | min: 0 | s -4 (Recording) | Recording: 0: disabled, 1: enabled compressed, 2: enabled raw | min: 0 max: 2 inc: 1 | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ---------------- | --------------------------------------------------------------------- | -------------------- | ----- | +| 1 (ID) | Camera ID (-1 for all) | min: -1 inc: 1 | +| 2 (Transmission) | Transmission: 0: disabled, 1: enabled compressed, 2: enabled raw | min: 0 max: 2 inc: 1 | +| 3 (Interval) | Transmission mode: 0: video stream, >0: single images every n seconds | min: 0 | s | +| 4 (Recording) | Recording: 0: disabled, 1: enabled compressed, 2: enabled raw | min: 0 max: 2 inc: 1 | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_SET_ROI (201) — [SUP] {#MAV_CMD_DO_SET_ROI} @@ -7491,46 +7199,43 @@ Param (Label) | Description | Values | Units Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicle's control system to control the vehicle attitude and the attitude of various sensors such as cameras. -Param (Label) | Description | Values ---- | --- | --- -1 (ROI Mode) | Region of interest mode. | [MAV_ROI](#MAV_ROI) -2 (WP Index) | Waypoint index/ target ID (depends on param 1). | min: 0 inc: 1 -3 (ROI Index) | Region of interest index. (allows a vehicle to manage multiple ROI's) | min: 0 inc: 1 -4 | Empty | -5 | MAV_ROI_WPNEXT: pitch offset from next waypoint, MAV_ROI_LOCATION: latitude | -6 | MAV_ROI_WPNEXT: roll offset from next waypoint, MAV_ROI_LOCATION: longitude | -7 | MAV_ROI_WPNEXT: yaw offset from next waypoint, MAV_ROI_LOCATION: altitude | - +| Param (Label) | Description | Values | +| ------------- | --------------------------------------------------------------------------- | ------------------- | +| 1 (ROI Mode) | Region of interest mode. | [MAV_ROI](#MAV_ROI) | +| 2 (WP Index) | Waypoint index/ target ID (depends on param 1). | min: 0 inc: 1 | +| 3 (ROI Index) | Region of interest index. (allows a vehicle to manage multiple ROI's) | min: 0 inc: 1 | +| 4 | Empty | +| 5 | MAV_ROI_WPNEXT: pitch offset from next waypoint, MAV_ROI_LOCATION: latitude | +| 6 | MAV_ROI_WPNEXT: roll offset from next waypoint, MAV_ROI_LOCATION: longitude | +| 7 | MAV_ROI_WPNEXT: yaw offset from next waypoint, MAV_ROI_LOCATION: altitude | ### MAV_CMD_DO_DIGICAM_CONFIGURE (202) {#MAV_CMD_DO_DIGICAM_CONFIGURE} Configure digital camera. This is a fallback message for systems that have not yet implemented [PARAM_EXT_XXX](#PARAM_EXT_XXX) messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Mode) | Modes: P, TV, AV, M, Etc. | min: 0 inc: 1 | -2 (Shutter Speed) | Shutter speed: Divisor number for one second. | min: 0 inc: 1 | -3 (Aperture) | Aperture: F stop number. | min: 0 | -4 (ISO) | ISO number e.g. 80, 100, 200, Etc. | min: 0 inc: 1 | -5 (Exposure) | Exposure type enumerator. | | -6 (Command Identity) | Command Identity. | | -7 (Engine Cut-off) | Main engine cut-off time before camera trigger. (0 means no cut-off) | min: 0 inc: 1 | ds - +| Param (Label) | Description | Values | Units | +| -------------------- | -------------------------------------------------------------------- | ------------- | ----- | +| 1 (Mode) | Modes: P, TV, AV, M, Etc. | min: 0 inc: 1 | +| 2 (Shutter Speed) | Shutter speed: Divisor number for one second. | min: 0 inc: 1 | +| 3 (Aperture) | Aperture: F stop number. | min: 0 | +| 4 (ISO) | ISO number e.g. 80, 100, 200, Etc. | min: 0 inc: 1 | +| 5 (Exposure) | Exposure type enumerator. | | +| 6 (Command Identity) | Command Identity. | | +| 7 (Engine Cut-off) | Main engine cut-off time before camera trigger. (0 means no cut-off) | min: 0 inc: 1 | ds | ### MAV_CMD_DO_DIGICAM_CONTROL (203) {#MAV_CMD_DO_DIGICAM_CONTROL} Control digital camera. This is a fallback message for systems that have not yet implemented [PARAM_EXT_XXX](#PARAM_EXT_XXX) messages and camera definition files (see https://mavlink.io/en/services/camera_def.html ). -Param (Label) | Description ---- | --- -1 (Session Control) | Session control e.g. show/hide lens -2 (Zoom Absolute) | Zoom's absolute position -3 (Zoom Relative) | Zooming step value to offset zoom from the current position -4 (Focus) | Focus Locking, Unlocking or Re-locking -5 (Shoot Command) | Shooting Command -6 (Command Identity) | Command Identity -7 (Shot ID) | Test shot identifier. If set to 1, image will only be captured, but not counted towards internal frame count. - +| Param (Label) | Description | +| -------------------- | ------------------------------------------------------------------------------------------------------------- | +| 1 (Session Control) | Session control e.g. show/hide lens | +| 2 (Zoom Absolute) | Zoom's absolute position | +| 3 (Zoom Relative) | Zooming step value to offset zoom from the current position | +| 4 (Focus) | Focus Locking, Unlocking or Re-locking | +| 5 (Shoot Command) | Shooting Command | +| 6 (Command Identity) | Command Identity | +| 7 (Shot ID) | Test shot identifier. If set to 1, image will only be captured, but not counted towards internal frame count. | ### MAV_CMD_DO_MOUNT_CONFIGURE (204) — [SUP] {#MAV_CMD_DO_MOUNT_CONFIGURE} @@ -7538,16 +7243,15 @@ Param (Label) | Description Mission command to configure a camera or antenna mount -Param (Label) | Description | Values ---- | --- | --- -1 (Mode) | Mount operation mode | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) -2 (Stabilize Roll) | Stabilize roll (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -3 (Stabilize Pitch) | Stabilize pitch (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -4 (Stabilize Yaw) | Stabilize yaw (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -5 (Roll Input Mode) | Roll input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | -6 (Pitch Input Mode) | Pitch input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | -7 (Yaw Input Mode) | Yaw input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | - +| Param (Label) | Description | Values | +| -------------------- | ------------------------------------------------------------------------------ | --------------------------------- | +| 1 (Mode) | Mount operation mode | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | +| 2 (Stabilize Roll) | Stabilize roll (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 (Stabilize Pitch) | Stabilize pitch (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 4 (Stabilize Yaw) | Stabilize yaw (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 5 (Roll Input Mode) | Roll input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | +| 6 (Pitch Input Mode) | Pitch input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | +| 7 (Yaw Input Mode) | Yaw input (0 = angle body frame, 1 = angular rate, 2 = angle absolute frame) | ### MAV_CMD_DO_MOUNT_CONTROL (205) — [SUP] {#MAV_CMD_DO_MOUNT_CONTROL} @@ -7555,31 +7259,29 @@ Param (Label) | Description | Values Mission command to control a camera or antenna mount -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Pitch) | pitch depending on mount mode (degrees or degrees/second depending on pitch input). | | -2 (Roll) | roll depending on mount mode (degrees or degrees/second depending on roll input). | | -3 (Yaw) | yaw depending on mount mode (degrees or degrees/second depending on yaw input). | | -4 (Altitude) | altitude depending on mount mode. | | m -5 (Latitude) | latitude, set if appropriate mount mode. | | -6 (Longitude) | longitude, set if appropriate mount mode. | | -7 (Mode) | Mount mode. | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | - +| Param (Label) | Description | Values | Units | +| ------------- | ----------------------------------------------------------------------------------- | --------------------------------- | ----- | +| 1 (Pitch) | pitch depending on mount mode (degrees or degrees/second depending on pitch input). | | +| 2 (Roll) | roll depending on mount mode (degrees or degrees/second depending on roll input). | | +| 3 (Yaw) | yaw depending on mount mode (degrees or degrees/second depending on yaw input). | | +| 4 (Altitude) | altitude depending on mount mode. | | m | +| 5 (Latitude) | latitude, set if appropriate mount mode. | | +| 6 (Longitude) | longitude, set if appropriate mount mode. | | +| 7 (Mode) | Mount mode. | [MAV_MOUNT_MODE](#MAV_MOUNT_MODE) | ### MAV_CMD_DO_SET_CAM_TRIGG_DIST (206) {#MAV_CMD_DO_SET_CAM_TRIGG_DIST} Mission command to set camera trigger distance for this flight. The camera is triggered each time this distance is exceeded. This command can also be used to set the shutter integration time for the camera. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Distance) | Camera trigger distance. 0 to stop triggering. | min: 0 | m -2 (Shutter) | Camera shutter integration time. -1 or 0 to ignore | min: -1 inc: 1 | ms -3 (Trigger) | Trigger camera once, immediately (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (Distance) | Camera trigger distance. 0 to stop triggering. | min: 0 | m | +| 2 (Shutter) | Camera shutter integration time. -1 or 0 to ignore | min: -1 inc: 1 | ms | +| 3 (Trigger) | Trigger camera once, immediately (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_FENCE_ENABLE (207) {#MAV_CMD_DO_FENCE_ENABLE} @@ -7589,121 +7291,113 @@ The persistence/lifetime of the setting is undefined. Depending on flight stack implementation it may persist until superseded, or it may revert to a system default at the end of a mission. Flight stacks typically reset the setting to system defaults on reboot. -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | enable? (0=disable, 1=enable, 2=disable_floor_only) | min: 0 max: 2 inc: 1 -2 (Types) | Fence types to enable or disable as a bitmask. 0: field is unused/all fences should be enabled or disabled (for compatibility reasons). Parameter is ignored if param1=2. | [FENCE_TYPE](#FENCE_TYPE) -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | +| 1 (Enable) | enable? (0=disable, 1=enable, 2=disable_floor_only) | min: 0 max: 2 inc: 1 | +| 2 (Types) | Fence types to enable or disable as a bitmask. 0: field is unused/all fences should be enabled or disabled (for compatibility reasons). Parameter is ignored if param1=2. | [FENCE_TYPE](#FENCE_TYPE) | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_PARACHUTE (208) {#MAV_CMD_DO_PARACHUTE} Mission item/command to release a parachute or enable/disable auto release. -Param (Label) | Description | Values ---- | --- | --- -1 (Action) | Action | [PARACHUTE_ACTION](#PARACHUTE_ACTION) -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ----------- | ------------------------------------- | +| 1 (Action) | Action | [PARACHUTE_ACTION](#PARACHUTE_ACTION) | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_MOTOR_TEST (209) {#MAV_CMD_DO_MOTOR_TEST} Command to perform motor test. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Instance) | Motor instance number (from 1 to max number of motors on the vehicle). | min: 1 inc: 1 | -2 (Throttle Type) | Throttle type (whether the Throttle Value in param3 is a percentage, PWM value, etc.) | [MOTOR_TEST_THROTTLE_TYPE](#MOTOR_TEST_THROTTLE_TYPE) | -3 (Throttle) | Throttle value. | | -4 (Timeout) | Timeout between tests that are run in sequence. | min: 0 | s -5 (Motor Count) | Motor count. Number of motors to test in sequence: 0/1=one motor, 2= two motors, etc. The Timeout (param4) is used between tests. | min: 0 inc: 1 | -6 (Test Order) | Motor test order. | [MOTOR_TEST_ORDER](#MOTOR_TEST_ORDER) | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ----------------- | --------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ----- | +| 1 (Instance) | Motor instance number (from 1 to max number of motors on the vehicle). | min: 1 inc: 1 | +| 2 (Throttle Type) | Throttle type (whether the Throttle Value in param3 is a percentage, PWM value, etc.) | [MOTOR_TEST_THROTTLE_TYPE](#MOTOR_TEST_THROTTLE_TYPE) | +| 3 (Throttle) | Throttle value. | | +| 4 (Timeout) | Timeout between tests that are run in sequence. | min: 0 | s | +| 5 (Motor Count) | Motor count. Number of motors to test in sequence: 0/1=one motor, 2= two motors, etc. The Timeout (param4) is used between tests. | min: 0 inc: 1 | +| 6 (Test Order) | Motor test order. | [MOTOR_TEST_ORDER](#MOTOR_TEST_ORDER) | +| 7 | Empty | | ### MAV_CMD_DO_INVERTED_FLIGHT (210) {#MAV_CMD_DO_INVERTED_FLIGHT} Change to/from inverted flight. -Param (Label) | Description | Values ---- | --- | --- -1 (Inverted) | Inverted flight (MAV_BOOL_False: normal flight). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | ---------------------------------------------------------------------------------------- | --------------------- | +| 1 (Inverted) | Inverted flight (MAV_BOOL_False: normal flight). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_GRIPPER (211) {#MAV_CMD_DO_GRIPPER} Mission command to operate a gripper. -Param (Label) | Description | Values ---- | --- | --- -1 (Gripper ID) | Gripper ID. 1-6 for an autopilot connected gripper. In missions this may be set to 1-6 for an autopilot gripper, or the gripper component id for a MAVLink gripper. 0 targets all grippers. | min: 0 inc: 1 -2 (Action) | Gripper action to perform. | [GRIPPER_ACTIONS](#GRIPPER_ACTIONS) -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | +| 1 (Gripper ID) | Gripper ID. 1-6 for an autopilot connected gripper. In missions this may be set to 1-6 for an autopilot gripper, or the gripper component id for a MAVLink gripper. 0 targets all grippers. | min: 0 inc: 1 | +| 2 (Action) | Gripper action to perform. | [GRIPPER_ACTIONS](#GRIPPER_ACTIONS) | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_AUTOTUNE_ENABLE (212) {#MAV_CMD_DO_AUTOTUNE_ENABLE} Enable/disable autotune. -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | Enable autotune (MAV_BOOL_FALSE: disable autotune). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 (Axis) | Specify axes for which autotuning is enabled/disabled. 0 indicates the field is unused (for compatibility reasons). If 0 the autopilot will follow its default behaviour, which is usually to tune all axes. | [AUTOTUNE_AXIS](#AUTOTUNE_AXIS) -3 | Empty. | -4 | Empty. | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------- | +| 1 (Enable) | Enable autotune (MAV_BOOL_FALSE: disable autotune). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Axis) | Specify axes for which autotuning is enabled/disabled. 0 indicates the field is unused (for compatibility reasons). If 0 the autopilot will follow its default behaviour, which is usually to tune all axes. | [AUTOTUNE_AXIS](#AUTOTUNE_AXIS) | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_NAV_SET_YAW_SPEED (213) {#MAV_CMD_NAV_SET_YAW_SPEED} Sets a desired vehicle turn angle and speed change. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Yaw) | Yaw angle to adjust steering by. | | deg -2 (Speed) | Speed. | | m/s -3 (Angle) | Relative final angle (MAV_BOOL_FALSE: Absolute angle). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ------------- | ---------------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Yaw) | Yaw angle to adjust steering by. | | deg | +| 2 (Speed) | Speed. | | m/s | +| 3 (Angle) | Relative final angle (MAV_BOOL_FALSE: Absolute angle). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL (214) {#MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL} Mission command to set camera trigger interval for this flight. If triggering is enabled, the camera is triggered each time this interval expires. This command can also be used to set the shutter integration time for the camera. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Trigger Cycle) | Camera trigger cycle time. -1 or 0 to ignore. | min: -1 inc: 1 | ms -2 (Shutter Integration) | Camera shutter integration time. Should be less than trigger cycle time. -1 or 0 to ignore. | min: -1 inc: 1 | ms -3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | -4 | Empty | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (Trigger Cycle) | Camera trigger cycle time. -1 or 0 to ignore. | min: -1 inc: 1 | ms | +| 2 (Shutter Integration) | Camera shutter integration time. Should be less than trigger cycle time. -1 or 0 to ignore. | min: -1 inc: 1 | ms | +| 3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 4 | Empty | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_MOUNT_CONTROL_QUAT (220) — [SUP] {#MAV_CMD_DO_MOUNT_CONTROL_QUAT} @@ -7711,61 +7405,57 @@ Param (Label) | Description | Values | Units Mission command to control a camera or antenna mount, using a quaternion as reference. -Param (Label) | Description ---- | --- -1 (Q1) | quaternion param q1, w (1 in null-rotation) -2 (Q2) | quaternion param q2, x (0 in null-rotation) -3 (Q3) | quaternion param q3, y (0 in null-rotation) -4 (Q4) | quaternion param q4, z (0 in null-rotation) -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ------------------------------------------- | +| 1 (Q1) | quaternion param q1, w (1 in null-rotation) | +| 2 (Q2) | quaternion param q2, x (0 in null-rotation) | +| 3 (Q3) | quaternion param q3, y (0 in null-rotation) | +| 4 (Q4) | quaternion param q4, z (0 in null-rotation) | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_GUIDED_MASTER (221) {#MAV_CMD_DO_GUIDED_MASTER} set id of master controller -Param (Label) | Description | Values ---- | --- | --- -1 (System ID) | System ID | min: 0 max: 255 inc: 1 -2 (Component ID) | Component ID | min: 0 max: 255 inc: 1 -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ---------------- | ------------ | ---------------------- | +| 1 (System ID) | System ID | min: 0 max: 255 inc: 1 | +| 2 (Component ID) | Component ID | min: 0 max: 255 inc: 1 | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_GUIDED_LIMITS (222) {#MAV_CMD_DO_GUIDED_LIMITS} Set limits for external control -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Timeout) | Timeout - maximum time that external controller will be allowed to control vehicle. 0 means no timeout. | min: 0 | s -2 (Min Altitude) | Altitude (MSL) min - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit. | | m -3 (Max Altitude) | Altitude (MSL) max - if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit. | | m -4 (Horiz. Move Limit) | Horizontal move limit - if vehicle moves more than this distance from its location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal move limit. | min: 0 | m -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ----- | +| 1 (Timeout) | Timeout - maximum time that external controller will be allowed to control vehicle. 0 means no timeout. | min: 0 | s | +| 2 (Min Altitude) | Altitude (MSL) min - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit. | | m | +| 3 (Max Altitude) | Altitude (MSL) max - if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit. | | m | +| 4 (Horiz. Move Limit) | Horizontal move limit - if vehicle moves more than this distance from its location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal move limit. | min: 0 | m | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_ENGINE_CONTROL (223) {#MAV_CMD_DO_ENGINE_CONTROL} Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Start Engine) | Start engine (MAV_BOOL_False: Stop engine). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -2 (Cold Start) | Cold start engine (MAV_BOOL_FALSE: Warm start). Values not equal to 0 or 1 are invalid. Controls use of choke where applicable | [MAV_BOOL](#MAV_BOOL) | -3 (Height Delay) | Height delay. This is for commanding engine start only after the vehicle has gained the specified height. Used in VTOL vehicles during takeoff to start engine after the aircraft is off the ground. Zero for no delay. | min: 0 | m -4 (Options) | A bitmask of options for engine control | [ENGINE_CONTROL_OPTIONS](#ENGINE_CONTROL_OPTIONS) | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | ----- | +| 1 (Start Engine) | Start engine (MAV_BOOL_False: Stop engine). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Cold Start) | Cold start engine (MAV_BOOL_FALSE: Warm start). Values not equal to 0 or 1 are invalid. Controls use of choke where applicable | [MAV_BOOL](#MAV_BOOL) | +| 3 (Height Delay) | Height delay. This is for commanding engine start only after the vehicle has gained the specified height. Used in VTOL vehicles during takeoff to start engine after the aircraft is off the ground. Zero for no delay. | min: 0 | m | +| 4 (Options) | A bitmask of options for engine control | [ENGINE_CONTROL_OPTIONS](#ENGINE_CONTROL_OPTIONS) | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_DO_SET_MISSION_CURRENT (224) {#MAV_CMD_DO_SET_MISSION_CURRENT} @@ -7783,136 +7473,127 @@ Resetting also explicitly changes a mission state of [MISSION_STATE_COMPLETE](#M The command will ACK with [MAV_RESULT_FAILED](#MAV_RESULT_FAILED) if the sequence number is out of range (including if there is no mission item). -Param (Label) | Description | Values ---- | --- | --- -1 (Number) | Mission sequence value to set. -1 for the current mission item (use to reset mission without changing current mission item). | min: -1 inc: 1 -2 (Reset Mission) | Reset mission (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. Resets jump counters to initial values and changes mission state "completed" to be "active" or "paused". | [MAV_BOOL](#MAV_BOOL) -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Number) | Mission sequence value to set. -1 for the current mission item (use to reset mission without changing current mission item). | min: -1 inc: 1 | +| 2 (Reset Mission) | Reset mission (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. Resets jump counters to initial values and changes mission state "completed" to be "active" or "paused". | [MAV_BOOL](#MAV_BOOL) | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_DO_LAST (240) {#MAV_CMD_DO_LAST} NOP - This command is only used to mark the upper limit of the DO commands in the enumeration -Param (Label) | Description ---- | --- -1 | Empty -2 | Empty -3 | Empty -4 | Empty -5 | Empty -6 | Empty -7 | Empty - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Empty | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_PREFLIGHT_CALIBRATION (241) {#MAV_CMD_PREFLIGHT_CALIBRATION} Trigger calibration. This command will be only accepted if in pre-flight mode. Except for Temperature Calibration, only one sensor should be set in a single message and all others should be zero. -Param (Label) | Description | Values ---- | --- | --- -1 (Gyro Temperature) | 1: gyro calibration, 3: gyro temperature calibration | min: 0 max: 3 inc: 1 -2 (Magnetometer) | Magnetometer calibration action. | [PREFLIGHT_CALIBRATION_MAGNETOMETER](#PREFLIGHT_CALIBRATION_MAGNETOMETER) -3 (Ground Pressure) | Ground pressure calibration. Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -4 (Remote Control) | 1: radio RC calibration, 2: RC trim calibration | min: 0 max: 1 inc: 1 -5 (Accelerometer) | Accelerometer calibration action. | [PREFLIGHT_CALIBRATION_ACCELEROMETER](#PREFLIGHT_CALIBRATION_ACCELEROMETER) -6 (Compmot or Airspeed) | 1: APM: compass/motor interference calibration (PX4: airspeed calibration, deprecated), 2: airspeed calibration | min: 0 max: 2 inc: 1 -7 (ESC or Baro) | 1: ESC calibration, 3: barometer temperature calibration | min: 0 max: 3 inc: 1 - +| Param (Label) | Description | Values | +| ----------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| 1 (Gyro Temperature) | 1: gyro calibration, 3: gyro temperature calibration | min: 0 max: 3 inc: 1 | +| 2 (Magnetometer) | Magnetometer calibration action. | [PREFLIGHT_CALIBRATION_MAGNETOMETER](#PREFLIGHT_CALIBRATION_MAGNETOMETER) | +| 3 (Ground Pressure) | Ground pressure calibration. Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 4 (Remote Control) | 1: radio RC calibration, 2: RC trim calibration | min: 0 max: 1 inc: 1 | +| 5 (Accelerometer) | Accelerometer calibration action. | [PREFLIGHT_CALIBRATION_ACCELEROMETER](#PREFLIGHT_CALIBRATION_ACCELEROMETER) | +| 6 (Compmot or Airspeed) | 1: APM: compass/motor interference calibration (PX4: airspeed calibration, deprecated), 2: airspeed calibration | min: 0 max: 2 inc: 1 | +| 7 (ESC or Baro) | 1: ESC calibration, 3: barometer temperature calibration | min: 0 max: 3 inc: 1 | ### MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS (242) {#MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS} Set sensor offsets. This command will be only accepted if in pre-flight mode. -Param (Label) | Description | Values ---- | --- | --- -1 (Sensor Type) | Sensor to adjust the offsets for: 0: gyros, 1: accelerometer, 2: magnetometer, 3: barometer, 4: optical flow, 5: second magnetometer, 6: third magnetometer | min: 0 max: 6 inc: 1 -2 (X Offset) | X axis offset (or generic dimension 1), in the sensor's raw units | -3 (Y Offset) | Y axis offset (or generic dimension 2), in the sensor's raw units | -4 (Z Offset) | Z axis offset (or generic dimension 3), in the sensor's raw units | -5 (4th Dimension) | Generic dimension 4, in the sensor's raw units | -6 (5th Dimension) | Generic dimension 5, in the sensor's raw units | -7 (6th Dimension) | Generic dimension 6, in the sensor's raw units | - +| Param (Label) | Description | Values | +| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | +| 1 (Sensor Type) | Sensor to adjust the offsets for: 0: gyros, 1: accelerometer, 2: magnetometer, 3: barometer, 4: optical flow, 5: second magnetometer, 6: third magnetometer | min: 0 max: 6 inc: 1 | +| 2 (X Offset) | X axis offset (or generic dimension 1), in the sensor's raw units | +| 3 (Y Offset) | Y axis offset (or generic dimension 2), in the sensor's raw units | +| 4 (Z Offset) | Z axis offset (or generic dimension 3), in the sensor's raw units | +| 5 (4th Dimension) | Generic dimension 4, in the sensor's raw units | +| 6 (5th Dimension) | Generic dimension 5, in the sensor's raw units | +| 7 (6th Dimension) | Generic dimension 6, in the sensor's raw units | ### MAV_CMD_PREFLIGHT_UAVCAN (243) {#MAV_CMD_PREFLIGHT_UAVCAN} Trigger UAVCAN configuration (actuator ID assignment and direction mapping). Note that this maps to the legacy UAVCAN v0 function [UAVCAN_ENUMERATE](#UAVCAN_ENUMERATE), which is intended to be executed just once during initial vehicle configuration (it is not a normal pre-flight command and has been poorly named). -Param (Label) | Description ---- | --- -1 (Actuator ID) | 1: Trigger actuator ID assignment and direction mapping. 0: Cancel command. -2 | Reserved -3 | Reserved -4 | Reserved -5 | Reserved -6 | Reserved -7 | Reserved - +| Param (Label) | Description | +| --------------- | --------------------------------------------------------------------------- | +| 1 (Actuator ID) | 1: Trigger actuator ID assignment and direction mapping. 0: Cancel command. | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 | Reserved | +| 6 | Reserved | +| 7 | Reserved | ### MAV_CMD_PREFLIGHT_STORAGE (245) {#MAV_CMD_PREFLIGHT_STORAGE} Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Parameter Storage) | Action to perform on the persistent parameter storage | [PREFLIGHT_STORAGE_PARAMETER_ACTION](#PREFLIGHT_STORAGE_PARAMETER_ACTION) | -2 (Mission Storage) | Action to perform on the persistent mission storage | [PREFLIGHT_STORAGE_MISSION_ACTION](#PREFLIGHT_STORAGE_MISSION_ACTION) | -3 (Logging Rate) | Onboard logging: 0: Ignore, 1: Start default rate logging, -1: Stop logging, > 1: logging rate (e.g. set to 1000 for 1000 Hz logging) | min: -1 inc: 1 | Hz -4 | Reserved | | -5 | Empty | | -6 | Empty | | -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ----- | +| 1 (Parameter Storage) | Action to perform on the persistent parameter storage | [PREFLIGHT_STORAGE_PARAMETER_ACTION](#PREFLIGHT_STORAGE_PARAMETER_ACTION) | +| 2 (Mission Storage) | Action to perform on the persistent mission storage | [PREFLIGHT_STORAGE_MISSION_ACTION](#PREFLIGHT_STORAGE_MISSION_ACTION) | +| 3 (Logging Rate) | Onboard logging: 0: Ignore, 1: Start default rate logging, -1: Stop logging, > 1: logging rate (e.g. set to 1000 for 1000 Hz logging) | min: -1 inc: 1 | Hz | +| 4 | Reserved | | +| 5 | Empty | | +| 6 | Empty | | +| 7 | Empty | | ### MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN (246) {#MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN} Request the reboot or shutdown of system components. -Param (Label) | Description | Values ---- | --- | --- -1 (Autopilot) | Action to take for autopilot. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) -2 (Companion) | Action to take for onboard computer. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) -3 (Component Action) | Action to take for component specified in param4. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) -4 (Component ID) | MAVLink Component ID targeted in param3 (0 for all components). | min: 0 max: 255 inc: 1 -5 | Reserved (set to 0) | -6 (Conditions) | Conditions under which reboot/shutdown is allowed. | [REBOOT_SHUTDOWN_CONDITIONS](#REBOOT_SHUTDOWN_CONDITIONS) -7 | WIP: ID (e.g. camera ID -1 for all IDs) | - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------- | --------------------------------------------------------- | +| 1 (Autopilot) | Action to take for autopilot. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) | +| 2 (Companion) | Action to take for onboard computer. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) | +| 3 (Component Action) | Action to take for component specified in param4. | [REBOOT_SHUTDOWN_ACTION](#REBOOT_SHUTDOWN_ACTION) | +| 4 (Component ID) | MAVLink Component ID targeted in param3 (0 for all components). | min: 0 max: 255 inc: 1 | +| 5 | Reserved (set to 0) | +| 6 (Conditions) | Conditions under which reboot/shutdown is allowed. | [REBOOT_SHUTDOWN_CONDITIONS](#REBOOT_SHUTDOWN_CONDITIONS) | +| 7 | WIP: ID (e.g. camera ID -1 for all IDs) | ### MAV_CMD_OVERRIDE_GOTO (252) {#MAV_CMD_OVERRIDE_GOTO} Override current mission with command to pause mission, pause mission and move to position, continue/resume mission. When param 1 indicates that the mission is paused ([MAV_GOTO_DO_HOLD](#MAV_GOTO_DO_HOLD)), param 2 defines whether it holds in place or moves to another position. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Continue) | MAV_GOTO_DO_HOLD: pause mission and either hold or move to specified position (depending on param2), MAV_GOTO_DO_CONTINUE: resume mission. | [MAV_GOTO](#MAV_GOTO) | -2 (Position) | MAV_GOTO_HOLD_AT_CURRENT_POSITION: hold at current position, MAV_GOTO_HOLD_AT_SPECIFIED_POSITION: hold at specified position. | [MAV_GOTO](#MAV_GOTO) | -3 (Frame) | Coordinate frame of hold point. | [MAV_FRAME](#MAV_FRAME) | -4 (Yaw) | Desired yaw angle. | | deg -5 (Latitude/X) | Latitude/X position. | | -6 (Longitude/Y) | Longitude/Y position. | | -7 (Altitude/Z) | Altitude/Z position. | | - +| Param (Label) | Description | Values | Units | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------- | ----- | +| 1 (Continue) | MAV_GOTO_DO_HOLD: pause mission and either hold or move to specified position (depending on param2), MAV_GOTO_DO_CONTINUE: resume mission. | [MAV_GOTO](#MAV_GOTO) | +| 2 (Position) | MAV_GOTO_HOLD_AT_CURRENT_POSITION: hold at current position, MAV_GOTO_HOLD_AT_SPECIFIED_POSITION: hold at specified position. | [MAV_GOTO](#MAV_GOTO) | +| 3 (Frame) | Coordinate frame of hold point. | [MAV_FRAME](#MAV_FRAME) | +| 4 (Yaw) | Desired yaw angle. | | deg | +| 5 (Latitude/X) | Latitude/X position. | | +| 6 (Longitude/Y) | Longitude/Y position. | | +| 7 (Altitude/Z) | Altitude/Z position. | | ### MAV_CMD_OBLIQUE_SURVEY (260) {#MAV_CMD_OBLIQUE_SURVEY} Mission command to set a Camera Auto Mount Pivoting Oblique Survey (Replaces [CAM_TRIGG_DIST](#CAM_TRIGG_DIST) for this purpose). The camera is triggered each time this distance is exceeded, then the mount moves to the next position. Params 4~6 set-up the angle limits and number of positions for oblique survey, where mount-enabled vehicles automatically roll the camera between shots to emulate an oblique camera setup (providing an increased HFOV). This command can also be used to set the shutter integration time for the camera. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Distance) | Camera trigger distance. 0 to stop triggering. | min: 0 | m -2 (Shutter) | Camera shutter integration time. 0 to ignore | min: 0 inc: 1 | ms -3 (Min Interval) | The minimum interval in which the camera is capable of taking subsequent pictures repeatedly. 0 to ignore. | min: 0 max: 10000 inc: 1 | ms -4 (Positions) | Total number of roll positions at which the camera will capture photos (images captures spread evenly across the limits defined by param5). | min: 2 inc: 1 | -5 (Roll Angle) | Angle limits that the camera can be rolled to left and right of center. | min: 0 | deg -6 (Pitch Angle) | Fixed pitch angle that the camera will hold in oblique mode if the mount is actuated in the pitch axis. | min: -180 max: 180 | deg -7 | Empty | | - +| Param (Label) | Description | Values | Units | +| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | ----- | +| 1 (Distance) | Camera trigger distance. 0 to stop triggering. | min: 0 | m | +| 2 (Shutter) | Camera shutter integration time. 0 to ignore | min: 0 inc: 1 | ms | +| 3 (Min Interval) | The minimum interval in which the camera is capable of taking subsequent pictures repeatedly. 0 to ignore. | min: 0 max: 10000 inc: 1 | ms | +| 4 (Positions) | Total number of roll positions at which the camera will capture photos (images captures spread evenly across the limits defined by param5). | min: 2 inc: 1 | +| 5 (Roll Angle) | Angle limits that the camera can be rolled to left and right of center. | min: 0 | deg | +| 6 (Pitch Angle) | Fixed pitch angle that the camera will hold in oblique mode if the mount is actuated in the pitch axis. | min: -180 max: 180 | deg | +| 7 | Empty | | ### MAV_CMD_DO_SET_STANDARD_MODE (262) {#MAV_CMD_DO_SET_STANDARD_MODE} @@ -7921,66 +7602,61 @@ Enable the specified standard MAVLink mode. If the specified mode is not supported, the vehicle should ACK with [MAV_RESULT_FAILED](#MAV_RESULT_FAILED). See https://mavlink.io/en/services/standard_modes.html -Param (Label) | Description | Values ---- | --- | --- -1 (Standard Mode) | The mode to set. | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) -2 | | -3 | | -4 | | -5 | | -6 | | -7 | | - +| Param (Label) | Description | Values | +| ----------------- | ---------------- | --------------------------------------- | +| 1 (Standard Mode) | The mode to set. | [MAV_STANDARD_MODE](#MAV_STANDARD_MODE) | +| 2 | | +| 3 | | +| 4 | | +| 5 | | +| 6 | | +| 7 | | ### MAV_CMD_MISSION_START (300) {#MAV_CMD_MISSION_START} start running a mission -Param (Label) | Description | Values ---- | --- | --- -1 (First Item) | first_item: the first mission item to run | min: 0 inc: 1 -2 (Last Item) | last_item: the last mission item to run (after this item is run, the mission ends) | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| -------------- | ---------------------------------------------------------------------------------- | ------------- | +| 1 (First Item) | first_item: the first mission item to run | min: 0 inc: 1 | +| 2 (Last Item) | last_item: the last mission item to run (after this item is run, the mission ends) | min: 0 inc: 1 | ### MAV_CMD_ACTUATOR_TEST (310) {#MAV_CMD_ACTUATOR_TEST} Actuator testing command. This is similar to [MAV_CMD_DO_MOTOR_TEST](#MAV_CMD_DO_MOTOR_TEST) but operates on the level of output functions, i.e. it is possible to test Motor1 independent from which output it is configured on. Autopilots must NACK this command with [MAV_RESULT_TEMPORARILY_REJECTED](#MAV_RESULT_TEMPORARILY_REJECTED) while armed. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Value) | Output value: 1 means maximum positive output, 0 to center servos or minimum motor thrust (expected to spin), -1 for maximum negative (if not supported by the motors, i.e. motor is not reversible, smaller than 0 maps to NaN). And NaN maps to disarmed (stop the motors). | min: -1 max: 1 | -2 (Timeout) | Timeout after which the test command expires and the output is restored to the previous value. A timeout has to be set for safety reasons. A timeout of 0 means to restore the previous value immediately. | min: 0 max: 3 | s -3 | | | -4 | | | -5 (Output Function) | Actuator Output function | [ACTUATOR_OUTPUT_FUNCTION](#ACTUATOR_OUTPUT_FUNCTION) | -6 | | | -7 | | | - +| Param (Label) | Description | Values | Units | +| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ----- | +| 1 (Value) | Output value: 1 means maximum positive output, 0 to center servos or minimum motor thrust (expected to spin), -1 for maximum negative (if not supported by the motors, i.e. motor is not reversible, smaller than 0 maps to NaN). And NaN maps to disarmed (stop the motors). | min: -1 max: 1 | +| 2 (Timeout) | Timeout after which the test command expires and the output is restored to the previous value. A timeout has to be set for safety reasons. A timeout of 0 means to restore the previous value immediately. | min: 0 max: 3 | s | +| 3 | | | +| 4 | | | +| 5 (Output Function) | Actuator Output function | [ACTUATOR_OUTPUT_FUNCTION](#ACTUATOR_OUTPUT_FUNCTION) | +| 6 | | | +| 7 | | | ### MAV_CMD_CONFIGURE_ACTUATOR (311) {#MAV_CMD_CONFIGURE_ACTUATOR} Actuator configuration command. -Param (Label) | Description | Values ---- | --- | --- -1 (Configuration) | Actuator configuration action | [ACTUATOR_CONFIGURATION](#ACTUATOR_CONFIGURATION) -2 | | -3 | | -4 | | -5 (Output Function) | Actuator Output function | [ACTUATOR_OUTPUT_FUNCTION](#ACTUATOR_OUTPUT_FUNCTION) -6 | | -7 | | - +| Param (Label) | Description | Values | +| ------------------- | ----------------------------- | ----------------------------------------------------- | +| 1 (Configuration) | Actuator configuration action | [ACTUATOR_CONFIGURATION](#ACTUATOR_CONFIGURATION) | +| 2 | | +| 3 | | +| 4 | | +| 5 (Output Function) | Actuator Output function | [ACTUATOR_OUTPUT_FUNCTION](#ACTUATOR_OUTPUT_FUNCTION) | +| 6 | | +| 7 | | ### MAV_CMD_COMPONENT_ARM_DISARM (400) {#MAV_CMD_COMPONENT_ARM_DISARM} Arms / Disarms a component -Param (Label) | Description | Values ---- | --- | --- -1 (Arm) | Arm (MAV_BOOL_FALSE: disarm). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 (Force) | 0: arm-disarm unless prevented by safety checks (i.e. when landed), 21196: force arming/disarming (e.g. allow arming to override preflight checks and disarming in flight) | min: 0 max: 21196 inc: 21196 - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- | +| 1 (Arm) | Arm (MAV_BOOL_FALSE: disarm). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Force) | 0: arm-disarm unless prevented by safety checks (i.e. when landed), 21196: force arming/disarming (e.g. allow arming to override preflight checks and disarming in flight) | min: 0 max: 21196 inc: 21196 | ### MAV_CMD_RUN_PREARM_CHECKS (401) {#MAV_CMD_RUN_PREARM_CHECKS} @@ -7991,30 +7667,27 @@ This command should return [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED) if it wil The results of the checks are usually then reported in [SYS_STATUS](#SYS_STATUS) messages (this is system-specific). The command should return [MAV_RESULT_TEMPORARILY_REJECTED](#MAV_RESULT_TEMPORARILY_REJECTED) if the system is already armed. -Param (Label) | Description ---- | --- - +| Param (Label) | Description | +| ------------- | ----------- | ### MAV_CMD_ILLUMINATOR_ON_OFF (405) {#MAV_CMD_ILLUMINATOR_ON_OFF} Turns illuminators ON/OFF. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | Illuminators on/off (MAV_BOOL_TRUE: illuminators on). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) - +| Param (Label) | Description | Values | +| ------------- | --------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Enable) | Illuminators on/off (MAV_BOOL_TRUE: illuminators on). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | ### MAV_CMD_DO_ILLUMINATOR_CONFIGURE (406) {#MAV_CMD_DO_ILLUMINATOR_CONFIGURE} Configures illuminator settings. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Mode) | Mode | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | -2 (Brightness) | 0%: Off, 100%: Max Brightness | min: 0 max: 100 | % -3 (Strobe Period) | Strobe period in seconds where 0 means strobing is not used | min: 0 | s -4 (Strobe Duty) | Strobe duty cycle where 100% means it is on constantly and 0 means strobing is not used | min: 0 max: 100 | % - +| Param (Label) | Description | Values | Units | +| ----------------- | --------------------------------------------------------------------------------------- | ------------------------------------- | ----- | +| 1 (Mode) | Mode | [ILLUMINATOR_MODE](#ILLUMINATOR_MODE) | +| 2 (Brightness) | 0%: Off, 100%: Max Brightness | min: 0 max: 100 | % | +| 3 (Strobe Period) | Strobe period in seconds where 0 means strobing is not used | min: 0 | s | +| 4 (Strobe Duty) | Strobe duty cycle where 100% means it is on constantly and 0 means strobing is not used | min: 0 max: 100 | % | ### MAV_CMD_GET_HOME_POSITION (410) — [SUP] {#MAV_CMD_GET_HOME_POSITION} @@ -8024,37 +7697,34 @@ Request the home position from the vehicle. The vehicle will ACK the command and emit the [HOME_POSITION](#HOME_POSITION) message. -Param (Label) | Description ---- | --- -1 | Reserved -2 | Reserved -3 | Reserved -4 | Reserved -5 | Reserved -6 | Reserved -7 | Reserved - +| Param (Label) | Description | +| ------------- | ----------- | +| 1 | Reserved | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 | Reserved | +| 6 | Reserved | +| 7 | Reserved | ### MAV_CMD_INJECT_FAILURE (420) {#MAV_CMD_INJECT_FAILURE} Inject artificial failure for testing purposes. Note that autopilots should implement an additional protection before accepting this command such as a specific param setting. -Param (Label) | Description | Values ---- | --- | --- -1 (Failure unit) | The unit which is affected by the failure. | [FAILURE_UNIT](#FAILURE_UNIT) -2 (Failure type) | The type how the failure manifests itself. | [FAILURE_TYPE](#FAILURE_TYPE) -3 (Instance) | Instance affected by failure (0 to signal all). | - +| Param (Label) | Description | Values | +| ---------------- | ----------------------------------------------- | ----------------------------- | +| 1 (Failure unit) | The unit which is affected by the failure. | [FAILURE_UNIT](#FAILURE_UNIT) | +| 2 (Failure type) | The type how the failure manifests itself. | [FAILURE_TYPE](#FAILURE_TYPE) | +| 3 (Instance) | Instance affected by failure (0 to signal all). | ### MAV_CMD_START_RX_PAIR (500) {#MAV_CMD_START_RX_PAIR} Starts receiver pairing. -Param (Label) | Description | Values ---- | --- | --- -1 (RC Type) | RC type. | [RC_TYPE](#RC_TYPE) -2 (RC Sub Type) | RC sub type. | [RC_SUB_TYPE](#RC_SUB_TYPE) - +| Param (Label) | Description | Values | +| --------------- | ------------ | --------------------------- | +| 1 (RC Type) | RC type. | [RC_TYPE](#RC_TYPE) | +| 2 (RC Sub Type) | RC sub type. | [RC_SUB_TYPE](#RC_SUB_TYPE) | ### MAV_CMD_GET_MESSAGE_INTERVAL (510) — [SUP] {#MAV_CMD_GET_MESSAGE_INTERVAL} @@ -8063,40 +7733,37 @@ Param (Label) | Description | Values Request the interval between messages for a particular MAVLink message ID. The receiver should ACK the command and then emit its response in a [MESSAGE_INTERVAL](#MESSAGE_INTERVAL) message. -Param (Label) | Description | Values ---- | --- | --- -1 (Message ID) | The MAVLink message ID | min: 0 max: 16777215 inc: 1 - +| Param (Label) | Description | Values | +| -------------- | ---------------------- | --------------------------- | +| 1 (Message ID) | The MAVLink message ID | min: 0 max: 16777215 inc: 1 | ### MAV_CMD_SET_MESSAGE_INTERVAL (511) {#MAV_CMD_SET_MESSAGE_INTERVAL} Set the interval between messages for a particular MAVLink message ID. This interface replaces [REQUEST_DATA_STREAM](#REQUEST_DATA_STREAM). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Message ID) | The MAVLink message ID | min: 0 max: 16777215 inc: 1 | -2 (Interval) | The interval between two messages. -1: disable. 0: request default rate (which may be zero). | min: -1 inc: 1 | us -3 (Req Param 3) | Use for index ID, if required. Otherwise, the use of this parameter (if any) must be defined in the requested message. By default assumed not used (0). When used as an index ID, 0 means "all instances", "1" means the first instance in the sequence (the emitted message will have an id of 0 if message ids are 0-indexed, or 1 if index numbers start from one). | | -4 (Req Param 4) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | | -5 (Req Param 5) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0/NaN). | | -6 (Req Param 6) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0/NaN). | | -7 (Response Target) | Target address of message stream (if message has target address fields). 0: Flight-stack default (recommended), 1: address of requester, 2: broadcast. | min: 0 max: 2 inc: 1 | - +| Param (Label) | Description | Values | Units | +| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- | ----- | +| 1 (Message ID) | The MAVLink message ID | min: 0 max: 16777215 inc: 1 | +| 2 (Interval) | The interval between two messages. -1: disable. 0: request default rate (which may be zero). | min: -1 inc: 1 | us | +| 3 (Req Param 3) | Use for index ID, if required. Otherwise, the use of this parameter (if any) must be defined in the requested message. By default assumed not used (0). When used as an index ID, 0 means "all instances", "1" means the first instance in the sequence (the emitted message will have an id of 0 if message ids are 0-indexed, or 1 if index numbers start from one). | | +| 4 (Req Param 4) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | | +| 5 (Req Param 5) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0/NaN). | | +| 6 (Req Param 6) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0/NaN). | | +| 7 (Response Target) | Target address of message stream (if message has target address fields). 0: Flight-stack default (recommended), 1: address of requester, 2: broadcast. | min: 0 max: 2 inc: 1 | ### MAV_CMD_REQUEST_MESSAGE (512) {#MAV_CMD_REQUEST_MESSAGE} Request the target system(s) emit a single instance of a specified message (i.e. a "one-shot" version of [MAV_CMD_SET_MESSAGE_INTERVAL](#MAV_CMD_SET_MESSAGE_INTERVAL)). -Param (Label) | Description | Values ---- | --- | --- -1 (Message ID) | The MAVLink message ID of the requested message. | min: 0 max: 16777215 inc: 1 -2 (Req Param 1) | Use for index ID, if required. Otherwise, the use of this parameter (if any) must be defined in the requested message. By default assumed not used (0). | -3 (Req Param 2) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | -4 (Req Param 3) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | -5 (Req Param 4) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | -6 (Req Param 5) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | -7 (Response Target) | Target address for requested message (if message has target address fields). 0: Flight-stack default, 1: address of requester, 2: broadcast. | min: 0 max: 2 inc: 1 - +| Param (Label) | Description | Values | +| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- | +| 1 (Message ID) | The MAVLink message ID of the requested message. | min: 0 max: 16777215 inc: 1 | +| 2 (Req Param 1) | Use for index ID, if required. Otherwise, the use of this parameter (if any) must be defined in the requested message. By default assumed not used (0). | +| 3 (Req Param 2) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | +| 4 (Req Param 3) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | +| 5 (Req Param 4) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | +| 6 (Req Param 5) | The use of this parameter (if any), must be defined in the requested message. By default assumed not used (0). | +| 7 (Response Target) | Target address for requested message (if message has target address fields). 0: Flight-stack default, 1: address of requester, 2: broadcast. | min: 0 max: 2 inc: 1 | ### MAV_CMD_REQUEST_PROTOCOL_VERSION (519) — [DEP] {#MAV_CMD_REQUEST_PROTOCOL_VERSION} @@ -8104,11 +7771,10 @@ Param (Label) | Description | Values Request MAVLink protocol version compatibility. All receivers should ACK the command and then emit their capabilities in an [PROTOCOL_VERSION](#PROTOCOL_VERSION) message -Param (Label) | Description | Values ---- | --- | --- -1 (Protocol) | Request supported protocol versions by all nodes on the network (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------------------------------------ | --------------------- | +| 1 (Protocol) | Request supported protocol versions by all nodes on the network (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES (520) — [SUP] {#MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES} @@ -8116,11 +7782,10 @@ Param (Label) | Description | Values Request autopilot capabilities. The receiver should ACK the command and then emit its capabilities in an [AUTOPILOT_VERSION](#AUTOPILOT_VERSION) message -Param (Label) | Description | Values ---- | --- | --- -1 (Version) | Request autopilot version (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ------------- | ---------------------------------------------------------------------------------- | --------------------- | +| 1 (Version) | Request autopilot version (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_CAMERA_INFORMATION (521) — [SUP] {#MAV_CMD_REQUEST_CAMERA_INFORMATION} @@ -8128,11 +7793,10 @@ Param (Label) | Description | Values Request camera information ([CAMERA_INFORMATION](#CAMERA_INFORMATION)). -Param (Label) | Description | Values ---- | --- | --- -1 (Capabilities) | Request camera capabilities (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ---------------- | ------------------------------------------------------------------------------------ | --------------------- | +| 1 (Capabilities) | Request camera capabilities (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_CAMERA_SETTINGS (522) — [SUP] {#MAV_CMD_REQUEST_CAMERA_SETTINGS} @@ -8140,11 +7804,10 @@ Param (Label) | Description | Values Request camera settings ([CAMERA_SETTINGS](#CAMERA_SETTINGS)). -Param (Label) | Description | Values ---- | --- | --- -1 (Settings) | Request camera settings (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------------------- | --------------------- | +| 1 (Settings) | Request camera settings (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_STORAGE_INFORMATION (525) — [SUP] {#MAV_CMD_REQUEST_STORAGE_INFORMATION} @@ -8152,24 +7815,22 @@ Param (Label) | Description | Values Request storage information ([STORAGE_INFORMATION](#STORAGE_INFORMATION)). Use the command's target_component to target a specific component's storage. -Param (Label) | Description | Values ---- | --- | --- -1 (Storage ID) | Storage ID (0 for all, 1 for first, 2 for second, etc.) | min: 0 inc: 1 -2 (Information) | Request storage information (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -3 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| --------------- | ------------------------------------------------------------------------------------ | --------------------- | +| 1 (Storage ID) | Storage ID (0 for all, 1 for first, 2 for second, etc.) | min: 0 inc: 1 | +| 2 (Information) | Request storage information (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 | Reserved (all remaining params) | ### MAV_CMD_STORAGE_FORMAT (526) {#MAV_CMD_STORAGE_FORMAT} Format a storage medium. Once format is complete, a [STORAGE_INFORMATION](#STORAGE_INFORMATION) message is sent. Use the command's target_component to target a specific component's storage. -Param (Label) | Description | Values ---- | --- | --- -1 (Storage ID) | Storage ID (1 for first, 2 for second, etc.) | min: 0 inc: 1 -2 (Format) | Format storage (and reset image log). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -3 (Reset Image Log) | Reset Image Log (without formatting storage medium). This will reset CAMERA_CAPTURE_STATUS.image_count and CAMERA_IMAGE_CAPTURED.image_index. Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -4 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Storage ID) | Storage ID (1 for first, 2 for second, etc.) | min: 0 inc: 1 | +| 2 (Format) | Format storage (and reset image log). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 (Reset Image Log) | Reset Image Log (without formatting storage medium). This will reset CAMERA_CAPTURE_STATUS.image_count and CAMERA_IMAGE_CAPTURED.image_index. Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 4 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS (527) — [SUP] {#MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS} @@ -8177,11 +7838,10 @@ Param (Label) | Description | Values Request camera capture status ([CAMERA_CAPTURE_STATUS](#CAMERA_CAPTURE_STATUS)) -Param (Label) | Description | Values ---- | --- | --- -1 (Capture Status) | Request camera capture status (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ------------------ | -------------------------------------------------------------------------------------- | --------------------- | +| 1 (Capture Status) | Request camera capture status (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_REQUEST_FLIGHT_INFORMATION (528) — [SUP] {#MAV_CMD_REQUEST_FLIGHT_INFORMATION} @@ -8189,58 +7849,53 @@ Param (Label) | Description | Values Request flight information ([FLIGHT_INFORMATION](#FLIGHT_INFORMATION)) -Param (Label) | Description | Values ---- | --- | --- -1 (Flight Information) | Request flight information (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Reserved (all remaining params) | - +| Param (Label) | Description | Values | +| ---------------------- | ----------------------------------------------------------------------------------- | --------------------- | +| 1 (Flight Information) | Request flight information (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Reserved (all remaining params) | ### MAV_CMD_RESET_CAMERA_SETTINGS (529) {#MAV_CMD_RESET_CAMERA_SETTINGS} Reset all camera settings to Factory Default -Param (Label) | Description | Values ---- | --- | --- -1 (Reset) | Reset all settings (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Reset) | Reset all settings (MAV_BOOL_TRUE). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_SET_CAMERA_MODE (530) {#MAV_CMD_SET_CAMERA_MODE} Set camera running mode. Use NaN for reserved values. GCS will send a [MAV_CMD_REQUEST_VIDEO_STREAM_STATUS](#MAV_CMD_REQUEST_VIDEO_STREAM_STATUS) command after a mode change if the camera supports video streaming. -Param (Label) | Description | Values ---- | --- | --- -1 (id) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 -2 (Camera Mode) | Camera mode | [CAMERA_MODE](#CAMERA_MODE) -3 | | -4 | | -7 | | - +| Param (Label) | Description | Values | +| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- | +| 1 (id) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 2 (Camera Mode) | Camera mode | [CAMERA_MODE](#CAMERA_MODE) | +| 3 | | +| 4 | | +| 7 | | ### MAV_CMD_SET_CAMERA_ZOOM (531) {#MAV_CMD_SET_CAMERA_ZOOM} Set camera zoom. Camera must respond with a [CAMERA_SETTINGS](#CAMERA_SETTINGS) message (on success). -Param (Label) | Description | Values ---- | --- | --- -1 (Zoom Type) | Zoom type | [CAMERA_ZOOM_TYPE](#CAMERA_ZOOM_TYPE) -2 (Zoom Value) | Zoom value. The range of valid values depend on the zoom type. | -3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 -4 | | - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | +| 1 (Zoom Type) | Zoom type | [CAMERA_ZOOM_TYPE](#CAMERA_ZOOM_TYPE) | +| 2 (Zoom Value) | Zoom value. The range of valid values depend on the zoom type. | +| 3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 4 | | ### MAV_CMD_SET_CAMERA_FOCUS (532) {#MAV_CMD_SET_CAMERA_FOCUS} Set camera focus. Camera must respond with a [CAMERA_SETTINGS](#CAMERA_SETTINGS) message (on success). -Param (Label) | Description | Values ---- | --- | --- -1 (Focus Type) | Focus type | [SET_FOCUS_TYPE](#SET_FOCUS_TYPE) -2 (Focus Value) | Focus value | -3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 -4 | | - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | +| 1 (Focus Type) | Focus type | [SET_FOCUS_TYPE](#SET_FOCUS_TYPE) | +| 2 (Focus Value) | Focus value | +| 3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 4 | | ### MAV_CMD_SET_STORAGE_USAGE (533) {#MAV_CMD_SET_STORAGE_USAGE} @@ -8251,74 +7906,67 @@ If no flag is set the system should use its default storage. A target system can choose to always use default storage, in which case it should ACK the command with [MAV_RESULT_UNSUPPORTED](#MAV_RESULT_UNSUPPORTED). A target system can choose to not allow a particular storage to be set as preferred storage, in which case it should ACK the command with [MAV_RESULT_DENIED](#MAV_RESULT_DENIED). -Param (Label) | Description | Values ---- | --- | --- -1 (Storage ID) | Storage ID (1 for first, 2 for second, etc.) | min: 0 inc: 1 -2 (Usage) | Usage flags | [STORAGE_USAGE_FLAG](#STORAGE_USAGE_FLAG) - +| Param (Label) | Description | Values | +| -------------- | -------------------------------------------- | ----------------------------------------- | +| 1 (Storage ID) | Storage ID (1 for first, 2 for second, etc.) | min: 0 inc: 1 | +| 2 (Usage) | Usage flags | [STORAGE_USAGE_FLAG](#STORAGE_USAGE_FLAG) | ### MAV_CMD_SET_CAMERA_SOURCE (534) {#MAV_CMD_SET_CAMERA_SOURCE} Set camera source. Changes the camera's active sources on cameras with multiple image sensors. -Param (Label) | Description | Values ---- | --- | --- -1 (device id) | Component Id of camera to address or 1-6 for non-MAVLink cameras, 0 for all cameras. | -2 (primary source) | Primary Source | [CAMERA_SOURCE](#CAMERA_SOURCE) -3 (secondary source) | Secondary Source. If non-zero the second source will be displayed as picture-in-picture. | [CAMERA_SOURCE](#CAMERA_SOURCE) - +| Param (Label) | Description | Values | +| -------------------- | ---------------------------------------------------------------------------------------- | ------------------------------- | +| 1 (device id) | Component Id of camera to address or 1-6 for non-MAVLink cameras, 0 for all cameras. | +| 2 (primary source) | Primary Source | [CAMERA_SOURCE](#CAMERA_SOURCE) | +| 3 (secondary source) | Secondary Source. If non-zero the second source will be displayed as picture-in-picture. | [CAMERA_SOURCE](#CAMERA_SOURCE) | ### MAV_CMD_JUMP_TAG (600) {#MAV_CMD_JUMP_TAG} Tagged jump target. Can be jumped to with [MAV_CMD_DO_JUMP_TAG](#MAV_CMD_DO_JUMP_TAG). -Param (Label) | Description | Values ---- | --- | --- -1 (Tag) | Tag. | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | ----------- | ------------- | +| 1 (Tag) | Tag. | min: 0 inc: 1 | ### MAV_CMD_DO_JUMP_TAG (601) {#MAV_CMD_DO_JUMP_TAG} Jump to the matching tag in the mission list. Repeat this action for the specified number of times. A mission should contain a single matching tag for each jump. If this is not the case then a jump to a missing tag should complete the mission, and a jump where there are multiple matching tags should always select the one with the lowest mission sequence number. -Param (Label) | Description | Values ---- | --- | --- -1 (Tag) | Target tag to jump to. | min: 0 inc: 1 -2 (Repeat) | Repeat count. | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | ---------------------- | ------------- | +| 1 (Tag) | Target tag to jump to. | min: 0 inc: 1 | +| 2 (Repeat) | Repeat count. | min: 0 inc: 1 | ### MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW (1000) {#MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW} Set gimbal manager pitch/yaw setpoints (low rate command). It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. Note: only the gimbal manager will react to this command - it will be ignored by a gimbal device. Use [GIMBAL_MANAGER_SET_PITCHYAW](#GIMBAL_MANAGER_SET_PITCHYAW) if you need to stream pitch/yaw setpoints at higher rate. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Pitch angle) | Pitch angle (positive to pitch up, relative to vehicle for FOLLOW mode, relative to world horizon for LOCK mode). | min: -180 max: 180 | deg -2 (Yaw angle) | Yaw angle (positive to yaw to the right, relative to vehicle for FOLLOW mode, absolute to North for LOCK mode). | min: -180 max: 180 | deg -3 (Pitch rate) | Pitch rate (positive to pitch up). | | deg/s -4 (Yaw rate) | Yaw rate (positive to yaw to the right). | | deg/s -5 (Gimbal manager flags) | Gimbal manager flags to use. | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | -7 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | | - +| Param (Label) | Description | Values | Units | +| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- | ----- | +| 1 (Pitch angle) | Pitch angle (positive to pitch up, relative to vehicle for FOLLOW mode, relative to world horizon for LOCK mode). | min: -180 max: 180 | deg | +| 2 (Yaw angle) | Yaw angle (positive to yaw to the right, relative to vehicle for FOLLOW mode, absolute to North for LOCK mode). | min: -180 max: 180 | deg | +| 3 (Pitch rate) | Pitch rate (positive to pitch up). | | deg/s | +| 4 (Yaw rate) | Yaw rate (positive to yaw to the right). | | deg/s | +| 5 (Gimbal manager flags) | Gimbal manager flags to use. | [GIMBAL_MANAGER_FLAGS](#GIMBAL_MANAGER_FLAGS) | +| 7 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | | ### MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE (1001) {#MAV_CMD_DO_GIMBAL_MANAGER_CONFIGURE} Gimbal configuration to set which sysid/compid is in primary and secondary control. -Param (Label) | Description ---- | --- -1 (sysid primary control) | Sysid for primary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). -2 (compid primary control) | Compid for primary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). -3 (sysid secondary control) | Sysid for secondary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). -4 (compid secondary control) | Compid for secondary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). -7 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). - +| Param (Label) | Description | +| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 (sysid primary control) | Sysid for primary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). | +| 2 (compid primary control) | Compid for primary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). | +| 3 (sysid secondary control) | Sysid for secondary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). | +| 4 (compid secondary control) | Compid for secondary control (0: no one in control, -1: leave unchanged, -2: set itself in control (for missions where the own sysid is still unknown), -3: remove control if currently in control). | +| 7 (Gimbal device ID) | Component ID of gimbal device to address (or 1-6 for non-MAVLink gimbal), 0 for all gimbal device components. Send command multiple times for more than one gimbal (but not all gimbals). | ### MAV_CMD_IMAGE_START_CAPTURE (2000) {#MAV_CMD_IMAGE_START_CAPTURE} Start image capture sequence. [CAMERA_IMAGE_CAPTURED](#CAMERA_IMAGE_CAPTURED) must be emitted after each capture. - Param1 (id) may be used to specify the target camera: 0: all cameras, 1 to 6: autopilot-connected cameras, 7-255: MAVLink camera component ID. It is needed in order to target specific cameras connected to the autopilot, or specific sensors in a multi-sensor camera (neither of which have a distinct MAVLink component ID). It is also needed to specify the target camera in missions. @@ -8331,22 +7979,20 @@ If addressed specifically to an autopilot: param1 should be used in the same way If addressed to a MAVLink camera, param 1 can be used to address all cameras (0), or to separately address 1 to 7 individual sensors. Other values should be NACKed with [MAV_RESULT_DENIED](#MAV_RESULT_DENIED). If the command is broadcast (target_component is 0) then param 1 should be set to 0 (any other value should be NACKED with [MAV_RESULT_DENIED](#MAV_RESULT_DENIED)). An autopilot would trigger any local cameras and forward the command to all channels. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | -2 (Interval) | Desired elapsed time between two consecutive pictures (in seconds). Minimum values depend on hardware (typically greater than 2 seconds). | min: 0 | s -3 (Total Images) | Total number of images to capture. 0 to capture forever/until MAV_CMD_IMAGE_STOP_CAPTURE. | min: 0 inc: 1 | -4 (Sequence Number) | Capture sequence number starting from 1. This is only valid for single-capture (param3 == 1), otherwise set to 0. Increment the capture ID for each capture command to prevent double captures when a command is re-transmitted. | min: 1 inc: 1 | -5 | | | -6 | | | -7 | | | - +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 2 (Interval) | Desired elapsed time between two consecutive pictures (in seconds). Minimum values depend on hardware (typically greater than 2 seconds). | min: 0 | s | +| 3 (Total Images) | Total number of images to capture. 0 to capture forever/until MAV_CMD_IMAGE_STOP_CAPTURE. | min: 0 inc: 1 | +| 4 (Sequence Number) | Capture sequence number starting from 1. This is only valid for single-capture (param3 == 1), otherwise set to 0. Increment the capture ID for each capture command to prevent double captures when a command is re-transmitted. | min: 1 inc: 1 | +| 5 | | | +| 6 | | | +| 7 | | | ### MAV_CMD_IMAGE_STOP_CAPTURE (2001) {#MAV_CMD_IMAGE_STOP_CAPTURE} Stop image capture sequence. - Param1 (id) may be used to specify the target camera: 0: all cameras, 1 to 6: autopilot-connected cameras, 7-255: MAVLink camera component ID. It is needed in order to target specific cameras connected to the autopilot, or specific sensors in a multi-sensor camera (neither of which have a distinct MAVLink component ID). It is also needed to specify the target camera in missions. @@ -8359,16 +8005,15 @@ If addressed specifically to an autopilot: param1 should be used in the same way If addressed to a MAVLink camera, param1 can be used to address all cameras (0), or to separately address 1 to 7 individual sensors. Other values should be NACKed with [MAV_RESULT_DENIED](#MAV_RESULT_DENIED). If the command is broadcast (target_component is 0) then param 1 should be set to 0 (any other value should be NACKED with [MAV_RESULT_DENIED](#MAV_RESULT_DENIED)). An autopilot would trigger any local cameras and forward the command to all channels. -Param (Label) | Description | Values ---- | --- | --- -1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 -2 | | -3 | | -4 | | -5 | | -6 | | -7 | | - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 2 | | +| 3 | | +| 4 | | +| 5 | | +| 6 | | +| 7 | | ### MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE (2002) — [SUP] {#MAV_CMD_REQUEST_CAMERA_IMAGE_CAPTURE} @@ -8376,112 +8021,103 @@ Param (Label) | Description | Values Re-request a [CAMERA_IMAGE_CAPTURED](#CAMERA_IMAGE_CAPTURED) message. -Param (Label) | Description | Values ---- | --- | --- -1 (Number) | Sequence number for missing CAMERA_IMAGE_CAPTURED message | min: 0 inc: 1 -2 | | -3 | | -4 | | -5 | | -6 | | -7 | | - +| Param (Label) | Description | Values | +| ------------- | --------------------------------------------------------- | ------------- | +| 1 (Number) | Sequence number for missing CAMERA_IMAGE_CAPTURED message | min: 0 inc: 1 | +| 2 | | +| 3 | | +| 4 | | +| 5 | | +| 6 | | +| 7 | | ### MAV_CMD_DO_TRIGGER_CONTROL (2003) {#MAV_CMD_DO_TRIGGER_CONTROL} Enable or disable on-board camera triggering system. -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | Trigger enable/disable (0 for disable, 1 for start), -1 to ignore | min: -1 max: 1 inc: 1 -2 (Reset) | 1 to reset the trigger sequence, -1 or 0 to ignore | min: -1 max: 1 inc: 1 -3 (Pause) | 1 to pause triggering, but without switching the camera off or retracting it. -1 to ignore | min: -1 max: 1 inc: 2 -4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Enable) | Trigger enable/disable (0 for disable, 1 for start), -1 to ignore | min: -1 max: 1 inc: 1 | +| 2 (Reset) | 1 to reset the trigger sequence, -1 or 0 to ignore | min: -1 max: 1 inc: 1 | +| 3 (Pause) | 1 to pause triggering, but without switching the camera off or retracting it. -1 to ignore | min: -1 max: 1 inc: 2 | +| 4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_CAMERA_TRACK_POINT (2004) {#MAV_CMD_CAMERA_TRACK_POINT} If the camera supports point visual tracking ([CAMERA_CAP_FLAGS_HAS_TRACKING_POINT](#CAMERA_CAP_FLAGS_HAS_TRACKING_POINT) is set), this command allows to initiate the tracking. -Param (Label) | Description | Values ---- | --- | --- -1 (Point x) | Point to track x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 -2 (Point y) | Point to track y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 -3 (Radius) | Point radius (normalized 0..1, 0 is one pixel, 1 is full image width). | min: 0 max: 1 -4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Point x) | Point to track x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 | +| 2 (Point y) | Point to track y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 | +| 3 (Radius) | Point radius (normalized 0..1, 0 is one pixel, 1 is full image width). | min: 0 max: 1 | +| 4 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_CAMERA_TRACK_RECTANGLE (2005) {#MAV_CMD_CAMERA_TRACK_RECTANGLE} If the camera supports rectangle visual tracking ([CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE](#CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE) is set), this command allows to initiate the tracking. -Param (Label) | Description | Values ---- | --- | --- -1 (Top left corner x) | Top left corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 -2 (Top left corner y) | Top left corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 -3 (Bottom right corner x) | Bottom right corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 -4 (Bottom right corner y) | Bottom right corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 -5 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Top left corner x) | Top left corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 | +| 2 (Top left corner y) | Top left corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 | +| 3 (Bottom right corner x) | Bottom right corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). | min: 0 max: 1 | +| 4 (Bottom right corner y) | Bottom right corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). | min: 0 max: 1 | +| 5 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_CAMERA_STOP_TRACKING (2010) {#MAV_CMD_CAMERA_STOP_TRACKING} Stops ongoing tracking. -Param (Label) | Description | Values ---- | --- | --- -1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_VIDEO_START_CAPTURE (2500) {#MAV_CMD_VIDEO_START_CAPTURE} Starts video capture (recording). -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams) | min: 0 inc: 1 | -2 (Status Frequency) | Frequency CAMERA_CAPTURE_STATUS messages should be sent while recording (0 for no messages, otherwise frequency) | min: 0 | Hz -3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | -4 | | | -5 | | | -6 | | | -7 | | | - +| Param (Label) | Description | Values | Units | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ----- | +| 1 (Stream ID) | Video Stream ID (0 for all streams) | min: 0 inc: 1 | +| 2 (Status Frequency) | Frequency CAMERA_CAPTURE_STATUS messages should be sent while recording (0 for no messages, otherwise frequency) | min: 0 | Hz | +| 3 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 4 | | | +| 5 | | | +| 6 | | | +| 7 | | | ### MAV_CMD_VIDEO_STOP_CAPTURE (2501) {#MAV_CMD_VIDEO_STOP_CAPTURE} Stop the current video capture (recording). -Param (Label) | Description | Values ---- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams) | min: 0 inc: 1 -2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 -3 | | -4 | | -5 | | -6 | | -7 | | - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Stream ID) | Video Stream ID (0 for all streams) | min: 0 inc: 1 | +| 2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | +| 3 | | +| 4 | | +| 5 | | +| 6 | | +| 7 | | ### MAV_CMD_VIDEO_START_STREAMING (2502) {#MAV_CMD_VIDEO_START_STREAMING} Start video streaming -Param (Label) | Description | Values ---- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 -2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 | +| 2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_VIDEO_STOP_STREAMING (2503) {#MAV_CMD_VIDEO_STOP_STREAMING} Stop the given video stream -Param (Label) | Description | Values ---- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 -2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 | +| 2 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION (2504) — [SUP] {#MAV_CMD_REQUEST_VIDEO_STREAM_INFORMATION} @@ -8489,10 +8125,9 @@ Param (Label) | Description | Values Request video stream information ([VIDEO_STREAM_INFORMATION](#VIDEO_STREAM_INFORMATION)) -Param (Label) | Description | Values ---- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------- | ------------- | +| 1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 | ### MAV_CMD_REQUEST_VIDEO_STREAM_STATUS (2505) — [SUP] {#MAV_CMD_REQUEST_VIDEO_STREAM_STATUS} @@ -8500,90 +8135,83 @@ Param (Label) | Description | Values Request video stream status ([VIDEO_STREAM_STATUS](#VIDEO_STREAM_STATUS)) -Param (Label) | Description | Values ---- | --- | --- -1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | -------------------------------------------------------------------- | ------------- | +| 1 (Stream ID) | Video Stream ID (0 for all streams, 1 for first, 2 for second, etc.) | min: 0 inc: 1 | ### MAV_CMD_LOGGING_START (2510) {#MAV_CMD_LOGGING_START} Request to start streaming logging data over MAVLink (see also [LOGGING_DATA](#LOGGING_DATA) message) -Param (Label) | Description | Values ---- | --- | --- -1 (Format) | Format: 0: ULog | min: 0 inc: 1 -2 | Reserved (set to 0) | -3 | Reserved (set to 0) | -4 | Reserved (set to 0) | -5 | Reserved (set to 0) | -6 | Reserved (set to 0) | -7 | Reserved (set to 0) | - +| Param (Label) | Description | Values | +| ------------- | ------------------- | ------------- | +| 1 (Format) | Format: 0: ULog | min: 0 inc: 1 | +| 2 | Reserved (set to 0) | +| 3 | Reserved (set to 0) | +| 4 | Reserved (set to 0) | +| 5 | Reserved (set to 0) | +| 6 | Reserved (set to 0) | +| 7 | Reserved (set to 0) | ### MAV_CMD_LOGGING_STOP (2511) {#MAV_CMD_LOGGING_STOP} Request to stop streaming log data over MAVLink -Param (Label) | Description ---- | --- -1 | Reserved (set to 0) -2 | Reserved (set to 0) -3 | Reserved (set to 0) -4 | Reserved (set to 0) -5 | Reserved (set to 0) -6 | Reserved (set to 0) -7 | Reserved (set to 0) - +| Param (Label) | Description | +| ------------- | ------------------- | +| 1 | Reserved (set to 0) | +| 2 | Reserved (set to 0) | +| 3 | Reserved (set to 0) | +| 4 | Reserved (set to 0) | +| 5 | Reserved (set to 0) | +| 6 | Reserved (set to 0) | +| 7 | Reserved (set to 0) | ### MAV_CMD_AIRFRAME_CONFIGURATION (2520) {#MAV_CMD_AIRFRAME_CONFIGURATION} -Param (Label) | Description | Values ---- | --- | --- -1 (Landing Gear ID) | Landing gear ID (default: 0, -1 for all) | min: -1 inc: 1 -2 (Landing Gear Position) | Landing gear position (Down: 0, Up: 1, NaN for no change) | -3 | | -4 | | -5 | | -6 | | -7 | | - +| Param (Label) | Description | Values | +| ------------------------- | --------------------------------------------------------- | -------------- | +| 1 (Landing Gear ID) | Landing gear ID (default: 0, -1 for all) | min: -1 inc: 1 | +| 2 (Landing Gear Position) | Landing gear position (Down: 0, Up: 1, NaN for no change) | +| 3 | | +| 4 | | +| 5 | | +| 6 | | +| 7 | | ### MAV_CMD_CONTROL_HIGH_LATENCY (2600) {#MAV_CMD_CONTROL_HIGH_LATENCY} Request to start/stop transmitting over the high latency telemetry -Param (Label) | Description | Values ---- | --- | --- -1 (Enable) | Start transmission over high latency telemetry (MAV_BOOL_FALSE: stop transmission). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) -2 | Empty | -3 | Empty | -4 | Empty | -5 | Empty | -6 | Empty | -7 | Empty | - +| Param (Label) | Description | Values | +| ------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------- | +| 1 (Enable) | Start transmission over high latency telemetry (MAV_BOOL_FALSE: stop transmission). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 2 | Empty | +| 3 | Empty | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | ### MAV_CMD_PANORAMA_CREATE (2800) {#MAV_CMD_PANORAMA_CREATE} Create a panorama at the current position -Param (Label) | Description | Units ---- | --- | --- -1 (Horizontal Angle) | Viewing angle horizontal of the panorama (+- 0.5 the total angle) | deg -2 (Vertical Angle) | Viewing angle vertical of panorama. | deg -3 (Horizontal Speed) | Speed of the horizontal rotation. | deg/s -4 (Vertical Speed) | Speed of the vertical rotation. | deg/s - +| Param (Label) | Description | Units | +| -------------------- | ----------------------------------------------------------------- | ----- | +| 1 (Horizontal Angle) | Viewing angle horizontal of the panorama (+- 0.5 the total angle) | deg | +| 2 (Vertical Angle) | Viewing angle vertical of panorama. | deg | +| 3 (Horizontal Speed) | Speed of the horizontal rotation. | deg/s | +| 4 (Vertical Speed) | Speed of the vertical rotation. | deg/s | ### MAV_CMD_DO_VTOL_TRANSITION (3000) {#MAV_CMD_DO_VTOL_TRANSITION} Request VTOL transition -Param (Label) | Description | Values ---- | --- | --- -1 (State) | The target VTOL state. For normal transitions, only MAV_VTOL_STATE_MC and MAV_VTOL_STATE_FW can be used. | [MAV_VTOL_STATE](#MAV_VTOL_STATE) -2 (Immediate) | Force immediate transition to the specified MAV_VTOL_STATE. 1: Force immediate, 0: normal transition. Can be used, for example, to trigger an emergency "Quadchute". Caution: Can be dangerous/damage vehicle, depending on autopilot implementation of this command. | - +| Param (Label) | Description | Values | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | +| 1 (State) | The target VTOL state. For normal transitions, only MAV_VTOL_STATE_MC and MAV_VTOL_STATE_FW can be used. | [MAV_VTOL_STATE](#MAV_VTOL_STATE) | +| 2 (Immediate) | Force immediate transition to the specified MAV_VTOL_STATE. 1: Force immediate, 0: normal transition. Can be used, for example, to trigger an emergency "Quadchute". Caution: Can be dangerous/damage vehicle, depending on autopilot implementation of this command. | ### MAV_CMD_ARM_AUTHORIZATION_REQUEST (3001) {#MAV_CMD_ARM_AUTHORIZATION_REQUEST} @@ -8592,32 +8220,29 @@ Request authorization to arm the vehicle to a external entity, the arm authorize If approved the [COMMAND_ACK](#COMMAND_ACK) message progress field should be set with period of time that this authorization is valid in seconds. If the authorization is denied [COMMAND_ACK](#COMMAND_ACK).result_param2 should be set with one of the reasons in [MAV_ARM_AUTH_DENIED_REASON](#MAV_ARM_AUTH_DENIED_REASON). -Param (Label) | Description | Values ---- | --- | --- -1 (System ID) | Vehicle system id, this way ground station can request arm authorization on behalf of any vehicle | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (System ID) | Vehicle system id, this way ground station can request arm authorization on behalf of any vehicle | min: 0 max: 255 inc: 1 | ### MAV_CMD_SET_GUIDED_SUBMODE_STANDARD (4000) {#MAV_CMD_SET_GUIDED_SUBMODE_STANDARD} This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocities along all three axes. -Param (Label) | Description ---- | --- - +| Param (Label) | Description | +| ------------- | ----------- | ### MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE (4001) {#MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE} This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position. -Param (Label) | Description | Units ---- | --- | --- -1 (Radius) | Radius of desired circle in CIRCLE_MODE | m -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Target latitude of center of circle in CIRCLE_MODE | degE7 -6 (Longitude) | Target longitude of center of circle in CIRCLE_MODE | degE7 - +| Param (Label) | Description | Units | +| ------------- | --------------------------------------------------- | ----- | +| 1 (Radius) | Radius of desired circle in CIRCLE_MODE | m | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Target latitude of center of circle in CIRCLE_MODE | degE7 | +| 6 (Longitude) | Target longitude of center of circle in CIRCLE_MODE | degE7 | ### MAV_CMD_CONDITION_GATE (4501) — [WIP] {#MAV_CMD_CONDITION_GATE} @@ -8625,31 +8250,29 @@ Param (Label) | Description | Units Delay mission state machine until gate has been reached. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Geometry) | Geometry: 0: orthogonal to path between previous and next waypoint. | min: 0 inc: 1 | -2 (UseAltitude) | Use altitude (MAV_BOOL_FALSE: ignore altitude). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | -3 | Empty | | -4 | Empty | | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 (Altitude) | Altitude | | m - +| Param (Label) | Description | Values | Units | +| --------------- | --------------------------------------------------------------------------------------- | --------------------- | ----- | +| 1 (Geometry) | Geometry: 0: orthogonal to path between previous and next waypoint. | min: 0 inc: 1 | +| 2 (UseAltitude) | Use altitude (MAV_BOOL_FALSE: ignore altitude). Values not equal to 0 or 1 are invalid. | [MAV_BOOL](#MAV_BOOL) | +| 3 | Empty | | +| 4 | Empty | | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 (Altitude) | Altitude | | m | ### MAV_CMD_NAV_FENCE_RETURN_POINT (5000) {#MAV_CMD_NAV_FENCE_RETURN_POINT} Fence return point (there can only be one such point in a geofence definition). If rally points are supported they should be used instead. -Param (Label) | Description | Units ---- | --- | --- -1 | Reserved | -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 (Altitude) | Altitude | m - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 1 | Reserved | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 (Altitude) | Altitude | m | ### MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION (5001) {#MAV_CMD_NAV_FENCE_POLYGON_VERTEX_INCLUSION} @@ -8657,16 +8280,15 @@ Fence vertex for an inclusion polygon (the polygon must not be self-intersecting The vertices for a polygon must be sent sequentially, each with param1 set to the total number of vertices in the polygon. -Param (Label) | Description | Values ---- | --- | --- -1 (Vertex Count) | Polygon vertex count. This is the number of vertices in the current polygon (all vertices will have the same number). | min: 3 inc: 1 -2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group, must be the same for all points in each polygon | min: 0 inc: 1 -3 | Reserved | -4 | Reserved | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 | Reserved | - +| Param (Label) | Description | Values | +| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | +| 1 (Vertex Count) | Polygon vertex count. This is the number of vertices in the current polygon (all vertices will have the same number). | min: 3 inc: 1 | +| 2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group, must be the same for all points in each polygon | min: 0 inc: 1 | +| 3 | Reserved | +| 4 | Reserved | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 | Reserved | ### MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION (5002) {#MAV_CMD_NAV_FENCE_POLYGON_VERTEX_EXCLUSION} @@ -8674,61 +8296,57 @@ Fence vertex for an exclusion polygon (the polygon must not be self-intersecting The vertices for a polygon must be sent sequentially, each with param1 set to the total number of vertices in the polygon. -Param (Label) | Description | Values ---- | --- | --- -1 (Vertex Count) | Polygon vertex count. This is the number of vertices in the current polygon (all vertices will have the same number). | min: 3 inc: 1 -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 | Reserved | - +| Param (Label) | Description | Values | +| ---------------- | --------------------------------------------------------------------------------------------------------------------- | ------------- | +| 1 (Vertex Count) | Polygon vertex count. This is the number of vertices in the current polygon (all vertices will have the same number). | min: 3 inc: 1 | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 | Reserved | ### MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION (5003) {#MAV_CMD_NAV_FENCE_CIRCLE_INCLUSION} Circular fence area. The vehicle must stay inside this area. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Radius) | Radius. | | m -2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group | min: 0 inc: 1 | -3 | Reserved | | -4 | Reserved | | -5 (Latitude) | Latitude | | -6 (Longitude) | Longitude | | -7 | Reserved | | - +| Param (Label) | Description | Values | Units | +| ------------------- | ------------------------------------------------------------------------------------------------------- | ------------- | ----- | +| 1 (Radius) | Radius. | | m | +| 2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group | min: 0 inc: 1 | +| 3 | Reserved | | +| 4 | Reserved | | +| 5 (Latitude) | Latitude | | +| 6 (Longitude) | Longitude | | +| 7 | Reserved | | ### MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION (5004) {#MAV_CMD_NAV_FENCE_CIRCLE_EXCLUSION} Circular fence area. The vehicle must stay outside this area. -Param (Label) | Description | Units ---- | --- | --- -1 (Radius) | Radius. | m -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 | Reserved | - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 1 (Radius) | Radius. | m | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 | Reserved | ### MAV_CMD_NAV_RALLY_POINT (5100) {#MAV_CMD_NAV_RALLY_POINT} Rally point. You can have multiple rally points defined. -Param (Label) | Description | Units ---- | --- | --- -1 | Reserved | -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 (Altitude) | Altitude | m - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 1 | Reserved | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 (Altitude) | Altitude | m | ### MAV_CMD_UAVCAN_GET_NODE_INFO (5200) — [SUP] {#MAV_CMD_UAVCAN_GET_NODE_INFO} @@ -8736,46 +8354,43 @@ Param (Label) | Description | Units Commands the vehicle to respond with a sequence of messages [UAVCAN_NODE_INFO](#UAVCAN_NODE_INFO), one message per every UAVCAN node that is online. Note that some of the response messages can be lost, which the receiver can detect easily by checking whether every received [UAVCAN_NODE_STATUS](#UAVCAN_NODE_STATUS) has a matching message [UAVCAN_NODE_INFO](#UAVCAN_NODE_INFO) received earlier; if not, this command should be sent again in order to request re-transmission of the node information messages. -Param (Label) | Description ---- | --- -1 | Reserved (set to 0) -2 | Reserved (set to 0) -3 | Reserved (set to 0) -4 | Reserved (set to 0) -5 | Reserved (set to 0) -6 | Reserved (set to 0) -7 | Reserved (set to 0) - +| Param (Label) | Description | +| ------------- | ------------------- | +| 1 | Reserved (set to 0) | +| 2 | Reserved (set to 0) | +| 3 | Reserved (set to 0) | +| 4 | Reserved (set to 0) | +| 5 | Reserved (set to 0) | +| 6 | Reserved (set to 0) | +| 7 | Reserved (set to 0) | ### MAV_CMD_DO_SET_SAFETY_SWITCH_STATE (5300) {#MAV_CMD_DO_SET_SAFETY_SWITCH_STATE} Change state of safety switch. -Param (Label) | Description | Values ---- | --- | --- -1 (Desired State) | New safety switch state. | [SAFETY_SWITCH_STATE](#SAFETY_SWITCH_STATE) -2 | Empty. | -3 | Empty. | -4 | Empty | -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Values | +| ----------------- | ------------------------ | ------------------------------------------- | +| 1 (Desired State) | New safety switch state. | [SAFETY_SWITCH_STATE](#SAFETY_SWITCH_STATE) | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_ADSB_OUT_IDENT (10001) {#MAV_CMD_DO_ADSB_OUT_IDENT} Trigger the start of an ADSB-out IDENT. This should only be used when requested to do so by an Air Traffic Controller in controlled airspace. This starts the IDENT which is then typically held for 18 seconds by the hardware per the Mode A, C, and S transponder spec. -Param (Label) | Description ---- | --- -1 | Reserved (set to 0) -2 | Reserved (set to 0) -3 | Reserved (set to 0) -4 | Reserved (set to 0) -5 | Reserved (set to 0) -6 | Reserved (set to 0) -7 | Reserved (set to 0) - +| Param (Label) | Description | +| ------------- | ------------------- | +| 1 | Reserved (set to 0) | +| 2 | Reserved (set to 0) | +| 3 | Reserved (set to 0) | +| 4 | Reserved (set to 0) | +| 5 | Reserved (set to 0) | +| 6 | Reserved (set to 0) | +| 7 | Reserved (set to 0) | ### MAV_CMD_PAYLOAD_PREPARE_DEPLOY (30001) — [SUP] {#MAV_CMD_PAYLOAD_PREPARE_DEPLOY} @@ -8783,16 +8398,15 @@ Param (Label) | Description Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Operation Mode) | Operation mode. 0: prepare single payload deploy (overwriting previous requests), but do not execute it. 1: execute payload deploy immediately (rejecting further deploy commands during execution, but allowing abort). 2: add payload deploy to existing deployment list. | min: 0 max: 2 inc: 1 | -2 (Approach Vector) | Desired approach vector in compass heading. A negative value indicates the system can define the approach vector at will. | min: -1 max: 360 | deg -3 (Ground Speed) | Desired ground speed at release time. This can be overridden by the airframe in case it needs to meet minimum airspeed. A negative value indicates the system can define the ground speed at will. | min: -1 | -4 (Altitude Clearance) | Minimum altitude clearance to the release position. A negative value indicates the system can define the clearance at will. | min: -1 | m -5 (Latitude) | Latitude. | | degE7 -6 (Longitude) | Longitude. | | degE7 -7 (Altitude) | Altitude (MSL) | | m - +| Param (Label) | Description | Values | Units | +| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----- | +| 1 (Operation Mode) | Operation mode. 0: prepare single payload deploy (overwriting previous requests), but do not execute it. 1: execute payload deploy immediately (rejecting further deploy commands during execution, but allowing abort). 2: add payload deploy to existing deployment list. | min: 0 max: 2 inc: 1 | +| 2 (Approach Vector) | Desired approach vector in compass heading. A negative value indicates the system can define the approach vector at will. | min: -1 max: 360 | deg | +| 3 (Ground Speed) | Desired ground speed at release time. This can be overridden by the airframe in case it needs to meet minimum airspeed. A negative value indicates the system can define the ground speed at will. | min: -1 | +| 4 (Altitude Clearance) | Minimum altitude clearance to the release position. A negative value indicates the system can define the clearance at will. | min: -1 | m | +| 5 (Latitude) | Latitude. | | degE7 | +| 6 (Longitude) | Longitude. | | degE7 | +| 7 (Altitude) | Altitude (MSL) | | m | ### MAV_CMD_PAYLOAD_CONTROL_DEPLOY (30002) — [SUP] {#MAV_CMD_PAYLOAD_CONTROL_DEPLOY} @@ -8800,310 +8414,288 @@ Param (Label) | Description | Values | Units Control the payload deployment. -Param (Label) | Description | Values ---- | --- | --- -1 (Operation Mode) | Operation mode. 0: Abort deployment, continue normal mission. 1: switch to payload deployment mode. 100: delete first payload deployment request. 101: delete all payload deployment requests. | min: 0 max: 101 inc: 1 -2 | Reserved | -3 | Reserved | -4 | Reserved | -5 | Reserved | -6 | Reserved | -7 | Reserved | - +| Param (Label) | Description | Values | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Operation Mode) | Operation mode. 0: Abort deployment, continue normal mission. 1: switch to payload deployment mode. 100: delete first payload deployment request. 101: delete all payload deployment requests. | min: 0 max: 101 inc: 1 | +| 2 | Reserved | +| 3 | Reserved | +| 4 | Reserved | +| 5 | Reserved | +| 6 | Reserved | +| 7 | Reserved | ### MAV_CMD_WAYPOINT_USER_1 (31000) {#MAV_CMD_WAYPOINT_USER_1} User defined waypoint item. Ground Station will show the Vehicle as flying through this item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_WAYPOINT_USER_2 (31001) {#MAV_CMD_WAYPOINT_USER_2} User defined waypoint item. Ground Station will show the Vehicle as flying through this item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_WAYPOINT_USER_3 (31002) {#MAV_CMD_WAYPOINT_USER_3} User defined waypoint item. Ground Station will show the Vehicle as flying through this item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_WAYPOINT_USER_4 (31003) {#MAV_CMD_WAYPOINT_USER_4} User defined waypoint item. Ground Station will show the Vehicle as flying through this item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_WAYPOINT_USER_5 (31004) {#MAV_CMD_WAYPOINT_USER_5} User defined waypoint item. Ground Station will show the Vehicle as flying through this item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_SPATIAL_USER_1 (31005) {#MAV_CMD_SPATIAL_USER_1} User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_SPATIAL_USER_2 (31006) {#MAV_CMD_SPATIAL_USER_2} User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_SPATIAL_USER_3 (31007) {#MAV_CMD_SPATIAL_USER_3} User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_SPATIAL_USER_4 (31008) {#MAV_CMD_SPATIAL_USER_4} User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_SPATIAL_USER_5 (31009) {#MAV_CMD_SPATIAL_USER_5} User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. -Param (Label) | Description | Units ---- | --- | --- -1 | User defined | -2 | User defined | -3 | User defined | -4 | User defined | -5 (Latitude) | Latitude unscaled | -6 (Longitude) | Longitude unscaled | -7 (Altitude) | Altitude (MSL) | m - +| Param (Label) | Description | Units | +| ------------- | ------------------ | ----- | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 (Latitude) | Latitude unscaled | +| 6 (Longitude) | Longitude unscaled | +| 7 (Altitude) | Altitude (MSL) | m | ### MAV_CMD_USER_1 (31010) {#MAV_CMD_USER_1} User defined command. Ground Station will not show the Vehicle as flying through this item. Example: [MAV_CMD_DO_SET_PARAMETER](#MAV_CMD_DO_SET_PARAMETER) item. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_USER_2 (31011) {#MAV_CMD_USER_2} User defined command. Ground Station will not show the Vehicle as flying through this item. Example: [MAV_CMD_DO_SET_PARAMETER](#MAV_CMD_DO_SET_PARAMETER) item. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_USER_3 (31012) {#MAV_CMD_USER_3} User defined command. Ground Station will not show the Vehicle as flying through this item. Example: [MAV_CMD_DO_SET_PARAMETER](#MAV_CMD_DO_SET_PARAMETER) item. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_USER_4 (31013) {#MAV_CMD_USER_4} User defined command. Ground Station will not show the Vehicle as flying through this item. Example: [MAV_CMD_DO_SET_PARAMETER](#MAV_CMD_DO_SET_PARAMETER) item. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_USER_5 (31014) {#MAV_CMD_USER_5} User defined command. Ground Station will not show the Vehicle as flying through this item. Example: [MAV_CMD_DO_SET_PARAMETER](#MAV_CMD_DO_SET_PARAMETER) item. -Param (Label) | Description ---- | --- -1 | User defined -2 | User defined -3 | User defined -4 | User defined -5 | User defined -6 | User defined -7 | User defined - +| Param (Label) | Description | +| ------------- | ------------ | +| 1 | User defined | +| 2 | User defined | +| 3 | User defined | +| 4 | User defined | +| 5 | User defined | +| 6 | User defined | +| 7 | User defined | ### MAV_CMD_CAN_FORWARD (32000) {#MAV_CMD_CAN_FORWARD} Request forwarding of CAN packets from the given CAN bus to this component via this MAVLink channel. CAN Frames are sent using [CAN_FRAME](#CAN_FRAME) and [CANFD_FRAME](#CANFD_FRAME) messages -Param (Label) | Description ---- | --- -1 (bus) | Bus number (0 to disable forwarding, 1 for first bus, 2 for 2nd bus, 3 for 3rd bus). -2 | Empty. -3 | Empty. -4 | Empty. -5 | Empty. -6 | Empty. -7 | Empty. - +| Param (Label) | Description | +| ------------- | ------------------------------------------------------------------------------------ | +| 1 (bus) | Bus number (0 to disable forwarding, 1 for first bus, 2 for 2nd bus, 3 for 3rd bus). | +| 2 | Empty. | +| 3 | Empty. | +| 4 | Empty. | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_FIXED_MAG_CAL_YAW (42006) {#MAV_CMD_FIXED_MAG_CAL_YAW} Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. -Param (Label) | Description | Units ---- | --- | --- -1 (Yaw) | Yaw of vehicle in earth frame. | deg -2 (CompassMask) | CompassMask, 0 for all. | -3 (Latitude) | Latitude. | deg -4 (Longitude) | Longitude. | deg -5 | Empty. | -6 | Empty. | -7 | Empty. | - +| Param (Label) | Description | Units | +| --------------- | ------------------------------ | ----- | +| 1 (Yaw) | Yaw of vehicle in earth frame. | deg | +| 2 (CompassMask) | CompassMask, 0 for all. | +| 3 (Latitude) | Latitude. | deg | +| 4 (Longitude) | Longitude. | deg | +| 5 | Empty. | +| 6 | Empty. | +| 7 | Empty. | ### MAV_CMD_DO_WINCH (42600) {#MAV_CMD_DO_WINCH} Command to operate winch. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Instance) | Winch instance number. | min: 1 inc: 1 | -2 (Action) | Action to perform. | [WINCH_ACTIONS](#WINCH_ACTIONS) | -3 (Length) | Length of line to release (negative to wind). | | m -4 (Rate) | Release rate (negative to wind). | | m/s -5 | Empty. | | -6 | Empty. | | -7 | Empty. | | - +| Param (Label) | Description | Values | Units | +| ------------- | --------------------------------------------- | ------------------------------- | ----- | +| 1 (Instance) | Winch instance number. | min: 1 inc: 1 | +| 2 (Action) | Action to perform. | [WINCH_ACTIONS](#WINCH_ACTIONS) | +| 3 (Length) | Length of line to release (negative to wind). | | m | +| 4 (Rate) | Release rate (negative to wind). | | m/s | +| 5 | Empty. | | +| 6 | Empty. | | +| 7 | Empty. | | ### MAV_CMD_GUIDED_CHANGE_HEADING (43002) {#MAV_CMD_GUIDED_CHANGE_HEADING} Change to target direction at a given rate, overriding previous heading/s. This slews the vehicle at a controllable rate between its previous heading and the new one. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Heading Type) | Course-over-ground or raw vehicle heading. | [HEADING_TYPE](#HEADING_TYPE) | -2 (Heading Target) | Target heading. | min: 0 max: 359.99 | deg -3 (Heading Rate of Change) | Maximum centripetal acceleration, i.e. rate of change toward new heading. | | deg/s - +| Param (Label) | Description | Values | Units | +| -------------------------- | ------------------------------------------------------------------------- | ----------------------------- | ----- | +| 1 (Heading Type) | Course-over-ground or raw vehicle heading. | [HEADING_TYPE](#HEADING_TYPE) | +| 2 (Heading Target) | Target heading. | min: 0 max: 359.99 | deg | +| 3 (Heading Rate of Change) | Maximum centripetal acceleration, i.e. rate of change toward new heading. | | deg/s | ### MAV_CMD_EXTERNAL_POSITION_ESTIMATE (43003) {#MAV_CMD_EXTERNAL_POSITION_ESTIMATE} Provide an external position estimate for use when dead-reckoning. This is meant to be used for occasional position resets that may be provided by a external system such as a remote pilot using landmarks over a video link. -Param (Label) | Description | Units ---- | --- | --- -1 (transmission_time) | Timestamp that this message was sent as a time in the transmitters time domain. The sender should wrap this time back to zero based on required timing accuracy for the application and the limitations of a 32 bit float. For example, wrapping at 10 hours would give approximately 1ms accuracy. Recipient must handle time wrap in any timing jitter correction applied to this field. Wrap rollover time should not be at not more than 250 seconds, which would give approximately 10 microsecond accuracy. | s -2 (processing_time) | The time spent in processing the sensor data that is the basis for this position. The recipient can use this to improve time alignment of the data. Set to zero if not known. | s -3 (accuracy) | estimated one standard deviation accuracy of the measurement. Set to NaN if not known. | -4 | Empty | -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 (Altitude) | Altitude, not used. Should be sent as NaN. May be supported in a future version of this message. | m - - +| Param (Label) | Description | Units | +| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | +| 1 (transmission_time) | Timestamp that this message was sent as a time in the transmitters time domain. The sender should wrap this time back to zero based on required timing accuracy for the application and the limitations of a 32 bit float. For example, wrapping at 10 hours would give approximately 1ms accuracy. Recipient must handle time wrap in any timing jitter correction applied to this field. Wrap rollover time should not be at not more than 250 seconds, which would give approximately 10 microsecond accuracy. | s | +| 2 (processing_time) | The time spent in processing the sensor data that is the basis for this position. The recipient can use this to improve time alignment of the data. Set to zero if not known. | s | +| 3 (accuracy) | estimated one standard deviation accuracy of the measurement. Set to NaN if not known. | +| 4 | Empty | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 (Altitude) | Altitude, not used. Should be sent as NaN. May be supported in a future version of this message. | m | diff --git a/en/messages/csAirLink.md b/en/messages/csAirLink.md index 0b81a2fb7..690c17f37 100644 --- a/en/messages/csAirLink.md +++ b/en/messages/csAirLink.md @@ -26,19 +26,20 @@ span.warning { color: red; } + **Protocol version:** 3 ## MAVLink Include Files - None +None ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 2 | 0 -[Enums](#enumerated-types) | 1 | 0 -Commands | 0 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 2 | 0 | +| [Enums](#enumerated-types) | 1 | 0 | +| Commands | 0 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -48,27 +49,24 @@ The following sections list all entities in the dialect (both included and defin Authorization package -Field Name | Type | Description ---- | --- | --- -login | `char[50]` | Login -password | `char[50]` | Password - +| Field Name | Type | Description | +| ---------- | ---------- | ----------- | +| login | `char[50]` | Login | +| password | `char[50]` | Password | ### AIRLINK_AUTH_RESPONSE (52001) {#AIRLINK_AUTH_RESPONSE} Response to the authorization request -Field Name | Type | Values | Description ---- | --- | --- | --- -resp_type | `uint8_t` | [AIRLINK_AUTH_RESPONSE_TYPE](#AIRLINK_AUTH_RESPONSE_TYPE) | Response type - +| Field Name | Type | Values | Description | +| ---------- | --------- | --------------------------------------------------------- | ------------- | +| resp_type | `uint8_t` | [AIRLINK_AUTH_RESPONSE_TYPE](#AIRLINK_AUTH_RESPONSE_TYPE) | Response type | ## Enumerated Types ### AIRLINK_AUTH_RESPONSE_TYPE {#AIRLINK_AUTH_RESPONSE_TYPE} -Value | Name | Description ---- | --- | --- -0 | [AIRLINK_ERROR_LOGIN_OR_PASS](#AIRLINK_ERROR_LOGIN_OR_PASS) | Login or password error -1 | [AIRLINK_AUTH_OK](#AIRLINK_AUTH_OK) | Auth successful - +| Value | Name | Description | +| ----------------------------------------- | ----------------------------------------------------------- | ----------------------- | +| 0 | [AIRLINK_ERROR_LOGIN_OR_PASS](#AIRLINK_ERROR_LOGIN_OR_PASS) | Login or password error | +| 1 | [AIRLINK_AUTH_OK](#AIRLINK_AUTH_OK) | Auth successful | diff --git a/en/messages/cubepilot.md b/en/messages/cubepilot.md index d0b462e0e..a3db314ce 100644 --- a/en/messages/cubepilot.md +++ b/en/messages/cubepilot.md @@ -11,7 +11,6 @@ These messages define the [CubePilot](http://www.cubepilot.com) specific dialect This topic is a human-readable form of the XML definition file: [cubepilot.xml](https://github.com/mavlink/mavlink/blob/master/message_definitions/v1.0/cubepilot.xml). - ::: info @@ -29,17 +28,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 5 | 234 -[Enums](#enumerated-types) | 0 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 5 | 234 | +| [Enums](#enumerated-types) | 0 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -49,66 +49,60 @@ The following sections list all entities in the dialect (both included and defin Raw RC Data -Field Name | Type | Description ---- | --- | --- -rc_raw | `uint8_t[32]` | - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| rc_raw | `uint8_t[32]` | ### HERELINK_VIDEO_STREAM_INFORMATION (50002) {#HERELINK_VIDEO_STREAM_INFORMATION} Information about video stream -Field Name | Type | Units | Description ---- | --- | --- | --- -camera_id | `uint8_t` | | Video Stream ID (1 for first, 2 for second, etc.) -status | `uint8_t` | | Number of streams available. -framerate | `float` | Hz | Frame rate. -resolution_h | `uint16_t` | pix | Horizontal resolution. -resolution_v | `uint16_t` | pix | Vertical resolution. -bitrate | `uint32_t` | bits/s | Bit rate. -rotation | `uint16_t` | deg | Video image rotation clockwise. -uri | `char[230]` | | Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). - +| Field Name | Type | Units | Description | +| ------------ | ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------ | +| camera_id | `uint8_t` | | Video Stream ID (1 for first, 2 for second, etc.) | +| status | `uint8_t` | | Number of streams available. | +| framerate | `float` | Hz | Frame rate. | +| resolution_h | `uint16_t` | pix | Horizontal resolution. | +| resolution_v | `uint16_t` | pix | Vertical resolution. | +| bitrate | `uint32_t` | bits/s | Bit rate. | +| rotation | `uint16_t` | deg | Video image rotation clockwise. | +| uri | `char[230]` | | Video stream URI (TCP or RTSP URI ground station should connect to) or port number (UDP port ground station should listen to). | ### HERELINK_TELEM (50003) {#HERELINK_TELEM} Herelink Telemetry -Field Name | Type | Description ---- | --- | --- -rssi | `uint8_t` | -snr | `int16_t` | -rf_freq | `uint32_t` | -link_bw | `uint32_t` | -link_rate | `uint32_t` | -cpu_temp | `int16_t` | -board_temp | `int16_t` | - +| Field Name | Type | Description | +| ---------- | ---------- | ----------- | +| rssi | `uint8_t` | +| snr | `int16_t` | +| rf_freq | `uint32_t` | +| link_bw | `uint32_t` | +| link_rate | `uint32_t` | +| cpu_temp | `int16_t` | +| board_temp | `int16_t` | ### CUBEPILOT_FIRMWARE_UPDATE_START (50004) {#CUBEPILOT_FIRMWARE_UPDATE_START} Start firmware update with encapsulated data. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -size | `uint32_t` | bytes | FW Size. -crc | `uint32_t` | | FW CRC. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| size | `uint32_t` | bytes | FW Size. | +| crc | `uint32_t` | | FW CRC. | ### CUBEPILOT_FIRMWARE_UPDATE_RESP (50005) {#CUBEPILOT_FIRMWARE_UPDATE_RESP} offset response to encapsulated data. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -offset | `uint32_t` | bytes | FW Offset. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| offset | `uint32_t` | bytes | FW Offset. | ## Enumerated Types ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/development.md b/en/messages/development.md index ea1904027..cffc38011 100644 --- a/en/messages/development.md +++ b/en/messages/development.md @@ -24,6 +24,7 @@ span.warning { color: red; } + **Protocol dialect:** 0 **Protocol version:** 0 @@ -34,11 +35,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 14 | 234 -[Enums](#enumerated-types) | 15 | 159 -[Commands](#mav_commands) | 179 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 14 | 234 | +| [Enums](#enumerated-types) | 15 | 159 | +| [Commands](#mav_commands) | 179 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -60,18 +61,17 @@ A GCS is required to understand the format in order to create an appropriate UI Note that for AM32 EEPROMs the data layout is defined in: https://github.com/am32-firmware/AM32/blob/main/Inc/eeprom.h (the second byte in the structure is the eeprom_version). The firmware field indicates which ESC firmware is in use, allowing the GCS to interpret the data correctly. -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (ID of target system, normally flight controller). -target_component | `uint8_t` | | Component ID (normally 0 for broadcast). -firmware | `uint8_t` | [ESC_FIRMWARE](#ESC_FIRMWARE) | ESC firmware type. -msg_index | `uint8_t` | | Zero-indexed sequence number of this message when multiple messages are required to transfer the complete EEPROM data. The first message has index 0. For single-message transfers, set to 0. -msg_count | `uint8_t` | | Total number of messages required to transfer the complete EEPROM data. For single-message transfers, set to 1. Receivers should collect all messages from index 0 to msg_count-1 before reconstructing the complete data. -esc_index | `uint8_t` | max:254 | Index of the ESC (0 = ESC1, 1 = ESC2, etc.). -write_mask | `uint32_t[6]` | | Bitmask indicating which bytes in the data array should be written. Each bit corresponds to a byte index in the data array (bit 0 of write_mask[0] = data[0], bit 31 of write_mask[0] = data[31], bit 0 of write_mask[1] = data[32], etc.). Set bits indicate bytes to write, cleared bits indicate bytes to skip. This allows precise updates of individual parameters without overwriting the entire EEPROM. -length | `uint8_t` | max:222 | Number of valid bytes in data array. -data | `uint8_t[192]` | | Raw ESC EEPROM data. Unused bytes should be set to zero. - +| Field Name | Type | Values | Description | +| ---------------- | -------------- | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (ID of target system, normally flight controller). | +| target_component | `uint8_t` | | Component ID (normally 0 for broadcast). | +| firmware | `uint8_t` | [ESC_FIRMWARE](#ESC_FIRMWARE) | ESC firmware type. | +| msg_index | `uint8_t` | | Zero-indexed sequence number of this message when multiple messages are required to transfer the complete EEPROM data. The first message has index 0. For single-message transfers, set to 0. | +| msg_count | `uint8_t` | | Total number of messages required to transfer the complete EEPROM data. For single-message transfers, set to 1. Receivers should collect all messages from index 0 to msg_count-1 before reconstructing the complete data. | +| esc_index | `uint8_t` | max:254 | Index of the ESC (0 = ESC1, 1 = ESC2, etc.). | +| write_mask | `uint32_t[6]` | | Bitmask indicating which bytes in the data array should be written. Each bit corresponds to a byte index in the data array (bit 0 of write_mask[0] = data[0], bit 31 of write_mask[0] = data[31], bit 0 of write_mask[1] = data[32], etc.). Set bits indicate bytes to write, cleared bits indicate bytes to skip. This allows precise updates of individual parameters without overwriting the entire EEPROM. | +| length | `uint8_t` | max:222 | Number of valid bytes in data array. | +| data | `uint8_t[192]` | | Raw ESC EEPROM data. Unused bytes should be set to zero. | ### SET_VELOCITY_LIMITS (354) — [WIP] {#SET_VELOCITY_LIMITS} @@ -82,14 +82,13 @@ Set temporary maximum limits for horizontal speed, vertical speed and yaw rate. The consumer must stream the current limits in [VELOCITY_LIMITS](#VELOCITY_LIMITS) at 1 Hz or more (when limits are being set). The consumer should latch the limits until a new limit is received or the mode is changed. -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID (0 for broadcast). -target_component | `uint8_t` | | Component ID (0 for broadcast). -horizontal_speed_limit | `float` | m/s | Limit for horizontal movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: Field not used (ignore) -vertical_speed_limit | `float` | m/s | Limit for vertical movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: Field not used (ignore) -yaw_rate_limit | `float` | rad/s | Limit for vehicle turn rate around its yaw axis. NaN: Field not used (ignore) - +| Field Name | Type | Units | Description | +| ---------------------- | --------- | ----- | ---------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | System ID (0 for broadcast). | +| target_component | `uint8_t` | | Component ID (0 for broadcast). | +| horizontal_speed_limit | `float` | m/s | Limit for horizontal movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: Field not used (ignore) | +| vertical_speed_limit | `float` | m/s | Limit for vertical movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: Field not used (ignore) | +| yaw_rate_limit | `float` | rad/s | Limit for vehicle turn rate around its yaw axis. NaN: Field not used (ignore) | ### VELOCITY_LIMITS (355) — [WIP] {#VELOCITY_LIMITS} @@ -97,12 +96,11 @@ yaw_rate_limit | `float` | rad/s | Limit for vehicle turn rate around its yaw ax Current limits for horizontal speed, vertical speed and yaw rate, as set by [SET_VELOCITY_LIMITS](#SET_VELOCITY_LIMITS). -Field Name | Type | Units | Description ---- | --- | --- | --- -horizontal_speed_limit | `float` | m/s | Limit for horizontal movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: No limit applied -vertical_speed_limit | `float` | m/s | Limit for vertical movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: No limit applied -yaw_rate_limit | `float` | rad/s | Limit for vehicle turn rate around its yaw axis. NaN: No limit applied - +| Field Name | Type | Units | Description | +| ---------------------- | ------- | ----- | --------------------------------------------------------------------------------------------------- | +| horizontal_speed_limit | `float` | m/s | Limit for horizontal movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: No limit applied | +| vertical_speed_limit | `float` | m/s | Limit for vertical movement in [MAV_FRAME_LOCAL_NED](#MAV_FRAME_LOCAL_NED). NaN: No limit applied | +| yaw_rate_limit | `float` | rad/s | Limit for vehicle turn rate around its yaw axis. NaN: No limit applied | ### BATTERY_STATUS_V2 (369) — [WIP] {#BATTERY_STATUS_V2} @@ -115,17 +113,16 @@ Static/invariant battery information is sent in [BATTERY_INFO](#BATTERY_INFO). Note that smart batteries should set the [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL) bit to indicate that supplied capacity values are relative to a battery that is known to be full. Power monitors would not set this bit, indicating that capacity_consumed is relative to drone power-on, and that other values are estimated based on the assumption that the battery was full on power-on. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature of the whole battery pack (not internal electronics). INT16_MAX field not provided. -voltage | `float` | V | invalid:NaN | Battery voltage (total). NaN: field not provided. -current | `float` | A | invalid:NaN | Battery current (through all cells/loads). Positive value when discharging and negative if charging. NaN: field not provided. -capacity_consumed | `float` | Ah | invalid:NaN | Consumed charge. NaN: field not provided. This is either the consumption since power-on or since the battery was full, depending on the value of [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL). -capacity_remaining | `float` | Ah | invalid:NaN | Remaining charge (until empty). NaN: field not provided. Note: If [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL) is unset, this value is based on the assumption the battery was full when the system was powered. -state_of_charge | `float` | % | invalid:NaN | State of Charge (SoC). Remaining capacity relative to current fully-charged capacity as a percentage. Values: [0-100], NaN: field not provided. Note that the value may be calculated from design_capacity if current full_charge_capacity is not known (see [BATTERY_INFO](#BATTERY_INFO)). -status_flags | `uint32_t` | | [MAV_BATTERY_STATUS_FLAGS](#MAV_BATTERY_STATUS_FLAGS) | Fault, health, readiness, and other status indications. - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | Battery ID
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| temperature | `int16_t` | cdegC | invalid:INT16_MAX | Temperature of the whole battery pack (not internal electronics). INT16_MAX field not provided. | +| voltage | `float` | V | invalid:NaN | Battery voltage (total). NaN: field not provided. | +| current | `float` | A | invalid:NaN | Battery current (through all cells/loads). Positive value when discharging and negative if charging. NaN: field not provided. | +| capacity_consumed | `float` | Ah | invalid:NaN | Consumed charge. NaN: field not provided. This is either the consumption since power-on or since the battery was full, depending on the value of [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL). | +| capacity_remaining | `float` | Ah | invalid:NaN | Remaining charge (until empty). NaN: field not provided. Note: If [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL) is unset, this value is based on the assumption the battery was full when the system was powered. | +| state_of_charge | `float` | % | invalid:NaN | State of Charge (SoC). Remaining capacity relative to current fully-charged capacity as a percentage. Values: [0-100], NaN: field not provided. Note that the value may be calculated from design_capacity if current full_charge_capacity is not known (see [BATTERY_INFO](#BATTERY_INFO)). | +| status_flags | `uint32_t` | | [MAV_BATTERY_STATUS_FLAGS](#MAV_BATTERY_STATUS_FLAGS) | Fault, health, readiness, and other status indications. | ### GROUP_START (414) — [WIP] {#GROUP_START} @@ -133,12 +130,11 @@ status_flags | `uint32_t` | | [MAV_BATTERY_STATUS_FLAGS](#MAV_BATTERY_STATUS_FLA Emitted during mission execution when control reaches [MAV_CMD_GROUP_START](#MAV_CMD_GROUP_START). -Field Name | Type | Units | Description ---- | --- | --- | --- -group_id | `uint32_t` | | Mission-unique group id (from [MAV_CMD_GROUP_START](#MAV_CMD_GROUP_START)). -mission_checksum | `uint32_t` | | CRC32 checksum of current plan for [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL). As defined in [MISSION_CHECKSUM](#MISSION_CHECKSUM) message. -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot).
The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| group_id | `uint32_t` | | Mission-unique group id (from [MAV_CMD_GROUP_START](#MAV_CMD_GROUP_START)). | +| mission_checksum | `uint32_t` | | CRC32 checksum of current plan for [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL). As defined in [MISSION_CHECKSUM](#MISSION_CHECKSUM) message. | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot).
The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### GROUP_END (415) — [WIP] {#GROUP_END} @@ -146,12 +142,11 @@ time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system bo Emitted during mission execution when control reaches [MAV_CMD_GROUP_END](#MAV_CMD_GROUP_END). -Field Name | Type | Units | Description ---- | --- | --- | --- -group_id | `uint32_t` | | Mission-unique group id (from [MAV_CMD_GROUP_END](#MAV_CMD_GROUP_END)). -mission_checksum | `uint32_t` | | CRC32 checksum of current plan for [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL). As defined in [MISSION_CHECKSUM](#MISSION_CHECKSUM) message. -time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot).
The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| group_id | `uint32_t` | | Mission-unique group id (from [MAV_CMD_GROUP_END](#MAV_CMD_GROUP_END)). | +| mission_checksum | `uint32_t` | | CRC32 checksum of current plan for [MAV_MISSION_TYPE_ALL](#MAV_MISSION_TYPE_ALL). As defined in [MISSION_CHECKSUM](#MISSION_CHECKSUM) message. | +| time_usec | `uint64_t` | us | Timestamp (UNIX Epoch time or time since system boot).
The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | ### RADIO_RC_CHANNELS (420) — [WIP] {#RADIO_RC_CHANNELS} @@ -171,15 +166,14 @@ In this case time_last_update_ms still contains the timestamp of the last valid For instance, the channels data could contain failsafe values configured in the receiver; the default is to carry the last valid data. Note: The RC channels fields are extensions to ensure that they are located at the end of the serialized payload and subject to MAVLink's trailing-zero trimming. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). -target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). -time_last_update_ms | `uint32_t` | ms | | Time when the data in the channels field were last updated (time since boot in the receiver's time domain). -flags | `uint16_t` | | [RADIO_RC_CHANNELS_FLAGS](#RADIO_RC_CHANNELS_FLAGS) | Radio RC channels status flags. -count | `uint8_t` | | | Total number of RC channels being received. This can be larger than 32, indicating that more channels are available but not given in this message. -channels ++ | `int16_t[32]` | | min:-4096 max:4096 | RC channels.
Channel values are in centered 13 bit format. Range is -4096 to 4096, center is 0. Conversion to PWM is x * 5/32 + 1500.
Channels with indexes equal or above count should be set to 0, to benefit from MAVLink's trailing-zero trimming. - +| Field Name | Type | Units | Values | Description | +| ------------------------------------------------------------------------ | ------------- | ----- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). | +| target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). | +| time_last_update_ms | `uint32_t` | ms | | Time when the data in the channels field were last updated (time since boot in the receiver's time domain). | +| flags | `uint16_t` | | [RADIO_RC_CHANNELS_FLAGS](#RADIO_RC_CHANNELS_FLAGS) | Radio RC channels status flags. | +| count | `uint8_t` | | | Total number of RC channels being received. This can be larger than 32, indicating that more channels are available but not given in this message. | +| channels ++ | `int16_t[32]` | | min:-4096 max:4096 | RC channels.
Channel values are in centered 13 bit format. Range is -4096 to 4096, center is 0. Conversion to PWM is x \* 5/32 + 1500.
Channels with indexes equal or above count should be set to 0, to benefit from MAVLink's trailing-zero trimming. | ### RC_CHANNELS_OVERRIDE_V2 (421) — [WIP] {#RC_CHANNELS_OVERRIDE_V2} @@ -189,13 +183,12 @@ Highly bandwidth-efficient RC override message for professional networked operat Supersedes [RC_CHANNELS_OVERRIDE](#RC_CHANNELS_OVERRIDE) by adding 32-channel support and a bitmask for multi-master conflict avoidance. Uses centered-at-zero values and extension-field placement to maximize MAVLink 2 trailing-zero truncation. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID. -target_component | `uint8_t` | Component ID. -active_mask | `uint32_t` | Bitmap of included channels (bit 0 = CH1). 1: Valid/Override, 0: Ignore. -channels ++ | `int16_t[32]` | RC channels in centered 13-bit format. Range: -4096 to 4096, Center: 0.
Conversion to PWM: (x * 5/32) + 1500.
Unused channels must be set to 0 to enable MAVLink 2 trailing-zero trimming. - +| Field Name | Type | Description | +| ------------------------------------------------------------------------ | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | System ID. | +| target_component | `uint8_t` | Component ID. | +| active_mask | `uint32_t` | Bitmap of included channels (bit 0 = CH1). 1: Valid/Override, 0: Ignore. | +| channels ++ | `int16_t[32]` | RC channels in centered 13-bit format. Range: -4096 to 4096, Center: 0.
Conversion to PWM: (x \* 5/32) + 1500.
Unused channels must be set to 0 to enable MAVLink 2 trailing-zero trimming. | ### GNSS_INTEGRITY (441) — [WIP] {#GNSS_INTEGRITY} @@ -203,21 +196,20 @@ active_mask | `uint32_t` | Bitmap of included channels (bit 0 = CH1). 1: Valid/O Information about key components of GNSS receivers, like signal authentication, interference and system errors. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -id | `uint8_t` | | | GNSS receiver id. Must match instance ids of other messages from same receiver.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -system_errors | `uint32_t` | | [GPS_SYSTEM_ERROR_FLAGS](#GPS_SYSTEM_ERROR_FLAGS) | Errors in the GPS system. -authentication_state | `uint8_t` | | [GPS_AUTHENTICATION_STATE](#GPS_AUTHENTICATION_STATE) | Signal authentication state of the GPS system. -jamming_state | `uint8_t` | | [GPS_JAMMING_STATE](#GPS_JAMMING_STATE) | Signal jamming state of the GPS system. -spoofing_state | `uint8_t` | | [GPS_SPOOFING_STATE](#GPS_SPOOFING_STATE) | Signal spoofing state of the GPS system. -raim_state | `uint8_t` | | [GPS_RAIM_STATE](#GPS_RAIM_STATE) | The state of the RAIM processing. -raim_hfom | `uint16_t` | cm | invalid:UINT16_MAX | Horizontal expected accuracy using satellites successfully validated using RAIM. -raim_vfom | `uint16_t` | cm | invalid:UINT16_MAX | Vertical expected accuracy using satellites successfully validated using RAIM. -corrections_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the estimated quality of incoming corrections, or 255 if not available. -system_status_summary | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the overall status of the receiver, or 255 if not available. -gnss_signal_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the quality of incoming GNSS signals, or 255 if not available. -post_processing_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the estimated PPK quality, or 255 if not available. - +| Field Name | Type | Units | Values | Description | +| ----------------------- | ---------- | ----- | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| id | `uint8_t` | | | GNSS receiver id. Must match instance ids of other messages from same receiver.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| system_errors | `uint32_t` | | [GPS_SYSTEM_ERROR_FLAGS](#GPS_SYSTEM_ERROR_FLAGS) | Errors in the GPS system. | +| authentication_state | `uint8_t` | | [GPS_AUTHENTICATION_STATE](#GPS_AUTHENTICATION_STATE) | Signal authentication state of the GPS system. | +| jamming_state | `uint8_t` | | [GPS_JAMMING_STATE](#GPS_JAMMING_STATE) | Signal jamming state of the GPS system. | +| spoofing_state | `uint8_t` | | [GPS_SPOOFING_STATE](#GPS_SPOOFING_STATE) | Signal spoofing state of the GPS system. | +| raim_state | `uint8_t` | | [GPS_RAIM_STATE](#GPS_RAIM_STATE) | The state of the RAIM processing. | +| raim_hfom | `uint16_t` | cm | invalid:UINT16_MAX | Horizontal expected accuracy using satellites successfully validated using RAIM. | +| raim_vfom | `uint16_t` | cm | invalid:UINT16_MAX | Vertical expected accuracy using satellites successfully validated using RAIM. | +| corrections_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the estimated quality of incoming corrections, or 255 if not available. | +| system_status_summary | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the overall status of the receiver, or 255 if not available. | +| gnss_signal_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the quality of incoming GNSS signals, or 255 if not available. | +| post_processing_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abstract value representing the estimated PPK quality, or 255 if not available. | ### TARGET_ABSOLUTE (510) — [WIP] {#TARGET_ABSOLUTE} @@ -225,22 +217,21 @@ post_processing_quality | `uint8_t` | | invalid:UINT8_MAX min:0 max:10 | An abst Current motion information from sensors on a target -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -timestamp | `uint64_t` | us | | Timestamp (UNIX epoch time). -id | `uint8_t` | | | The ID of the target if multiple targets are present -sensor_capabilities | `uint8_t` | | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS) | Bitmap to indicate the sensor's reporting capabilities -lat | `int32_t` | degE7 | | Target's latitude (WGS84) -lon | `int32_t` | degE7 | | Target's longitude (WGS84) -alt | `float` | m | | Target's altitude (AMSL) -vel | `float[3]` | m/s | invalid:[0] | Target's velocity in its body frame -acc | `float[3]` | m/s/s | invalid:[0] | Linear target's acceleration in its body frame -q_target | `float[4]` | | invalid:[0] | Quaternion of the target's orientation from its body frame to the vehicle's NED frame. -rates | `float[3]` | rad/s | invalid:[0] | Target's roll, pitch and yaw rates -position_std | `float[2]` | m | | Standard deviation of horizontal (eph) and vertical (epv) position errors -vel_std | `float[3]` | m/s | | Standard deviation of the target's velocity in its body frame -acc_std | `float[3]` | m/s/s | | Standard deviation of the target's acceleration in its body frame - +| Field Name | Type | Units | Values | Description | +| ------------------- | ---------- | ----- | ----------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| timestamp | `uint64_t` | us | | Timestamp (UNIX epoch time). | +| id | `uint8_t` | | | The ID of the target if multiple targets are present | +| sensor_capabilities | `uint8_t` | | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS) | Bitmap to indicate the sensor's reporting capabilities | +| lat | `int32_t` | degE7 | | Target's latitude (WGS84) | +| lon | `int32_t` | degE7 | | Target's longitude (WGS84) | +| alt | `float` | m | | Target's altitude (AMSL) | +| vel | `float[3]` | m/s | invalid:[0] | Target's velocity in its body frame | +| acc | `float[3]` | m/s/s | invalid:[0] | Linear target's acceleration in its body frame | +| q_target | `float[4]` | | invalid:[0] | Quaternion of the target's orientation from its body frame to the vehicle's NED frame. | +| rates | `float[3]` | rad/s | invalid:[0] | Target's roll, pitch and yaw rates | +| position_std | `float[2]` | m | | Standard deviation of horizontal (eph) and vertical (epv) position errors | +| vel_std | `float[3]` | m/s | | Standard deviation of the target's velocity in its body frame | +| acc_std | `float[3]` | m/s/s | | Standard deviation of the target's acceleration in its body frame | ### TARGET_RELATIVE (511) — [WIP] {#TARGET_RELATIVE} @@ -248,20 +239,19 @@ acc_std | `float[3]` | m/s/s | | Standard deviation of the target's acceleration The location of a target measured by MAV's onboard sensors. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -timestamp | `uint64_t` | us | | Timestamp (UNIX epoch time) -id | `uint8_t` | | | The ID of the target if multiple targets are present
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -frame | `uint8_t` | | [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | Coordinate frame used for following fields. -x | `float` | m | | X Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) -y | `float` | m | | Y Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) -z | `float` | m | | Z Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) -pos_std | `float[3]` | m | | Standard deviation of the target's position in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) -yaw_std | `float` | rad | | Standard deviation of the target's orientation in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) -q_target | `float[4]` | | | Quaternion of the target's orientation from the target's frame to the [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -q_sensor | `float[4]` | | | Quaternion of the sensor's orientation from [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) to vehicle-carried NED. (Ignored if set to (0,0,0,0)) (w, x, y, z order, zero-rotation is 1, 0, 0, 0) -type | `uint8_t` | | [LANDING_TARGET_TYPE](#LANDING_TARGET_TYPE) | Type of target - +| Field Name | Type | Units | Values | Description | +| ---------- | ---------- | ----- | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| timestamp | `uint64_t` | us | | Timestamp (UNIX epoch time) | +| id | `uint8_t` | | | The ID of the target if multiple targets are present
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| frame | `uint8_t` | | [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | Coordinate frame used for following fields. | +| x | `float` | m | | X Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | +| y | `float` | m | | Y Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | +| z | `float` | m | | Z Position of the target in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | +| pos_std | `float[3]` | m | | Standard deviation of the target's position in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | +| yaw_std | `float` | rad | | Standard deviation of the target's orientation in [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) | +| q_target | `float[4]` | | | Quaternion of the target's orientation from the target's frame to the [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| q_sensor | `float[4]` | | | Quaternion of the sensor's orientation from [TARGET_OBS_FRAME](#TARGET_OBS_FRAME) to vehicle-carried NED. (Ignored if set to (0,0,0,0)) (w, x, y, z order, zero-rotation is 1, 0, 0, 0) | +| type | `uint8_t` | | [LANDING_TARGET_TYPE](#LANDING_TARGET_TYPE) | Type of target | ### CONTROL_STATUS (512) — [WIP] {#CONTROL_STATUS} @@ -270,22 +260,21 @@ type | `uint8_t` | | [LANDING_TARGET_TYPE](#LANDING_TARGET_TYPE) | Type of targe Information about GCS(s) in control of this MAV. This should be broadcast at low rate (nominally 1 Hz) and emitted when ownership or takeover status change. -Components in the system should only accept "state changing commands/messages" from any system id in `gcs_main` or `gcs_secondary`. +Components in the system should only accept "state changing commands/messages" from any system id in `gcs_main` or `gcs_secondary`. - In single-owner mode there is a single GCS that can send "state changing commands/messages" listed in `gcs_main` (`gcs_secondary` must be set to all-zero). - In multi-owner mode, all GCS with ids in `gcs_main` and `gcs_secondary` can send "state changing commands/messages". -However `gcs_main` is the only GCS that can perform "special controlled operations" such as manual control. + However `gcs_main` is the only GCS that can perform "special controlled operations" such as manual control. - Control over ownership of the `gcs_main` role is requested using [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL). - GCS in `gcs_secondary` are set by the flight stack (cannot be set by this mechanism). -It should only include IDs for connected GCS. -If more than 11 GCS are in control and visible, the flight stack will at most be able to publish 11. - -Field Name | Type | Values | Description ---- | --- | --- | --- -flags | `uint8_t` | [GCS_CONTROL_STATUS_FLAGS](#GCS_CONTROL_STATUS_FLAGS) | Control status. For example, whether takeover of the `gcs_main` role is allowed, and whether this [CONTROL_STATUS](#CONTROL_STATUS) instance defines the default controlling GCS for the whole system. -gcs_main | `uint8_t` | invalid:0 | System ID of GCS in control. 0: no GCS in control. -gcs_secondary | `uint8_t[10]` | invalid:[0,] | System IDs from which the system can recieve state-changing commands/messages in multi-control mode. All values should be zero for single-ower mode. + It should only include IDs for connected GCS. + If more than 11 GCS are in control and visible, the flight stack will at most be able to publish 11. +| Field Name | Type | Values | Description | +| ------------- | ------------- | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| flags | `uint8_t` | [GCS_CONTROL_STATUS_FLAGS](#GCS_CONTROL_STATUS_FLAGS) | Control status. For example, whether takeover of the `gcs_main` role is allowed, and whether this [CONTROL_STATUS](#CONTROL_STATUS) instance defines the default controlling GCS for the whole system. | +| gcs_main | `uint8_t` | invalid:0 | System ID of GCS in control. 0: no GCS in control. | +| gcs_secondary | `uint8_t[10]` | invalid:[0,] | System IDs from which the system can recieve state-changing commands/messages in multi-control mode. All values should be zero for single-ower mode. | ### RANGING_BEACON (513) — [WIP] {#RANGING_BEACON} @@ -295,24 +284,23 @@ Range information from a radio beacon for trilateration-based positioning. This message is telemetry intended for consumption by an autopilot (MAVLink does not define the mechanism used to determine the range). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. -target_system | `uint8_t` | | | System ID. -target_component | `uint8_t` | | | Component ID. -beacon_id | `uint16_t` | | | ID of the ranging beacon/station.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -range | `uint32_t` | mm | invalid:UINT32_MAX | Range measurement between a beacon and a vehicle. -lat | `int32_t` | degE7 | invalid:INT32_MAX | Beacon latitude (WGS84). -lon | `int32_t` | degE7 | invalid:INT32_MAX | Beacon longitude (WGS84). -alt | `float` | m | invalid:NaN | Beacon altitude (frame defined in alt_type). -alt_type | `uint8_t` | | [RANGING_BEACON_ALT_TYPE](#RANGING_BEACON_ALT_TYPE) | Altitude frame for alt field. [RANGING_BEACON_ALT_TYPE_WGS84](#RANGING_BEACON_ALT_TYPE_WGS84) (0) preferred. -hacc_est | `uint32_t` | mm | invalid:UINT32_MAX | Beacon 1-sigma horizontal accuracy estimate. -vacc_est | `uint32_t` | mm | invalid:UINT32_MAX | Beacon 1-sigma vertical accuracy estimate. -carrier_freq | `uint16_t` | MHz | invalid:UINT16_MIN | Ranging carrier frequency -range_accuracy | `uint32_t` | mm | invalid:UINT32_MAX | Estimated 1-sigma range measurement accuracy. -sequence | `uint8_t` | | | Measurement sequence number. -status | `uint8_t` | | [RANGING_BEACON_STATUS_FLAG](#RANGING_BEACON_STATUS_FLAG) | Ranging beacon status. - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | | Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number. | +| target_system | `uint8_t` | | | System ID. | +| target_component | `uint8_t` | | | Component ID. | +| beacon_id | `uint16_t` | | | ID of the ranging beacon/station.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| range | `uint32_t` | mm | invalid:UINT32_MAX | Range measurement between a beacon and a vehicle. | +| lat | `int32_t` | degE7 | invalid:INT32_MAX | Beacon latitude (WGS84). | +| lon | `int32_t` | degE7 | invalid:INT32_MAX | Beacon longitude (WGS84). | +| alt | `float` | m | invalid:NaN | Beacon altitude (frame defined in alt_type). | +| alt_type | `uint8_t` | | [RANGING_BEACON_ALT_TYPE](#RANGING_BEACON_ALT_TYPE) | Altitude frame for alt field. [RANGING_BEACON_ALT_TYPE_WGS84](#RANGING_BEACON_ALT_TYPE_WGS84) (0) preferred. | +| hacc_est | `uint32_t` | mm | invalid:UINT32_MAX | Beacon 1-sigma horizontal accuracy estimate. | +| vacc_est | `uint32_t` | mm | invalid:UINT32_MAX | Beacon 1-sigma vertical accuracy estimate. | +| carrier_freq | `uint16_t` | MHz | invalid:UINT16_MIN | Ranging carrier frequency | +| range_accuracy | `uint32_t` | mm | invalid:UINT32_MAX | Estimated 1-sigma range measurement accuracy. | +| sequence | `uint8_t` | | | Measurement sequence number. | +| status | `uint8_t` | | [RANGING_BEACON_STATUS_FLAG](#RANGING_BEACON_STATUS_FLAG) | Ranging beacon status. | ### ESTIMATOR_SENSOR_FUSION_STATUS (514) — [WIP] {#ESTIMATOR_SENSOR_FUSION_STATUS} @@ -320,12 +308,11 @@ status | `uint8_t` | | [RANGING_BEACON_STATUS_FLAG](#RANGING_BEACON_STATUS_FLAG) Status of estimator sensor fusion sources. Each array is indexed by [ESTIMATOR_SENSOR_FUSION_SOURCE](#ESTIMATOR_SENSOR_FUSION_SOURCE) - 1. Each element is a per-instance bitmask (bit 0 = instance 0, etc.). For single-instance sources only bit 0 is used. For multi-instance sources like AGP, multiple bits may be set. -Field Name | Type | Description ---- | --- | --- -intended | `uint8_t[9]` | Per-source instance bitmask of sensors the estimator intends to fuse (reflects CTRL params with runtime overrides via [MAV_CMD_ESTIMATOR_SENSOR_ENABLE](#MAV_CMD_ESTIMATOR_SENSOR_ENABLE)). -active | `uint8_t[9]` | Per-source instance bitmask of sensors the estimator is actively fusing. -test_ratio | `float[9]` | Per-source normalized innovation test ratio. NaN if not available. - +| Field Name | Type | Description | +| ---------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| intended | `uint8_t[9]` | Per-source instance bitmask of sensors the estimator intends to fuse (reflects CTRL params with runtime overrides via [MAV_CMD_ESTIMATOR_SENSOR_ENABLE](#MAV_CMD_ESTIMATOR_SENSOR_ENABLE)). | +| active | `uint8_t[9]` | Per-source instance bitmask of sensors the estimator is actively fusing. | +| test_ratio | `float[9]` | Per-source normalized innovation test ratio. NaN if not available. | ## Enumerated Types @@ -335,28 +322,28 @@ test_ratio | `float[9]` | Per-source normalized innovation test ratio. NaN if no (Bitmask) Battery status flags for fault, health and state indication. -Value | Name | Description ---- | --- | --- -1 | [MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) | The battery is not ready to use (fly).
Set if the battery has faults or other conditions that make it unsafe to fly with.
Note: It will be the logical OR of other status bits (chosen by the manufacturer/integrator). -2 | [MAV_BATTERY_STATUS_FLAGS_CHARGING](#MAV_BATTERY_STATUS_FLAGS_CHARGING) | Battery is charging. -4 | [MAV_BATTERY_STATUS_FLAGS_CELL_BALANCING](#MAV_BATTERY_STATUS_FLAGS_CELL_BALANCING) | Battery is cell balancing (during charging).
Not ready to use ([MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) may be set). -8 | [MAV_BATTERY_STATUS_FLAGS_FAULT_CELL_IMBALANCE](#MAV_BATTERY_STATUS_FLAGS_FAULT_CELL_IMBALANCE) | Battery cells are not balanced.
Not ready to use. -16 | [MAV_BATTERY_STATUS_FLAGS_AUTO_DISCHARGING](#MAV_BATTERY_STATUS_FLAGS_AUTO_DISCHARGING) | Battery is auto discharging (towards storage level).
Not ready to use ([MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) would be set). -32 | [MAV_BATTERY_STATUS_FLAGS_REQUIRES_SERVICE](#MAV_BATTERY_STATUS_FLAGS_REQUIRES_SERVICE) | Battery requires service (not safe to fly).
This is set at vendor discretion.
It is likely to be set for most faults, and may also be set according to a maintenance schedule (such as age, or number of recharge cycles, etc.). -64 | [MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY](#MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY) | Battery is faulty and cannot be repaired (not safe to fly).
This is set at vendor discretion.
The battery should be disposed of safely. -128 | [MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED](#MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED) | Automatic battery protection monitoring is enabled.
When enabled, the system will monitor for certain kinds of faults, such as cells being over-voltage.
If a fault is triggered then and protections are enabled then a safety fault ([MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM](#MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM)) will be set and power from the battery will be stopped.
Note that battery protection monitoring should only be enabled when the vehicle is landed. Once the vehicle is armed, or starts moving, the protections should be disabled to prevent false positives from disabling the output. -256 | [MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM](#MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM) | The battery fault protection system had detected a fault and cut all power from the battery.
This will only trigger if [MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED](#MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED) is set.
Other faults like [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT) may also be set, indicating the cause of the protection fault. -512 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT) | One or more cells are above their maximum voltage rating. -1024 | [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT) | One or more cells are below their minimum voltage rating.
A battery that had deep-discharged might be irrepairably damaged, and set both [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT) and [MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY](#MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY). -2048 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_TEMPERATURE](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_TEMPERATURE) | Over-temperature fault. -4096 | [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_TEMPERATURE](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_TEMPERATURE) | Under-temperature fault. -8192 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_CURRENT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_CURRENT) | Over-current fault. -16384 | [MAV_BATTERY_STATUS_FLAGS_FAULT_SHORT_CIRCUIT](#MAV_BATTERY_STATUS_FLAGS_FAULT_SHORT_CIRCUIT) | Short circuit event detected.
The battery may or may not be safe to use (check other flags). -32768 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_VOLTAGE](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_VOLTAGE) | Voltage not compatible with power rail voltage (batteries on same power rail should have similar voltage). -65536 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_FIRMWARE](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_FIRMWARE) | Battery firmware is not compatible with current autopilot firmware. -131072 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION) | Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). -262144 | [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL) | Battery capacity_consumed and capacity_remaining values are relative to a full battery (they sum to the total capacity of the battery).
This flag would be set for a smart battery that can accurately determine its remaining charge across vehicle reboots and discharge/recharge cycles.
If unset the capacity_consumed indicates the consumption since vehicle power-on, as measured using a power monitor. The capacity_remaining, if provided, indicates the estimated remaining capacity on the assumption that the battery was full on vehicle boot.
If unset a GCS is recommended to advise that users fully charge the battery on power on. -2147483648 | [MAV_BATTERY_STATUS_FLAGS_EXTENDED](#MAV_BATTERY_STATUS_FLAGS_EXTENDED) | Reserved (not used). If set, this will indicate that an additional status field exists for higher status values. +| Value | Name | Description | +| ---------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) | The battery is not ready to use (fly).
Set if the battery has faults or other conditions that make it unsafe to fly with.
Note: It will be the logical OR of other status bits (chosen by the manufacturer/integrator). | +| 2 | [MAV_BATTERY_STATUS_FLAGS_CHARGING](#MAV_BATTERY_STATUS_FLAGS_CHARGING) | Battery is charging. | +| 4 | [MAV_BATTERY_STATUS_FLAGS_CELL_BALANCING](#MAV_BATTERY_STATUS_FLAGS_CELL_BALANCING) | Battery is cell balancing (during charging).
Not ready to use ([MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) may be set). | +| 8 | [MAV_BATTERY_STATUS_FLAGS_FAULT_CELL_IMBALANCE](#MAV_BATTERY_STATUS_FLAGS_FAULT_CELL_IMBALANCE) | Battery cells are not balanced.
Not ready to use. | +| 16 | [MAV_BATTERY_STATUS_FLAGS_AUTO_DISCHARGING](#MAV_BATTERY_STATUS_FLAGS_AUTO_DISCHARGING) | Battery is auto discharging (towards storage level).
Not ready to use ([MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE](#MAV_BATTERY_STATUS_FLAGS_NOT_READY_TO_USE) would be set). | +| 32 | [MAV_BATTERY_STATUS_FLAGS_REQUIRES_SERVICE](#MAV_BATTERY_STATUS_FLAGS_REQUIRES_SERVICE) | Battery requires service (not safe to fly).
This is set at vendor discretion.
It is likely to be set for most faults, and may also be set according to a maintenance schedule (such as age, or number of recharge cycles, etc.). | +| 64 | [MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY](#MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY) | Battery is faulty and cannot be repaired (not safe to fly).
This is set at vendor discretion.
The battery should be disposed of safely. | +| 128 | [MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED](#MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED) | Automatic battery protection monitoring is enabled.
When enabled, the system will monitor for certain kinds of faults, such as cells being over-voltage.
If a fault is triggered then and protections are enabled then a safety fault ([MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM](#MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM)) will be set and power from the battery will be stopped.
Note that battery protection monitoring should only be enabled when the vehicle is landed. Once the vehicle is armed, or starts moving, the protections should be disabled to prevent false positives from disabling the output. | +| 256 | [MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM](#MAV_BATTERY_STATUS_FLAGS_FAULT_PROTECTION_SYSTEM) | The battery fault protection system had detected a fault and cut all power from the battery.
This will only trigger if [MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED](#MAV_BATTERY_STATUS_FLAGS_PROTECTIONS_ENABLED) is set.
Other faults like [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT) may also be set, indicating the cause of the protection fault. | +| 512 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_VOLT) | One or more cells are above their maximum voltage rating. | +| 1024 | [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT) | One or more cells are below their minimum voltage rating.
A battery that had deep-discharged might be irrepairably damaged, and set both [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_VOLT) and [MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY](#MAV_BATTERY_STATUS_FLAGS_BAD_BATTERY). | +| 2048 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_TEMPERATURE](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_TEMPERATURE) | Over-temperature fault. | +| 4096 | [MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_TEMPERATURE](#MAV_BATTERY_STATUS_FLAGS_FAULT_UNDER_TEMPERATURE) | Under-temperature fault. | +| 8192 | [MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_CURRENT](#MAV_BATTERY_STATUS_FLAGS_FAULT_OVER_CURRENT) | Over-current fault. | +| 16384 | [MAV_BATTERY_STATUS_FLAGS_FAULT_SHORT_CIRCUIT](#MAV_BATTERY_STATUS_FLAGS_FAULT_SHORT_CIRCUIT) | Short circuit event detected.
The battery may or may not be safe to use (check other flags). | +| 32768 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_VOLTAGE](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_VOLTAGE) | Voltage not compatible with power rail voltage (batteries on same power rail should have similar voltage). | +| 65536 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_FIRMWARE](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_FIRMWARE) | Battery firmware is not compatible with current autopilot firmware. | +| 131072 | [MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION](#MAV_BATTERY_STATUS_FLAGS_FAULT_INCOMPATIBLE_CELLS_CONFIGURATION) | Battery is not compatible due to cell configuration (e.g. 5s1p when vehicle requires 6s). | +| 262144 | [MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL](#MAV_BATTERY_STATUS_FLAGS_CAPACITY_RELATIVE_TO_FULL) | Battery capacity_consumed and capacity_remaining values are relative to a full battery (they sum to the total capacity of the battery).
This flag would be set for a smart battery that can accurately determine its remaining charge across vehicle reboots and discharge/recharge cycles.
If unset the capacity_consumed indicates the consumption since vehicle power-on, as measured using a power monitor. The capacity_remaining, if provided, indicates the estimated remaining capacity on the assumption that the battery was full on vehicle boot.
If unset a GCS is recommended to advise that users fully charge the battery on power on. | +| 2147483648 | [MAV_BATTERY_STATUS_FLAGS_EXTENDED](#MAV_BATTERY_STATUS_FLAGS_EXTENDED) | Reserved (not used). If set, this will indicate that an additional status field exists for higher status values. | ### GCS_CONTROL_STATUS_FLAGS — [WIP] {#GCS_CONTROL_STATUS_FLAGS} @@ -364,10 +351,10 @@ Value | Name | Description (Bitmask) [CONTROL_STATUS](#CONTROL_STATUS) flags. -Value | Name | Description ---- | --- | --- -1 | [GCS_CONTROL_STATUS_FLAGS_SYSTEM_MANAGER](#GCS_CONTROL_STATUS_FLAGS_SYSTEM_MANAGER) | If set, this [CONTROL_STATUS](#CONTROL_STATUS) publishes the controlling GCS(s) of the whole system.
If unset, the [CONTROL_STATUS](#CONTROL_STATUS) indicates the controlling GCS(s) for just the component emitting the message.
Note that to request control of the system a GCS should send [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL) to the component emitting [CONTROL_STATUS](#CONTROL_STATUS) with this flag set. -2 | [GCS_CONTROL_STATUS_FLAGS_TAKEOVER_ALLOWED](#GCS_CONTROL_STATUS_FLAGS_TAKEOVER_ALLOWED) | Takeover allowed (requests for control will be granted). If not set requests for control will be rejected, but the controlling GCS will be notified (and may release control or allow takeover). +| Value | Name | Description | +| ------------------------------------------------------- | --------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [GCS_CONTROL_STATUS_FLAGS_SYSTEM_MANAGER](#GCS_CONTROL_STATUS_FLAGS_SYSTEM_MANAGER) | If set, this [CONTROL_STATUS](#CONTROL_STATUS) publishes the controlling GCS(s) of the whole system.
If unset, the [CONTROL_STATUS](#CONTROL_STATUS) indicates the controlling GCS(s) for just the component emitting the message.
Note that to request control of the system a GCS should send [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL) to the component emitting [CONTROL_STATUS](#CONTROL_STATUS) with this flag set. | +| 2 | [GCS_CONTROL_STATUS_FLAGS_TAKEOVER_ALLOWED](#GCS_CONTROL_STATUS_FLAGS_TAKEOVER_ALLOWED) | Takeover allowed (requests for control will be granted). If not set requests for control will be rejected, but the controlling GCS will be notified (and may release control or allow takeover). | ### TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS — [WIP] {#TARGET_ABSOLUTE_SENSOR_CAPABILITY_FLAGS} @@ -375,13 +362,13 @@ Value | Name | Description (Bitmask) These flags indicate the sensor reporting capabilities for [TARGET_ABSOLUTE](#TARGET_ABSOLUTE). -Value | Name | Description ---- | --- | --- -1 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_POSITION](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_POSITION) | -2 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_VELOCITY](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_VELOCITY) | -4 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_ACCELERATION](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_ACCELERATION) | -8 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_ATTITUDE](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_ATTITUDE) | -16 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_RATES](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_RATES) | +| Value | Name | Description | +| ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- | ----------- | +| 1 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_POSITION](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_POSITION) | +| 2 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_VELOCITY](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_VELOCITY) | +| 4 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_ACCELERATION](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_ACCELERATION) | +| 8 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_ATTITUDE](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_ATTITUDE) | +| 16 | [TARGET_ABSOLUTE_SENSOR_CAPABILITY_RATES](#TARGET_ABSOLUTE_SENSOR_CAPABILITY_RATES) | ### TARGET_OBS_FRAME — [WIP] {#TARGET_OBS_FRAME} @@ -389,12 +376,12 @@ Value | Name | Description The frame of a target observation from an onboard sensor. -Value | Name | Description ---- | --- | --- -0 | [TARGET_OBS_FRAME_LOCAL_NED](#TARGET_OBS_FRAME_LOCAL_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. -1 | [TARGET_OBS_FRAME_BODY_FRD](#TARGET_OBS_FRAME_BODY_FRD) | FRD local frame aligned to the vehicle's attitude (x: Forward, y: Right, z: Down) with an origin that travels with vehicle. -2 | [TARGET_OBS_FRAME_LOCAL_OFFSET_NED](#TARGET_OBS_FRAME_LOCAL_OFFSET_NED) | NED local tangent frame (x: North, y: East, z: Down) with an origin that travels with vehicle. -3 | [TARGET_OBS_FRAME_OTHER](#TARGET_OBS_FRAME_OTHER) | Other sensor frame for target observations neither in local NED nor in body FRD. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | +| 0 | [TARGET_OBS_FRAME_LOCAL_NED](#TARGET_OBS_FRAME_LOCAL_NED) | NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth. | +| 1 | [TARGET_OBS_FRAME_BODY_FRD](#TARGET_OBS_FRAME_BODY_FRD) | FRD local frame aligned to the vehicle's attitude (x: Forward, y: Right, z: Down) with an origin that travels with vehicle. | +| 2 | [TARGET_OBS_FRAME_LOCAL_OFFSET_NED](#TARGET_OBS_FRAME_LOCAL_OFFSET_NED) | NED local tangent frame (x: North, y: East, z: Down) with an origin that travels with vehicle. | +| 3 | [TARGET_OBS_FRAME_OTHER](#TARGET_OBS_FRAME_OTHER) | Other sensor frame for target observations neither in local NED nor in body FRD. | ### RADIO_RC_CHANNELS_FLAGS — [WIP] {#RADIO_RC_CHANNELS_FLAGS} @@ -402,10 +389,10 @@ Value | Name | Description (Bitmask) [RADIO_RC_CHANNELS](#RADIO_RC_CHANNELS) flags (bitmask). -Value | Name | Description ---- | --- | --- -1 | [RADIO_RC_CHANNELS_FLAGS_FAILSAFE](#RADIO_RC_CHANNELS_FLAGS_FAILSAFE) | Failsafe is active. The content of the RC channels data in the [RADIO_RC_CHANNELS](#RADIO_RC_CHANNELS) message is implementation dependent. -2 | [RADIO_RC_CHANNELS_FLAGS_OUTDATED](#RADIO_RC_CHANNELS_FLAGS_OUTDATED) | Channel data may be out of date. This is set when the receiver is unable to validate incoming data from the transmitter and has therefore resent the last valid data it received. +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [RADIO_RC_CHANNELS_FLAGS_FAILSAFE](#RADIO_RC_CHANNELS_FLAGS_FAILSAFE) | Failsafe is active. The content of the RC channels data in the [RADIO_RC_CHANNELS](#RADIO_RC_CHANNELS) message is implementation dependent. | +| 2 | [RADIO_RC_CHANNELS_FLAGS_OUTDATED](#RADIO_RC_CHANNELS_FLAGS_OUTDATED) | Channel data may be out of date. This is set when the receiver is unable to validate incoming data from the transmitter and has therefore resent the last valid data it received. | ### GPS_SYSTEM_ERROR_FLAGS — [WIP] {#GPS_SYSTEM_ERROR_FLAGS} @@ -413,15 +400,15 @@ Value | Name | Description (Bitmask) Flags indicating errors in a GPS receiver. -Value | Name | Description ---- | --- | --- -1 | [GPS_SYSTEM_ERROR_INCOMING_CORRECTIONS](#GPS_SYSTEM_ERROR_INCOMING_CORRECTIONS) | There are problems with incoming correction streams. -2 | [GPS_SYSTEM_ERROR_CONFIGURATION](#GPS_SYSTEM_ERROR_CONFIGURATION) | There are problems with the configuration. -4 | [GPS_SYSTEM_ERROR_SOFTWARE](#GPS_SYSTEM_ERROR_SOFTWARE) | There are problems with the software on the GPS receiver. -8 | [GPS_SYSTEM_ERROR_ANTENNA](#GPS_SYSTEM_ERROR_ANTENNA) | There are problems with an antenna connected to the GPS receiver. -16 | [GPS_SYSTEM_ERROR_EVENT_CONGESTION](#GPS_SYSTEM_ERROR_EVENT_CONGESTION) | There are problems handling all incoming events. -32 | [GPS_SYSTEM_ERROR_CPU_OVERLOAD](#GPS_SYSTEM_ERROR_CPU_OVERLOAD) | The GPS receiver CPU is overloaded. -64 | [GPS_SYSTEM_ERROR_OUTPUT_CONGESTION](#GPS_SYSTEM_ERROR_OUTPUT_CONGESTION) | The GPS receiver is experiencing output congestion. +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------- | +| 1 | [GPS_SYSTEM_ERROR_INCOMING_CORRECTIONS](#GPS_SYSTEM_ERROR_INCOMING_CORRECTIONS) | There are problems with incoming correction streams. | +| 2 | [GPS_SYSTEM_ERROR_CONFIGURATION](#GPS_SYSTEM_ERROR_CONFIGURATION) | There are problems with the configuration. | +| 4 | [GPS_SYSTEM_ERROR_SOFTWARE](#GPS_SYSTEM_ERROR_SOFTWARE) | There are problems with the software on the GPS receiver. | +| 8 | [GPS_SYSTEM_ERROR_ANTENNA](#GPS_SYSTEM_ERROR_ANTENNA) | There are problems with an antenna connected to the GPS receiver. | +| 16 | [GPS_SYSTEM_ERROR_EVENT_CONGESTION](#GPS_SYSTEM_ERROR_EVENT_CONGESTION) | There are problems handling all incoming events. | +| 32 | [GPS_SYSTEM_ERROR_CPU_OVERLOAD](#GPS_SYSTEM_ERROR_CPU_OVERLOAD) | The GPS receiver CPU is overloaded. | +| 64 | [GPS_SYSTEM_ERROR_OUTPUT_CONGESTION](#GPS_SYSTEM_ERROR_OUTPUT_CONGESTION) | The GPS receiver is experiencing output congestion. | ### GPS_AUTHENTICATION_STATE — [WIP] {#GPS_AUTHENTICATION_STATE} @@ -429,13 +416,13 @@ Value | Name | Description Signal authentication state in a GPS receiver. -Value | Name | Description ---- | --- | --- -0 | [GPS_AUTHENTICATION_STATE_UNKNOWN](#GPS_AUTHENTICATION_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal authentication info. -1 | [GPS_AUTHENTICATION_STATE_INITIALIZING](#GPS_AUTHENTICATION_STATE_INITIALIZING) | The GPS receiver is initializing signal authentication. -2 | [GPS_AUTHENTICATION_STATE_ERROR](#GPS_AUTHENTICATION_STATE_ERROR) | The GPS receiver encountered an error while initializing signal authentication. -3 | [GPS_AUTHENTICATION_STATE_OK](#GPS_AUTHENTICATION_STATE_OK) | The GPS receiver has correctly authenticated all signals. -4 | [GPS_AUTHENTICATION_STATE_DISABLED](#GPS_AUTHENTICATION_STATE_DISABLED) | GPS signal authentication is disabled on the receiver. +| Value | Name | Description | +| --------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| 0 | [GPS_AUTHENTICATION_STATE_UNKNOWN](#GPS_AUTHENTICATION_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal authentication info. | +| 1 | [GPS_AUTHENTICATION_STATE_INITIALIZING](#GPS_AUTHENTICATION_STATE_INITIALIZING) | The GPS receiver is initializing signal authentication. | +| 2 | [GPS_AUTHENTICATION_STATE_ERROR](#GPS_AUTHENTICATION_STATE_ERROR) | The GPS receiver encountered an error while initializing signal authentication. | +| 3 | [GPS_AUTHENTICATION_STATE_OK](#GPS_AUTHENTICATION_STATE_OK) | The GPS receiver has correctly authenticated all signals. | +| 4 | [GPS_AUTHENTICATION_STATE_DISABLED](#GPS_AUTHENTICATION_STATE_DISABLED) | GPS signal authentication is disabled on the receiver. | ### GPS_JAMMING_STATE — [WIP] {#GPS_JAMMING_STATE} @@ -443,12 +430,12 @@ Value | Name | Description Signal jamming state in a GPS receiver. -Value | Name | Description ---- | --- | --- -0 | [GPS_JAMMING_STATE_UNKNOWN](#GPS_JAMMING_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal jamming info. -1 | [GPS_JAMMING_STATE_NOT_JAMMED](#GPS_JAMMING_STATE_NOT_JAMMED) | The GPS receiver detected no signal jamming. -2 | [GPS_JAMMING_STATE_MITIGATED](#GPS_JAMMING_STATE_MITIGATED) | The GPS receiver detected and mitigated signal jamming. -3 | [GPS_JAMMING_STATE_DETECTED](#GPS_JAMMING_STATE_DETECTED) | The GPS receiver detected signal jamming. +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | ---------------------------------------------------------- | +| 0 | [GPS_JAMMING_STATE_UNKNOWN](#GPS_JAMMING_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal jamming info. | +| 1 | [GPS_JAMMING_STATE_NOT_JAMMED](#GPS_JAMMING_STATE_NOT_JAMMED) | The GPS receiver detected no signal jamming. | +| 2 | [GPS_JAMMING_STATE_MITIGATED](#GPS_JAMMING_STATE_MITIGATED) | The GPS receiver detected and mitigated signal jamming. | +| 3 | [GPS_JAMMING_STATE_DETECTED](#GPS_JAMMING_STATE_DETECTED) | The GPS receiver detected signal jamming. | ### GPS_SPOOFING_STATE — [WIP] {#GPS_SPOOFING_STATE} @@ -456,12 +443,12 @@ Value | Name | Description Signal spoofing state in a GPS receiver. -Value | Name | Description ---- | --- | --- -0 | [GPS_SPOOFING_STATE_UNKNOWN](#GPS_SPOOFING_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal spoofing info. -1 | [GPS_SPOOFING_STATE_NOT_SPOOFED](#GPS_SPOOFING_STATE_NOT_SPOOFED) | The GPS receiver detected no signal spoofing. -2 | [GPS_SPOOFING_STATE_MITIGATED](#GPS_SPOOFING_STATE_MITIGATED) | The GPS receiver detected and mitigated signal spoofing. -3 | [GPS_SPOOFING_STATE_DETECTED](#GPS_SPOOFING_STATE_DETECTED) | The GPS receiver detected signal spoofing but still has a fix. +| Value | Name | Description | +| -------------------------------------------- | ----------------------------------------------------------------- | -------------------------------------------------------------- | +| 0 | [GPS_SPOOFING_STATE_UNKNOWN](#GPS_SPOOFING_STATE_UNKNOWN) | The GPS receiver does not provide GPS signal spoofing info. | +| 1 | [GPS_SPOOFING_STATE_NOT_SPOOFED](#GPS_SPOOFING_STATE_NOT_SPOOFED) | The GPS receiver detected no signal spoofing. | +| 2 | [GPS_SPOOFING_STATE_MITIGATED](#GPS_SPOOFING_STATE_MITIGATED) | The GPS receiver detected and mitigated signal spoofing. | +| 3 | [GPS_SPOOFING_STATE_DETECTED](#GPS_SPOOFING_STATE_DETECTED) | The GPS receiver detected signal spoofing but still has a fix. | ### GPS_RAIM_STATE — [WIP] {#GPS_RAIM_STATE} @@ -469,12 +456,12 @@ Value | Name | Description State of RAIM processing. -Value | Name | Description ---- | --- | --- -0 | [GPS_RAIM_STATE_UNKNOWN](#GPS_RAIM_STATE_UNKNOWN) | RAIM capability is unknown. -1 | [GPS_RAIM_STATE_DISABLED](#GPS_RAIM_STATE_DISABLED) | RAIM is disabled. -2 | [GPS_RAIM_STATE_OK](#GPS_RAIM_STATE_OK) | RAIM integrity check was successful. -3 | [GPS_RAIM_STATE_FAILED](#GPS_RAIM_STATE_FAILED) | RAIM integrity check failed. +| Value | Name | Description | +| ------------------------------------- | --------------------------------------------------- | ------------------------------------ | +| 0 | [GPS_RAIM_STATE_UNKNOWN](#GPS_RAIM_STATE_UNKNOWN) | RAIM capability is unknown. | +| 1 | [GPS_RAIM_STATE_DISABLED](#GPS_RAIM_STATE_DISABLED) | RAIM is disabled. | +| 2 | [GPS_RAIM_STATE_OK](#GPS_RAIM_STATE_OK) | RAIM integrity check was successful. | +| 3 | [GPS_RAIM_STATE_FAILED](#GPS_RAIM_STATE_FAILED) | RAIM integrity check failed. | ### ACTUATOR_TEST_GROUP — [WIP] {#ACTUATOR_TEST_GROUP} @@ -482,15 +469,15 @@ Value | Name | Description Actuator groups to test in [MAV_CMD_ACTUATOR_GROUP_TEST](#MAV_CMD_ACTUATOR_GROUP_TEST). -Value | Name | Description ---- | --- | --- -0 | [ACTUATOR_TEST_GROUP_ROLL_TORQUE](#ACTUATOR_TEST_GROUP_ROLL_TORQUE) | Actuators that contribute to roll torque. -1 | [ACTUATOR_TEST_GROUP_PITCH_TORQUE](#ACTUATOR_TEST_GROUP_PITCH_TORQUE) | Actuators that contribute to pitch torque. -2 | [ACTUATOR_TEST_GROUP_YAW_TORQUE](#ACTUATOR_TEST_GROUP_YAW_TORQUE) | Actuators that contribute to yaw torque. -3 | [ACTUATOR_TEST_GROUP_COLLECTIVE_TILT](#ACTUATOR_TEST_GROUP_COLLECTIVE_TILT) | Actuators that affect collective tilt. -4 | [ACTUATOR_TEST_GROUP_X_THRUST](#ACTUATOR_TEST_GROUP_X_THRUST) | Actuators that contribute to x (longitudinal, positive = forward) thrust. -5 | [ACTUATOR_TEST_GROUP_Y_THRUST](#ACTUATOR_TEST_GROUP_Y_THRUST) | Actuators that contribute to y (lateral, positive = right) thrust. -6 | [ACTUATOR_TEST_GROUP_Z_THRUST](#ACTUATOR_TEST_GROUP_Z_THRUST) | Actuators that contribute to z (vertical, positive = down) thrust. +| Value | Name | Description | +| ------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| 0 | [ACTUATOR_TEST_GROUP_ROLL_TORQUE](#ACTUATOR_TEST_GROUP_ROLL_TORQUE) | Actuators that contribute to roll torque. | +| 1 | [ACTUATOR_TEST_GROUP_PITCH_TORQUE](#ACTUATOR_TEST_GROUP_PITCH_TORQUE) | Actuators that contribute to pitch torque. | +| 2 | [ACTUATOR_TEST_GROUP_YAW_TORQUE](#ACTUATOR_TEST_GROUP_YAW_TORQUE) | Actuators that contribute to yaw torque. | +| 3 | [ACTUATOR_TEST_GROUP_COLLECTIVE_TILT](#ACTUATOR_TEST_GROUP_COLLECTIVE_TILT) | Actuators that affect collective tilt. | +| 4 | [ACTUATOR_TEST_GROUP_X_THRUST](#ACTUATOR_TEST_GROUP_X_THRUST) | Actuators that contribute to x (longitudinal, positive = forward) thrust. | +| 5 | [ACTUATOR_TEST_GROUP_Y_THRUST](#ACTUATOR_TEST_GROUP_Y_THRUST) | Actuators that contribute to y (lateral, positive = right) thrust. | +| 6 | [ACTUATOR_TEST_GROUP_Z_THRUST](#ACTUATOR_TEST_GROUP_Z_THRUST) | Actuators that contribute to z (vertical, positive = down) thrust. | ### ESC_FIRMWARE — [WIP] {#ESC_FIRMWARE} @@ -498,12 +485,12 @@ Value | Name | Description ESC firmware type identifier. -Value | Name | Description ---- | --- | --- -0 | [ESC_FIRMWARE_UNKNOWN](#ESC_FIRMWARE_UNKNOWN) | Unknown firmware. -1 | [ESC_FIRMWARE_AM32](#ESC_FIRMWARE_AM32) | AM32 open source ESC firmware. -2 | [ESC_FIRMWARE_BLUEJAY](#ESC_FIRMWARE_BLUEJAY) | Bluejay open source ESC firmware. -3 | [ESC_FIRMWARE_BLHELI32](#ESC_FIRMWARE_BLHELI32) | BLHeli32 ESC firmware. +| Value | Name | Description | +| ----------------------------------- | ----------------------------------------------- | --------------------------------- | +| 0 | [ESC_FIRMWARE_UNKNOWN](#ESC_FIRMWARE_UNKNOWN) | Unknown firmware. | +| 1 | [ESC_FIRMWARE_AM32](#ESC_FIRMWARE_AM32) | AM32 open source ESC firmware. | +| 2 | [ESC_FIRMWARE_BLUEJAY](#ESC_FIRMWARE_BLUEJAY) | Bluejay open source ESC firmware. | +| 3 | [ESC_FIRMWARE_BLHELI32](#ESC_FIRMWARE_BLHELI32) | BLHeli32 ESC firmware. | ### RANGING_BEACON_ALT_TYPE — [WIP] {#RANGING_BEACON_ALT_TYPE} @@ -511,10 +498,10 @@ Value | Name | Description Altitude reference for [RANGING_BEACON](#RANGING_BEACON) alt field. -Value | Name | Description ---- | --- | --- -0 | [RANGING_BEACON_ALT_TYPE_WGS84](#RANGING_BEACON_ALT_TYPE_WGS84) | Altitude above WGS84 ellipsoid. -1 | [RANGING_BEACON_ALT_TYPE_MSL](#RANGING_BEACON_ALT_TYPE_MSL) | Altitude above Mean Sea Level (AMSL). +| Value | Name | Description | +| ------------------------------------------- | --------------------------------------------------------------- | ------------------------------------- | +| 0 | [RANGING_BEACON_ALT_TYPE_WGS84](#RANGING_BEACON_ALT_TYPE_WGS84) | Altitude above WGS84 ellipsoid. | +| 1 | [RANGING_BEACON_ALT_TYPE_MSL](#RANGING_BEACON_ALT_TYPE_MSL) | Altitude above Mean Sea Level (AMSL). | ### RANGING_BEACON_STATUS_FLAG — [WIP] {#RANGING_BEACON_STATUS_FLAG} @@ -522,9 +509,9 @@ Value | Name | Description (Bitmask) Status flags for a [RANGING_BEACON](#RANGING_BEACON). -Value | Name | Description ---- | --- | --- -1 | [RANGING_BEACON_STATUS_FLAG_STATION_SIGNAL_POOR](#RANGING_BEACON_STATUS_FLAG_STATION_SIGNAL_POOR) | Station signal is poor. This might indicate channel fading, interference, or other signal quality issues. +| Value | Name | Description | +| ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| 1 | [RANGING_BEACON_STATUS_FLAG_STATION_SIGNAL_POOR](#RANGING_BEACON_STATUS_FLAG_STATION_SIGNAL_POOR) | Station signal is poor. This might indicate channel fading, interference, or other signal quality issues. | ### ESTIMATOR_SENSOR_FUSION_SOURCE — [WIP] {#ESTIMATOR_SENSOR_FUSION_SOURCE} @@ -532,17 +519,17 @@ Value | Name | Description Estimator sensor fusion source types. Used in [MAV_CMD_ESTIMATOR_SENSOR_ENABLE](#MAV_CMD_ESTIMATOR_SENSOR_ENABLE) and as array index in [ESTIMATOR_SENSOR_FUSION_STATUS](#ESTIMATOR_SENSOR_FUSION_STATUS). -Value | Name | Description ---- | --- | --- -0 | [ESTIMATOR_SENSOR_FUSION_SOURCE_GPS](#ESTIMATOR_SENSOR_FUSION_SOURCE_GPS) | GNSS -1 | [ESTIMATOR_SENSOR_FUSION_SOURCE_OF](#ESTIMATOR_SENSOR_FUSION_SOURCE_OF) | Optical Flow -2 | [ESTIMATOR_SENSOR_FUSION_SOURCE_EV](#ESTIMATOR_SENSOR_FUSION_SOURCE_EV) | External Vision -3 | [ESTIMATOR_SENSOR_FUSION_SOURCE_AGP](#ESTIMATOR_SENSOR_FUSION_SOURCE_AGP) | Auxiliary Global Position -4 | [ESTIMATOR_SENSOR_FUSION_SOURCE_BARO](#ESTIMATOR_SENSOR_FUSION_SOURCE_BARO) | Barometer -5 | [ESTIMATOR_SENSOR_FUSION_SOURCE_RNG](#ESTIMATOR_SENSOR_FUSION_SOURCE_RNG) | Range Finder -6 | [ESTIMATOR_SENSOR_FUSION_SOURCE_MAG](#ESTIMATOR_SENSOR_FUSION_SOURCE_MAG) | Magnetometer -7 | [ESTIMATOR_SENSOR_FUSION_SOURCE_ASPD](#ESTIMATOR_SENSOR_FUSION_SOURCE_ASPD) | Airspeed -8 | [ESTIMATOR_SENSOR_FUSION_SOURCE_RANGING_BEACON](#ESTIMATOR_SENSOR_FUSION_SOURCE_RANGING_BEACON) | Ranging Beacon +| Value | Name | Description | +| ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------- | +| 0 | [ESTIMATOR_SENSOR_FUSION_SOURCE_GPS](#ESTIMATOR_SENSOR_FUSION_SOURCE_GPS) | GNSS | +| 1 | [ESTIMATOR_SENSOR_FUSION_SOURCE_OF](#ESTIMATOR_SENSOR_FUSION_SOURCE_OF) | Optical Flow | +| 2 | [ESTIMATOR_SENSOR_FUSION_SOURCE_EV](#ESTIMATOR_SENSOR_FUSION_SOURCE_EV) | External Vision | +| 3 | [ESTIMATOR_SENSOR_FUSION_SOURCE_AGP](#ESTIMATOR_SENSOR_FUSION_SOURCE_AGP) | Auxiliary Global Position | +| 4 | [ESTIMATOR_SENSOR_FUSION_SOURCE_BARO](#ESTIMATOR_SENSOR_FUSION_SOURCE_BARO) | Barometer | +| 5 | [ESTIMATOR_SENSOR_FUSION_SOURCE_RNG](#ESTIMATOR_SENSOR_FUSION_SOURCE_RNG) | Range Finder | +| 6 | [ESTIMATOR_SENSOR_FUSION_SOURCE_MAG](#ESTIMATOR_SENSOR_FUSION_SOURCE_MAG) | Magnetometer | +| 7 | [ESTIMATOR_SENSOR_FUSION_SOURCE_ASPD](#ESTIMATOR_SENSOR_FUSION_SOURCE_ASPD) | Airspeed | +| 8 | [ESTIMATOR_SENSOR_FUSION_SOURCE_RANGING_BEACON](#ESTIMATOR_SENSOR_FUSION_SOURCE_RANGING_BEACON) | Ranging Beacon | ## Commands (MAV_CMD) {#mav_commands} @@ -556,11 +543,10 @@ This might include groups such as the actuators that contribute to roll, pitch, This is similar to [MAV_CMD_ACTUATOR_TEST](#MAV_CMD_ACTUATOR_TEST), except that multiple actuators may be affected. Different groups may also affect the same actuators (as in the case of controls that affect torque in different axes). -Param (Label) | Description | Values ---- | --- | --- -1 (Group) | Actuator group to check, such as actuators related to roll torque. | [ACTUATOR_TEST_GROUP](#ACTUATOR_TEST_GROUP) -2 (Value) | Value to set. This is a normalized value across the full range of the tested group [-1,1]. | min: -1 max: 1 - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------- | +| 1 (Group) | Actuator group to check, such as actuators related to roll torque. | [ACTUATOR_TEST_GROUP](#ACTUATOR_TEST_GROUP) | +| 2 (Value) | Value to set. This is a normalized value across the full range of the tested group [-1,1]. | min: -1 max: 1 | ### MAV_CMD_DO_SET_SYS_CMP_ID (610) — [WIP] {#MAV_CMD_DO_SET_SYS_CMP_ID} @@ -570,12 +556,11 @@ Set system and component id. This allows moving of a system and all its components to a new system id, or moving a particular component to a new system/component id. Recipients must reject command addressed to broadcast system ID. -Param (Label) | Description | Values ---- | --- | --- -1 (System ID) | New system ID for target component(s). 0: ignore and reject command (broadcast system ID not allowed). | min: 1 max: 255 inc: 1 -2 (Component ID) | New component ID for target component(s). 0: ignore (component IDs don't change). | min: 0 max: 255 inc: 1 -3 (Reboot) | Reboot components after ID change. Any non-zero value triggers the reboot. | - +| Param (Label) | Description | Values | +| ---------------- | ------------------------------------------------------------------------------------------------------ | ---------------------- | +| 1 (System ID) | New system ID for target component(s). 0: ignore and reject command (broadcast system ID not allowed). | min: 1 max: 255 inc: 1 | +| 2 (Component ID) | New component ID for target component(s). 0: ignore (component IDs don't change). | min: 0 max: 255 inc: 1 | +| 3 (Reboot) | Reboot components after ID change. Any non-zero value triggers the reboot. | ### MAV_CMD_DO_SET_GLOBAL_ORIGIN (611) — [WIP] {#MAV_CMD_DO_SET_GLOBAL_ORIGIN} @@ -588,12 +573,11 @@ This enables transform between the local coordinate frame and the global (GNSS) This command supersedes [SET_GPS_GLOBAL_ORIGIN](#SET_GPS_GLOBAL_ORIGIN). Should be sent in a [COMMAND_INT](#COMMAND_INT) (Expected frame is [MAV_FRAME_GLOBAL](#MAV_FRAME_GLOBAL), and this should be assumed when sent in [COMMAND_LONG](#COMMAND_LONG)). -Param (Label) | Description | Units ---- | --- | --- -5 (Latitude) | Latitude | -6 (Longitude) | Longitude | -7 (Altitude) | Altitude | m - +| Param (Label) | Description | Units | +| ------------- | ----------- | ----- | +| 5 (Latitude) | Latitude | +| 6 (Longitude) | Longitude | +| 7 (Altitude) | Altitude | m | ### MAV_CMD_EXTERNAL_ATTITUDE_ESTIMATE (620) — [WIP] {#MAV_CMD_EXTERNAL_ATTITUDE_ESTIMATE} @@ -603,14 +587,13 @@ Set an external estimate of vehicle attitude. This might be used to provide an initial attitude (especially heading) estimate to the estimator (EKF). Angles are defined in a 3-2-1 (yaw-pitch-roll) intrinsic Tait-Bryan sequence. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Roll) | Roll angle. Set to NaN if unknown. | min: 0 max: 360 | deg -2 (Pitch) | Pitch angle. Set to NaN if unknown. | min: 0 max: 360 | deg -3 (Yaw) | Yaw/heading (relative to true north) angle. Set to NaN if unknown. | min: 0 max: 360 | deg -4 (Tilt accuracy) | Estimated 1 sigma accuracy of roll and pitch angles. Set to NaN if unknown. | | deg -7 (Yaw accuracy) | Estimated 1 sigma accuracy of yaw angle. Set to NaN if unknown. | | deg - +| Param (Label) | Description | Values | Units | +| ----------------- | --------------------------------------------------------------------------- | --------------- | ----- | +| 1 (Roll) | Roll angle. Set to NaN if unknown. | min: 0 max: 360 | deg | +| 2 (Pitch) | Pitch angle. Set to NaN if unknown. | min: 0 max: 360 | deg | +| 3 (Yaw) | Yaw/heading (relative to true north) angle. Set to NaN if unknown. | min: 0 max: 360 | deg | +| 4 (Tilt accuracy) | Estimated 1 sigma accuracy of roll and pitch angles. Set to NaN if unknown. | | deg | +| 7 (Yaw accuracy) | Estimated 1 sigma accuracy of yaw angle. Set to NaN if unknown. | | deg | ### MAV_CMD_CAMERA_START_MTI (2020) — [WIP] {#MAV_CMD_CAMERA_START_MTI} @@ -620,10 +603,9 @@ Enable Moving Target Indicators (MTI) on streamed video. Support for feature can be checked with [CAMERA_CAP_FLAGS_HAS_MTI](#CAMERA_CAP_FLAGS_HAS_MTI), and disabled with [MAV_CMD_CAMERA_STOP_MTI](#MAV_CMD_CAMERA_STOP_MTI). -Param (Label) | Description | Values ---- | --- | --- -1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_CAMERA_STOP_MTI (2021) — [WIP] {#MAV_CMD_CAMERA_STOP_MTI} @@ -631,10 +613,9 @@ Param (Label) | Description | Values Disable Moving Target Indicators (MTI) on streamed video. -Param (Label) | Description | Values ---- | --- | --- -1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 - +| Param (Label) | Description | Values | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | +| 1 (Target Camera ID) | Target camera ID. 7 to 255: MAVLink camera component id. 1 to 6 for cameras attached to the autopilot, which don't have a distinct component id. 0: all cameras. This is used to target specific autopilot-connected cameras. It is also used to target specific cameras when the MAV_CMD is used in a mission. | min: 0 max: 255 inc: 1 | ### MAV_CMD_NAV_FENCE_HOME_CIRCLE_INCLUSION (5005) — [WIP] {#MAV_CMD_NAV_FENCE_HOME_CIRCLE_INCLUSION} @@ -642,11 +623,10 @@ Param (Label) | Description | Values Circular fence area centered on home. The vehicle must stay inside this area. If home is moved, the fence moves. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Radius) | Radius. | | m -2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group. Ignored when sent as a command. | min: 0 inc: 1 | - +| Param (Label) | Description | Values | Units | +| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ----- | +| 1 (Radius) | Radius. | | m | +| 2 (Inclusion Group) | Vehicle must be inside ALL inclusion zones in a single group, vehicle must be inside at least one group. Ignored when sent as a command. | min: 0 inc: 1 | ### MAV_CMD_ODID_SET_EMERGENCY (12900) — [WIP] {#MAV_CMD_ODID_SET_EMERGENCY} @@ -658,10 +638,9 @@ This is for compliance with MOC ASTM docs, specifically F358 section 7.7: "Emerg The requirement can also be satisfied by automatic setting of the emergency status by flight stack, and that approach is preferred. See https://mavlink.io/en/services/opendroneid.html for more information. -Param (Label) | Description | Values ---- | --- | --- -1 (Number) | Set/unset emergency 0: unset, 1: set | min: 0 inc: 1 - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------ | ------------- | +| 1 (Number) | Set/unset emergency 0: unset, 1: set | min: 0 inc: 1 | ### MAV_CMD_REQUEST_OPERATOR_CONTROL (32100) — [WIP] {#MAV_CMD_REQUEST_OPERATOR_CONTROL} @@ -669,11 +648,11 @@ Param (Label) | Description | Values Request exclusive control of a system or special system feature by a GCS. - The operator control protocol supports two modes: + - In single-owner mode there is a single GCS "owner" that can send state changing operations to the whole system, and this command can be used to request takeover of that ownership role. - In multi-owner mode the flight stack allows multiple GCS to be "owners" and send (most) state changing operations (which GCS those are is implementation-dependent, and not controlled by this protocol). -However only one GCS owner can control manual input of the vehicle: this command can be used to request takeover of that ownership role. + However only one GCS owner can control manual input of the vehicle: this command can be used to request takeover of that ownership role. A controlled system should only accept MAVLink operations that change the state of the vehicle, such as commands and command-like messages, which are sent by its controlling GCS(s) (or from other components in its own system/with the same system id, such as a companion computer). Commands to control the vehicle from other systems should be rejected with [MAV_RESULT_NOT_IN_CONTROL](#MAV_RESULT_NOT_IN_CONTROL) (except for this command, which may be acknowledged with [MAV_RESULT_ACCEPTED](#MAV_RESULT_ACCEPTED) if control is granted). @@ -708,14 +687,13 @@ The component will then stream [CONTROL_STATUS](#CONTROL_STATUS) for its control The component should fall back to the system GCS (if any) when it is not directly controlled, and may stop emitting [CONTROL_STATUS](#CONTROL_STATUS). The flow is otherwise the same as for requesting control over the whole system. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Action) | 0: Release control, 1: Request control. | | -2 (Allow takeover) | Enable automatic granting of ownership on request (by default reject request and notify current owner). 0: Ask current owner and reject request, 1: Allow automatic takeover. | | -3 (Request timeout) | Timeout in seconds before a request to a GCS to allow takeover is assumed to be rejected. This is used to display the timeout graphically on requester and GCS in control. | min: 3 max: 60 | s -4 (GCS Sysid) | System ID of GCS requesting control. For a range of GCS in control, this the minimum id (and the sender system ID may be anywhere in the range). | | -5 (GCS Sysid (upper range)) | Upper range of controlling GCS system IDs. 0 for single-GCS control. If non-zero the sender system ID may be anywhere in the range). | | - +| Param (Label) | Description | Values | Units | +| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | ----- | +| 1 (Action) | 0: Release control, 1: Request control. | | +| 2 (Allow takeover) | Enable automatic granting of ownership on request (by default reject request and notify current owner). 0: Ask current owner and reject request, 1: Allow automatic takeover. | | +| 3 (Request timeout) | Timeout in seconds before a request to a GCS to allow takeover is assumed to be rejected. This is used to display the timeout graphically on requester and GCS in control. | min: 3 max: 60 | s | +| 4 (GCS Sysid) | System ID of GCS requesting control. For a range of GCS in control, this the minimum id (and the sender system ID may be anywhere in the range). | | +| 5 (GCS Sysid (upper range)) | Upper range of controlling GCS system IDs. 0 for single-GCS control. If non-zero the sender system ID may be anywhere in the range). | | ### MAV_CMD_EXTERNAL_WIND_ESTIMATE (43004) — [WIP] {#MAV_CMD_EXTERNAL_WIND_ESTIMATE} @@ -725,13 +703,12 @@ Set an external estimate of wind direction and speed. This might be used to provide an initial wind estimate to the estimator (EKF) in the case where the vehicle is wind dead-reckoning, extending the time when operating without GPS before before position drift builds to an unsafe level. For this use case the command might reasonably be sent every few minutes when operating at altitude, and the value is cleared if the estimator resets itself. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Wind speed) | Horizontal wind speed. | min: 0 | m/s -2 (Wind speed accuracy) | Estimated 1 sigma accuracy of wind speed. Set to NaN if unknown. | | m/s -3 (Direction) | Azimuth (relative to true north) from where the wind is blowing. | min: 0 max: 360 | deg -4 (Direction accuracy) | Estimated 1 sigma accuracy of wind direction. Set to NaN if unknown. | | deg - +| Param (Label) | Description | Values | Units | +| ----------------------- | -------------------------------------------------------------------- | --------------- | ----- | +| 1 (Wind speed) | Horizontal wind speed. | min: 0 | m/s | +| 2 (Wind speed accuracy) | Estimated 1 sigma accuracy of wind speed. Set to NaN if unknown. | | m/s | +| 3 (Direction) | Azimuth (relative to true north) from where the wind is blowing. | min: 0 max: 360 | deg | +| 4 (Direction accuracy) | Estimated 1 sigma accuracy of wind direction. Set to NaN if unknown. | | deg | ### MAV_CMD_ESTIMATOR_SENSOR_ENABLE (43006) — [WIP] {#MAV_CMD_ESTIMATOR_SENSOR_ENABLE} @@ -741,11 +718,9 @@ Enable or disable a specific estimator sensor fusion source at runtime. This allows a GCS or companion computer to dynamically control which sensors the estimator fuses without changing parameters. -Param (Label) | Description | Values ---- | --- | --- -1 (Source) | Sensor fusion source type. | [ESTIMATOR_SENSOR_FUSION_SOURCE](#ESTIMATOR_SENSOR_FUSION_SOURCE) -2 (Instance) | Sensor instance (0-based, for multi-instance). | min: 0 inc: 1 -3 (Enable) | Enable (1) or Disable (0) the source. | [MAV_BOOL](#MAV_BOOL) -4 (Estimator Instance) | Estimator instance (0-based, for systems with multiple estimators). | min: 0 inc: 1 - - +| Param (Label) | Description | Values | +| ---------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------- | +| 1 (Source) | Sensor fusion source type. | [ESTIMATOR_SENSOR_FUSION_SOURCE](#ESTIMATOR_SENSOR_FUSION_SOURCE) | +| 2 (Instance) | Sensor instance (0-based, for multi-instance). | min: 0 inc: 1 | +| 3 (Enable) | Enable (1) or Disable (0) the source. | [MAV_BOOL](#MAV_BOOL) | +| 4 (Estimator Instance) | Estimator instance (0-based, for systems with multiple estimators). | min: 0 inc: 1 | diff --git a/en/messages/dialects.md b/en/messages/dialects.md index 64ad9c7d0..95e832728 100644 --- a/en/messages/dialects.md +++ b/en/messages/dialects.md @@ -49,4 +49,3 @@ The following definitions are used for testing and dialect validation: - [MAVLink-Standard Definitions](index.md) - [XSD schema](../guide/xml_schema.md) - [mavlink/message_definitions](https://github.com/mavlink/mavlink/blob/master/message_definitions/) - Source of all XML definition files - diff --git a/en/messages/icarous.md b/en/messages/icarous.md index ba48208e1..8274643e7 100644 --- a/en/messages/icarous.md +++ b/en/messages/icarous.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - None +None ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 2 | 0 -[Enums](#enumerated-types) | 2 | 0 -Commands | 0 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 2 | 0 | +| [Enums](#enumerated-types) | 2 | 0 | +| Commands | 0 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,53 +47,50 @@ The following sections list all entities in the dialect (both included and defin ICAROUS heartbeat -Field Name | Type | Values | Description ---- | --- | --- | --- -status | `uint8_t` | [ICAROUS_FMS_STATE](#ICAROUS_FMS_STATE) | See the [FMS_STATE](#FMS_STATE) enum. - +| Field Name | Type | Values | Description | +| ---------- | --------- | --------------------------------------- | ------------------------------------- | +| status | `uint8_t` | [ICAROUS_FMS_STATE](#ICAROUS_FMS_STATE) | See the [FMS_STATE](#FMS_STATE) enum. | ### ICAROUS_KINEMATIC_BANDS (42001) {#ICAROUS_KINEMATIC_BANDS} Kinematic multi bands (track) output from Daidalus -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -numBands | `int8_t` | | | Number of track bands -type1 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. -min1 | `float` | deg | | min angle (degrees) -max1 | `float` | deg | | max angle (degrees) -type2 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. -min2 | `float` | deg | | min angle (degrees) -max2 | `float` | deg | | max angle (degrees) -type3 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. -min3 | `float` | deg | | min angle (degrees) -max3 | `float` | deg | | max angle (degrees) -type4 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. -min4 | `float` | deg | | min angle (degrees) -max4 | `float` | deg | | max angle (degrees) -type5 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. -min5 | `float` | deg | | min angle (degrees) -max5 | `float` | deg | | max angle (degrees) - +| Field Name | Type | Units | Values | Description | +| ---------- | --------- | ----- | ----------------------------------------------------- | --------------------------------------------------- | +| numBands | `int8_t` | | | Number of track bands | +| type1 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. | +| min1 | `float` | deg | | min angle (degrees) | +| max1 | `float` | deg | | max angle (degrees) | +| type2 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. | +| min2 | `float` | deg | | min angle (degrees) | +| max2 | `float` | deg | | max angle (degrees) | +| type3 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. | +| min3 | `float` | deg | | min angle (degrees) | +| max3 | `float` | deg | | max angle (degrees) | +| type4 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. | +| min4 | `float` | deg | | min angle (degrees) | +| max4 | `float` | deg | | max angle (degrees) | +| type5 | `uint8_t` | | [ICAROUS_TRACK_BAND_TYPES](#ICAROUS_TRACK_BAND_TYPES) | See the [TRACK_BAND_TYPES](#TRACK_BAND_TYPES) enum. | +| min5 | `float` | deg | | min angle (degrees) | +| max5 | `float` | deg | | max angle (degrees) | ## Enumerated Types ### ICAROUS_TRACK_BAND_TYPES {#ICAROUS_TRACK_BAND_TYPES} -Value | Name | Description ---- | --- | --- -0 | [ICAROUS_TRACK_BAND_TYPE_NONE](#ICAROUS_TRACK_BAND_TYPE_NONE) | -1 | [ICAROUS_TRACK_BAND_TYPE_NEAR](#ICAROUS_TRACK_BAND_TYPE_NEAR) | -2 | [ICAROUS_TRACK_BAND_TYPE_RECOVERY](#ICAROUS_TRACK_BAND_TYPE_RECOVERY) | +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ----------- | +| 0 | [ICAROUS_TRACK_BAND_TYPE_NONE](#ICAROUS_TRACK_BAND_TYPE_NONE) | +| 1 | [ICAROUS_TRACK_BAND_TYPE_NEAR](#ICAROUS_TRACK_BAND_TYPE_NEAR) | +| 2 | [ICAROUS_TRACK_BAND_TYPE_RECOVERY](#ICAROUS_TRACK_BAND_TYPE_RECOVERY) | ### ICAROUS_FMS_STATE {#ICAROUS_FMS_STATE} -Value | Name | Description ---- | --- | --- -0 | [ICAROUS_FMS_STATE_IDLE](#ICAROUS_FMS_STATE_IDLE) | -1 | [ICAROUS_FMS_STATE_TAKEOFF](#ICAROUS_FMS_STATE_TAKEOFF) | -2 | [ICAROUS_FMS_STATE_CLIMB](#ICAROUS_FMS_STATE_CLIMB) | -3 | [ICAROUS_FMS_STATE_CRUISE](#ICAROUS_FMS_STATE_CRUISE) | -4 | [ICAROUS_FMS_STATE_APPROACH](#ICAROUS_FMS_STATE_APPROACH) | -5 | [ICAROUS_FMS_STATE_LAND](#ICAROUS_FMS_STATE_LAND) | - +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ----------- | +| 0 | [ICAROUS_FMS_STATE_IDLE](#ICAROUS_FMS_STATE_IDLE) | +| 1 | [ICAROUS_FMS_STATE_TAKEOFF](#ICAROUS_FMS_STATE_TAKEOFF) | +| 2 | [ICAROUS_FMS_STATE_CLIMB](#ICAROUS_FMS_STATE_CLIMB) | +| 3 | [ICAROUS_FMS_STATE_CRUISE](#ICAROUS_FMS_STATE_CRUISE) | +| 4 | [ICAROUS_FMS_STATE_APPROACH](#ICAROUS_FMS_STATE_APPROACH) | +| 5 | [ICAROUS_FMS_STATE_LAND](#ICAROUS_FMS_STATE_LAND) | diff --git a/en/messages/index.md b/en/messages/index.md index 89ed80165..3608db050 100644 --- a/en/messages/index.md +++ b/en/messages/index.md @@ -31,4 +31,3 @@ They are a "work in progress" and should not be used in released software. - [Dialects & Test Definitions](dialects.md) - [XSD schema](../guide/xml_schema.md) - [mavlink/message_definitions](https://github.com/mavlink/mavlink/blob/master/message_definitions/) - Source of all XML definition files - diff --git a/en/messages/loweheiser.md b/en/messages/loweheiser.md index 25250e44c..d69ad1266 100644 --- a/en/messages/loweheiser.md +++ b/en/messages/loweheiser.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [minimal.xml](../messages/minimal.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 1 | 1 -[Enums](#enumerated-types) | 0 | 6 -[Commands](#mav_commands) | 1 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 1 | 1 | +| [Enums](#enumerated-types) | 0 | 6 | +| [Commands](#mav_commands) | 1 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -44,34 +45,33 @@ The following sections list all entities in the dialect (both included and defin ### LOWEHEISER_GOV_EFI (10151) {#LOWEHEISER_GOV_EFI} -Composite EFI and Governor data from Loweheiser equipment. This message is created by the EFI unit based on its own data and data received from a governor attached to that EFI unit. - -Field Name | Type | Units | Description ---- | --- | --- | --- -volt_batt | `float` | V | Generator Battery voltage. -curr_batt | `float` | A | Generator Battery current. -curr_gen | `float` | A | Current being produced by generator. -curr_rot | `float` | A | Load current being consumed by the UAV (sum of curr_gen and curr_batt) -fuel_level | `float` | l | Generator fuel remaining in litres. -throttle | `float` | % | Throttle Output. -runtime | `uint32_t` | s | Seconds this generator has run since it was rebooted. -until_maintenance | `int32_t` | s | Seconds until this generator requires maintenance. A negative value indicates maintenance is past due. -rectifier_temp | `float` | degC | The Temperature of the rectifier. -generator_temp | `float` | degC | The temperature of the mechanical motor, fuel cell core or generator. -efi_batt | `float` | V | EFI Supply Voltage. -efi_rpm | `float` | rpm | Motor RPM. -efi_pw | `float` | ms | Injector pulse-width in milliseconds. -efi_fuel_flow | `float` | | Fuel flow rate in litres/hour. -efi_fuel_consumed | `float` | l | Fuel consumed. -efi_baro | `float` | kPa | Atmospheric pressure. -efi_mat | `float` | degC | Manifold Air Temperature. -efi_clt | `float` | degC | Cylinder Head Temperature. -efi_tps | `float` | % | Throttle Position. -efi_exhaust_gas_temperature | `float` | degC | Exhaust gas temperature. -efi_index | `uint8_t` | | EFI index.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -generator_status | `uint16_t` | | Generator status. -efi_status | `uint16_t` | | EFI status. - +Composite EFI and Governor data from Loweheiser equipment. This message is created by the EFI unit based on its own data and data received from a governor attached to that EFI unit. + +| Field Name | Type | Units | Description | +| --------------------------- | ---------- | ----- | -------------------------------------------------------------------------------------------------------------------------- | +| volt_batt | `float` | V | Generator Battery voltage. | +| curr_batt | `float` | A | Generator Battery current. | +| curr_gen | `float` | A | Current being produced by generator. | +| curr_rot | `float` | A | Load current being consumed by the UAV (sum of curr_gen and curr_batt) | +| fuel_level | `float` | l | Generator fuel remaining in litres. | +| throttle | `float` | % | Throttle Output. | +| runtime | `uint32_t` | s | Seconds this generator has run since it was rebooted. | +| until_maintenance | `int32_t` | s | Seconds until this generator requires maintenance. A negative value indicates maintenance is past due. | +| rectifier_temp | `float` | degC | The Temperature of the rectifier. | +| generator_temp | `float` | degC | The temperature of the mechanical motor, fuel cell core or generator. | +| efi_batt | `float` | V | EFI Supply Voltage. | +| efi_rpm | `float` | rpm | Motor RPM. | +| efi_pw | `float` | ms | Injector pulse-width in milliseconds. | +| efi_fuel_flow | `float` | | Fuel flow rate in litres/hour. | +| efi_fuel_consumed | `float` | l | Fuel consumed. | +| efi_baro | `float` | kPa | Atmospheric pressure. | +| efi_mat | `float` | degC | Manifold Air Temperature. | +| efi_clt | `float` | degC | Cylinder Head Temperature. | +| efi_tps | `float` | % | Throttle Position. | +| efi_exhaust_gas_temperature | `float` | degC | Exhaust gas temperature. | +| efi_index | `uint8_t` | | EFI index.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| generator_status | `uint16_t` | | Generator status. | +| efi_status | `uint16_t` | | EFI status. | ## Enumerated Types @@ -81,14 +81,12 @@ efi_status | `uint16_t` | | EFI status. Set Loweheiser desired states -Param (Label) | Description ---- | --- -1 | EFI Index -2 | Desired Engine/EFI State (0: Power Off, 1:Running) -3 | Desired Governor State (0:manual throttle, 1:Governed throttle) -4 | Manual throttle level, 0% - 100% -5 | Electronic Start up (0:Off, 1:On) -6 | Empty -7 | Empty - - +| Param (Label) | Description | +| ------------- | --------------------------------------------------------------- | +| 1 | EFI Index | +| 2 | Desired Engine/EFI State (0: Power Off, 1:Running) | +| 3 | Desired Governor State (0:manual throttle, 1:Governed throttle) | +| 4 | Manual throttle level, 0% - 100% | +| 5 | Electronic Start up (0:Off, 1:On) | +| 6 | Empty | +| 7 | Empty | diff --git a/en/messages/marsh.md b/en/messages/marsh.md index 500e5f8c4..f94f5a18a 100644 --- a/en/messages/marsh.md +++ b/en/messages/marsh.md @@ -26,6 +26,7 @@ span.warning { color: red; } + **Protocol dialect:** 3 ## MAVLink Include Files @@ -34,11 +35,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 5 | 234 -[Enums](#enumerated-types) | 6 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 5 | 234 | +| [Enums](#enumerated-types) | 6 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -50,14 +51,13 @@ The following sections list all entities in the dialect (both included and defin Send data about a control axis from a control loading system. This is the primary message for logging data from [MARSH_TYPE_CONTROL_LOADING](#MARSH_TYPE_CONTROL_LOADING). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -axis | `uint8_t` | | [CONTROL_AXIS](#CONTROL_AXIS) | Control axis on which the measurements were taken. -position | `float` | deg | | Axis position -velocity | `float` | deg/s | | Axis velocity -force | `float` | | | Force applied in the pilot in the direction of movement axis (not gripping force), measured at the position of pilot's third finger (ring). Unit N (Newton), currently not part of mavschema.xsd - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| axis | `uint8_t` | | [CONTROL_AXIS](#CONTROL_AXIS) | Control axis on which the measurements were taken. | +| position | `float` | deg | | Axis position | +| velocity | `float` | deg/s | | Axis velocity | +| force | `float` | | | Force applied in the pilot in the direction of movement axis (not gripping force), measured at the position of pilot's third finger (ring). Unit N (Newton), currently not part of mavschema.xsd | ### MOTION_PLATFORM_STATE (52502) — [WIP] {#MOTION_PLATFORM_STATE} @@ -65,30 +65,29 @@ force | `float` | | | Force applied in the pilot in the direction of movement ax State report for motion platform used for moving the cockpit with the pilot for motion cueing. This is the primary message for [MARSH_TYPE_MOTION_PLATFORM](#MARSH_TYPE_MOTION_PLATFORM). -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). -health | `uint8_t` | | [MOTION_PLATFORM_HEALTH](#MOTION_PLATFORM_HEALTH) | Generic system health (error and warning) status. -mode | `uint8_t` | | [MOTION_PLATFORM_MODE](#MOTION_PLATFORM_MODE) | Generic system operating mode. -x | `float` | m | | X axis (surge) position, positive forward. -y | `float` | m | | Y axis (sway) position, positive right. -z | `float` | m | | Z axis (heave) position, positive down. -roll | `float` | rad | | Roll position, positive right. -pitch | `float` | rad | | Pitch position, positive nose up. -yaw | `float` | rad | | Yaw position, positive right. -vel_x | `float` | m/s | | X axis (surge) velocity, positive forward. -vel_y | `float` | m/s | | Y axis (sway) velocity, positive right. -vel_z | `float` | m/s | | Z axis (heave) velocity, positive down. -vel_roll | `float` | rad/s | | Roll velocity, positive right. -vel_pitch | `float` | rad/s | | Pitch velocity, positive nose up. -vel_yaw | `float` | rad/s | | Yaw velocity, positive right. -acc_x | `float` | m/s/s | | X axis (surge) acceleration, positive forward. -acc_y | `float` | m/s/s | | Y axis (sway) acceleration, positive right. -acc_z | `float` | m/s/s | | Z axis (heave) acceleration, positive down. -acc_roll | `float` | | | Roll acceleration, positive right. Unit rad/s/s, currently not part of mavschema.xsd -acc_pitch | `float` | | | Pitch acceleration, positive nose up. Unit rad/s/s, currently not part of mavschema.xsd -acc_yaw | `float` | | | Yaw acceleration, positive right. Unit rad/s/s, currently not part of mavschema.xsd - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ------------------------------------------------- | --------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | | Timestamp (time since system boot). | +| health | `uint8_t` | | [MOTION_PLATFORM_HEALTH](#MOTION_PLATFORM_HEALTH) | Generic system health (error and warning) status. | +| mode | `uint8_t` | | [MOTION_PLATFORM_MODE](#MOTION_PLATFORM_MODE) | Generic system operating mode. | +| x | `float` | m | | X axis (surge) position, positive forward. | +| y | `float` | m | | Y axis (sway) position, positive right. | +| z | `float` | m | | Z axis (heave) position, positive down. | +| roll | `float` | rad | | Roll position, positive right. | +| pitch | `float` | rad | | Pitch position, positive nose up. | +| yaw | `float` | rad | | Yaw position, positive right. | +| vel_x | `float` | m/s | | X axis (surge) velocity, positive forward. | +| vel_y | `float` | m/s | | Y axis (sway) velocity, positive right. | +| vel_z | `float` | m/s | | Z axis (heave) velocity, positive down. | +| vel_roll | `float` | rad/s | | Roll velocity, positive right. | +| vel_pitch | `float` | rad/s | | Pitch velocity, positive nose up. | +| vel_yaw | `float` | rad/s | | Yaw velocity, positive right. | +| acc_x | `float` | m/s/s | | X axis (surge) acceleration, positive forward. | +| acc_y | `float` | m/s/s | | Y axis (sway) acceleration, positive right. | +| acc_z | `float` | m/s/s | | Z axis (heave) acceleration, positive down. | +| acc_roll | `float` | | | Roll acceleration, positive right. Unit rad/s/s, currently not part of mavschema.xsd | +| acc_pitch | `float` | | | Pitch acceleration, positive nose up. Unit rad/s/s, currently not part of mavschema.xsd | +| acc_yaw | `float` | | | Yaw acceleration, positive right. Unit rad/s/s, currently not part of mavschema.xsd | ### REXROTH_MOTION_PLATFORM (52503) — [WIP] {#REXROTH_MOTION_PLATFORM} @@ -96,46 +95,44 @@ acc_yaw | `float` | | | Yaw acceleration, positive right. Unit rad/s/s, currentl State report specific for eMotion Motion System by Bosch Rexroth B.V. Values applicable to motion platforms in general are sent in [MOTION_PLATFORM_STATE](#MOTION_PLATFORM_STATE) with the same timestamp. Actuators are numbered in a clockwise direction when looking from above, starting from the front right. Actuator position is 0 when actuator is in mid-stroke. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -frame_count | `uint32_t` | | Number of message as sent by the Motion System. -motion_status | `uint32_t` | | Motion Status variable as sent by the system. -error_code | `uint8_t` | | Error code extracted from motion status. -actuator1 | `float` | m | Current actuator 1 position. -actuator2 | `float` | m | Current actuator 2 position. -actuator3 | `float` | m | Current actuator 3 position. -actuator4 | `float` | m | Current actuator 4 position. -actuator5 | `float` | m | Current actuator 5 position. -actuator6 | `float` | m | Current actuator 6 position. -platform_setpoint_x | `float` | m | X axis (surge) platform setpoint, positive forward. -platform_setpoint_y | `float` | m | Y axis (sway) platform setpoint, positive right. -platform_setpoint_z | `float` | m | Z axis (heave) platform setpoint, positive down. -platform_setpoint_roll | `float` | rad | Roll platform setpoint, positive right. -platform_setpoint_pitch | `float` | rad | Pitch platform setpoint, positive nose up. -platform_setpoint_yaw | `float` | rad | Yaw platform setpoint, positive right. -effect_setpoint_x | `float` | m | X axis (surge) special effect setpoint, positive forward. -effect_setpoint_y | `float` | m | Y axis (sway) special effect setpoint, positive right. -effect_setpoint_z | `float` | m | Z axis (heave) special effect setpoint, positive down. -effect_setpoint_roll | `float` | rad | Roll special effect setpoint, positive right. -effect_setpoint_pitch | `float` | rad | Pitch special effect setpoint, positive nose up. -effect_setpoint_yaw | `float` | rad | Yaw special effect setpoint, positive right. - +| Field Name | Type | Units | Description | +| ----------------------- | ---------- | ----- | --------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| frame_count | `uint32_t` | | Number of message as sent by the Motion System. | +| motion_status | `uint32_t` | | Motion Status variable as sent by the system. | +| error_code | `uint8_t` | | Error code extracted from motion status. | +| actuator1 | `float` | m | Current actuator 1 position. | +| actuator2 | `float` | m | Current actuator 2 position. | +| actuator3 | `float` | m | Current actuator 3 position. | +| actuator4 | `float` | m | Current actuator 4 position. | +| actuator5 | `float` | m | Current actuator 5 position. | +| actuator6 | `float` | m | Current actuator 6 position. | +| platform_setpoint_x | `float` | m | X axis (surge) platform setpoint, positive forward. | +| platform_setpoint_y | `float` | m | Y axis (sway) platform setpoint, positive right. | +| platform_setpoint_z | `float` | m | Z axis (heave) platform setpoint, positive down. | +| platform_setpoint_roll | `float` | rad | Roll platform setpoint, positive right. | +| platform_setpoint_pitch | `float` | rad | Pitch platform setpoint, positive nose up. | +| platform_setpoint_yaw | `float` | rad | Yaw platform setpoint, positive right. | +| effect_setpoint_x | `float` | m | X axis (surge) special effect setpoint, positive forward. | +| effect_setpoint_y | `float` | m | Y axis (sway) special effect setpoint, positive right. | +| effect_setpoint_z | `float` | m | Z axis (heave) special effect setpoint, positive down. | +| effect_setpoint_roll | `float` | rad | Roll special effect setpoint, positive right. | +| effect_setpoint_pitch | `float` | rad | Pitch special effect setpoint, positive nose up. | +| effect_setpoint_yaw | `float` | rad | Yaw special effect setpoint, positive right. | ### MOTION_CUE_EXTRA (52504) {#MOTION_CUE_EXTRA} These values are an extra cue that should be added to accelerations and rotations etc. resulting from aircraft state, with the resulting cue being the sum of the latest aircraft and extra values. An example use case would be a cockpit shaker. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -vel_roll | `float` | rad/s | Roll velocity, positive right. -vel_pitch | `float` | rad/s | Pitch velocity, positive nose up. -vel_yaw | `float` | rad/s | Yaw velocity, positive right. -acc_x | `float` | m/s/s | X axis (surge) acceleration, positive forward. -acc_y | `float` | m/s/s | Y axis (sway) acceleration, positive right. -acc_z | `float` | m/s/s | Z axis (heave) acceleration, positive down. - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | ---------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| vel_roll | `float` | rad/s | Roll velocity, positive right. | +| vel_pitch | `float` | rad/s | Pitch velocity, positive nose up. | +| vel_yaw | `float` | rad/s | Yaw velocity, positive right. | +| acc_x | `float` | m/s/s | X axis (surge) acceleration, positive forward. | +| acc_y | `float` | m/s/s | Y axis (sway) acceleration, positive right. | +| acc_z | `float` | m/s/s | Z axis (heave) acceleration, positive down. | ### EYE_TRACKING_DATA (52505) — [WIP] {#EYE_TRACKING_DATA} @@ -143,22 +140,21 @@ acc_z | `float` | m/s/s | Z axis (heave) acceleration, positive down. Data for tracking of pilot eye gaze. This is the primary message for [MARSH_TYPE_EYE_TRACKER](#MARSH_TYPE_EYE_TRACKER). -Field Name | Type | Units | Description ---- | --- | --- | --- -time_usec | `uint64_t` | us | Timestamp (time since system boot). -sensor_id | `uint8_t` | | Sensor ID, used for identifying the device and/or person tracked. Set to zero if unknown/unused.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -gaze_origin_x | `float` | m | X axis of gaze origin point, NaN if unknown. The reference system depends on specific application. -gaze_origin_y | `float` | m | Y axis of gaze origin point, NaN if unknown. The reference system depends on specific application. -gaze_origin_z | `float` | m | Z axis of gaze origin point, NaN if unknown. The reference system depends on specific application. -gaze_direction_x | `float` | | X axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. -gaze_direction_y | `float` | | Y axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. -gaze_direction_z | `float` | | Z axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. -video_gaze_x | `float` | | Gaze focal point on video feed x value (normalized 0..1, 0 is left, 1 is right), NaN if unknown -video_gaze_y | `float` | | Gaze focal point on video feed y value (normalized 0..1, 0 is top, 1 is bottom), NaN if unknown -surface_id | `uint8_t` | | Identifier of surface for 2D gaze point, or an identified region when surface point is invalid. Set to zero if unknown/unused. -surface_gaze_x | `float` | | Gaze focal point on surface x value (normalized 0..1, 0 is left, 1 is right), NaN if unknown -surface_gaze_y | `float` | | Gaze focal point on surface y value (normalized 0..1, 0 is top, 1 is bottom), NaN if unknown - +| Field Name | Type | Units | Description | +| ---------------- | ---------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| time_usec | `uint64_t` | us | Timestamp (time since system boot). | +| sensor_id | `uint8_t` | | Sensor ID, used for identifying the device and/or person tracked. Set to zero if unknown/unused.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| gaze_origin_x | `float` | m | X axis of gaze origin point, NaN if unknown. The reference system depends on specific application. | +| gaze_origin_y | `float` | m | Y axis of gaze origin point, NaN if unknown. The reference system depends on specific application. | +| gaze_origin_z | `float` | m | Z axis of gaze origin point, NaN if unknown. The reference system depends on specific application. | +| gaze_direction_x | `float` | | X axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. | +| gaze_direction_y | `float` | | Y axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. | +| gaze_direction_z | `float` | | Z axis of gaze direction vector, expected to be normalized to unit magnitude, NaN if unknown. The reference system should match origin point. | +| video_gaze_x | `float` | | Gaze focal point on video feed x value (normalized 0..1, 0 is left, 1 is right), NaN if unknown | +| video_gaze_y | `float` | | Gaze focal point on video feed y value (normalized 0..1, 0 is top, 1 is bottom), NaN if unknown | +| surface_id | `uint8_t` | | Identifier of surface for 2D gaze point, or an identified region when surface point is invalid. Set to zero if unknown/unused. | +| surface_gaze_x | `float` | | Gaze focal point on surface x value (normalized 0..1, 0 is left, 1 is right), NaN if unknown | +| surface_gaze_y | `float` | | Gaze focal point on surface y value (normalized 0..1, 0 is top, 1 is bottom), NaN if unknown | ## Enumerated Types @@ -166,20 +162,20 @@ surface_gaze_y | `float` | | Gaze focal point on surface y value (normalized 0.. Component types for different nodes of the simulator network (flight model, controls, visualisation etc.). Components will always receive messages from the Manager relevant for their type. Only the first component in a network with a given system ID and type will have its messages forwarded by the Manager, all other ones will only be treated as output (will be shadowed). This enum is an extension of [MAV_TYPE](#MAV_TYPE) documented at https://mavlink.io/en/messages/minimal.html#MAV_TYPE -Value | Name | Description ---- | --- | --- -100 | [MARSH_TYPE_MANAGER](#MARSH_TYPE_MANAGER) | The simulation manager responsible for routing packets between different nodes. Typically MARSH Manager, see https://marsh-sim.github.io/manager.html -101 | [MARSH_TYPE_FLIGHT_MODEL](#MARSH_TYPE_FLIGHT_MODEL) | Component simulating flight dynamics of the aircraft. -102 | [MARSH_TYPE_CONTROLS](#MARSH_TYPE_CONTROLS) | Component providing pilot control inputs. -103 | [MARSH_TYPE_VISUALISATION](#MARSH_TYPE_VISUALISATION) | Component showing the visual situation to the pilot. -104 | [MARSH_TYPE_INSTRUMENTS](#MARSH_TYPE_INSTRUMENTS) | Component implementing pilot instrument panel. -105 | [MARSH_TYPE_MOTION_PLATFORM](#MARSH_TYPE_MOTION_PLATFORM) | Component that moves the entire cockpit for motion cueing. -106 | [MARSH_TYPE_GSEAT](#MARSH_TYPE_GSEAT) | Component for in-seat motion cueing. -107 | [MARSH_TYPE_EYE_TRACKER](#MARSH_TYPE_EYE_TRACKER) | Component providing gaze data of pilot eyes. -108 | [MARSH_TYPE_CONTROL_LOADING](#MARSH_TYPE_CONTROL_LOADING) | Component measuring and actuating forces on pilot control inputs. -109 | [MARSH_TYPE_VIBRATION_SOURCE](#MARSH_TYPE_VIBRATION_SOURCE) | Component providing vibrations for system identification, road rumble, gusts, etc. -110 | [MARSH_TYPE_PILOT_TARGET](#MARSH_TYPE_PILOT_TARGET) | Component providing target for the pilot to follow like controls positions, aircraft state, ILS path etc. -111 | [MARSH_TYPE_EXPERIMENT_DIRECTOR](#MARSH_TYPE_EXPERIMENT_DIRECTOR) | Principal component controlling the main scenario of a given test, (unlike lower level [MARSH_TYPE_PILOT_TARGET](#MARSH_TYPE_PILOT_TARGET) or [MARSH_TYPE_MANAGER](#MARSH_TYPE_MANAGER) for overall communication). +| Value | Name | Description | +| ---------------------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 100 | [MARSH_TYPE_MANAGER](#MARSH_TYPE_MANAGER) | The simulation manager responsible for routing packets between different nodes. Typically MARSH Manager, see https://marsh-sim.github.io/manager.html | +| 101 | [MARSH_TYPE_FLIGHT_MODEL](#MARSH_TYPE_FLIGHT_MODEL) | Component simulating flight dynamics of the aircraft. | +| 102 | [MARSH_TYPE_CONTROLS](#MARSH_TYPE_CONTROLS) | Component providing pilot control inputs. | +| 103 | [MARSH_TYPE_VISUALISATION](#MARSH_TYPE_VISUALISATION) | Component showing the visual situation to the pilot. | +| 104 | [MARSH_TYPE_INSTRUMENTS](#MARSH_TYPE_INSTRUMENTS) | Component implementing pilot instrument panel. | +| 105 | [MARSH_TYPE_MOTION_PLATFORM](#MARSH_TYPE_MOTION_PLATFORM) | Component that moves the entire cockpit for motion cueing. | +| 106 | [MARSH_TYPE_GSEAT](#MARSH_TYPE_GSEAT) | Component for in-seat motion cueing. | +| 107 | [MARSH_TYPE_EYE_TRACKER](#MARSH_TYPE_EYE_TRACKER) | Component providing gaze data of pilot eyes. | +| 108 | [MARSH_TYPE_CONTROL_LOADING](#MARSH_TYPE_CONTROL_LOADING) | Component measuring and actuating forces on pilot control inputs. | +| 109 | [MARSH_TYPE_VIBRATION_SOURCE](#MARSH_TYPE_VIBRATION_SOURCE) | Component providing vibrations for system identification, road rumble, gusts, etc. | +| 110 | [MARSH_TYPE_PILOT_TARGET](#MARSH_TYPE_PILOT_TARGET) | Component providing target for the pilot to follow like controls positions, aircraft state, ILS path etc. | +| 111 | [MARSH_TYPE_EXPERIMENT_DIRECTOR](#MARSH_TYPE_EXPERIMENT_DIRECTOR) | Principal component controlling the main scenario of a given test, (unlike lower level [MARSH_TYPE_PILOT_TARGET](#MARSH_TYPE_PILOT_TARGET) or [MARSH_TYPE_MANAGER](#MARSH_TYPE_MANAGER) for overall communication). | ### MARSH_MODE_FLAGS — [WIP] {#MARSH_MODE_FLAGS} @@ -189,55 +185,54 @@ These values are MARSH-specific modes intended to be sent in custom_mode field o Prefer defining values in the most significant byte (between 2^24 and 2^31) to leave the lower three bytes to contain a message id -Value | Name | Description ---- | --- | --- -16777216 | [MARSH_MODE_SINGLE_MESSAGE](#MARSH_MODE_SINGLE_MESSAGE) | Request Manager to only send one specific message, advised for very resource limited nodes or with control flow limitations like Simulink.
That message id should be in the lower three bytes of the mode, which can be done by adding it to the flags. -33554432 | [MARSH_MODE_ALL_MESSAGES](#MARSH_MODE_ALL_MESSAGES) | Request Manager to send every message going out to any of the clients. +| Value | Name | Description | +| ---------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 16777216 | [MARSH_MODE_SINGLE_MESSAGE](#MARSH_MODE_SINGLE_MESSAGE) | Request Manager to only send one specific message, advised for very resource limited nodes or with control flow limitations like Simulink.
That message id should be in the lower three bytes of the mode, which can be done by adding it to the flags. | +| 33554432 | [MARSH_MODE_ALL_MESSAGES](#MARSH_MODE_ALL_MESSAGES) | Request Manager to send every message going out to any of the clients. | ### CONTROL_AXIS {#CONTROL_AXIS} Specific axis of pilot control inputs, with order corresponding to x, y, z, r fields in [MANUAL_CONTROL](#MANUAL_CONTROL) message. -Value | Name | Description ---- | --- | --- -0 | [CONTROL_AXIS_ROLL](#CONTROL_AXIS_ROLL) | Roll axis, with positive values corresponding to stick right movement, causing the vehicle to roll right. For helicopters this is lateral cyclic. -1 | [CONTROL_AXIS_PITCH](#CONTROL_AXIS_PITCH) | Pitch axis, with positive values corresponding to stick forward movement, causing the vehicle to move nose down. For helicopters this is longitudinal cyclic. -2 | [CONTROL_AXIS_THRUST](#CONTROL_AXIS_THRUST) | Main thrust, with positive values corresponding to going faster and higher. For helicopters this is collective. -3 | [CONTROL_AXIS_YAW](#CONTROL_AXIS_YAW) | Yaw axis, with positive values corresponding to pushing right pedal, causing the vehicle to face right direction. For helicopters this is tail collective. +| Value | Name | Description | +| --------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [CONTROL_AXIS_ROLL](#CONTROL_AXIS_ROLL) | Roll axis, with positive values corresponding to stick right movement, causing the vehicle to roll right. For helicopters this is lateral cyclic. | +| 1 | [CONTROL_AXIS_PITCH](#CONTROL_AXIS_PITCH) | Pitch axis, with positive values corresponding to stick forward movement, causing the vehicle to move nose down. For helicopters this is longitudinal cyclic. | +| 2 | [CONTROL_AXIS_THRUST](#CONTROL_AXIS_THRUST) | Main thrust, with positive values corresponding to going faster and higher. For helicopters this is collective. | +| 3 | [CONTROL_AXIS_YAW](#CONTROL_AXIS_YAW) | Yaw axis, with positive values corresponding to pushing right pedal, causing the vehicle to face right direction. For helicopters this is tail collective. | ### MARSH_MANUAL_SETPOINT_MODE {#MARSH_MANUAL_SETPOINT_MODE} Usage of [MANUAL_SETPOINT](#MANUAL_SETPOINT) message, sent in mode_switch field. -Value | Name | Description ---- | --- | --- -0 | [MARSH_MANUAL_SETPOINT_MODE_TARGET](#MARSH_MANUAL_SETPOINT_MODE_TARGET) | Values for target inceptors positions that the pilot should follow. -1 | [MARSH_MANUAL_SETPOINT_MODE_TRIM](#MARSH_MANUAL_SETPOINT_MODE_TRIM) | Values for inceptors trim positions, the exact meaning depends on the flight model. +| Value | Name | Description | +| ----------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| 0 | [MARSH_MANUAL_SETPOINT_MODE_TARGET](#MARSH_MANUAL_SETPOINT_MODE_TARGET) | Values for target inceptors positions that the pilot should follow. | +| 1 | [MARSH_MANUAL_SETPOINT_MODE_TRIM](#MARSH_MANUAL_SETPOINT_MODE_TRIM) | Values for inceptors trim positions, the exact meaning depends on the flight model. | ### MOTION_PLATFORM_MODE {#MOTION_PLATFORM_MODE} Mode of a motion platform system. -Value | Name | Description ---- | --- | --- -0 | [MOTION_PLATFORM_MODE_UNKNOWN](#MOTION_PLATFORM_MODE_UNKNOWN) | Mode information is unsupported on this device. -1 | [MOTION_PLATFORM_MODE_UNINITIALIZED](#MOTION_PLATFORM_MODE_UNINITIALIZED) | Mode is currently not available, but may be in different condition. -2 | [MOTION_PLATFORM_MODE_OFF](#MOTION_PLATFORM_MODE_OFF) | Platform actuators are turned off, but control system is responsive. -3 | [MOTION_PLATFORM_MODE_SETTLED](#MOTION_PLATFORM_MODE_SETTLED) | Platform is in the lowest position and/or locked, appropriate for personnel entry. -4 | [MOTION_PLATFORM_MODE_NEUTRAL](#MOTION_PLATFORM_MODE_NEUTRAL) | Platform is in a neutral reference position, not accepting movement commands. -5 | [MOTION_PLATFORM_MODE_FROZEN](#MOTION_PLATFORM_MODE_FROZEN) | Platform is stopped in any position, not accepting movement commands. -6 | [MOTION_PLATFORM_MODE_ENGAGED](#MOTION_PLATFORM_MODE_ENGAGED) | Platform is in any position, accepting movement commands. +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| 0 | [MOTION_PLATFORM_MODE_UNKNOWN](#MOTION_PLATFORM_MODE_UNKNOWN) | Mode information is unsupported on this device. | +| 1 | [MOTION_PLATFORM_MODE_UNINITIALIZED](#MOTION_PLATFORM_MODE_UNINITIALIZED) | Mode is currently not available, but may be in different condition. | +| 2 | [MOTION_PLATFORM_MODE_OFF](#MOTION_PLATFORM_MODE_OFF) | Platform actuators are turned off, but control system is responsive. | +| 3 | [MOTION_PLATFORM_MODE_SETTLED](#MOTION_PLATFORM_MODE_SETTLED) | Platform is in the lowest position and/or locked, appropriate for personnel entry. | +| 4 | [MOTION_PLATFORM_MODE_NEUTRAL](#MOTION_PLATFORM_MODE_NEUTRAL) | Platform is in a neutral reference position, not accepting movement commands. | +| 5 | [MOTION_PLATFORM_MODE_FROZEN](#MOTION_PLATFORM_MODE_FROZEN) | Platform is stopped in any position, not accepting movement commands. | +| 6 | [MOTION_PLATFORM_MODE_ENGAGED](#MOTION_PLATFORM_MODE_ENGAGED) | Platform is in any position, accepting movement commands. | ### MOTION_PLATFORM_HEALTH {#MOTION_PLATFORM_HEALTH} General error state of a motion platform system. -Value | Name | Description ---- | --- | --- -0 | [MOTION_PLATFORM_HEALTH_OK](#MOTION_PLATFORM_HEALTH_OK) | System is operating correctly. -1 | [MOTION_PLATFORM_HEALTH_WARNING](#MOTION_PLATFORM_HEALTH_WARNING) | There is at least one warning present, but operation can be continued. -2 | [MOTION_PLATFORM_HEALTH_ERROR](#MOTION_PLATFORM_HEALTH_ERROR) | There is a failure or misconfiguration that requires operator's attention for correct operation. -3 | [MOTION_PLATFORM_HEALTH_CRITICAL](#MOTION_PLATFORM_HEALTH_CRITICAL) | There is a major failure that requires immediate operator action to maintain safety. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | +| 0 | [MOTION_PLATFORM_HEALTH_OK](#MOTION_PLATFORM_HEALTH_OK) | System is operating correctly. | +| 1 | [MOTION_PLATFORM_HEALTH_WARNING](#MOTION_PLATFORM_HEALTH_WARNING) | There is at least one warning present, but operation can be continued. | +| 2 | [MOTION_PLATFORM_HEALTH_ERROR](#MOTION_PLATFORM_HEALTH_ERROR) | There is a failure or misconfiguration that requires operator's attention for correct operation. | +| 3 | [MOTION_PLATFORM_HEALTH_CRITICAL](#MOTION_PLATFORM_HEALTH_CRITICAL) | There is a major failure that requires immediate operator action to maintain safety. | ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/matrixpilot.md b/en/messages/matrixpilot.md index 5b8afe638..6a8cfaf80 100644 --- a/en/messages/matrixpilot.md +++ b/en/messages/matrixpilot.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 27 | 234 -[Enums](#enumerated-types) | 1 | 159 -[Commands](#mav_commands) | 169 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 27 | 234 | +| [Enums](#enumerated-types) | 1 | 159 | +| [Commands](#mav_commands) | 169 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -44,436 +45,409 @@ The following sections list all entities in the dialect (both included and defin ### FLEXIFUNCTION_SET (150) {#FLEXIFUNCTION_SET} -Depreciated but used as a compiler flag. Do not remove - -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID +Depreciated but used as a compiler flag. Do not remove +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### FLEXIFUNCTION_READ_REQ (151) {#FLEXIFUNCTION_READ_REQ} Request reading of flexifunction data -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -read_req_type | `int16_t` | Type of flexifunction data requested -data_index | `int16_t` | index into data where needed - +| Field Name | Type | Description | +| ---------------- | --------- | ------------------------------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| read_req_type | `int16_t` | Type of flexifunction data requested | +| data_index | `int16_t` | index into data where needed | ### FLEXIFUNCTION_BUFFER_FUNCTION (152) {#FLEXIFUNCTION_BUFFER_FUNCTION} Flexifunction type and parameters for component at function index from buffer -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -func_index | `uint16_t` | Function index -func_count | `uint16_t` | Total count of functions -data_address | `uint16_t` | Address in the flexifunction data, Set to 0xFFFF to use address in target memory -data_size | `uint16_t` | Size of the -data | `int8_t[48]` | Settings data - +| Field Name | Type | Description | +| ---------------- | ------------ | -------------------------------------------------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| func_index | `uint16_t` | Function index | +| func_count | `uint16_t` | Total count of functions | +| data_address | `uint16_t` | Address in the flexifunction data, Set to 0xFFFF to use address in target memory | +| data_size | `uint16_t` | Size of the | +| data | `int8_t[48]` | Settings data | ### FLEXIFUNCTION_BUFFER_FUNCTION_ACK (153) {#FLEXIFUNCTION_BUFFER_FUNCTION_ACK} Flexifunction type and parameters for component at function index from buffer -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -func_index | `uint16_t` | Function index -result | `uint16_t` | result of acknowledge, 0=fail, 1=good - +| Field Name | Type | Description | +| ---------------- | ---------- | ------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| func_index | `uint16_t` | Function index | +| result | `uint16_t` | result of acknowledge, 0=fail, 1=good | ### FLEXIFUNCTION_DIRECTORY (155) {#FLEXIFUNCTION_DIRECTORY} Acknowledge success or failure of a flexifunction command -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -directory_type | `uint8_t` | 0=inputs, 1=outputs -start_index | `uint8_t` | index of first directory entry to write -count | `uint8_t` | count of directory entries to write -directory_data | `int8_t[48]` | Settings data - +| Field Name | Type | Description | +| ---------------- | ------------ | --------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| directory_type | `uint8_t` | 0=inputs, 1=outputs | +| start_index | `uint8_t` | index of first directory entry to write | +| count | `uint8_t` | count of directory entries to write | +| directory_data | `int8_t[48]` | Settings data | ### FLEXIFUNCTION_DIRECTORY_ACK (156) {#FLEXIFUNCTION_DIRECTORY_ACK} Acknowledge success or failure of a flexifunction command -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -directory_type | `uint8_t` | 0=inputs, 1=outputs -start_index | `uint8_t` | index of first directory entry to write -count | `uint8_t` | count of directory entries to write -result | `uint16_t` | result of acknowledge, 0=fail, 1=good - +| Field Name | Type | Description | +| ---------------- | ---------- | --------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| directory_type | `uint8_t` | 0=inputs, 1=outputs | +| start_index | `uint8_t` | index of first directory entry to write | +| count | `uint8_t` | count of directory entries to write | +| result | `uint16_t` | result of acknowledge, 0=fail, 1=good | ### FLEXIFUNCTION_COMMAND (157) {#FLEXIFUNCTION_COMMAND} Acknowledge success or failure of a flexifunction command -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -command_type | `uint8_t` | Flexifunction command type - +| Field Name | Type | Description | +| ---------------- | --------- | -------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| command_type | `uint8_t` | Flexifunction command type | ### FLEXIFUNCTION_COMMAND_ACK (158) {#FLEXIFUNCTION_COMMAND_ACK} Acknowledge success or failure of a flexifunction command -Field Name | Type | Description ---- | --- | --- -command_type | `uint16_t` | Command acknowledged -result | `uint16_t` | result of acknowledge - +| Field Name | Type | Description | +| ------------ | ---------- | --------------------- | +| command_type | `uint16_t` | Command acknowledged | +| result | `uint16_t` | result of acknowledge | ### SERIAL_UDB_EXTRA_F2_A (170) {#SERIAL_UDB_EXTRA_F2_A} Backwards compatible MAVLink version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) - F2: Format Part A -Field Name | Type | Description ---- | --- | --- -sue_time | `uint32_t` | Serial UDB Extra Time -sue_status | `uint8_t` | Serial UDB Extra Status -sue_latitude | `int32_t` | Serial UDB Extra Latitude -sue_longitude | `int32_t` | Serial UDB Extra Longitude -sue_altitude | `int32_t` | Serial UDB Extra Altitude -sue_waypoint_index | `uint16_t` | Serial UDB Extra Waypoint Index -sue_rmat0 | `int16_t` | Serial UDB Extra Rmat 0 -sue_rmat1 | `int16_t` | Serial UDB Extra Rmat 1 -sue_rmat2 | `int16_t` | Serial UDB Extra Rmat 2 -sue_rmat3 | `int16_t` | Serial UDB Extra Rmat 3 -sue_rmat4 | `int16_t` | Serial UDB Extra Rmat 4 -sue_rmat5 | `int16_t` | Serial UDB Extra Rmat 5 -sue_rmat6 | `int16_t` | Serial UDB Extra Rmat 6 -sue_rmat7 | `int16_t` | Serial UDB Extra Rmat 7 -sue_rmat8 | `int16_t` | Serial UDB Extra Rmat 8 -sue_cog | `uint16_t` | Serial UDB Extra GPS Course Over Ground -sue_sog | `int16_t` | Serial UDB Extra Speed Over Ground -sue_cpu_load | `uint16_t` | Serial UDB Extra CPU Load -sue_air_speed_3DIMU | `uint16_t` | Serial UDB Extra 3D IMU Air Speed -sue_estimated_wind_0 | `int16_t` | Serial UDB Extra Estimated Wind 0 -sue_estimated_wind_1 | `int16_t` | Serial UDB Extra Estimated Wind 1 -sue_estimated_wind_2 | `int16_t` | Serial UDB Extra Estimated Wind 2 -sue_magFieldEarth0 | `int16_t` | Serial UDB Extra Magnetic Field Earth 0 -sue_magFieldEarth1 | `int16_t` | Serial UDB Extra Magnetic Field Earth 1 -sue_magFieldEarth2 | `int16_t` | Serial UDB Extra Magnetic Field Earth 2 -sue_svs | `int16_t` | Serial UDB Extra Number of Satellites in View -sue_hdop | `int16_t` | Serial UDB Extra GPS Horizontal Dilution of Precision - +| Field Name | Type | Description | +| -------------------- | ---------- | ----------------------------------------------------- | +| sue_time | `uint32_t` | Serial UDB Extra Time | +| sue_status | `uint8_t` | Serial UDB Extra Status | +| sue_latitude | `int32_t` | Serial UDB Extra Latitude | +| sue_longitude | `int32_t` | Serial UDB Extra Longitude | +| sue_altitude | `int32_t` | Serial UDB Extra Altitude | +| sue_waypoint_index | `uint16_t` | Serial UDB Extra Waypoint Index | +| sue_rmat0 | `int16_t` | Serial UDB Extra Rmat 0 | +| sue_rmat1 | `int16_t` | Serial UDB Extra Rmat 1 | +| sue_rmat2 | `int16_t` | Serial UDB Extra Rmat 2 | +| sue_rmat3 | `int16_t` | Serial UDB Extra Rmat 3 | +| sue_rmat4 | `int16_t` | Serial UDB Extra Rmat 4 | +| sue_rmat5 | `int16_t` | Serial UDB Extra Rmat 5 | +| sue_rmat6 | `int16_t` | Serial UDB Extra Rmat 6 | +| sue_rmat7 | `int16_t` | Serial UDB Extra Rmat 7 | +| sue_rmat8 | `int16_t` | Serial UDB Extra Rmat 8 | +| sue_cog | `uint16_t` | Serial UDB Extra GPS Course Over Ground | +| sue_sog | `int16_t` | Serial UDB Extra Speed Over Ground | +| sue_cpu_load | `uint16_t` | Serial UDB Extra CPU Load | +| sue_air_speed_3DIMU | `uint16_t` | Serial UDB Extra 3D IMU Air Speed | +| sue_estimated_wind_0 | `int16_t` | Serial UDB Extra Estimated Wind 0 | +| sue_estimated_wind_1 | `int16_t` | Serial UDB Extra Estimated Wind 1 | +| sue_estimated_wind_2 | `int16_t` | Serial UDB Extra Estimated Wind 2 | +| sue_magFieldEarth0 | `int16_t` | Serial UDB Extra Magnetic Field Earth 0 | +| sue_magFieldEarth1 | `int16_t` | Serial UDB Extra Magnetic Field Earth 1 | +| sue_magFieldEarth2 | `int16_t` | Serial UDB Extra Magnetic Field Earth 2 | +| sue_svs | `int16_t` | Serial UDB Extra Number of Satellites in View | +| sue_hdop | `int16_t` | Serial UDB Extra GPS Horizontal Dilution of Precision | ### SERIAL_UDB_EXTRA_F2_B (171) {#SERIAL_UDB_EXTRA_F2_B} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) - F2: Part B -Field Name | Type | Description ---- | --- | --- -sue_time | `uint32_t` | Serial UDB Extra Time -sue_pwm_input_1 | `int16_t` | Serial UDB Extra PWM Input Channel 1 -sue_pwm_input_2 | `int16_t` | Serial UDB Extra PWM Input Channel 2 -sue_pwm_input_3 | `int16_t` | Serial UDB Extra PWM Input Channel 3 -sue_pwm_input_4 | `int16_t` | Serial UDB Extra PWM Input Channel 4 -sue_pwm_input_5 | `int16_t` | Serial UDB Extra PWM Input Channel 5 -sue_pwm_input_6 | `int16_t` | Serial UDB Extra PWM Input Channel 6 -sue_pwm_input_7 | `int16_t` | Serial UDB Extra PWM Input Channel 7 -sue_pwm_input_8 | `int16_t` | Serial UDB Extra PWM Input Channel 8 -sue_pwm_input_9 | `int16_t` | Serial UDB Extra PWM Input Channel 9 -sue_pwm_input_10 | `int16_t` | Serial UDB Extra PWM Input Channel 10 -sue_pwm_input_11 | `int16_t` | Serial UDB Extra PWM Input Channel 11 -sue_pwm_input_12 | `int16_t` | Serial UDB Extra PWM Input Channel 12 -sue_pwm_output_1 | `int16_t` | Serial UDB Extra PWM Output Channel 1 -sue_pwm_output_2 | `int16_t` | Serial UDB Extra PWM Output Channel 2 -sue_pwm_output_3 | `int16_t` | Serial UDB Extra PWM Output Channel 3 -sue_pwm_output_4 | `int16_t` | Serial UDB Extra PWM Output Channel 4 -sue_pwm_output_5 | `int16_t` | Serial UDB Extra PWM Output Channel 5 -sue_pwm_output_6 | `int16_t` | Serial UDB Extra PWM Output Channel 6 -sue_pwm_output_7 | `int16_t` | Serial UDB Extra PWM Output Channel 7 -sue_pwm_output_8 | `int16_t` | Serial UDB Extra PWM Output Channel 8 -sue_pwm_output_9 | `int16_t` | Serial UDB Extra PWM Output Channel 9 -sue_pwm_output_10 | `int16_t` | Serial UDB Extra PWM Output Channel 10 -sue_pwm_output_11 | `int16_t` | Serial UDB Extra PWM Output Channel 11 -sue_pwm_output_12 | `int16_t` | Serial UDB Extra PWM Output Channel 12 -sue_imu_location_x | `int16_t` | Serial UDB Extra IMU Location X -sue_imu_location_y | `int16_t` | Serial UDB Extra IMU Location Y -sue_imu_location_z | `int16_t` | Serial UDB Extra IMU Location Z -sue_location_error_earth_x | `int16_t` | Serial UDB Location Error Earth X -sue_location_error_earth_y | `int16_t` | Serial UDB Location Error Earth Y -sue_location_error_earth_z | `int16_t` | Serial UDB Location Error Earth Z -sue_flags | `uint32_t` | Serial UDB Extra Status Flags -sue_osc_fails | `int16_t` | Serial UDB Extra Oscillator Failure Count -sue_imu_velocity_x | `int16_t` | Serial UDB Extra IMU Velocity X -sue_imu_velocity_y | `int16_t` | Serial UDB Extra IMU Velocity Y -sue_imu_velocity_z | `int16_t` | Serial UDB Extra IMU Velocity Z -sue_waypoint_goal_x | `int16_t` | Serial UDB Extra Current Waypoint Goal X -sue_waypoint_goal_y | `int16_t` | Serial UDB Extra Current Waypoint Goal Y -sue_waypoint_goal_z | `int16_t` | Serial UDB Extra Current Waypoint Goal Z -sue_aero_x | `int16_t` | Aeroforce in UDB X Axis -sue_aero_y | `int16_t` | Aeroforce in UDB Y Axis -sue_aero_z | `int16_t` | Aeroforce in UDB Z axis -sue_barom_temp | `int16_t` | SUE barometer temperature -sue_barom_press | `int32_t` | SUE barometer pressure -sue_barom_alt | `int32_t` | SUE barometer altitude -sue_bat_volt | `int16_t` | SUE battery voltage -sue_bat_amp | `int16_t` | SUE battery current -sue_bat_amp_hours | `int16_t` | SUE battery milli amp hours used -sue_desired_height | `int16_t` | Sue autopilot desired height -sue_memory_stack_free | `int16_t` | Serial UDB Extra Stack Memory Free - +| Field Name | Type | Description | +| -------------------------- | ---------- | ----------------------------------------- | +| sue_time | `uint32_t` | Serial UDB Extra Time | +| sue_pwm_input_1 | `int16_t` | Serial UDB Extra PWM Input Channel 1 | +| sue_pwm_input_2 | `int16_t` | Serial UDB Extra PWM Input Channel 2 | +| sue_pwm_input_3 | `int16_t` | Serial UDB Extra PWM Input Channel 3 | +| sue_pwm_input_4 | `int16_t` | Serial UDB Extra PWM Input Channel 4 | +| sue_pwm_input_5 | `int16_t` | Serial UDB Extra PWM Input Channel 5 | +| sue_pwm_input_6 | `int16_t` | Serial UDB Extra PWM Input Channel 6 | +| sue_pwm_input_7 | `int16_t` | Serial UDB Extra PWM Input Channel 7 | +| sue_pwm_input_8 | `int16_t` | Serial UDB Extra PWM Input Channel 8 | +| sue_pwm_input_9 | `int16_t` | Serial UDB Extra PWM Input Channel 9 | +| sue_pwm_input_10 | `int16_t` | Serial UDB Extra PWM Input Channel 10 | +| sue_pwm_input_11 | `int16_t` | Serial UDB Extra PWM Input Channel 11 | +| sue_pwm_input_12 | `int16_t` | Serial UDB Extra PWM Input Channel 12 | +| sue_pwm_output_1 | `int16_t` | Serial UDB Extra PWM Output Channel 1 | +| sue_pwm_output_2 | `int16_t` | Serial UDB Extra PWM Output Channel 2 | +| sue_pwm_output_3 | `int16_t` | Serial UDB Extra PWM Output Channel 3 | +| sue_pwm_output_4 | `int16_t` | Serial UDB Extra PWM Output Channel 4 | +| sue_pwm_output_5 | `int16_t` | Serial UDB Extra PWM Output Channel 5 | +| sue_pwm_output_6 | `int16_t` | Serial UDB Extra PWM Output Channel 6 | +| sue_pwm_output_7 | `int16_t` | Serial UDB Extra PWM Output Channel 7 | +| sue_pwm_output_8 | `int16_t` | Serial UDB Extra PWM Output Channel 8 | +| sue_pwm_output_9 | `int16_t` | Serial UDB Extra PWM Output Channel 9 | +| sue_pwm_output_10 | `int16_t` | Serial UDB Extra PWM Output Channel 10 | +| sue_pwm_output_11 | `int16_t` | Serial UDB Extra PWM Output Channel 11 | +| sue_pwm_output_12 | `int16_t` | Serial UDB Extra PWM Output Channel 12 | +| sue_imu_location_x | `int16_t` | Serial UDB Extra IMU Location X | +| sue_imu_location_y | `int16_t` | Serial UDB Extra IMU Location Y | +| sue_imu_location_z | `int16_t` | Serial UDB Extra IMU Location Z | +| sue_location_error_earth_x | `int16_t` | Serial UDB Location Error Earth X | +| sue_location_error_earth_y | `int16_t` | Serial UDB Location Error Earth Y | +| sue_location_error_earth_z | `int16_t` | Serial UDB Location Error Earth Z | +| sue_flags | `uint32_t` | Serial UDB Extra Status Flags | +| sue_osc_fails | `int16_t` | Serial UDB Extra Oscillator Failure Count | +| sue_imu_velocity_x | `int16_t` | Serial UDB Extra IMU Velocity X | +| sue_imu_velocity_y | `int16_t` | Serial UDB Extra IMU Velocity Y | +| sue_imu_velocity_z | `int16_t` | Serial UDB Extra IMU Velocity Z | +| sue_waypoint_goal_x | `int16_t` | Serial UDB Extra Current Waypoint Goal X | +| sue_waypoint_goal_y | `int16_t` | Serial UDB Extra Current Waypoint Goal Y | +| sue_waypoint_goal_z | `int16_t` | Serial UDB Extra Current Waypoint Goal Z | +| sue_aero_x | `int16_t` | Aeroforce in UDB X Axis | +| sue_aero_y | `int16_t` | Aeroforce in UDB Y Axis | +| sue_aero_z | `int16_t` | Aeroforce in UDB Z axis | +| sue_barom_temp | `int16_t` | SUE barometer temperature | +| sue_barom_press | `int32_t` | SUE barometer pressure | +| sue_barom_alt | `int32_t` | SUE barometer altitude | +| sue_bat_volt | `int16_t` | SUE battery voltage | +| sue_bat_amp | `int16_t` | SUE battery current | +| sue_bat_amp_hours | `int16_t` | SUE battery milli amp hours used | +| sue_desired_height | `int16_t` | Sue autopilot desired height | +| sue_memory_stack_free | `int16_t` | Serial UDB Extra Stack Memory Free | ### SERIAL_UDB_EXTRA_F4 (172) {#SERIAL_UDB_EXTRA_F4} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F4: format -Field Name | Type | Description ---- | --- | --- -sue_ROLL_STABILIZATION_AILERONS | `uint8_t` | Serial UDB Extra Roll Stabilization with Ailerons Enabled -sue_ROLL_STABILIZATION_RUDDER | `uint8_t` | Serial UDB Extra Roll Stabilization with Rudder Enabled -sue_PITCH_STABILIZATION | `uint8_t` | Serial UDB Extra Pitch Stabilization Enabled -sue_YAW_STABILIZATION_RUDDER | `uint8_t` | Serial UDB Extra Yaw Stabilization using Rudder Enabled -sue_YAW_STABILIZATION_AILERON | `uint8_t` | Serial UDB Extra Yaw Stabilization using Ailerons Enabled -sue_AILERON_NAVIGATION | `uint8_t` | Serial UDB Extra Navigation with Ailerons Enabled -sue_RUDDER_NAVIGATION | `uint8_t` | Serial UDB Extra Navigation with Rudder Enabled -sue_ALTITUDEHOLD_STABILIZED | `uint8_t` | Serial UDB Extra Type of Alitude Hold when in Stabilized Mode -sue_ALTITUDEHOLD_WAYPOINT | `uint8_t` | Serial UDB Extra Type of Alitude Hold when in Waypoint Mode -sue_RACING_MODE | `uint8_t` | Serial UDB Extra Firmware racing mode enabled - +| Field Name | Type | Description | +| ------------------------------- | --------- | ------------------------------------------------------------- | +| sue_ROLL_STABILIZATION_AILERONS | `uint8_t` | Serial UDB Extra Roll Stabilization with Ailerons Enabled | +| sue_ROLL_STABILIZATION_RUDDER | `uint8_t` | Serial UDB Extra Roll Stabilization with Rudder Enabled | +| sue_PITCH_STABILIZATION | `uint8_t` | Serial UDB Extra Pitch Stabilization Enabled | +| sue_YAW_STABILIZATION_RUDDER | `uint8_t` | Serial UDB Extra Yaw Stabilization using Rudder Enabled | +| sue_YAW_STABILIZATION_AILERON | `uint8_t` | Serial UDB Extra Yaw Stabilization using Ailerons Enabled | +| sue_AILERON_NAVIGATION | `uint8_t` | Serial UDB Extra Navigation with Ailerons Enabled | +| sue_RUDDER_NAVIGATION | `uint8_t` | Serial UDB Extra Navigation with Rudder Enabled | +| sue_ALTITUDEHOLD_STABILIZED | `uint8_t` | Serial UDB Extra Type of Alitude Hold when in Stabilized Mode | +| sue_ALTITUDEHOLD_WAYPOINT | `uint8_t` | Serial UDB Extra Type of Alitude Hold when in Waypoint Mode | +| sue_RACING_MODE | `uint8_t` | Serial UDB Extra Firmware racing mode enabled | ### SERIAL_UDB_EXTRA_F5 (173) {#SERIAL_UDB_EXTRA_F5} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F5: format -Field Name | Type | Description ---- | --- | --- -sue_YAWKP_AILERON | `float` | Serial UDB [YAWKP_AILERON](#YAWKP_AILERON) Gain for Proporional control of navigation -sue_YAWKD_AILERON | `float` | Serial UDB [YAWKD_AILERON](#YAWKD_AILERON) Gain for Rate control of navigation -sue_ROLLKP | `float` | Serial UDB Extra ROLLKP Gain for Proportional control of roll stabilization -sue_ROLLKD | `float` | Serial UDB Extra ROLLKD Gain for Rate control of roll stabilization - +| Field Name | Type | Description | +| ----------------- | ------- | ------------------------------------------------------------------------------------- | +| sue_YAWKP_AILERON | `float` | Serial UDB [YAWKP_AILERON](#YAWKP_AILERON) Gain for Proporional control of navigation | +| sue_YAWKD_AILERON | `float` | Serial UDB [YAWKD_AILERON](#YAWKD_AILERON) Gain for Rate control of navigation | +| sue_ROLLKP | `float` | Serial UDB Extra ROLLKP Gain for Proportional control of roll stabilization | +| sue_ROLLKD | `float` | Serial UDB Extra ROLLKD Gain for Rate control of roll stabilization | ### SERIAL_UDB_EXTRA_F6 (174) {#SERIAL_UDB_EXTRA_F6} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F6: format -Field Name | Type | Description ---- | --- | --- -sue_PITCHGAIN | `float` | Serial UDB Extra PITCHGAIN Proportional Control -sue_PITCHKD | `float` | Serial UDB Extra Pitch Rate Control -sue_RUDDER_ELEV_MIX | `float` | Serial UDB Extra Rudder to Elevator Mix -sue_ROLL_ELEV_MIX | `float` | Serial UDB Extra Roll to Elevator Mix -sue_ELEVATOR_BOOST | `float` | Gain For Boosting Manual Elevator control When Plane Stabilized - +| Field Name | Type | Description | +| ------------------- | ------- | --------------------------------------------------------------- | +| sue_PITCHGAIN | `float` | Serial UDB Extra PITCHGAIN Proportional Control | +| sue_PITCHKD | `float` | Serial UDB Extra Pitch Rate Control | +| sue_RUDDER_ELEV_MIX | `float` | Serial UDB Extra Rudder to Elevator Mix | +| sue_ROLL_ELEV_MIX | `float` | Serial UDB Extra Roll to Elevator Mix | +| sue_ELEVATOR_BOOST | `float` | Gain For Boosting Manual Elevator control When Plane Stabilized | ### SERIAL_UDB_EXTRA_F7 (175) {#SERIAL_UDB_EXTRA_F7} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F7: format -Field Name | Type | Description ---- | --- | --- -sue_YAWKP_RUDDER | `float` | Serial UDB [YAWKP_RUDDER](#YAWKP_RUDDER) Gain for Proporional control of navigation -sue_YAWKD_RUDDER | `float` | Serial UDB [YAWKD_RUDDER](#YAWKD_RUDDER) Gain for Rate control of navigation -sue_ROLLKP_RUDDER | `float` | Serial UDB Extra [ROLLKP_RUDDER](#ROLLKP_RUDDER) Gain for Proportional control of roll stabilization -sue_ROLLKD_RUDDER | `float` | Serial UDB Extra [ROLLKD_RUDDER](#ROLLKD_RUDDER) Gain for Rate control of roll stabilization -sue_RUDDER_BOOST | `float` | SERIAL UDB EXTRA Rudder Boost Gain to Manual Control when stabilized -sue_RTL_PITCH_DOWN | `float` | Serial UDB Extra Return To Landing - Angle to Pitch Plane Down - +| Field Name | Type | Description | +| ------------------ | ------- | ---------------------------------------------------------------------------------------------------- | +| sue_YAWKP_RUDDER | `float` | Serial UDB [YAWKP_RUDDER](#YAWKP_RUDDER) Gain for Proporional control of navigation | +| sue_YAWKD_RUDDER | `float` | Serial UDB [YAWKD_RUDDER](#YAWKD_RUDDER) Gain for Rate control of navigation | +| sue_ROLLKP_RUDDER | `float` | Serial UDB Extra [ROLLKP_RUDDER](#ROLLKP_RUDDER) Gain for Proportional control of roll stabilization | +| sue_ROLLKD_RUDDER | `float` | Serial UDB Extra [ROLLKD_RUDDER](#ROLLKD_RUDDER) Gain for Rate control of roll stabilization | +| sue_RUDDER_BOOST | `float` | SERIAL UDB EXTRA Rudder Boost Gain to Manual Control when stabilized | +| sue_RTL_PITCH_DOWN | `float` | Serial UDB Extra Return To Landing - Angle to Pitch Plane Down | ### SERIAL_UDB_EXTRA_F8 (176) {#SERIAL_UDB_EXTRA_F8} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F8: format -Field Name | Type | Description ---- | --- | --- -sue_HEIGHT_TARGET_MAX | `float` | Serial UDB Extra [HEIGHT_TARGET_MAX](#HEIGHT_TARGET_MAX) -sue_HEIGHT_TARGET_MIN | `float` | Serial UDB Extra [HEIGHT_TARGET_MIN](#HEIGHT_TARGET_MIN) -sue_ALT_HOLD_THROTTLE_MIN | `float` | Serial UDB Extra [ALT_HOLD_THROTTLE_MIN](#ALT_HOLD_THROTTLE_MIN) -sue_ALT_HOLD_THROTTLE_MAX | `float` | Serial UDB Extra [ALT_HOLD_THROTTLE_MAX](#ALT_HOLD_THROTTLE_MAX) -sue_ALT_HOLD_PITCH_MIN | `float` | Serial UDB Extra [ALT_HOLD_PITCH_MIN](#ALT_HOLD_PITCH_MIN) -sue_ALT_HOLD_PITCH_MAX | `float` | Serial UDB Extra [ALT_HOLD_PITCH_MAX](#ALT_HOLD_PITCH_MAX) -sue_ALT_HOLD_PITCH_HIGH | `float` | Serial UDB Extra [ALT_HOLD_PITCH_HIGH](#ALT_HOLD_PITCH_HIGH) - +| Field Name | Type | Description | +| ------------------------- | ------- | ---------------------------------------------------------------- | +| sue_HEIGHT_TARGET_MAX | `float` | Serial UDB Extra [HEIGHT_TARGET_MAX](#HEIGHT_TARGET_MAX) | +| sue_HEIGHT_TARGET_MIN | `float` | Serial UDB Extra [HEIGHT_TARGET_MIN](#HEIGHT_TARGET_MIN) | +| sue_ALT_HOLD_THROTTLE_MIN | `float` | Serial UDB Extra [ALT_HOLD_THROTTLE_MIN](#ALT_HOLD_THROTTLE_MIN) | +| sue_ALT_HOLD_THROTTLE_MAX | `float` | Serial UDB Extra [ALT_HOLD_THROTTLE_MAX](#ALT_HOLD_THROTTLE_MAX) | +| sue_ALT_HOLD_PITCH_MIN | `float` | Serial UDB Extra [ALT_HOLD_PITCH_MIN](#ALT_HOLD_PITCH_MIN) | +| sue_ALT_HOLD_PITCH_MAX | `float` | Serial UDB Extra [ALT_HOLD_PITCH_MAX](#ALT_HOLD_PITCH_MAX) | +| sue_ALT_HOLD_PITCH_HIGH | `float` | Serial UDB Extra [ALT_HOLD_PITCH_HIGH](#ALT_HOLD_PITCH_HIGH) | ### SERIAL_UDB_EXTRA_F13 (177) {#SERIAL_UDB_EXTRA_F13} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F13: format -Field Name | Type | Description ---- | --- | --- -sue_week_no | `int16_t` | Serial UDB Extra GPS Week Number -sue_lat_origin | `int32_t` | Serial UDB Extra MP Origin Latitude -sue_lon_origin | `int32_t` | Serial UDB Extra MP Origin Longitude -sue_alt_origin | `int32_t` | Serial UDB Extra MP Origin Altitude Above Sea Level - +| Field Name | Type | Description | +| -------------- | --------- | --------------------------------------------------- | +| sue_week_no | `int16_t` | Serial UDB Extra GPS Week Number | +| sue_lat_origin | `int32_t` | Serial UDB Extra MP Origin Latitude | +| sue_lon_origin | `int32_t` | Serial UDB Extra MP Origin Longitude | +| sue_alt_origin | `int32_t` | Serial UDB Extra MP Origin Altitude Above Sea Level | ### SERIAL_UDB_EXTRA_F14 (178) {#SERIAL_UDB_EXTRA_F14} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F14: format -Field Name | Type | Description ---- | --- | --- -sue_WIND_ESTIMATION | `uint8_t` | Serial UDB Extra Wind Estimation Enabled -sue_GPS_TYPE | `uint8_t` | Serial UDB Extra Type of GPS Unit -sue_DR | `uint8_t` | Serial UDB Extra Dead Reckoning Enabled -sue_BOARD_TYPE | `uint8_t` | Serial UDB Extra Type of UDB Hardware -sue_AIRFRAME | `uint8_t` | Serial UDB Extra Type of Airframe -sue_RCON | `int16_t` | Serial UDB Extra Reboot Register of DSPIC -sue_TRAP_FLAGS | `int16_t` | Serial UDB Extra Last dspic Trap Flags -sue_TRAP_SOURCE | `uint32_t` | Serial UDB Extra Type Program Address of Last Trap -sue_osc_fail_count | `int16_t` | Serial UDB Extra Number of Ocillator Failures -sue_CLOCK_CONFIG | `uint8_t` | Serial UDB Extra UDB Internal Clock Configuration -sue_FLIGHT_PLAN_TYPE | `uint8_t` | Serial UDB Extra Type of Flight Plan - +| Field Name | Type | Description | +| -------------------- | ---------- | -------------------------------------------------- | +| sue_WIND_ESTIMATION | `uint8_t` | Serial UDB Extra Wind Estimation Enabled | +| sue_GPS_TYPE | `uint8_t` | Serial UDB Extra Type of GPS Unit | +| sue_DR | `uint8_t` | Serial UDB Extra Dead Reckoning Enabled | +| sue_BOARD_TYPE | `uint8_t` | Serial UDB Extra Type of UDB Hardware | +| sue_AIRFRAME | `uint8_t` | Serial UDB Extra Type of Airframe | +| sue_RCON | `int16_t` | Serial UDB Extra Reboot Register of DSPIC | +| sue_TRAP_FLAGS | `int16_t` | Serial UDB Extra Last dspic Trap Flags | +| sue_TRAP_SOURCE | `uint32_t` | Serial UDB Extra Type Program Address of Last Trap | +| sue_osc_fail_count | `int16_t` | Serial UDB Extra Number of Ocillator Failures | +| sue_CLOCK_CONFIG | `uint8_t` | Serial UDB Extra UDB Internal Clock Configuration | +| sue_FLIGHT_PLAN_TYPE | `uint8_t` | Serial UDB Extra Type of Flight Plan | ### SERIAL_UDB_EXTRA_F15 (179) {#SERIAL_UDB_EXTRA_F15} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F15 format -Field Name | Type | Description ---- | --- | --- -sue_ID_VEHICLE_MODEL_NAME | `uint8_t[40]` | Serial UDB Extra Model Name Of Vehicle -sue_ID_VEHICLE_REGISTRATION | `uint8_t[20]` | Serial UDB Extra Registraton Number of Vehicle - +| Field Name | Type | Description | +| --------------------------- | ------------- | ---------------------------------------------- | +| sue_ID_VEHICLE_MODEL_NAME | `uint8_t[40]` | Serial UDB Extra Model Name Of Vehicle | +| sue_ID_VEHICLE_REGISTRATION | `uint8_t[20]` | Serial UDB Extra Registraton Number of Vehicle | ### SERIAL_UDB_EXTRA_F16 (180) {#SERIAL_UDB_EXTRA_F16} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F16 format -Field Name | Type | Description ---- | --- | --- -sue_ID_LEAD_PILOT | `uint8_t[40]` | Serial UDB Extra Name of Expected Lead Pilot -sue_ID_DIY_DRONES_URL | `uint8_t[70]` | Serial UDB Extra URL of Lead Pilot or Team - +| Field Name | Type | Description | +| --------------------- | ------------- | -------------------------------------------- | +| sue_ID_LEAD_PILOT | `uint8_t[40]` | Serial UDB Extra Name of Expected Lead Pilot | +| sue_ID_DIY_DRONES_URL | `uint8_t[70]` | Serial UDB Extra URL of Lead Pilot or Team | ### ALTITUDES (181) {#ALTITUDES} The altitude measured by sensors and IMU -Field Name | Type | Description ---- | --- | --- -time_boot_ms | `uint32_t` | Timestamp (milliseconds since system boot) -alt_gps | `int32_t` | GPS altitude (MSL) in meters, expressed as * 1000 (millimeters) -alt_imu | `int32_t` | IMU altitude above ground in meters, expressed as * 1000 (millimeters) -alt_barometric | `int32_t` | barometeric altitude above ground in meters, expressed as * 1000 (millimeters) -alt_optical_flow | `int32_t` | Optical flow altitude above ground in meters, expressed as * 1000 (millimeters) -alt_range_finder | `int32_t` | Rangefinder Altitude above ground in meters, expressed as * 1000 (millimeters) -alt_extra | `int32_t` | Extra altitude above ground in meters, expressed as * 1000 (millimeters) - +| Field Name | Type | Description | +| ---------------- | ---------- | -------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | Timestamp (milliseconds since system boot) | +| alt_gps | `int32_t` | GPS altitude (MSL) in meters, expressed as \* 1000 (millimeters) | +| alt_imu | `int32_t` | IMU altitude above ground in meters, expressed as \* 1000 (millimeters) | +| alt_barometric | `int32_t` | barometeric altitude above ground in meters, expressed as \* 1000 (millimeters) | +| alt_optical_flow | `int32_t` | Optical flow altitude above ground in meters, expressed as \* 1000 (millimeters) | +| alt_range_finder | `int32_t` | Rangefinder Altitude above ground in meters, expressed as \* 1000 (millimeters) | +| alt_extra | `int32_t` | Extra altitude above ground in meters, expressed as \* 1000 (millimeters) | ### AIRSPEEDS (182) {#AIRSPEEDS} The airspeed measured by sensors and IMU -Field Name | Type | Description ---- | --- | --- -time_boot_ms | `uint32_t` | Timestamp (milliseconds since system boot) -airspeed_imu | `int16_t` | Airspeed estimate from IMU, cm/s -airspeed_pitot | `int16_t` | Pitot measured forward airpseed, cm/s -airspeed_hot_wire | `int16_t` | Hot wire anenometer measured airspeed, cm/s -airspeed_ultrasonic | `int16_t` | Ultrasonic measured airspeed, cm/s -aoa | `int16_t` | Angle of attack sensor, degrees * 10 -aoy | `int16_t` | Yaw angle sensor, degrees * 10 - +| Field Name | Type | Description | +| ------------------- | ---------- | ------------------------------------------- | +| time_boot_ms | `uint32_t` | Timestamp (milliseconds since system boot) | +| airspeed_imu | `int16_t` | Airspeed estimate from IMU, cm/s | +| airspeed_pitot | `int16_t` | Pitot measured forward airpseed, cm/s | +| airspeed_hot_wire | `int16_t` | Hot wire anenometer measured airspeed, cm/s | +| airspeed_ultrasonic | `int16_t` | Ultrasonic measured airspeed, cm/s | +| aoa | `int16_t` | Angle of attack sensor, degrees \* 10 | +| aoy | `int16_t` | Yaw angle sensor, degrees \* 10 | ### SERIAL_UDB_EXTRA_F17 (183) {#SERIAL_UDB_EXTRA_F17} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F17 format -Field Name | Type | Description ---- | --- | --- -sue_feed_forward | `float` | SUE Feed Forward Gain -sue_turn_rate_nav | `float` | SUE Max Turn Rate when Navigating -sue_turn_rate_fbw | `float` | SUE Max Turn Rate in Fly By Wire Mode - +| Field Name | Type | Description | +| ----------------- | ------- | ------------------------------------- | +| sue_feed_forward | `float` | SUE Feed Forward Gain | +| sue_turn_rate_nav | `float` | SUE Max Turn Rate when Navigating | +| sue_turn_rate_fbw | `float` | SUE Max Turn Rate in Fly By Wire Mode | ### SERIAL_UDB_EXTRA_F18 (184) {#SERIAL_UDB_EXTRA_F18} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F18 format -Field Name | Type | Description ---- | --- | --- -angle_of_attack_normal | `float` | SUE Angle of Attack Normal -angle_of_attack_inverted | `float` | SUE Angle of Attack Inverted -elevator_trim_normal | `float` | SUE Elevator Trim Normal -elevator_trim_inverted | `float` | SUE Elevator Trim Inverted -reference_speed | `float` | SUE reference_speed - +| Field Name | Type | Description | +| ------------------------ | ------- | ---------------------------- | +| angle_of_attack_normal | `float` | SUE Angle of Attack Normal | +| angle_of_attack_inverted | `float` | SUE Angle of Attack Inverted | +| elevator_trim_normal | `float` | SUE Elevator Trim Normal | +| elevator_trim_inverted | `float` | SUE Elevator Trim Inverted | +| reference_speed | `float` | SUE reference_speed | ### SERIAL_UDB_EXTRA_F19 (185) {#SERIAL_UDB_EXTRA_F19} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F19 format -Field Name | Type | Description ---- | --- | --- -sue_aileron_output_channel | `uint8_t` | SUE aileron output channel -sue_aileron_reversed | `uint8_t` | SUE aileron reversed -sue_elevator_output_channel | `uint8_t` | SUE elevator output channel -sue_elevator_reversed | `uint8_t` | SUE elevator reversed -sue_throttle_output_channel | `uint8_t` | SUE throttle output channel -sue_throttle_reversed | `uint8_t` | SUE throttle reversed -sue_rudder_output_channel | `uint8_t` | SUE rudder output channel -sue_rudder_reversed | `uint8_t` | SUE rudder reversed - +| Field Name | Type | Description | +| --------------------------- | --------- | --------------------------- | +| sue_aileron_output_channel | `uint8_t` | SUE aileron output channel | +| sue_aileron_reversed | `uint8_t` | SUE aileron reversed | +| sue_elevator_output_channel | `uint8_t` | SUE elevator output channel | +| sue_elevator_reversed | `uint8_t` | SUE elevator reversed | +| sue_throttle_output_channel | `uint8_t` | SUE throttle output channel | +| sue_throttle_reversed | `uint8_t` | SUE throttle reversed | +| sue_rudder_output_channel | `uint8_t` | SUE rudder output channel | +| sue_rudder_reversed | `uint8_t` | SUE rudder reversed | ### SERIAL_UDB_EXTRA_F20 (186) {#SERIAL_UDB_EXTRA_F20} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F20 format -Field Name | Type | Description ---- | --- | --- -sue_number_of_inputs | `uint8_t` | SUE Number of Input Channels -sue_trim_value_input_1 | `int16_t` | SUE UDB PWM Trim Value on Input 1 -sue_trim_value_input_2 | `int16_t` | SUE UDB PWM Trim Value on Input 2 -sue_trim_value_input_3 | `int16_t` | SUE UDB PWM Trim Value on Input 3 -sue_trim_value_input_4 | `int16_t` | SUE UDB PWM Trim Value on Input 4 -sue_trim_value_input_5 | `int16_t` | SUE UDB PWM Trim Value on Input 5 -sue_trim_value_input_6 | `int16_t` | SUE UDB PWM Trim Value on Input 6 -sue_trim_value_input_7 | `int16_t` | SUE UDB PWM Trim Value on Input 7 -sue_trim_value_input_8 | `int16_t` | SUE UDB PWM Trim Value on Input 8 -sue_trim_value_input_9 | `int16_t` | SUE UDB PWM Trim Value on Input 9 -sue_trim_value_input_10 | `int16_t` | SUE UDB PWM Trim Value on Input 10 -sue_trim_value_input_11 | `int16_t` | SUE UDB PWM Trim Value on Input 11 -sue_trim_value_input_12 | `int16_t` | SUE UDB PWM Trim Value on Input 12 - +| Field Name | Type | Description | +| ----------------------- | --------- | ---------------------------------- | +| sue_number_of_inputs | `uint8_t` | SUE Number of Input Channels | +| sue_trim_value_input_1 | `int16_t` | SUE UDB PWM Trim Value on Input 1 | +| sue_trim_value_input_2 | `int16_t` | SUE UDB PWM Trim Value on Input 2 | +| sue_trim_value_input_3 | `int16_t` | SUE UDB PWM Trim Value on Input 3 | +| sue_trim_value_input_4 | `int16_t` | SUE UDB PWM Trim Value on Input 4 | +| sue_trim_value_input_5 | `int16_t` | SUE UDB PWM Trim Value on Input 5 | +| sue_trim_value_input_6 | `int16_t` | SUE UDB PWM Trim Value on Input 6 | +| sue_trim_value_input_7 | `int16_t` | SUE UDB PWM Trim Value on Input 7 | +| sue_trim_value_input_8 | `int16_t` | SUE UDB PWM Trim Value on Input 8 | +| sue_trim_value_input_9 | `int16_t` | SUE UDB PWM Trim Value on Input 9 | +| sue_trim_value_input_10 | `int16_t` | SUE UDB PWM Trim Value on Input 10 | +| sue_trim_value_input_11 | `int16_t` | SUE UDB PWM Trim Value on Input 11 | +| sue_trim_value_input_12 | `int16_t` | SUE UDB PWM Trim Value on Input 12 | ### SERIAL_UDB_EXTRA_F21 (187) {#SERIAL_UDB_EXTRA_F21} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F21 format -Field Name | Type | Description ---- | --- | --- -sue_accel_x_offset | `int16_t` | SUE X accelerometer offset -sue_accel_y_offset | `int16_t` | SUE Y accelerometer offset -sue_accel_z_offset | `int16_t` | SUE Z accelerometer offset -sue_gyro_x_offset | `int16_t` | SUE X gyro offset -sue_gyro_y_offset | `int16_t` | SUE Y gyro offset -sue_gyro_z_offset | `int16_t` | SUE Z gyro offset - +| Field Name | Type | Description | +| ------------------ | --------- | -------------------------- | +| sue_accel_x_offset | `int16_t` | SUE X accelerometer offset | +| sue_accel_y_offset | `int16_t` | SUE Y accelerometer offset | +| sue_accel_z_offset | `int16_t` | SUE Z accelerometer offset | +| sue_gyro_x_offset | `int16_t` | SUE X gyro offset | +| sue_gyro_y_offset | `int16_t` | SUE Y gyro offset | +| sue_gyro_z_offset | `int16_t` | SUE Z gyro offset | ### SERIAL_UDB_EXTRA_F22 (188) {#SERIAL_UDB_EXTRA_F22} Backwards compatible version of [SERIAL_UDB_EXTRA](#SERIAL_UDB_EXTRA) F22 format -Field Name | Type | Description ---- | --- | --- -sue_accel_x_at_calibration | `int16_t` | SUE X accelerometer at calibration time -sue_accel_y_at_calibration | `int16_t` | SUE Y accelerometer at calibration time -sue_accel_z_at_calibration | `int16_t` | SUE Z accelerometer at calibration time -sue_gyro_x_at_calibration | `int16_t` | SUE X gyro at calibration time -sue_gyro_y_at_calibration | `int16_t` | SUE Y gyro at calibration time -sue_gyro_z_at_calibration | `int16_t` | SUE Z gyro at calibration time - +| Field Name | Type | Description | +| -------------------------- | --------- | --------------------------------------- | +| sue_accel_x_at_calibration | `int16_t` | SUE X accelerometer at calibration time | +| sue_accel_y_at_calibration | `int16_t` | SUE Y accelerometer at calibration time | +| sue_accel_z_at_calibration | `int16_t` | SUE Z accelerometer at calibration time | +| sue_gyro_x_at_calibration | `int16_t` | SUE X gyro at calibration time | +| sue_gyro_y_at_calibration | `int16_t` | SUE Y gyro at calibration time | +| sue_gyro_z_at_calibration | `int16_t` | SUE Z gyro at calibration time | ## Enumerated Types @@ -481,15 +455,15 @@ sue_gyro_z_at_calibration | `int16_t` | SUE Z gyro at calibration time Action required when performing [CMD_PREFLIGHT_STORAGE](#CMD_PREFLIGHT_STORAGE) -Value | Name | Description ---- | --- | --- -0 | [MAV_PFS_CMD_READ_ALL](#MAV_PFS_CMD_READ_ALL) | Read all parameters from storage -1 | [MAV_PFS_CMD_WRITE_ALL](#MAV_PFS_CMD_WRITE_ALL) | Write all parameters to storage -2 | [MAV_PFS_CMD_CLEAR_ALL](#MAV_PFS_CMD_CLEAR_ALL) | Clear all parameters in storage -3 | [MAV_PFS_CMD_READ_SPECIFIC](#MAV_PFS_CMD_READ_SPECIFIC) | Read specific parameters from storage -4 | [MAV_PFS_CMD_WRITE_SPECIFIC](#MAV_PFS_CMD_WRITE_SPECIFIC) | Write specific parameters to storage -5 | [MAV_PFS_CMD_CLEAR_SPECIFIC](#MAV_PFS_CMD_CLEAR_SPECIFIC) | Clear specific parameters in storage -6 | [MAV_PFS_CMD_DO_NOTHING](#MAV_PFS_CMD_DO_NOTHING) | do nothing +| Value | Name | Description | +| ---------------------------------------- | --------------------------------------------------------- | ------------------------------------- | +| 0 | [MAV_PFS_CMD_READ_ALL](#MAV_PFS_CMD_READ_ALL) | Read all parameters from storage | +| 1 | [MAV_PFS_CMD_WRITE_ALL](#MAV_PFS_CMD_WRITE_ALL) | Write all parameters to storage | +| 2 | [MAV_PFS_CMD_CLEAR_ALL](#MAV_PFS_CMD_CLEAR_ALL) | Clear all parameters in storage | +| 3 | [MAV_PFS_CMD_READ_SPECIFIC](#MAV_PFS_CMD_READ_SPECIFIC) | Read specific parameters from storage | +| 4 | [MAV_PFS_CMD_WRITE_SPECIFIC](#MAV_PFS_CMD_WRITE_SPECIFIC) | Write specific parameters to storage | +| 5 | [MAV_PFS_CMD_CLEAR_SPECIFIC](#MAV_PFS_CMD_CLEAR_SPECIFIC) | Clear specific parameters in storage | +| 6 | [MAV_PFS_CMD_DO_NOTHING](#MAV_PFS_CMD_DO_NOTHING) | do nothing | ## Commands (MAV_CMD) {#mav_commands} @@ -497,14 +471,12 @@ Value | Name | Description Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. -Param (Label) | Description ---- | --- -1 | Storage action: Action defined by MAV_PREFLIGHT_STORAGE_ACTION_ADVANCED -2 | Storage area as defined by parameter database -3 | Storage flags as defined by parameter database -4 | Empty -5 | Empty -6 | Empty -7 | Empty - - +| Param (Label) | Description | +| ------------- | ----------------------------------------------------------------------- | +| 1 | Storage action: Action defined by MAV_PREFLIGHT_STORAGE_ACTION_ADVANCED | +| 2 | Storage area as defined by parameter database | +| 3 | Storage flags as defined by parameter database | +| 4 | Empty | +| 5 | Empty | +| 6 | Empty | +| 7 | Empty | diff --git a/en/messages/minimal.md b/en/messages/minimal.md index 58e4a12c3..b2a37438f 100644 --- a/en/messages/minimal.md +++ b/en/messages/minimal.md @@ -2,7 +2,7 @@ # MAVLink Minimal Set (minimal.xml) -The MAVLink *minimal* set contains the minimal set of definitions for a viable MAVLink system. +The MAVLink _minimal_ set contains the minimal set of definitions for a viable MAVLink system. The message set is defined in [minimal.xml](https://github.com/mavlink/mavlink/blob/master/message_definitions/v1.0/minimal.xml) and is managed by the MAVLink project. @@ -10,7 +10,6 @@ The message set is defined in [minimal.xml](https://github.com/mavlink/mavlink/b The minimal set is included (imported into) other xml definition files, including the [MAVLink Common Message Set (common.xml)](minimal.md). ::: - ::: info @@ -28,19 +27,20 @@ span.warning { color: red; } + **Protocol version:** 3 ## MAVLink Include Files - None +None ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 1 | 0 -[Enums](#enumerated-types) | 6 | 0 -Commands | 0 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 1 | 0 | +| [Enums](#enumerated-types) | 6 | 0 | +| Commands | 0 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -50,15 +50,14 @@ The following sections list all entities in the dialect (both included and defin The heartbeat message shows that a system or component is present and responding. The type and autopilot fields (along with the message component id), allow the receiving system to treat further messages from this system appropriately (e.g. by laying out the user interface based on the autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html -Field Name | Type | Values | Description ---- | --- | --- | --- -type | `uint8_t` | [MAV_TYPE](#MAV_TYPE) | Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. -autopilot | `uint8_t` | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. -base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode bitmap. -custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags -system_status | `uint8_t` | [MAV_STATE](#MAV_STATE) | System status flag. -mavlink_version | `uint8_t_mavlink_version` | | MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version - +| Field Name | Type | Values | Description | +| --------------- | ------------------------- | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| type | `uint8_t` | [MAV_TYPE](#MAV_TYPE) | Vehicle or component type. For a flight controller component the vehicle type (quadrotor, helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should be used in preference to component id for identifying the component type. | +| autopilot | `uint8_t` | [MAV_AUTOPILOT](#MAV_AUTOPILOT) | Autopilot type / class. Use [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) for components that are not flight controllers. | +| base_mode | `uint8_t` | [MAV_MODE_FLAG](#MAV_MODE_FLAG) | System mode bitmap. | +| custom_mode | `uint32_t` | | A bitfield for use for autopilot-specific flags | +| system_status | `uint8_t` | [MAV_STATE](#MAV_STATE) | System status flag. | +| mavlink_version | `uint8_t_mavlink_version` | | MAVLink version, not writable by user, gets added by protocol because of magic data type: uint8_t_mavlink_version | ## Enumerated Types @@ -66,136 +65,135 @@ mavlink_version | `uint8_t_mavlink_version` | | MAVLink version, not writable by Micro air vehicle / autopilot classes. This identifies the individual model. -Value | Name | Description ---- | --- | --- -0 | [MAV_AUTOPILOT_GENERIC](#MAV_AUTOPILOT_GENERIC) | Generic autopilot, full support for everything -1 | [MAV_AUTOPILOT_RESERVED](#MAV_AUTOPILOT_RESERVED) | Reserved for future use. -2 | [MAV_AUTOPILOT_SLUGS](#MAV_AUTOPILOT_SLUGS) | SLUGS autopilot, http://slugsuav.soe.ucsc.edu -3 | [MAV_AUTOPILOT_ARDUPILOTMEGA](#MAV_AUTOPILOT_ARDUPILOTMEGA) | ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org -4 | [MAV_AUTOPILOT_OPENPILOT](#MAV_AUTOPILOT_OPENPILOT) | OpenPilot, http://openpilot.org -5 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY) | Generic autopilot only supporting simple waypoints -6 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY) | Generic autopilot supporting waypoints and other simple navigation commands -7 | [MAV_AUTOPILOT_GENERIC_MISSION_FULL](#MAV_AUTOPILOT_GENERIC_MISSION_FULL) | Generic autopilot supporting the full mission command set -8 | [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) | No valid autopilot, e.g. a GCS or other MAVLink component -9 | [MAV_AUTOPILOT_PPZ](#MAV_AUTOPILOT_PPZ) | PPZ UAV - http://nongnu.org/paparazzi -10 | [MAV_AUTOPILOT_UDB](#MAV_AUTOPILOT_UDB) | UAV Dev Board -11 | [MAV_AUTOPILOT_FP](#MAV_AUTOPILOT_FP) | FlexiPilot -12 | [MAV_AUTOPILOT_PX4](#MAV_AUTOPILOT_PX4) | PX4 Autopilot - http://px4.io/ -13 | [MAV_AUTOPILOT_SMACCMPILOT](#MAV_AUTOPILOT_SMACCMPILOT) | SMACCMPilot - http://smaccmpilot.org -14 | [MAV_AUTOPILOT_AUTOQUAD](#MAV_AUTOPILOT_AUTOQUAD) | AutoQuad -- http://autoquad.org -15 | [MAV_AUTOPILOT_ARMAZILA](#MAV_AUTOPILOT_ARMAZILA) | Armazila -- http://armazila.com -16 | [MAV_AUTOPILOT_AEROB](#MAV_AUTOPILOT_AEROB) | Aerob -- http://aerob.ru -17 | [MAV_AUTOPILOT_ASLUAV](#MAV_AUTOPILOT_ASLUAV) | ASLUAV autopilot -- http://www.asl.ethz.ch -18 | [MAV_AUTOPILOT_SMARTAP](#MAV_AUTOPILOT_SMARTAP) | SmartAP Autopilot - http://sky-drones.com -19 | [MAV_AUTOPILOT_AIRRAILS](#MAV_AUTOPILOT_AIRRAILS) | AirRails - http://uaventure.com -20 | [MAV_AUTOPILOT_REFLEX](#MAV_AUTOPILOT_REFLEX) | Fusion Reflex - https://fusion.engineering +| Value | Name | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| 0 | [MAV_AUTOPILOT_GENERIC](#MAV_AUTOPILOT_GENERIC) | Generic autopilot, full support for everything | +| 1 | [MAV_AUTOPILOT_RESERVED](#MAV_AUTOPILOT_RESERVED) | Reserved for future use. | +| 2 | [MAV_AUTOPILOT_SLUGS](#MAV_AUTOPILOT_SLUGS) | SLUGS autopilot, http://slugsuav.soe.ucsc.edu | +| 3 | [MAV_AUTOPILOT_ARDUPILOTMEGA](#MAV_AUTOPILOT_ARDUPILOTMEGA) | ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org | +| 4 | [MAV_AUTOPILOT_OPENPILOT](#MAV_AUTOPILOT_OPENPILOT) | OpenPilot, http://openpilot.org | +| 5 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY) | Generic autopilot only supporting simple waypoints | +| 6 | [MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY](#MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY) | Generic autopilot supporting waypoints and other simple navigation commands | +| 7 | [MAV_AUTOPILOT_GENERIC_MISSION_FULL](#MAV_AUTOPILOT_GENERIC_MISSION_FULL) | Generic autopilot supporting the full mission command set | +| 8 | [MAV_AUTOPILOT_INVALID](#MAV_AUTOPILOT_INVALID) | No valid autopilot, e.g. a GCS or other MAVLink component | +| 9 | [MAV_AUTOPILOT_PPZ](#MAV_AUTOPILOT_PPZ) | PPZ UAV - http://nongnu.org/paparazzi | +| 10 | [MAV_AUTOPILOT_UDB](#MAV_AUTOPILOT_UDB) | UAV Dev Board | +| 11 | [MAV_AUTOPILOT_FP](#MAV_AUTOPILOT_FP) | FlexiPilot | +| 12 | [MAV_AUTOPILOT_PX4](#MAV_AUTOPILOT_PX4) | PX4 Autopilot - http://px4.io/ | +| 13 | [MAV_AUTOPILOT_SMACCMPILOT](#MAV_AUTOPILOT_SMACCMPILOT) | SMACCMPilot - http://smaccmpilot.org | +| 14 | [MAV_AUTOPILOT_AUTOQUAD](#MAV_AUTOPILOT_AUTOQUAD) | AutoQuad -- http://autoquad.org | +| 15 | [MAV_AUTOPILOT_ARMAZILA](#MAV_AUTOPILOT_ARMAZILA) | Armazila -- http://armazila.com | +| 16 | [MAV_AUTOPILOT_AEROB](#MAV_AUTOPILOT_AEROB) | Aerob -- http://aerob.ru | +| 17 | [MAV_AUTOPILOT_ASLUAV](#MAV_AUTOPILOT_ASLUAV) | ASLUAV autopilot -- http://www.asl.ethz.ch | +| 18 | [MAV_AUTOPILOT_SMARTAP](#MAV_AUTOPILOT_SMARTAP) | SmartAP Autopilot - http://sky-drones.com | +| 19 | [MAV_AUTOPILOT_AIRRAILS](#MAV_AUTOPILOT_AIRRAILS) | AirRails - http://uaventure.com | +| 20 | [MAV_AUTOPILOT_REFLEX](#MAV_AUTOPILOT_REFLEX) | Fusion Reflex - https://fusion.engineering | ### MAV_TYPE {#MAV_TYPE} MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the vehicle on which they are mounted (e.g. [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR)). All other components must report a value appropriate for their type (e.g. a camera must use [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA)). -Value | Name | Description ---- | --- | --- -0 | [MAV_TYPE_GENERIC](#MAV_TYPE_GENERIC) | Generic micro air vehicle -1 | [MAV_TYPE_FIXED_WING](#MAV_TYPE_FIXED_WING) | Fixed wing aircraft. -2 | [MAV_TYPE_QUADROTOR](#MAV_TYPE_QUADROTOR) | Quadrotor -3 | [MAV_TYPE_COAXIAL](#MAV_TYPE_COAXIAL) | Coaxial helicopter -4 | [MAV_TYPE_HELICOPTER](#MAV_TYPE_HELICOPTER) | Normal helicopter with tail rotor. -5 | [MAV_TYPE_ANTENNA_TRACKER](#MAV_TYPE_ANTENNA_TRACKER) | Ground installation -6 | [MAV_TYPE_GCS](#MAV_TYPE_GCS) | Operator control unit / ground control station -7 | [MAV_TYPE_AIRSHIP](#MAV_TYPE_AIRSHIP) | Airship, controlled -8 | [MAV_TYPE_FREE_BALLOON](#MAV_TYPE_FREE_BALLOON) | Free balloon, uncontrolled -9 | [MAV_TYPE_ROCKET](#MAV_TYPE_ROCKET) | Rocket -10 | [MAV_TYPE_GROUND_ROVER](#MAV_TYPE_GROUND_ROVER) | Ground rover -11 | [MAV_TYPE_SURFACE_BOAT](#MAV_TYPE_SURFACE_BOAT) | Surface vessel, boat, ship -12 | [MAV_TYPE_SUBMARINE](#MAV_TYPE_SUBMARINE) | Submarine -13 | [MAV_TYPE_HEXAROTOR](#MAV_TYPE_HEXAROTOR) | Hexarotor -14 | [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR) | Octorotor -15 | [MAV_TYPE_TRICOPTER](#MAV_TYPE_TRICOPTER) | Tricopter -16 | [MAV_TYPE_FLAPPING_WING](#MAV_TYPE_FLAPPING_WING) | Flapping wing -17 | [MAV_TYPE_KITE](#MAV_TYPE_KITE) | Kite -18 | [MAV_TYPE_ONBOARD_CONTROLLER](#MAV_TYPE_ONBOARD_CONTROLLER) | Onboard companion controller -19 | [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) | Two-rotor Tailsitter VTOL that additionally uses control surfaces in vertical operation. Note, value previously named [MAV_TYPE_VTOL_DUOROTOR](#MAV_TYPE_VTOL_DUOROTOR). -20 | [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) | Quad-rotor Tailsitter VTOL using a V-shaped quad config in vertical operation. Note: value previously named [MAV_TYPE_VTOL_QUADROTOR](#MAV_TYPE_VTOL_QUADROTOR). -21 | [MAV_TYPE_VTOL_TILTROTOR](#MAV_TYPE_VTOL_TILTROTOR) | Tiltrotor VTOL. Fuselage and wings stay (nominally) horizontal in all flight phases. It able to tilt (some) rotors to provide thrust in cruise flight. -22 | [MAV_TYPE_VTOL_FIXEDROTOR](#MAV_TYPE_VTOL_FIXEDROTOR) | VTOL with separate fixed rotors for hover and cruise flight. Fuselage and wings stay (nominally) horizontal in all flight phases. -23 | [MAV_TYPE_VTOL_TAILSITTER](#MAV_TYPE_VTOL_TAILSITTER) | Tailsitter VTOL. Fuselage and wings orientation changes depending on flight phase: vertical for hover, horizontal for cruise. Use more specific VTOL [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) or [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) if appropriate. -24 | [MAV_TYPE_VTOL_TILTWING](#MAV_TYPE_VTOL_TILTWING) | Tiltwing VTOL. Fuselage stays horizontal in all flight phases. The whole wing, along with any attached engine, can tilt between vertical and horizontal mode. -25 | [MAV_TYPE_VTOL_RESERVED5](#MAV_TYPE_VTOL_RESERVED5) | VTOL reserved 5 -26 | [MAV_TYPE_GIMBAL](#MAV_TYPE_GIMBAL) | Gimbal -27 | [MAV_TYPE_ADSB](#MAV_TYPE_ADSB) | ADSB system -28 | [MAV_TYPE_PARAFOIL](#MAV_TYPE_PARAFOIL) | Steerable, nonrigid airfoil -29 | [MAV_TYPE_DODECAROTOR](#MAV_TYPE_DODECAROTOR) | Dodecarotor -30 | [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA) | Camera -31 | [MAV_TYPE_CHARGING_STATION](#MAV_TYPE_CHARGING_STATION) | Charging station -32 | [MAV_TYPE_FLARM](#MAV_TYPE_FLARM) | FLARM collision avoidance system -33 | [MAV_TYPE_SERVO](#MAV_TYPE_SERVO) | Servo -34 | [MAV_TYPE_ODID](#MAV_TYPE_ODID) | Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. -35 | [MAV_TYPE_DECAROTOR](#MAV_TYPE_DECAROTOR) | Decarotor -36 | [MAV_TYPE_BATTERY](#MAV_TYPE_BATTERY) | Battery -37 | [MAV_TYPE_PARACHUTE](#MAV_TYPE_PARACHUTE) | Parachute -38 | [MAV_TYPE_LOG](#MAV_TYPE_LOG) | Log -39 | [MAV_TYPE_OSD](#MAV_TYPE_OSD) | OSD -40 | [MAV_TYPE_IMU](#MAV_TYPE_IMU) | IMU -41 | [MAV_TYPE_GPS](#MAV_TYPE_GPS) | GPS -42 | [MAV_TYPE_WINCH](#MAV_TYPE_WINCH) | Winch -43 | [MAV_TYPE_GENERIC_MULTIROTOR](#MAV_TYPE_GENERIC_MULTIROTOR) | Generic multirotor that does not fit into a specific type or whose type is unknown -44 | [MAV_TYPE_ILLUMINATOR](#MAV_TYPE_ILLUMINATOR) | Illuminator. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). -45 | [MAV_TYPE_SPACECRAFT_ORBITER](#MAV_TYPE_SPACECRAFT_ORBITER) | Orbiter spacecraft. Includes satellites orbiting terrestrial and extra-terrestrial bodies. Follows NASA Spacecraft Classification. -46 | [MAV_TYPE_GROUND_QUADRUPED](#MAV_TYPE_GROUND_QUADRUPED) | A generic four-legged ground vehicle (e.g., a robot dog). -47 | [MAV_TYPE_VTOL_GYRODYNE](#MAV_TYPE_VTOL_GYRODYNE) | VTOL hybrid of helicopter and autogyro. It has a main rotor for lift and separate propellers for forward flight. The rotor must be powered for hover but can autorotate in cruise flight. See: https://en.wikipedia.org/wiki/Gyrodyne -48 | [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) | Gripper -49 | [MAV_TYPE_RADIO](#MAV_TYPE_RADIO) | Radio +| Value | Name | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_TYPE_GENERIC](#MAV_TYPE_GENERIC) | Generic micro air vehicle | +| 1 | [MAV_TYPE_FIXED_WING](#MAV_TYPE_FIXED_WING) | Fixed wing aircraft. | +| 2 | [MAV_TYPE_QUADROTOR](#MAV_TYPE_QUADROTOR) | Quadrotor | +| 3 | [MAV_TYPE_COAXIAL](#MAV_TYPE_COAXIAL) | Coaxial helicopter | +| 4 | [MAV_TYPE_HELICOPTER](#MAV_TYPE_HELICOPTER) | Normal helicopter with tail rotor. | +| 5 | [MAV_TYPE_ANTENNA_TRACKER](#MAV_TYPE_ANTENNA_TRACKER) | Ground installation | +| 6 | [MAV_TYPE_GCS](#MAV_TYPE_GCS) | Operator control unit / ground control station | +| 7 | [MAV_TYPE_AIRSHIP](#MAV_TYPE_AIRSHIP) | Airship, controlled | +| 8 | [MAV_TYPE_FREE_BALLOON](#MAV_TYPE_FREE_BALLOON) | Free balloon, uncontrolled | +| 9 | [MAV_TYPE_ROCKET](#MAV_TYPE_ROCKET) | Rocket | +| 10 | [MAV_TYPE_GROUND_ROVER](#MAV_TYPE_GROUND_ROVER) | Ground rover | +| 11 | [MAV_TYPE_SURFACE_BOAT](#MAV_TYPE_SURFACE_BOAT) | Surface vessel, boat, ship | +| 12 | [MAV_TYPE_SUBMARINE](#MAV_TYPE_SUBMARINE) | Submarine | +| 13 | [MAV_TYPE_HEXAROTOR](#MAV_TYPE_HEXAROTOR) | Hexarotor | +| 14 | [MAV_TYPE_OCTOROTOR](#MAV_TYPE_OCTOROTOR) | Octorotor | +| 15 | [MAV_TYPE_TRICOPTER](#MAV_TYPE_TRICOPTER) | Tricopter | +| 16 | [MAV_TYPE_FLAPPING_WING](#MAV_TYPE_FLAPPING_WING) | Flapping wing | +| 17 | [MAV_TYPE_KITE](#MAV_TYPE_KITE) | Kite | +| 18 | [MAV_TYPE_ONBOARD_CONTROLLER](#MAV_TYPE_ONBOARD_CONTROLLER) | Onboard companion controller | +| 19 | [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) | Two-rotor Tailsitter VTOL that additionally uses control surfaces in vertical operation. Note, value previously named [MAV_TYPE_VTOL_DUOROTOR](#MAV_TYPE_VTOL_DUOROTOR). | +| 20 | [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) | Quad-rotor Tailsitter VTOL using a V-shaped quad config in vertical operation. Note: value previously named [MAV_TYPE_VTOL_QUADROTOR](#MAV_TYPE_VTOL_QUADROTOR). | +| 21 | [MAV_TYPE_VTOL_TILTROTOR](#MAV_TYPE_VTOL_TILTROTOR) | Tiltrotor VTOL. Fuselage and wings stay (nominally) horizontal in all flight phases. It able to tilt (some) rotors to provide thrust in cruise flight. | +| 22 | [MAV_TYPE_VTOL_FIXEDROTOR](#MAV_TYPE_VTOL_FIXEDROTOR) | VTOL with separate fixed rotors for hover and cruise flight. Fuselage and wings stay (nominally) horizontal in all flight phases. | +| 23 | [MAV_TYPE_VTOL_TAILSITTER](#MAV_TYPE_VTOL_TAILSITTER) | Tailsitter VTOL. Fuselage and wings orientation changes depending on flight phase: vertical for hover, horizontal for cruise. Use more specific VTOL [MAV_TYPE_VTOL_TAILSITTER_DUOROTOR](#MAV_TYPE_VTOL_TAILSITTER_DUOROTOR) or [MAV_TYPE_VTOL_TAILSITTER_QUADROTOR](#MAV_TYPE_VTOL_TAILSITTER_QUADROTOR) if appropriate. | +| 24 | [MAV_TYPE_VTOL_TILTWING](#MAV_TYPE_VTOL_TILTWING) | Tiltwing VTOL. Fuselage stays horizontal in all flight phases. The whole wing, along with any attached engine, can tilt between vertical and horizontal mode. | +| 25 | [MAV_TYPE_VTOL_RESERVED5](#MAV_TYPE_VTOL_RESERVED5) | VTOL reserved 5 | +| 26 | [MAV_TYPE_GIMBAL](#MAV_TYPE_GIMBAL) | Gimbal | +| 27 | [MAV_TYPE_ADSB](#MAV_TYPE_ADSB) | ADSB system | +| 28 | [MAV_TYPE_PARAFOIL](#MAV_TYPE_PARAFOIL) | Steerable, nonrigid airfoil | +| 29 | [MAV_TYPE_DODECAROTOR](#MAV_TYPE_DODECAROTOR) | Dodecarotor | +| 30 | [MAV_TYPE_CAMERA](#MAV_TYPE_CAMERA) | Camera | +| 31 | [MAV_TYPE_CHARGING_STATION](#MAV_TYPE_CHARGING_STATION) | Charging station | +| 32 | [MAV_TYPE_FLARM](#MAV_TYPE_FLARM) | FLARM collision avoidance system | +| 33 | [MAV_TYPE_SERVO](#MAV_TYPE_SERVO) | Servo | +| 34 | [MAV_TYPE_ODID](#MAV_TYPE_ODID) | Open Drone ID. See https://mavlink.io/en/services/opendroneid.html. | +| 35 | [MAV_TYPE_DECAROTOR](#MAV_TYPE_DECAROTOR) | Decarotor | +| 36 | [MAV_TYPE_BATTERY](#MAV_TYPE_BATTERY) | Battery | +| 37 | [MAV_TYPE_PARACHUTE](#MAV_TYPE_PARACHUTE) | Parachute | +| 38 | [MAV_TYPE_LOG](#MAV_TYPE_LOG) | Log | +| 39 | [MAV_TYPE_OSD](#MAV_TYPE_OSD) | OSD | +| 40 | [MAV_TYPE_IMU](#MAV_TYPE_IMU) | IMU | +| 41 | [MAV_TYPE_GPS](#MAV_TYPE_GPS) | GPS | +| 42 | [MAV_TYPE_WINCH](#MAV_TYPE_WINCH) | Winch | +| 43 | [MAV_TYPE_GENERIC_MULTIROTOR](#MAV_TYPE_GENERIC_MULTIROTOR) | Generic multirotor that does not fit into a specific type or whose type is unknown | +| 44 | [MAV_TYPE_ILLUMINATOR](#MAV_TYPE_ILLUMINATOR) | Illuminator. An illuminator is a light source that is used for lighting up dark areas external to the system: e.g. a torch or searchlight (as opposed to a light source for illuminating the system itself, e.g. an indicator light). | +| 45 | [MAV_TYPE_SPACECRAFT_ORBITER](#MAV_TYPE_SPACECRAFT_ORBITER) | Orbiter spacecraft. Includes satellites orbiting terrestrial and extra-terrestrial bodies. Follows NASA Spacecraft Classification. | +| 46 | [MAV_TYPE_GROUND_QUADRUPED](#MAV_TYPE_GROUND_QUADRUPED) | A generic four-legged ground vehicle (e.g., a robot dog). | +| 47 | [MAV_TYPE_VTOL_GYRODYNE](#MAV_TYPE_VTOL_GYRODYNE) | VTOL hybrid of helicopter and autogyro. It has a main rotor for lift and separate propellers for forward flight. The rotor must be powered for hover but can autorotate in cruise flight. See: https://en.wikipedia.org/wiki/Gyrodyne | +| 48 | [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) | Gripper | +| 49 | [MAV_TYPE_RADIO](#MAV_TYPE_RADIO) | Radio | ### MAV_MODE_FLAG {#MAV_MODE_FLAG} (Bitmask) These flags encode the MAV mode, see [MAV_MODE](#MAV_MODE) enum for useful combinations. -Value | Name | Description ---- | --- | --- -1 | [MAV_MODE_FLAG_CUSTOM_MODE_ENABLED](#MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) | 0b00000001 system-specific custom mode is enabled. When using this flag to enable a custom mode all other flags should be ignored. -2 | [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED) | 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. -4 | [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED) | 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. -8 | [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED) | 0b00001000 guided mode enabled, system flies waypoints / mission items. -16 | [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED) | 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. -32 | [MAV_MODE_FLAG_HIL_ENABLED](#MAV_MODE_FLAG_HIL_ENABLED) | 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. -64 | [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED) | 0b01000000 remote control input is enabled. -128 | [MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED) | 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) and [MAV_CMD_COMPONENT_ARM_DISARM](#MAV_CMD_COMPONENT_ARM_DISARM) shall be used instead. The flag can still be used to report the armed state. +| Value | Name | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_MODE_FLAG_CUSTOM_MODE_ENABLED](#MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) | 0b00000001 system-specific custom mode is enabled. When using this flag to enable a custom mode all other flags should be ignored. | +| 2 | [MAV_MODE_FLAG_TEST_ENABLED](#MAV_MODE_FLAG_TEST_ENABLED) | 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. | +| 4 | [MAV_MODE_FLAG_AUTO_ENABLED](#MAV_MODE_FLAG_AUTO_ENABLED) | 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. | +| 8 | [MAV_MODE_FLAG_GUIDED_ENABLED](#MAV_MODE_FLAG_GUIDED_ENABLED) | 0b00001000 guided mode enabled, system flies waypoints / mission items. | +| 16 | [MAV_MODE_FLAG_STABILIZE_ENABLED](#MAV_MODE_FLAG_STABILIZE_ENABLED) | 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. | +| 32 | [MAV_MODE_FLAG_HIL_ENABLED](#MAV_MODE_FLAG_HIL_ENABLED) | 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. | +| 64 | [MAV_MODE_FLAG_MANUAL_INPUT_ENABLED](#MAV_MODE_FLAG_MANUAL_INPUT_ENABLED) | 0b01000000 remote control input is enabled. | +| 128 | [MAV_MODE_FLAG_SAFETY_ARMED](#MAV_MODE_FLAG_SAFETY_ARMED) | 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command [MAV_CMD_DO_SET_MODE](#MAV_CMD_DO_SET_MODE) and [MAV_CMD_COMPONENT_ARM_DISARM](#MAV_CMD_COMPONENT_ARM_DISARM) shall be used instead. The flag can still be used to report the armed state. | ### MAV_MODE_FLAG_DECODE_POSITION {#MAV_MODE_FLAG_DECODE_POSITION} (Bitmask) 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. -Value | Name | Description ---- | --- | --- -1 | [MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE](#MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE) | Eighth bit: 00000001 -2 | [MAV_MODE_FLAG_DECODE_POSITION_TEST](#MAV_MODE_FLAG_DECODE_POSITION_TEST) | Seventh bit: 00000010 -4 | [MAV_MODE_FLAG_DECODE_POSITION_AUTO](#MAV_MODE_FLAG_DECODE_POSITION_AUTO) | Sixth bit: 00000100 -8 | [MAV_MODE_FLAG_DECODE_POSITION_GUIDED](#MAV_MODE_FLAG_DECODE_POSITION_GUIDED) | Fifth bit: 00001000 -16 | [MAV_MODE_FLAG_DECODE_POSITION_STABILIZE](#MAV_MODE_FLAG_DECODE_POSITION_STABILIZE) | Fourth bit: 00010000 -32 | [MAV_MODE_FLAG_DECODE_POSITION_HIL](#MAV_MODE_FLAG_DECODE_POSITION_HIL) | Third bit: 00100000 -64 | [MAV_MODE_FLAG_DECODE_POSITION_MANUAL](#MAV_MODE_FLAG_DECODE_POSITION_MANUAL) | Second bit: 01000000 -128 | [MAV_MODE_FLAG_DECODE_POSITION_SAFETY](#MAV_MODE_FLAG_DECODE_POSITION_SAFETY) | First bit: 10000000 +| Value | Name | Description | +| ------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------- | +| 1 | [MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE](#MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE) | Eighth bit: 00000001 | +| 2 | [MAV_MODE_FLAG_DECODE_POSITION_TEST](#MAV_MODE_FLAG_DECODE_POSITION_TEST) | Seventh bit: 00000010 | +| 4 | [MAV_MODE_FLAG_DECODE_POSITION_AUTO](#MAV_MODE_FLAG_DECODE_POSITION_AUTO) | Sixth bit: 00000100 | +| 8 | [MAV_MODE_FLAG_DECODE_POSITION_GUIDED](#MAV_MODE_FLAG_DECODE_POSITION_GUIDED) | Fifth bit: 00001000 | +| 16 | [MAV_MODE_FLAG_DECODE_POSITION_STABILIZE](#MAV_MODE_FLAG_DECODE_POSITION_STABILIZE) | Fourth bit: 00010000 | +| 32 | [MAV_MODE_FLAG_DECODE_POSITION_HIL](#MAV_MODE_FLAG_DECODE_POSITION_HIL) | Third bit: 00100000 | +| 64 | [MAV_MODE_FLAG_DECODE_POSITION_MANUAL](#MAV_MODE_FLAG_DECODE_POSITION_MANUAL) | Second bit: 01000000 | +| 128 | [MAV_MODE_FLAG_DECODE_POSITION_SAFETY](#MAV_MODE_FLAG_DECODE_POSITION_SAFETY) | First bit: 10000000 | ### MAV_STATE {#MAV_STATE} -Value | Name | Description ---- | --- | --- -0 | [MAV_STATE_UNINIT](#MAV_STATE_UNINIT) | Uninitialized system, state is unknown. -1 | [MAV_STATE_BOOT](#MAV_STATE_BOOT) | System is booting up. -2 | [MAV_STATE_CALIBRATING](#MAV_STATE_CALIBRATING) | System is calibrating and not flight-ready. -3 | [MAV_STATE_STANDBY](#MAV_STATE_STANDBY) | System is grounded and on standby. It can be launched any time. -4 | [MAV_STATE_ACTIVE](#MAV_STATE_ACTIVE) | System is active and might be already airborne. Motors are engaged. -5 | [MAV_STATE_CRITICAL](#MAV_STATE_CRITICAL) | System is in a non-normal flight mode (failsafe). It can however still navigate. -6 | [MAV_STATE_EMERGENCY](#MAV_STATE_EMERGENCY) | System is in a non-normal flight mode (failsafe). It lost control over parts or over the whole airframe. It is in mayday and going down. -7 | [MAV_STATE_POWEROFF](#MAV_STATE_POWEROFF) | System just initialized its power-down sequence, will shut down now. -8 | [MAV_STATE_FLIGHT_TERMINATION](#MAV_STATE_FLIGHT_TERMINATION) | System is terminating itself (failsafe or commanded). +| Value | Name | Description | +| ------------------------------------------ | ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| 0 | [MAV_STATE_UNINIT](#MAV_STATE_UNINIT) | Uninitialized system, state is unknown. | +| 1 | [MAV_STATE_BOOT](#MAV_STATE_BOOT) | System is booting up. | +| 2 | [MAV_STATE_CALIBRATING](#MAV_STATE_CALIBRATING) | System is calibrating and not flight-ready. | +| 3 | [MAV_STATE_STANDBY](#MAV_STATE_STANDBY) | System is grounded and on standby. It can be launched any time. | +| 4 | [MAV_STATE_ACTIVE](#MAV_STATE_ACTIVE) | System is active and might be already airborne. Motors are engaged. | +| 5 | [MAV_STATE_CRITICAL](#MAV_STATE_CRITICAL) | System is in a non-normal flight mode (failsafe). It can however still navigate. | +| 6 | [MAV_STATE_EMERGENCY](#MAV_STATE_EMERGENCY) | System is in a non-normal flight mode (failsafe). It lost control over parts or over the whole airframe. It is in mayday and going down. | +| 7 | [MAV_STATE_POWEROFF](#MAV_STATE_POWEROFF) | System just initialized its power-down sequence, will shut down now. | +| 8 | [MAV_STATE_FLIGHT_TERMINATION](#MAV_STATE_FLIGHT_TERMINATION) | System is terminating itself (failsafe or commanded). | ### MAV_COMPONENT {#MAV_COMPONENT} Legacy component ID values for particular types of hardware/software that might make up a MAVLink system (autopilot, cameras, servos, avoidance systems etc.). - Components are not required or expected to use IDs with names that correspond to their type or function, but may choose to do so. Using an ID that matches the type may slightly reduce the chances of component id clashes, as, for historical reasons, it is less likely to be used by some other type of component. System integration will still need to ensure that all components have unique IDs. @@ -206,145 +204,144 @@ A component can use any unique ID between 1 and 255 ([MAV_COMP_ID_ALL](#MAV_COMP Historically component ID were also used for identifying the type of component. New code must not use component IDs to infer the component type, but instead check the [MAV_TYPE](#MAV_TYPE) in the HEARTBEAT message! -Value | Name | Description ---- | --- | --- -0 | [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) | Target id (target_component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid *source* component id for a message. -1 | [MAV_COMP_ID_AUTOPILOT1](#MAV_COMP_ID_AUTOPILOT1) | System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. -25 | [MAV_COMP_ID_USER1](#MAV_COMP_ID_USER1) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -26 | [MAV_COMP_ID_USER2](#MAV_COMP_ID_USER2) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -27 | [MAV_COMP_ID_USER3](#MAV_COMP_ID_USER3) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -28 | [MAV_COMP_ID_USER4](#MAV_COMP_ID_USER4) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -29 | [MAV_COMP_ID_USER5](#MAV_COMP_ID_USER5) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -30 | [MAV_COMP_ID_USER6](#MAV_COMP_ID_USER6) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -31 | [MAV_COMP_ID_USER7](#MAV_COMP_ID_USER7) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -32 | [MAV_COMP_ID_USER8](#MAV_COMP_ID_USER8) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -33 | [MAV_COMP_ID_USER9](#MAV_COMP_ID_USER9) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -34 | [MAV_COMP_ID_USER10](#MAV_COMP_ID_USER10) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -35 | [MAV_COMP_ID_USER11](#MAV_COMP_ID_USER11) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -36 | [MAV_COMP_ID_USER12](#MAV_COMP_ID_USER12) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -37 | [MAV_COMP_ID_USER13](#MAV_COMP_ID_USER13) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -38 | [MAV_COMP_ID_USER14](#MAV_COMP_ID_USER14) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -39 | [MAV_COMP_ID_USER15](#MAV_COMP_ID_USER15) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -40 | [MAV_COMP_ID_USER16](#MAV_COMP_ID_USER16) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -41 | [MAV_COMP_ID_USER17](#MAV_COMP_ID_USER17) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -42 | [MAV_COMP_ID_USER18](#MAV_COMP_ID_USER18) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -43 | [MAV_COMP_ID_USER19](#MAV_COMP_ID_USER19) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -44 | [MAV_COMP_ID_USER20](#MAV_COMP_ID_USER20) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -45 | [MAV_COMP_ID_USER21](#MAV_COMP_ID_USER21) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -46 | [MAV_COMP_ID_USER22](#MAV_COMP_ID_USER22) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -47 | [MAV_COMP_ID_USER23](#MAV_COMP_ID_USER23) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -48 | [MAV_COMP_ID_USER24](#MAV_COMP_ID_USER24) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -49 | [MAV_COMP_ID_USER25](#MAV_COMP_ID_USER25) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -50 | [MAV_COMP_ID_USER26](#MAV_COMP_ID_USER26) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -51 | [MAV_COMP_ID_USER27](#MAV_COMP_ID_USER27) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -52 | [MAV_COMP_ID_USER28](#MAV_COMP_ID_USER28) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -53 | [MAV_COMP_ID_USER29](#MAV_COMP_ID_USER29) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -54 | [MAV_COMP_ID_USER30](#MAV_COMP_ID_USER30) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -55 | [MAV_COMP_ID_USER31](#MAV_COMP_ID_USER31) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -56 | [MAV_COMP_ID_USER32](#MAV_COMP_ID_USER32) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -57 | [MAV_COMP_ID_USER33](#MAV_COMP_ID_USER33) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -58 | [MAV_COMP_ID_USER34](#MAV_COMP_ID_USER34) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -59 | [MAV_COMP_ID_USER35](#MAV_COMP_ID_USER35) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -60 | [MAV_COMP_ID_USER36](#MAV_COMP_ID_USER36) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -61 | [MAV_COMP_ID_USER37](#MAV_COMP_ID_USER37) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -62 | [MAV_COMP_ID_USER38](#MAV_COMP_ID_USER38) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -63 | [MAV_COMP_ID_USER39](#MAV_COMP_ID_USER39) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -64 | [MAV_COMP_ID_USER40](#MAV_COMP_ID_USER40) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -65 | [MAV_COMP_ID_USER41](#MAV_COMP_ID_USER41) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -66 | [MAV_COMP_ID_USER42](#MAV_COMP_ID_USER42) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -67 | [MAV_COMP_ID_USER43](#MAV_COMP_ID_USER43) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -68 | [MAV_COMP_ID_TELEMETRY_RADIO](#MAV_COMP_ID_TELEMETRY_RADIO) | Telemetry radio (e.g. SiK radio, or other component that emits [RADIO_STATUS](#RADIO_STATUS) messages). -69 | [MAV_COMP_ID_USER45](#MAV_COMP_ID_USER45) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -70 | [MAV_COMP_ID_USER46](#MAV_COMP_ID_USER46) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -71 | [MAV_COMP_ID_USER47](#MAV_COMP_ID_USER47) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -72 | [MAV_COMP_ID_USER48](#MAV_COMP_ID_USER48) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -73 | [MAV_COMP_ID_USER49](#MAV_COMP_ID_USER49) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -74 | [MAV_COMP_ID_USER50](#MAV_COMP_ID_USER50) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -75 | [MAV_COMP_ID_USER51](#MAV_COMP_ID_USER51) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -76 | [MAV_COMP_ID_USER52](#MAV_COMP_ID_USER52) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -77 | [MAV_COMP_ID_USER53](#MAV_COMP_ID_USER53) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -78 | [MAV_COMP_ID_USER54](#MAV_COMP_ID_USER54) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -79 | [MAV_COMP_ID_USER55](#MAV_COMP_ID_USER55) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -80 | [MAV_COMP_ID_USER56](#MAV_COMP_ID_USER56) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -81 | [MAV_COMP_ID_USER57](#MAV_COMP_ID_USER57) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -82 | [MAV_COMP_ID_USER58](#MAV_COMP_ID_USER58) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -83 | [MAV_COMP_ID_USER59](#MAV_COMP_ID_USER59) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -84 | [MAV_COMP_ID_USER60](#MAV_COMP_ID_USER60) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -85 | [MAV_COMP_ID_USER61](#MAV_COMP_ID_USER61) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -86 | [MAV_COMP_ID_USER62](#MAV_COMP_ID_USER62) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -87 | [MAV_COMP_ID_USER63](#MAV_COMP_ID_USER63) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -88 | [MAV_COMP_ID_USER64](#MAV_COMP_ID_USER64) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -89 | [MAV_COMP_ID_USER65](#MAV_COMP_ID_USER65) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -90 | [MAV_COMP_ID_USER66](#MAV_COMP_ID_USER66) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -91 | [MAV_COMP_ID_USER67](#MAV_COMP_ID_USER67) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -92 | [MAV_COMP_ID_USER68](#MAV_COMP_ID_USER68) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -93 | [MAV_COMP_ID_USER69](#MAV_COMP_ID_USER69) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -94 | [MAV_COMP_ID_USER70](#MAV_COMP_ID_USER70) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -95 | [MAV_COMP_ID_USER71](#MAV_COMP_ID_USER71) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -96 | [MAV_COMP_ID_USER72](#MAV_COMP_ID_USER72) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -97 | [MAV_COMP_ID_USER73](#MAV_COMP_ID_USER73) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -98 | [MAV_COMP_ID_USER74](#MAV_COMP_ID_USER74) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -99 | [MAV_COMP_ID_USER75](#MAV_COMP_ID_USER75) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. -100 | [MAV_COMP_ID_CAMERA](#MAV_COMP_ID_CAMERA) | Camera #1. -101 | [MAV_COMP_ID_CAMERA2](#MAV_COMP_ID_CAMERA2) | Camera #2. -102 | [MAV_COMP_ID_CAMERA3](#MAV_COMP_ID_CAMERA3) | Camera #3. -103 | [MAV_COMP_ID_CAMERA4](#MAV_COMP_ID_CAMERA4) | Camera #4. -104 | [MAV_COMP_ID_CAMERA5](#MAV_COMP_ID_CAMERA5) | Camera #5. -105 | [MAV_COMP_ID_CAMERA6](#MAV_COMP_ID_CAMERA6) | Camera #6. -110 | [MAV_COMP_ID_RADIO](#MAV_COMP_ID_RADIO) | Radio #1. -111 | [MAV_COMP_ID_RADIO2](#MAV_COMP_ID_RADIO2) | Radio #2. -112 | [MAV_COMP_ID_RADIO3](#MAV_COMP_ID_RADIO3) | Radio #3. -140 | [MAV_COMP_ID_SERVO1](#MAV_COMP_ID_SERVO1) | Servo #1. -141 | [MAV_COMP_ID_SERVO2](#MAV_COMP_ID_SERVO2) | Servo #2. -142 | [MAV_COMP_ID_SERVO3](#MAV_COMP_ID_SERVO3) | Servo #3. -143 | [MAV_COMP_ID_SERVO4](#MAV_COMP_ID_SERVO4) | Servo #4. -144 | [MAV_COMP_ID_SERVO5](#MAV_COMP_ID_SERVO5) | Servo #5. -145 | [MAV_COMP_ID_SERVO6](#MAV_COMP_ID_SERVO6) | Servo #6. -146 | [MAV_COMP_ID_SERVO7](#MAV_COMP_ID_SERVO7) | Servo #7. -147 | [MAV_COMP_ID_SERVO8](#MAV_COMP_ID_SERVO8) | Servo #8. -148 | [MAV_COMP_ID_SERVO9](#MAV_COMP_ID_SERVO9) | Servo #9. -149 | [MAV_COMP_ID_SERVO10](#MAV_COMP_ID_SERVO10) | Servo #10. -150 | [MAV_COMP_ID_SERVO11](#MAV_COMP_ID_SERVO11) | Servo #11. -151 | [MAV_COMP_ID_SERVO12](#MAV_COMP_ID_SERVO12) | Servo #12. -152 | [MAV_COMP_ID_SERVO13](#MAV_COMP_ID_SERVO13) | Servo #13. -153 | [MAV_COMP_ID_SERVO14](#MAV_COMP_ID_SERVO14) | Servo #14. -154 | [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) | Gimbal #1. -155 | [MAV_COMP_ID_LOG](#MAV_COMP_ID_LOG) | Logging component. -156 | [MAV_COMP_ID_ADSB](#MAV_COMP_ID_ADSB) | Automatic Dependent Surveillance-Broadcast (ADS-B) component. -157 | [MAV_COMP_ID_OSD](#MAV_COMP_ID_OSD) | On Screen Display (OSD) devices for video links. -158 | [MAV_COMP_ID_PERIPHERAL](#MAV_COMP_ID_PERIPHERAL) | Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. -159 | [MAV_COMP_ID_QX1_GIMBAL](#MAV_COMP_ID_QX1_GIMBAL) | Gimbal ID for QX1.
**DEPRECATED:** Replaced By [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) (2018-11) — All gimbals should use [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL).) -160 | [MAV_COMP_ID_FLARM](#MAV_COMP_ID_FLARM) | FLARM collision alert component. -161 | [MAV_COMP_ID_PARACHUTE](#MAV_COMP_ID_PARACHUTE) | Parachute component. -169 | [MAV_COMP_ID_WINCH](#MAV_COMP_ID_WINCH) | Winch component. -171 | [MAV_COMP_ID_GIMBAL2](#MAV_COMP_ID_GIMBAL2) | Gimbal #2. -172 | [MAV_COMP_ID_GIMBAL3](#MAV_COMP_ID_GIMBAL3) | Gimbal #3. -173 | [MAV_COMP_ID_GIMBAL4](#MAV_COMP_ID_GIMBAL4) | Gimbal #4 -174 | [MAV_COMP_ID_GIMBAL5](#MAV_COMP_ID_GIMBAL5) | Gimbal #5. -175 | [MAV_COMP_ID_GIMBAL6](#MAV_COMP_ID_GIMBAL6) | Gimbal #6. -180 | [MAV_COMP_ID_BATTERY](#MAV_COMP_ID_BATTERY) | Battery #1. -181 | [MAV_COMP_ID_BATTERY2](#MAV_COMP_ID_BATTERY2) | Battery #2. -189 | [MAV_COMP_ID_MAVCAN](#MAV_COMP_ID_MAVCAN) | CAN over MAVLink client. -190 | [MAV_COMP_ID_MISSIONPLANNER](#MAV_COMP_ID_MISSIONPLANNER) | Component that can generate/supply a mission flight plan (e.g. GCS or developer API). -191 | [MAV_COMP_ID_ONBOARD_COMPUTER](#MAV_COMP_ID_ONBOARD_COMPUTER) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -192 | [MAV_COMP_ID_ONBOARD_COMPUTER2](#MAV_COMP_ID_ONBOARD_COMPUTER2) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -193 | [MAV_COMP_ID_ONBOARD_COMPUTER3](#MAV_COMP_ID_ONBOARD_COMPUTER3) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -194 | [MAV_COMP_ID_ONBOARD_COMPUTER4](#MAV_COMP_ID_ONBOARD_COMPUTER4) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. -195 | [MAV_COMP_ID_PATHPLANNER](#MAV_COMP_ID_PATHPLANNER) | Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). -196 | [MAV_COMP_ID_OBSTACLE_AVOIDANCE](#MAV_COMP_ID_OBSTACLE_AVOIDANCE) | Component that plans a collision free path between two points. -197 | [MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY](#MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY) | Component that provides position estimates using VIO techniques. -198 | [MAV_COMP_ID_PAIRING_MANAGER](#MAV_COMP_ID_PAIRING_MANAGER) | Component that manages pairing of vehicle and GCS. -200 | [MAV_COMP_ID_IMU](#MAV_COMP_ID_IMU) | Inertial Measurement Unit (IMU) #1. -201 | [MAV_COMP_ID_IMU_2](#MAV_COMP_ID_IMU_2) | Inertial Measurement Unit (IMU) #2. -202 | [MAV_COMP_ID_IMU_3](#MAV_COMP_ID_IMU_3) | Inertial Measurement Unit (IMU) #3. -220 | [MAV_COMP_ID_GPS](#MAV_COMP_ID_GPS) | GPS #1. -221 | [MAV_COMP_ID_GPS2](#MAV_COMP_ID_GPS2) | GPS #2. -236 | [MAV_COMP_ID_ODID_TXRX_1](#MAV_COMP_ID_ODID_TXRX_1) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -237 | [MAV_COMP_ID_ODID_TXRX_2](#MAV_COMP_ID_ODID_TXRX_2) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -238 | [MAV_COMP_ID_ODID_TXRX_3](#MAV_COMP_ID_ODID_TXRX_3) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). -240 | [MAV_COMP_ID_UDP_BRIDGE](#MAV_COMP_ID_UDP_BRIDGE) | Component to bridge MAVLink to UDP (i.e. from a UART). -241 | [MAV_COMP_ID_UART_BRIDGE](#MAV_COMP_ID_UART_BRIDGE) | Component to bridge to UART (i.e. from UDP). -242 | [MAV_COMP_ID_TUNNEL_NODE](#MAV_COMP_ID_TUNNEL_NODE) | Component handling TUNNEL messages (e.g. vendor specific GUI of a component). -243 | [MAV_COMP_ID_ILLUMINATOR](#MAV_COMP_ID_ILLUMINATOR) | Illuminator -250 | [MAV_COMP_ID_SYSTEM_CONTROL](#MAV_COMP_ID_SYSTEM_CONTROL) | Deprecated, don't use. Component for handling system messages (e.g. to ARM, takeoff, etc.).
**DEPRECATED:** Replaced By [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) (2018-11) — System control does not require a separate component ID. Instead, system commands should be sent with target_component=MAV_COMP_ID_ALL allowing the target component to use any appropriate component id.) - +| Value | Name | Description | +| ---------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 0 | [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) | Target id (target*component) used to broadcast messages to all components of the receiving system. Components should attempt to process messages with this component ID and forward to components on any other interfaces. Note: This is not a valid \_source* component id for a message. | +| 1 | [MAV_COMP_ID_AUTOPILOT1](#MAV_COMP_ID_AUTOPILOT1) | System flight controller component ("autopilot"). Only one autopilot is expected in a particular system. | +| 25 | [MAV_COMP_ID_USER1](#MAV_COMP_ID_USER1) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 26 | [MAV_COMP_ID_USER2](#MAV_COMP_ID_USER2) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 27 | [MAV_COMP_ID_USER3](#MAV_COMP_ID_USER3) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 28 | [MAV_COMP_ID_USER4](#MAV_COMP_ID_USER4) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 29 | [MAV_COMP_ID_USER5](#MAV_COMP_ID_USER5) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 30 | [MAV_COMP_ID_USER6](#MAV_COMP_ID_USER6) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 31 | [MAV_COMP_ID_USER7](#MAV_COMP_ID_USER7) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 32 | [MAV_COMP_ID_USER8](#MAV_COMP_ID_USER8) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 33 | [MAV_COMP_ID_USER9](#MAV_COMP_ID_USER9) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 34 | [MAV_COMP_ID_USER10](#MAV_COMP_ID_USER10) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 35 | [MAV_COMP_ID_USER11](#MAV_COMP_ID_USER11) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 36 | [MAV_COMP_ID_USER12](#MAV_COMP_ID_USER12) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 37 | [MAV_COMP_ID_USER13](#MAV_COMP_ID_USER13) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 38 | [MAV_COMP_ID_USER14](#MAV_COMP_ID_USER14) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 39 | [MAV_COMP_ID_USER15](#MAV_COMP_ID_USER15) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 40 | [MAV_COMP_ID_USER16](#MAV_COMP_ID_USER16) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 41 | [MAV_COMP_ID_USER17](#MAV_COMP_ID_USER17) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 42 | [MAV_COMP_ID_USER18](#MAV_COMP_ID_USER18) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 43 | [MAV_COMP_ID_USER19](#MAV_COMP_ID_USER19) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 44 | [MAV_COMP_ID_USER20](#MAV_COMP_ID_USER20) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 45 | [MAV_COMP_ID_USER21](#MAV_COMP_ID_USER21) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 46 | [MAV_COMP_ID_USER22](#MAV_COMP_ID_USER22) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 47 | [MAV_COMP_ID_USER23](#MAV_COMP_ID_USER23) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 48 | [MAV_COMP_ID_USER24](#MAV_COMP_ID_USER24) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 49 | [MAV_COMP_ID_USER25](#MAV_COMP_ID_USER25) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 50 | [MAV_COMP_ID_USER26](#MAV_COMP_ID_USER26) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 51 | [MAV_COMP_ID_USER27](#MAV_COMP_ID_USER27) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 52 | [MAV_COMP_ID_USER28](#MAV_COMP_ID_USER28) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 53 | [MAV_COMP_ID_USER29](#MAV_COMP_ID_USER29) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 54 | [MAV_COMP_ID_USER30](#MAV_COMP_ID_USER30) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 55 | [MAV_COMP_ID_USER31](#MAV_COMP_ID_USER31) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 56 | [MAV_COMP_ID_USER32](#MAV_COMP_ID_USER32) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 57 | [MAV_COMP_ID_USER33](#MAV_COMP_ID_USER33) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 58 | [MAV_COMP_ID_USER34](#MAV_COMP_ID_USER34) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 59 | [MAV_COMP_ID_USER35](#MAV_COMP_ID_USER35) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 60 | [MAV_COMP_ID_USER36](#MAV_COMP_ID_USER36) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 61 | [MAV_COMP_ID_USER37](#MAV_COMP_ID_USER37) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 62 | [MAV_COMP_ID_USER38](#MAV_COMP_ID_USER38) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 63 | [MAV_COMP_ID_USER39](#MAV_COMP_ID_USER39) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 64 | [MAV_COMP_ID_USER40](#MAV_COMP_ID_USER40) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 65 | [MAV_COMP_ID_USER41](#MAV_COMP_ID_USER41) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 66 | [MAV_COMP_ID_USER42](#MAV_COMP_ID_USER42) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 67 | [MAV_COMP_ID_USER43](#MAV_COMP_ID_USER43) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 68 | [MAV_COMP_ID_TELEMETRY_RADIO](#MAV_COMP_ID_TELEMETRY_RADIO) | Telemetry radio (e.g. SiK radio, or other component that emits [RADIO_STATUS](#RADIO_STATUS) messages). | +| 69 | [MAV_COMP_ID_USER45](#MAV_COMP_ID_USER45) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 70 | [MAV_COMP_ID_USER46](#MAV_COMP_ID_USER46) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 71 | [MAV_COMP_ID_USER47](#MAV_COMP_ID_USER47) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 72 | [MAV_COMP_ID_USER48](#MAV_COMP_ID_USER48) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 73 | [MAV_COMP_ID_USER49](#MAV_COMP_ID_USER49) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 74 | [MAV_COMP_ID_USER50](#MAV_COMP_ID_USER50) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 75 | [MAV_COMP_ID_USER51](#MAV_COMP_ID_USER51) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 76 | [MAV_COMP_ID_USER52](#MAV_COMP_ID_USER52) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 77 | [MAV_COMP_ID_USER53](#MAV_COMP_ID_USER53) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 78 | [MAV_COMP_ID_USER54](#MAV_COMP_ID_USER54) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 79 | [MAV_COMP_ID_USER55](#MAV_COMP_ID_USER55) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 80 | [MAV_COMP_ID_USER56](#MAV_COMP_ID_USER56) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 81 | [MAV_COMP_ID_USER57](#MAV_COMP_ID_USER57) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 82 | [MAV_COMP_ID_USER58](#MAV_COMP_ID_USER58) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 83 | [MAV_COMP_ID_USER59](#MAV_COMP_ID_USER59) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 84 | [MAV_COMP_ID_USER60](#MAV_COMP_ID_USER60) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 85 | [MAV_COMP_ID_USER61](#MAV_COMP_ID_USER61) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 86 | [MAV_COMP_ID_USER62](#MAV_COMP_ID_USER62) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 87 | [MAV_COMP_ID_USER63](#MAV_COMP_ID_USER63) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 88 | [MAV_COMP_ID_USER64](#MAV_COMP_ID_USER64) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 89 | [MAV_COMP_ID_USER65](#MAV_COMP_ID_USER65) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 90 | [MAV_COMP_ID_USER66](#MAV_COMP_ID_USER66) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 91 | [MAV_COMP_ID_USER67](#MAV_COMP_ID_USER67) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 92 | [MAV_COMP_ID_USER68](#MAV_COMP_ID_USER68) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 93 | [MAV_COMP_ID_USER69](#MAV_COMP_ID_USER69) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 94 | [MAV_COMP_ID_USER70](#MAV_COMP_ID_USER70) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 95 | [MAV_COMP_ID_USER71](#MAV_COMP_ID_USER71) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 96 | [MAV_COMP_ID_USER72](#MAV_COMP_ID_USER72) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 97 | [MAV_COMP_ID_USER73](#MAV_COMP_ID_USER73) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 98 | [MAV_COMP_ID_USER74](#MAV_COMP_ID_USER74) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 99 | [MAV_COMP_ID_USER75](#MAV_COMP_ID_USER75) | Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be published by components outside of the private network. | +| 100 | [MAV_COMP_ID_CAMERA](#MAV_COMP_ID_CAMERA) | Camera #1. | +| 101 | [MAV_COMP_ID_CAMERA2](#MAV_COMP_ID_CAMERA2) | Camera #2. | +| 102 | [MAV_COMP_ID_CAMERA3](#MAV_COMP_ID_CAMERA3) | Camera #3. | +| 103 | [MAV_COMP_ID_CAMERA4](#MAV_COMP_ID_CAMERA4) | Camera #4. | +| 104 | [MAV_COMP_ID_CAMERA5](#MAV_COMP_ID_CAMERA5) | Camera #5. | +| 105 | [MAV_COMP_ID_CAMERA6](#MAV_COMP_ID_CAMERA6) | Camera #6. | +| 110 | [MAV_COMP_ID_RADIO](#MAV_COMP_ID_RADIO) | Radio #1. | +| 111 | [MAV_COMP_ID_RADIO2](#MAV_COMP_ID_RADIO2) | Radio #2. | +| 112 | [MAV_COMP_ID_RADIO3](#MAV_COMP_ID_RADIO3) | Radio #3. | +| 140 | [MAV_COMP_ID_SERVO1](#MAV_COMP_ID_SERVO1) | Servo #1. | +| 141 | [MAV_COMP_ID_SERVO2](#MAV_COMP_ID_SERVO2) | Servo #2. | +| 142 | [MAV_COMP_ID_SERVO3](#MAV_COMP_ID_SERVO3) | Servo #3. | +| 143 | [MAV_COMP_ID_SERVO4](#MAV_COMP_ID_SERVO4) | Servo #4. | +| 144 | [MAV_COMP_ID_SERVO5](#MAV_COMP_ID_SERVO5) | Servo #5. | +| 145 | [MAV_COMP_ID_SERVO6](#MAV_COMP_ID_SERVO6) | Servo #6. | +| 146 | [MAV_COMP_ID_SERVO7](#MAV_COMP_ID_SERVO7) | Servo #7. | +| 147 | [MAV_COMP_ID_SERVO8](#MAV_COMP_ID_SERVO8) | Servo #8. | +| 148 | [MAV_COMP_ID_SERVO9](#MAV_COMP_ID_SERVO9) | Servo #9. | +| 149 | [MAV_COMP_ID_SERVO10](#MAV_COMP_ID_SERVO10) | Servo #10. | +| 150 | [MAV_COMP_ID_SERVO11](#MAV_COMP_ID_SERVO11) | Servo #11. | +| 151 | [MAV_COMP_ID_SERVO12](#MAV_COMP_ID_SERVO12) | Servo #12. | +| 152 | [MAV_COMP_ID_SERVO13](#MAV_COMP_ID_SERVO13) | Servo #13. | +| 153 | [MAV_COMP_ID_SERVO14](#MAV_COMP_ID_SERVO14) | Servo #14. | +| 154 | [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) | Gimbal #1. | +| 155 | [MAV_COMP_ID_LOG](#MAV_COMP_ID_LOG) | Logging component. | +| 156 | [MAV_COMP_ID_ADSB](#MAV_COMP_ID_ADSB) | Automatic Dependent Surveillance-Broadcast (ADS-B) component. | +| 157 | [MAV_COMP_ID_OSD](#MAV_COMP_ID_OSD) | On Screen Display (OSD) devices for video links. | +| 158 | [MAV_COMP_ID_PERIPHERAL](#MAV_COMP_ID_PERIPHERAL) | Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter microservice. | +| 159 | [MAV_COMP_ID_QX1_GIMBAL](#MAV_COMP_ID_QX1_GIMBAL) | Gimbal ID for QX1.
**DEPRECATED:** Replaced By [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL) (2018-11) — All gimbals should use [MAV_COMP_ID_GIMBAL](#MAV_COMP_ID_GIMBAL).) | +| 160 | [MAV_COMP_ID_FLARM](#MAV_COMP_ID_FLARM) | FLARM collision alert component. | +| 161 | [MAV_COMP_ID_PARACHUTE](#MAV_COMP_ID_PARACHUTE) | Parachute component. | +| 169 | [MAV_COMP_ID_WINCH](#MAV_COMP_ID_WINCH) | Winch component. | +| 171 | [MAV_COMP_ID_GIMBAL2](#MAV_COMP_ID_GIMBAL2) | Gimbal #2. | +| 172 | [MAV_COMP_ID_GIMBAL3](#MAV_COMP_ID_GIMBAL3) | Gimbal #3. | +| 173 | [MAV_COMP_ID_GIMBAL4](#MAV_COMP_ID_GIMBAL4) | Gimbal #4 | +| 174 | [MAV_COMP_ID_GIMBAL5](#MAV_COMP_ID_GIMBAL5) | Gimbal #5. | +| 175 | [MAV_COMP_ID_GIMBAL6](#MAV_COMP_ID_GIMBAL6) | Gimbal #6. | +| 180 | [MAV_COMP_ID_BATTERY](#MAV_COMP_ID_BATTERY) | Battery #1. | +| 181 | [MAV_COMP_ID_BATTERY2](#MAV_COMP_ID_BATTERY2) | Battery #2. | +| 189 | [MAV_COMP_ID_MAVCAN](#MAV_COMP_ID_MAVCAN) | CAN over MAVLink client. | +| 190 | [MAV_COMP_ID_MISSIONPLANNER](#MAV_COMP_ID_MISSIONPLANNER) | Component that can generate/supply a mission flight plan (e.g. GCS or developer API). | +| 191 | [MAV_COMP_ID_ONBOARD_COMPUTER](#MAV_COMP_ID_ONBOARD_COMPUTER) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 192 | [MAV_COMP_ID_ONBOARD_COMPUTER2](#MAV_COMP_ID_ONBOARD_COMPUTER2) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 193 | [MAV_COMP_ID_ONBOARD_COMPUTER3](#MAV_COMP_ID_ONBOARD_COMPUTER3) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 194 | [MAV_COMP_ID_ONBOARD_COMPUTER4](#MAV_COMP_ID_ONBOARD_COMPUTER4) | Component that lives on the onboard computer (companion computer) and has some generic functionalities, such as settings system parameters and monitoring the status of some processes that don't directly speak mavlink and so on. | +| 195 | [MAV_COMP_ID_PATHPLANNER](#MAV_COMP_ID_PATHPLANNER) | Component that finds an optimal path between points based on a certain constraint (e.g. minimum snap, shortest path, cost, etc.). | +| 196 | [MAV_COMP_ID_OBSTACLE_AVOIDANCE](#MAV_COMP_ID_OBSTACLE_AVOIDANCE) | Component that plans a collision free path between two points. | +| 197 | [MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY](#MAV_COMP_ID_VISUAL_INERTIAL_ODOMETRY) | Component that provides position estimates using VIO techniques. | +| 198 | [MAV_COMP_ID_PAIRING_MANAGER](#MAV_COMP_ID_PAIRING_MANAGER) | Component that manages pairing of vehicle and GCS. | +| 200 | [MAV_COMP_ID_IMU](#MAV_COMP_ID_IMU) | Inertial Measurement Unit (IMU) #1. | +| 201 | [MAV_COMP_ID_IMU_2](#MAV_COMP_ID_IMU_2) | Inertial Measurement Unit (IMU) #2. | +| 202 | [MAV_COMP_ID_IMU_3](#MAV_COMP_ID_IMU_3) | Inertial Measurement Unit (IMU) #3. | +| 220 | [MAV_COMP_ID_GPS](#MAV_COMP_ID_GPS) | GPS #1. | +| 221 | [MAV_COMP_ID_GPS2](#MAV_COMP_ID_GPS2) | GPS #2. | +| 236 | [MAV_COMP_ID_ODID_TXRX_1](#MAV_COMP_ID_ODID_TXRX_1) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 237 | [MAV_COMP_ID_ODID_TXRX_2](#MAV_COMP_ID_ODID_TXRX_2) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 238 | [MAV_COMP_ID_ODID_TXRX_3](#MAV_COMP_ID_ODID_TXRX_3) | Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet). | +| 240 | [MAV_COMP_ID_UDP_BRIDGE](#MAV_COMP_ID_UDP_BRIDGE) | Component to bridge MAVLink to UDP (i.e. from a UART). | +| 241 | [MAV_COMP_ID_UART_BRIDGE](#MAV_COMP_ID_UART_BRIDGE) | Component to bridge to UART (i.e. from UDP). | +| 242 | [MAV_COMP_ID_TUNNEL_NODE](#MAV_COMP_ID_TUNNEL_NODE) | Component handling TUNNEL messages (e.g. vendor specific GUI of a component). | +| 243 | [MAV_COMP_ID_ILLUMINATOR](#MAV_COMP_ID_ILLUMINATOR) | Illuminator | +| 250 | [MAV_COMP_ID_SYSTEM_CONTROL](#MAV_COMP_ID_SYSTEM_CONTROL) | Deprecated, don't use. Component for handling system messages (e.g. to ARM, takeoff, etc.).
**DEPRECATED:** Replaced By [MAV_COMP_ID_ALL](#MAV_COMP_ID_ALL) (2018-11) — System control does not require a separate component ID. Instead, system commands should be sent with target_component=MAV_COMP_ID_ALL allowing the target component to use any appropriate component id.) | diff --git a/en/messages/paparazzi.md b/en/messages/paparazzi.md index d86599b4e..dced1da71 100644 --- a/en/messages/paparazzi.md +++ b/en/messages/paparazzi.md @@ -26,6 +26,7 @@ span.warning { color: red; } + **Protocol version:** 3 ## MAVLink Include Files @@ -34,11 +35,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 5 | 234 -[Enums](#enumerated-types) | 0 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 5 | 234 | +| [Enums](#enumerated-types) | 0 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -48,56 +49,50 @@ The following sections list all entities in the dialect (both included and defin Message encoding a mission script item. This message is emitted upon a request for the next script item. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -seq | `uint16_t` | Sequence -name | `char[50]` | The name of the mission script, NULL terminated. - +| Field Name | Type | Description | +| ---------------- | ---------- | ------------------------------------------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| seq | `uint16_t` | Sequence | +| name | `char[50]` | The name of the mission script, NULL terminated. | ### SCRIPT_REQUEST (181) {#SCRIPT_REQUEST} Request script item with the sequence number seq. The response of the system to this message should be a [SCRIPT_ITEM](#SCRIPT_ITEM) message. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -seq | `uint16_t` | Sequence - +| Field Name | Type | Description | +| ---------------- | ---------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| seq | `uint16_t` | Sequence | ### SCRIPT_REQUEST_LIST (182) {#SCRIPT_REQUEST_LIST} Request the overall list of mission items from the system/component. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID - +| Field Name | Type | Description | +| ---------------- | --------- | ------------ | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | ### SCRIPT_COUNT (183) {#SCRIPT_COUNT} This message is emitted as response to [SCRIPT_REQUEST_LIST](#SCRIPT_REQUEST_LIST) by the MAV to get the number of mission scripts. -Field Name | Type | Description ---- | --- | --- -target_system | `uint8_t` | System ID -target_component | `uint8_t` | Component ID -count | `uint16_t` | Number of script items in the sequence - +| Field Name | Type | Description | +| ---------------- | ---------- | -------------------------------------- | +| target_system | `uint8_t` | System ID | +| target_component | `uint8_t` | Component ID | +| count | `uint16_t` | Number of script items in the sequence | ### SCRIPT_CURRENT (184) {#SCRIPT_CURRENT} This message informs about the currently active SCRIPT. -Field Name | Type | Description ---- | --- | --- -seq | `uint16_t` | Active Sequence - +| Field Name | Type | Description | +| ---------- | ---------- | --------------- | +| seq | `uint16_t` | Active Sequence | ## Enumerated Types ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/python_array_test.md b/en/messages/python_array_test.md index eb8ce9fb4..d7d1b4c19 100644 --- a/en/messages/python_array_test.md +++ b/en/messages/python_array_test.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 8 | 234 -[Enums](#enumerated-types) | 0 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 8 | 234 | +| [Enums](#enumerated-types) | 0 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,103 +47,94 @@ The following sections list all entities in the dialect (both included and defin Array test #0. -Field Name | Type | Description ---- | --- | --- -v1 | `uint8_t` | Stub field -ar_i8 | `int8_t[4]` | Value array -ar_u8 | `uint8_t[4]` | Value array -ar_u16 | `uint16_t[4]` | Value array -ar_u32 | `uint32_t[4]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| v1 | `uint8_t` | Stub field | +| ar_i8 | `int8_t[4]` | Value array | +| ar_u8 | `uint8_t[4]` | Value array | +| ar_u16 | `uint16_t[4]` | Value array | +| ar_u32 | `uint32_t[4]` | Value array | ### ARRAY_TEST_1 (17151) {#ARRAY_TEST_1} Array test #1. -Field Name | Type | Description ---- | --- | --- -ar_u32 | `uint32_t[4]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| ar_u32 | `uint32_t[4]` | Value array | ### ARRAY_TEST_3 (17153) {#ARRAY_TEST_3} Array test #3. -Field Name | Type | Description ---- | --- | --- -v | `uint8_t` | Stub field -ar_u32 | `uint32_t[4]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| v | `uint8_t` | Stub field | +| ar_u32 | `uint32_t[4]` | Value array | ### ARRAY_TEST_4 (17154) {#ARRAY_TEST_4} Array test #4. -Field Name | Type | Description ---- | --- | --- -ar_u32 | `uint32_t[4]` | Value array -v | `uint8_t` | Stub field - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| ar_u32 | `uint32_t[4]` | Value array | +| v | `uint8_t` | Stub field | ### ARRAY_TEST_5 (17155) {#ARRAY_TEST_5} Array test #5. -Field Name | Type | Description ---- | --- | --- -c1 | `char[5]` | Value array -c2 | `char[5]` | Value array - +| Field Name | Type | Description | +| ---------- | --------- | ----------- | +| c1 | `char[5]` | Value array | +| c2 | `char[5]` | Value array | ### ARRAY_TEST_6 (17156) {#ARRAY_TEST_6} Array test #6. -Field Name | Type | Description ---- | --- | --- -v1 | `uint8_t` | Stub field -v2 | `uint16_t` | Stub field -v3 | `uint32_t` | Stub field -ar_u32 | `uint32_t[2]` | Value array -ar_i32 | `int32_t[2]` | Value array -ar_u16 | `uint16_t[2]` | Value array -ar_i16 | `int16_t[2]` | Value array -ar_u8 | `uint8_t[2]` | Value array -ar_i8 | `int8_t[2]` | Value array -ar_c | `char[32]` | Value array -ar_d | `double[2]` | Value array -ar_f | `float[2]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| v1 | `uint8_t` | Stub field | +| v2 | `uint16_t` | Stub field | +| v3 | `uint32_t` | Stub field | +| ar_u32 | `uint32_t[2]` | Value array | +| ar_i32 | `int32_t[2]` | Value array | +| ar_u16 | `uint16_t[2]` | Value array | +| ar_i16 | `int16_t[2]` | Value array | +| ar_u8 | `uint8_t[2]` | Value array | +| ar_i8 | `int8_t[2]` | Value array | +| ar_c | `char[32]` | Value array | +| ar_d | `double[2]` | Value array | +| ar_f | `float[2]` | Value array | ### ARRAY_TEST_7 (17157) {#ARRAY_TEST_7} Array test #7. -Field Name | Type | Description ---- | --- | --- -ar_d | `double[2]` | Value array -ar_f | `float[2]` | Value array -ar_u32 | `uint32_t[2]` | Value array -ar_i32 | `int32_t[2]` | Value array -ar_u16 | `uint16_t[2]` | Value array -ar_i16 | `int16_t[2]` | Value array -ar_u8 | `uint8_t[2]` | Value array -ar_i8 | `int8_t[2]` | Value array -ar_c | `char[32]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| ar_d | `double[2]` | Value array | +| ar_f | `float[2]` | Value array | +| ar_u32 | `uint32_t[2]` | Value array | +| ar_i32 | `int32_t[2]` | Value array | +| ar_u16 | `uint16_t[2]` | Value array | +| ar_i16 | `int16_t[2]` | Value array | +| ar_u8 | `uint8_t[2]` | Value array | +| ar_i8 | `int8_t[2]` | Value array | +| ar_c | `char[32]` | Value array | ### ARRAY_TEST_8 (17158) {#ARRAY_TEST_8} Array test #8. -Field Name | Type | Description ---- | --- | --- -v3 | `uint32_t` | Stub field -ar_d | `double[2]` | Value array -ar_u16 | `uint16_t[2]` | Value array - +| Field Name | Type | Description | +| ---------- | ------------- | ----------- | +| v3 | `uint32_t` | Stub field | +| ar_d | `double[2]` | Value array | +| ar_u16 | `uint16_t[2]` | Value array | ## Enumerated Types ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/standard.md b/en/messages/standard.md index 285523192..3c6acdbe3 100644 --- a/en/messages/standard.md +++ b/en/messages/standard.md @@ -2,11 +2,11 @@ # Dialect: MAVLINK Standard Message Set (standard.xml) -The MAVLink *standard* message set contains *standard* definitions that are managed by the MAVLink project. +The MAVLink _standard_ message set contains _standard_ definitions that are managed by the MAVLink project. The definitions are those that are expected to be implemented in all flight stacks/ground stations AND are likely to be implemented in a compatible way. The original definitions are defined in [standard.xml](https://github.com/mavlink/mavlink/blob/master/message_definitions/v1.0/standard.xml). - + ::: info @@ -24,6 +24,7 @@ span.warning { color: red; } + **Protocol dialect:** 0 ## MAVLink Include Files @@ -32,11 +33,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 2 | 1 -[Enums](#enumerated-types) | 3 | 6 -Commands | 0 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 2 | 1 | +| [Enums](#enumerated-types) | 3 | 6 | +| Commands | 0 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,38 +47,36 @@ The following sections list all entities in the dialect (both included and defin 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 | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -lat | `int32_t` | degE7 | Latitude, expressed -lon | `int32_t` | degE7 | Longitude, expressed -alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. -relative_alt | `int32_t` | mm | Altitude above home -vx | `int16_t` | cm/s | Ground X Speed (Latitude, positive north) -vy | `int16_t` | cm/s | Ground Y Speed (Longitude, positive east) -vz | `int16_t` | cm/s | Ground Z Speed (Altitude, positive down) -hdg | `uint16_t` | cdeg | Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX - +| Field Name | Type | Units | Description | +| ------------ | ---------- | ----- | -------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| lat | `int32_t` | degE7 | Latitude, expressed | +| lon | `int32_t` | degE7 | Longitude, expressed | +| alt | `int32_t` | mm | Altitude (MSL). Note that virtually all GPS modules provide both WGS84 and MSL. | +| relative_alt | `int32_t` | mm | Altitude above home | +| vx | `int16_t` | cm/s | Ground X Speed (Latitude, positive north) | +| vy | `int16_t` | cm/s | Ground Y Speed (Longitude, positive east) | +| vz | `int16_t` | cm/s | Ground Z Speed (Altitude, positive down) | +| hdg | `uint16_t` | cdeg | Vehicle heading (yaw angle), 0.0..359.99 degrees. If unknown, set to: UINT16_MAX | ### AUTOPILOT_VERSION (148) {#AUTOPILOT_VERSION} Version and capability of autopilot software. This should be emitted in response to a request with [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). -Field Name | Type | Values | Description ---- | --- | --- | --- -capabilities | `uint64_t` | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Bitmap of capabilities -flight_sw_version | `uint32_t` | | Firmware version number.
The field must be encoded as 4 bytes, where each byte (shown from MSB to LSB) is part of a semantic version: (major) (minor) (patch) ([FIRMWARE_VERSION_TYPE](#FIRMWARE_VERSION_TYPE)). -middleware_sw_version | `uint32_t` | | Middleware version number -os_sw_version | `uint32_t` | | Operating system version number -board_version | `uint32_t` | | HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify a board type from an enumeration stored at https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt and with extensive additions at https://github.com/ArduPilot/ardupilot/blob/master/Tools/AP_Bootloader/board_types.txt -flight_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -middleware_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -os_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. -vendor_id | `uint16_t` | | ID of the board vendor -product_id | `uint16_t` | | ID of the product -uid | `uint64_t` | | UID if provided by hardware (see uid2) -uid2 ++ | `uint8_t[18]` | | UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) - +| Field Name | Type | Values | Description | +| -------------------------------------------------------------------- | ------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| capabilities | `uint64_t` | [MAV_PROTOCOL_CAPABILITY](#MAV_PROTOCOL_CAPABILITY) | Bitmap of capabilities | +| flight_sw_version | `uint32_t` | | Firmware version number.
The field must be encoded as 4 bytes, where each byte (shown from MSB to LSB) is part of a semantic version: (major) (minor) (patch) ([FIRMWARE_VERSION_TYPE](#FIRMWARE_VERSION_TYPE)). | +| middleware_sw_version | `uint32_t` | | Middleware version number | +| os_sw_version | `uint32_t` | | Operating system version number | +| board_version | `uint32_t` | | HW / board version (last 8 bits should be silicon ID, if any). The first 16 bits of this field specify a board type from an enumeration stored at https://github.com/PX4/PX4-Bootloader/blob/master/board_types.txt and with extensive additions at https://github.com/ArduPilot/ardupilot/blob/master/Tools/AP_Bootloader/board_types.txt | +| flight_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| middleware_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| os_custom_version | `uint8_t[8]` | | Custom version field, commonly the first 8 bytes of the git hash. This is not an unique identifier, but should allow to identify the commit using the main version number even for very large code bases. | +| vendor_id | `uint16_t` | | ID of the board vendor | +| product_id | `uint16_t` | | ID of the product | +| uid | `uint64_t` | | UID if provided by hardware (see uid2) | +| uid2 ++ | `uint8_t[18]` | | UID if provided by hardware (supersedes the uid field. If this is non-zero, use this field, otherwise use uid) | ## Enumerated Types @@ -85,48 +84,47 @@ uid | `uint64_t` | | UID if provided by hardware (see uid2) (Bitmask) Enum used to indicate true or false (also: success or failure, enabled or disabled, active or inactive). -Value | Name | Description ---- | --- | --- -0 | [MAV_BOOL_FALSE](#MAV_BOOL_FALSE) | False. -1 | [MAV_BOOL_TRUE](#MAV_BOOL_TRUE) | True. +| Value | Name | Description | +| ---------------------------- | --------------------------------- | ----------- | +| 0 | [MAV_BOOL_FALSE](#MAV_BOOL_FALSE) | False. | +| 1 | [MAV_BOOL_TRUE](#MAV_BOOL_TRUE) | True. | ### MAV_PROTOCOL_CAPABILITY {#MAV_PROTOCOL_CAPABILITY} (Bitmask) Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. -Value | Name | Description ---- | --- | --- -1 | [MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT](#MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT) | Autopilot supports the [MISSION_ITEM](#MISSION_ITEM) float message type.
Note that [MISSION_ITEM](#MISSION_ITEM) is deprecated, and autopilots should use [MISSION_ITEM_INT](#MISSION_ITEM_INT) instead. -2 | [MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT](#MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT) | Autopilot supports the new param float message type.
**DEPRECATED:** Replaced By [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) (2022-03) -4 | [MAV_PROTOCOL_CAPABILITY_MISSION_INT](#MAV_PROTOCOL_CAPABILITY_MISSION_INT) | Autopilot supports [MISSION_ITEM_INT](#MISSION_ITEM_INT) scaled integer message type.
Note that this flag must always be set if missions are supported, because missions must always use [MISSION_ITEM_INT](#MISSION_ITEM_INT) (rather than [MISSION_ITEM](#MISSION_ITEM), which is deprecated). -8 | [MAV_PROTOCOL_CAPABILITY_COMMAND_INT](#MAV_PROTOCOL_CAPABILITY_COMMAND_INT) | Autopilot supports [COMMAND_INT](#COMMAND_INT) scaled integer message type. -16 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) | Parameter protocol uses byte-wise encoding of parameter values into param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) should be set if the parameter protocol is supported. -32 | [MAV_PROTOCOL_CAPABILITY_FTP](#MAV_PROTOCOL_CAPABILITY_FTP) | Autopilot supports the File Transfer Protocol v1: https://mavlink.io/en/services/ftp.html. -64 | [MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET](#MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET) | Autopilot supports commanding attitude offboard. -128 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED) | Autopilot supports commanding position and velocity targets in local NED frame. -256 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT) | Autopilot supports commanding position and velocity targets in global scaled integers. -512 | [MAV_PROTOCOL_CAPABILITY_TERRAIN](#MAV_PROTOCOL_CAPABILITY_TERRAIN) | Autopilot supports terrain protocol / data handling. -1024 | [MAV_PROTOCOL_CAPABILITY_RESERVED3](#MAV_PROTOCOL_CAPABILITY_RESERVED3) | Reserved for future use. -2048 | [MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION](#MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION) | Autopilot supports the [MAV_CMD_DO_FLIGHTTERMINATION](#MAV_CMD_DO_FLIGHTTERMINATION) command (flight termination). -4096 | [MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION](#MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION) | Autopilot supports onboard compass calibration. -8192 | [MAV_PROTOCOL_CAPABILITY_MAVLINK2](#MAV_PROTOCOL_CAPABILITY_MAVLINK2) | Autopilot supports MAVLink version 2. -16384 | [MAV_PROTOCOL_CAPABILITY_MISSION_FENCE](#MAV_PROTOCOL_CAPABILITY_MISSION_FENCE) | Autopilot supports mission fence protocol. -32768 | [MAV_PROTOCOL_CAPABILITY_MISSION_RALLY](#MAV_PROTOCOL_CAPABILITY_MISSION_RALLY) | Autopilot supports mission rally point protocol. -65536 | [MAV_PROTOCOL_CAPABILITY_RESERVED2](#MAV_PROTOCOL_CAPABILITY_RESERVED2) | Reserved for future use. -131072 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) | Parameter protocol uses C-cast of parameter values to set the param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) should be set if the parameter protocol is supported. -262144 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER](#MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER) | This component implements/is a gimbal manager. This means the [GIMBAL_MANAGER_INFORMATION](#GIMBAL_MANAGER_INFORMATION), and other messages can be requested. -524288 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL](#MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL) | Component supports locking control to a particular GCS independent of its system (via [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). -1048576 | [MAV_PROTOCOL_CAPABILITY_GRIPPER](#MAV_PROTOCOL_CAPABILITY_GRIPPER) | Autopilot has a connected gripper. MAVLink Grippers would set [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) instead.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). +| Value | Name | Description | +| ------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT](#MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT) | Autopilot supports the [MISSION_ITEM](#MISSION_ITEM) float message type.
Note that [MISSION_ITEM](#MISSION_ITEM) is deprecated, and autopilots should use [MISSION_ITEM_INT](#MISSION_ITEM_INT) instead. | +| 2 | [MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT](#MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT) | Autopilot supports the new param float message type.
**DEPRECATED:** Replaced By [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) (2022-03) | +| 4 | [MAV_PROTOCOL_CAPABILITY_MISSION_INT](#MAV_PROTOCOL_CAPABILITY_MISSION_INT) | Autopilot supports [MISSION_ITEM_INT](#MISSION_ITEM_INT) scaled integer message type.
Note that this flag must always be set if missions are supported, because missions must always use [MISSION_ITEM_INT](#MISSION_ITEM_INT) (rather than [MISSION_ITEM](#MISSION_ITEM), which is deprecated). | +| 8 | [MAV_PROTOCOL_CAPABILITY_COMMAND_INT](#MAV_PROTOCOL_CAPABILITY_COMMAND_INT) | Autopilot supports [COMMAND_INT](#COMMAND_INT) scaled integer message type. | +| 16 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) | Parameter protocol uses byte-wise encoding of parameter values into param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) should be set if the parameter protocol is supported. | +| 32 | [MAV_PROTOCOL_CAPABILITY_FTP](#MAV_PROTOCOL_CAPABILITY_FTP) | Autopilot supports the File Transfer Protocol v1: https://mavlink.io/en/services/ftp.html. | +| 64 | [MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET](#MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET) | Autopilot supports commanding attitude offboard. | +| 128 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED) | Autopilot supports commanding position and velocity targets in local NED frame. | +| 256 | [MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT](#MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT) | Autopilot supports commanding position and velocity targets in global scaled integers. | +| 512 | [MAV_PROTOCOL_CAPABILITY_TERRAIN](#MAV_PROTOCOL_CAPABILITY_TERRAIN) | Autopilot supports terrain protocol / data handling. | +| 1024 | [MAV_PROTOCOL_CAPABILITY_RESERVED3](#MAV_PROTOCOL_CAPABILITY_RESERVED3) | Reserved for future use. | +| 2048 | [MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION](#MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION) | Autopilot supports the [MAV_CMD_DO_FLIGHTTERMINATION](#MAV_CMD_DO_FLIGHTTERMINATION) command (flight termination). | +| 4096 | [MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION](#MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION) | Autopilot supports onboard compass calibration. | +| 8192 | [MAV_PROTOCOL_CAPABILITY_MAVLINK2](#MAV_PROTOCOL_CAPABILITY_MAVLINK2) | Autopilot supports MAVLink version 2. | +| 16384 | [MAV_PROTOCOL_CAPABILITY_MISSION_FENCE](#MAV_PROTOCOL_CAPABILITY_MISSION_FENCE) | Autopilot supports mission fence protocol. | +| 32768 | [MAV_PROTOCOL_CAPABILITY_MISSION_RALLY](#MAV_PROTOCOL_CAPABILITY_MISSION_RALLY) | Autopilot supports mission rally point protocol. | +| 65536 | [MAV_PROTOCOL_CAPABILITY_RESERVED2](#MAV_PROTOCOL_CAPABILITY_RESERVED2) | Reserved for future use. | +| 131072 | [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST) | Parameter protocol uses C-cast of parameter values to set the param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding.
Note that either this flag or [MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE](#MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE) should be set if the parameter protocol is supported. | +| 262144 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER](#MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER) | This component implements/is a gimbal manager. This means the [GIMBAL_MANAGER_INFORMATION](#GIMBAL_MANAGER_INFORMATION), and other messages can be requested. | +| 524288 | [MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL](#MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL) | Component supports locking control to a particular GCS independent of its system (via [MAV_CMD_REQUEST_OPERATOR_CONTROL](#MAV_CMD_REQUEST_OPERATOR_CONTROL)).
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | +| 1048576 | [MAV_PROTOCOL_CAPABILITY_GRIPPER](#MAV_PROTOCOL_CAPABILITY_GRIPPER) | Autopilot has a connected gripper. MAVLink Grippers would set [MAV_TYPE_GRIPPER](#MAV_TYPE_GRIPPER) instead.
**WORK IN PROGRESS**: Do not use in stable production environments (it may change). | ### FIRMWARE_VERSION_TYPE {#FIRMWARE_VERSION_TYPE} -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. - -Value | Name | Description ---- | --- | --- -0 | [FIRMWARE_VERSION_TYPE_DEV](#FIRMWARE_VERSION_TYPE_DEV) | development release -64 | [FIRMWARE_VERSION_TYPE_ALPHA](#FIRMWARE_VERSION_TYPE_ALPHA) | alpha release -128 | [FIRMWARE_VERSION_TYPE_BETA](#FIRMWARE_VERSION_TYPE_BETA) | beta release -192 | [FIRMWARE_VERSION_TYPE_RC](#FIRMWARE_VERSION_TYPE_RC) | release candidate -255 | [FIRMWARE_VERSION_TYPE_OFFICIAL](#FIRMWARE_VERSION_TYPE_OFFICIAL) | official stable release +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. +| Value | Name | Description | +| ---------------------------------------------- | ----------------------------------------------------------------- | ----------------------- | +| 0 | [FIRMWARE_VERSION_TYPE_DEV](#FIRMWARE_VERSION_TYPE_DEV) | development release | +| 64 | [FIRMWARE_VERSION_TYPE_ALPHA](#FIRMWARE_VERSION_TYPE_ALPHA) | alpha release | +| 128 | [FIRMWARE_VERSION_TYPE_BETA](#FIRMWARE_VERSION_TYPE_BETA) | beta release | +| 192 | [FIRMWARE_VERSION_TYPE_RC](#FIRMWARE_VERSION_TYPE_RC) | release candidate | +| 255 | [FIRMWARE_VERSION_TYPE_OFFICIAL](#FIRMWARE_VERSION_TYPE_OFFICIAL) | official stable release | diff --git a/en/messages/stemstudios.md b/en/messages/stemstudios.md index 5cf191c40..d7ddeb2fb 100644 --- a/en/messages/stemstudios.md +++ b/en/messages/stemstudios.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 2 | 234 -[Enums](#enumerated-types) | 1 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 2 | 234 | +| [Enums](#enumerated-types) | 1 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -45,54 +46,53 @@ The following sections list all entities in the dialect (both included and defin ### LED_STRIP_CONFIG (52600) {#LED_STRIP_CONFIG} Set the colors on an LED strip. The mode field determines how the colors are set. We can: + - Set all LEDs to the first color in our colors array. - Set up to 8 consecutive LEDs, starting from a given index, to colors provided in an array. - Set the LED colors to change according to the flight mode. - Turn all LEDs off (clear). -Which LED strip to configure is specified by the id field. -The colors field is an array of up to 8 colors, each represented as a 32-bit integer in the format 0xWWRRGGBB -where WW is white, RR is the intensity of the red color channel, GG is green, and BB is blue. - -Field Name | Type | Values | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID (Normally 134 for an LED Strip Controller). -mode | `uint8_t` | [LED_CONFIG_MODE](#LED_CONFIG_MODE) | How to configure LEDs. -index | `uint8_t` | | Set LEDs starting from this index. -length | `uint8_t` | | The number of LEDs to set (up to 8). -id | `uint8_t` | | Which strip to configure. UINT8_MAX for all strips. -colors | `uint32_t[8]` | | Array of 32-bit color values (0xWWRRGGBB). - + Which LED strip to configure is specified by the id field. + The colors field is an array of up to 8 colors, each represented as a 32-bit integer in the format 0xWWRRGGBB + where WW is white, RR is the intensity of the red color channel, GG is green, and BB is blue. + +| Field Name | Type | Values | Description | +| ---------------- | ------------- | ----------------------------------- | -------------------------------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID (Normally 134 for an LED Strip Controller). | +| mode | `uint8_t` | [LED_CONFIG_MODE](#LED_CONFIG_MODE) | How to configure LEDs. | +| index | `uint8_t` | | Set LEDs starting from this index. | +| length | `uint8_t` | | The number of LEDs to set (up to 8). | +| id | `uint8_t` | | Which strip to configure. UINT8_MAX for all strips. | +| colors | `uint32_t[8]` | | Array of 32-bit color values (0xWWRRGGBB). | ### LED_STRIP_STATE (52601) {#LED_STRIP_STATE} Current LED State. Can be emitted by LED Strip Controller. -Field Name | Type | Description ---- | --- | --- -length | `uint8_t` | How many LEDs are being reported in this message. -index | `uint8_t` | Index of first LED being reported. -id | `uint8_t` | Which strip is being reported. -following_flight_mode | `uint8_t` | Are the LED colors changing according to the flight mode (1) or not (0). -colors | `uint32_t[8]` | Array of 32-bit color values (0xWWRRGGBB). - +| Field Name | Type | Description | +| --------------------- | ------------- | ------------------------------------------------------------------------ | +| length | `uint8_t` | How many LEDs are being reported in this message. | +| index | `uint8_t` | Index of first LED being reported. | +| id | `uint8_t` | Which strip is being reported. | +| following_flight_mode | `uint8_t` | Are the LED colors changing according to the flight mode (1) or not (0). | +| colors | `uint32_t[8]` | Array of 32-bit color values (0xWWRRGGBB). | ## Enumerated Types ### LED_CONFIG_MODE {#LED_CONFIG_MODE} How to configure LEDs. We can: + - Set all LEDs to the first color in our colors array. - Set up to 8 consecutive LEDs, starting from a given index, to colors provided in an array. - Set the LED colors to change according to the flight mode. - Turn all LEDs off (clear). -Value | Name | Description ---- | --- | --- -0 | [LED_CONFIG_MODE_ALL](#LED_CONFIG_MODE_ALL) | Set all LEDs in the target strip to the first color in our colors array. -1 | [LED_CONFIG_MODE_INDEX](#LED_CONFIG_MODE_INDEX) | Set up to 8 consecutive LEDs, starting from the given index, to the colors provided in the colors array. -2 | [LED_CONFIG_MODE_FOLLOW_FLIGHT_MODE](#LED_CONFIG_MODE_FOLLOW_FLIGHT_MODE) | Set all LEDs in target strip to change color according to the flight mode. -3 | [LED_CONFIG_MODE_CLEAR](#LED_CONFIG_MODE_CLEAR) | Set all LEDs in the target strip to black (turn off). +| Value | Name | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| 0 | [LED_CONFIG_MODE_ALL](#LED_CONFIG_MODE_ALL) | Set all LEDs in the target strip to the first color in our colors array. | +| 1 | [LED_CONFIG_MODE_INDEX](#LED_CONFIG_MODE_INDEX) | Set up to 8 consecutive LEDs, starting from the given index, to the colors provided in the colors array. | +| 2 | [LED_CONFIG_MODE_FOLLOW_FLIGHT_MODE](#LED_CONFIG_MODE_FOLLOW_FLIGHT_MODE) | Set all LEDs in target strip to change color according to the flight mode. | +| 3 | [LED_CONFIG_MODE_CLEAR](#LED_CONFIG_MODE_CLEAR) | Set all LEDs in the target strip to black (turn off). | ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/storm32.md b/en/messages/storm32.md index 10638d91d..70bbdcbf1 100644 --- a/en/messages/storm32.md +++ b/en/messages/storm32.md @@ -26,6 +26,7 @@ span.warning { color: red; } + **Protocol dialect:** 1 **Protocol version:** 1 @@ -36,11 +37,11 @@ span.warning { ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 12 | 325 -[Enums](#enumerated-types) | 8 | 220 -[Commands](#mav_commands) | 203 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 12 | 325 | +| [Enums](#enumerated-types) | 8 | 220 | +| [Commands](#mav_commands) | 203 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -52,94 +53,88 @@ The following sections list all entities in the dialect (both included and defin Addition to message [AUTOPILOT_STATE_FOR_GIMBAL_DEVICE](#AUTOPILOT_STATE_FOR_GIMBAL_DEVICE). -Field Name | Type | Units | Description ---- | --- | --- | --- -target_system | `uint8_t` | | System ID. -target_component | `uint8_t` | | Component ID. -time_boot_us | `uint64_t` | us | Timestamp (time since system boot). -wind_x | `float` | m/s | Wind X speed in NED (North,Est, Down). NAN if unknown. -wind_y | `float` | m/s | Wind Y speed in NED (North, East, Down). NAN if unknown. -wind_correction_angle | `float` | rad | Correction angle due to wind. NaN if unknown. - +| Field Name | Type | Units | Description | +| --------------------- | ---------- | ----- | -------------------------------------------------------- | +| target_system | `uint8_t` | | System ID. | +| target_component | `uint8_t` | | Component ID. | +| time_boot_us | `uint64_t` | us | Timestamp (time since system boot). | +| wind_x | `float` | m/s | Wind X speed in NED (North,Est, Down). NAN if unknown. | +| wind_y | `float` | m/s | Wind Y speed in NED (North, East, Down). NAN if unknown. | +| wind_correction_angle | `float` | rad | Correction angle due to wind. NaN if unknown. | ### STORM32_GIMBAL_MANAGER_INFORMATION (60010) {#STORM32_GIMBAL_MANAGER_INFORMATION} Information about a gimbal manager. This message should be requested by a ground station using [MAV_CMD_REQUEST_MESSAGE](#MAV_CMD_REQUEST_MESSAGE). It mirrors some fields of the [GIMBAL_DEVICE_INFORMATION](#GIMBAL_DEVICE_INFORMATION) message, but not all. If the additional information is desired, also [GIMBAL_DEVICE_INFORMATION](#GIMBAL_DEVICE_INFORMATION) should be requested. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -gimbal_id | `uint8_t` | | | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -device_cap_flags | `uint32_t` | | [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Gimbal device capability flags. Same flags as reported by [GIMBAL_DEVICE_INFORMATION](#GIMBAL_DEVICE_INFORMATION). The flag is only 16 bit wide, but stored in 32 bit, for backwards compatibility (high word is zero). -manager_cap_flags | `uint32_t` | | [MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) | Gimbal manager capability flags. -roll_min | `float` | rad | invalid:NaN | Hardware minimum roll angle (positive: roll to the right). NaN if unknown. -roll_max | `float` | rad | invalid:NaN | Hardware maximum roll angle (positive: roll to the right). NaN if unknown. -pitch_min | `float` | rad | invalid:NaN | Hardware minimum pitch/tilt angle (positive: tilt up). NaN if unknown. -pitch_max | `float` | rad | invalid:NaN | Hardware maximum pitch/tilt angle (positive: tilt up). NaN if unknown. -yaw_min | `float` | rad | invalid:NaN | Hardware minimum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base). NaN if unknown. -yaw_max | `float` | rad | invalid:NaN | Hardware maximum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base). NaN if unknown. - +| Field Name | Type | Units | Values | Description | +| ----------------- | ---------- | ----- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| gimbal_id | `uint8_t` | | | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| device_cap_flags | `uint32_t` | | [GIMBAL_DEVICE_CAP_FLAGS](#GIMBAL_DEVICE_CAP_FLAGS) | Gimbal device capability flags. Same flags as reported by [GIMBAL_DEVICE_INFORMATION](#GIMBAL_DEVICE_INFORMATION). The flag is only 16 bit wide, but stored in 32 bit, for backwards compatibility (high word is zero). | +| manager_cap_flags | `uint32_t` | | [MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS) | Gimbal manager capability flags. | +| roll_min | `float` | rad | invalid:NaN | Hardware minimum roll angle (positive: roll to the right). NaN if unknown. | +| roll_max | `float` | rad | invalid:NaN | Hardware maximum roll angle (positive: roll to the right). NaN if unknown. | +| pitch_min | `float` | rad | invalid:NaN | Hardware minimum pitch/tilt angle (positive: tilt up). NaN if unknown. | +| pitch_max | `float` | rad | invalid:NaN | Hardware maximum pitch/tilt angle (positive: tilt up). NaN if unknown. | +| yaw_min | `float` | rad | invalid:NaN | Hardware minimum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base). NaN if unknown. | +| yaw_max | `float` | rad | invalid:NaN | Hardware maximum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base). NaN if unknown. | ### STORM32_GIMBAL_MANAGER_STATUS (60011) {#STORM32_GIMBAL_MANAGER_STATUS} Message reporting the current status of a gimbal manager. This message should be broadcast at a low regular rate (e.g. 1 Hz, may be increase momentarily to e.g. 5 Hz for a period of 1 sec after a change). -Field Name | Type | Values | Description ---- | --- | --- | --- -gimbal_id | `uint8_t` | | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -supervisor | `uint8_t` | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client who is currently supervisor (0 = none). -device_flags | `uint16_t` | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags currently applied. Same flags as reported by [GIMBAL_DEVICE_ATTITUDE_STATUS](#GIMBAL_DEVICE_ATTITUDE_STATUS). -manager_flags | `uint16_t` | [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags currently applied. -profile | `uint8_t` | [MAV_STORM32_GIMBAL_MANAGER_PROFILE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE) | Profile currently applied (0 = default). - +| Field Name | Type | Values | Description | +| ------------- | ---------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| gimbal_id | `uint8_t` | | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| supervisor | `uint8_t` | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client who is currently supervisor (0 = none). | +| device_flags | `uint16_t` | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags currently applied. Same flags as reported by [GIMBAL_DEVICE_ATTITUDE_STATUS](#GIMBAL_DEVICE_ATTITUDE_STATUS). | +| manager_flags | `uint16_t` | [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags currently applied. | +| profile | `uint8_t` | [MAV_STORM32_GIMBAL_MANAGER_PROFILE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE) | Profile currently applied (0 = default). | ### STORM32_GIMBAL_MANAGER_CONTROL (60012) {#STORM32_GIMBAL_MANAGER_CONTROL} Message to a gimbal manager to control the gimbal attitude. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). -device_flags | `uint16_t` | | invalid:UINT16_MAX [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags to be applied (UINT16_MAX to be ignored). Same flags as used in [GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE). -manager_flags | `uint16_t` | | invalid:0 [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags to be applied (0 to be ignored). -q | `float[4]` | | invalid:[NaN:] | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). Set first element to NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. -angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: roll to the right). NaN to be ignored. -angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: tilt up). NaN to be ignored. -angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. - +| Field Name | Type | Units | Values | Description | +| ------------------ | ---------- | ----- | ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). | +| device_flags | `uint16_t` | | invalid:UINT16_MAX [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags to be applied (UINT16_MAX to be ignored). Same flags as used in [GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE). | +| manager_flags | `uint16_t` | | invalid:0 [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags to be applied (0 to be ignored). | +| q | `float[4]` | | invalid:[NaN:] | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). Set first element to NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | +| angular_velocity_x | `float` | rad/s | invalid:NaN | X component of angular velocity (positive: roll to the right). NaN to be ignored. | +| angular_velocity_y | `float` | rad/s | invalid:NaN | Y component of angular velocity (positive: tilt up). NaN to be ignored. | +| angular_velocity_z | `float` | rad/s | invalid:NaN | Z component of angular velocity (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | ### STORM32_GIMBAL_MANAGER_CONTROL_PITCHYAW (60013) {#STORM32_GIMBAL_MANAGER_CONTROL_PITCHYAW} Message to a gimbal manager to control the gimbal tilt and pan angles. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). -device_flags | `uint16_t` | | invalid:UINT16_MAX [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags to be applied (UINT16_MAX to be ignored). Same flags as used in [GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE). -manager_flags | `uint16_t` | | invalid:0 [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags to be applied (0 to be ignored). -pitch | `float` | rad | invalid:NaN | Pitch/tilt angle (positive: tilt up). NaN to be ignored. -yaw | `float` | rad | invalid:NaN | Yaw/pan angle (positive: pan the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. -pitch_rate | `float` | rad/s | invalid:NaN | Pitch/tilt angular rate (positive: tilt up). NaN to be ignored. -yaw_rate | `float` | rad/s | invalid:NaN | Yaw/pan angular rate (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. - +| Field Name | Type | Units | Values | Description | +| ---------------- | ---------- | ----- | ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). | +| device_flags | `uint16_t` | | invalid:UINT16_MAX [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | Gimbal device flags to be applied (UINT16_MAX to be ignored). Same flags as used in [GIMBAL_DEVICE_SET_ATTITUDE](#GIMBAL_DEVICE_SET_ATTITUDE). | +| manager_flags | `uint16_t` | | invalid:0 [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | Gimbal manager flags to be applied (0 to be ignored). | +| pitch | `float` | rad | invalid:NaN | Pitch/tilt angle (positive: tilt up). NaN to be ignored. | +| yaw | `float` | rad | invalid:NaN | Yaw/pan angle (positive: pan the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | +| pitch_rate | `float` | rad/s | invalid:NaN | Pitch/tilt angular rate (positive: tilt up). NaN to be ignored. | +| yaw_rate | `float` | rad/s | invalid:NaN | Yaw/pan angular rate (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | ### STORM32_GIMBAL_MANAGER_CORRECT_ROLL (60014) {#STORM32_GIMBAL_MANAGER_CORRECT_ROLL} Message to a gimbal manager to correct the gimbal roll angle. This message is typically used to manually correct for a tilted horizon in operation. A gimbal device is never to react to this message. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID -target_component | `uint8_t` | | | Component ID -gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. -client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). -roll | `float` | rad | | Roll angle (positive to roll to the right). - +| Field Name | Type | Units | Values | Description | +| ---------------- | --------- | ----- | ----------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID | +| target_component | `uint8_t` | | | Component ID | +| gimbal_id | `uint8_t` | | | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals.
[Instance field]: Uniquely identifies a device/subcomponent within a single source/target MAVLink component. | +| client | `uint8_t` | | [MAV_STORM32_GIMBAL_MANAGER_CLIENT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT) | Client which is contacting the gimbal manager (must be set). | +| roll | `float` | rad | | Roll angle (positive to roll to the right). | ### QSHOT_STATUS (60020) — [WIP] {#QSHOT_STATUS} @@ -147,22 +142,20 @@ roll | `float` | rad | | Roll angle (positive to roll to the right). Information about the shot operation. -Field Name | Type | Values | Description ---- | --- | --- | --- -mode | `uint16_t` | [MAV_QSHOT_MODE](#MAV_QSHOT_MODE) | Current shot mode. -shot_state | `uint16_t` | | Current state in the shot. States are specific to the selected shot mode. - +| Field Name | Type | Values | Description | +| ---------- | ---------- | --------------------------------- | ------------------------------------------------------------------------- | +| mode | `uint16_t` | [MAV_QSHOT_MODE](#MAV_QSHOT_MODE) | Current shot mode. | +| shot_state | `uint16_t` | | Current state in the shot. States are specific to the selected shot mode. | ### FRSKY_PASSTHROUGH_ARRAY (60040) {#FRSKY_PASSTHROUGH_ARRAY} Frsky SPort passthrough multi packet container. -Field Name | Type | Units | Description ---- | --- | --- | --- -time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). -count | `uint8_t` | | Number of passthrough packets in this message. -packet_buf | `uint8_t[240]` | | Passthrough packet buffer. A packet has 6 bytes: uint16_t id + uint32_t data. The array has space for 40 packets. - +| Field Name | Type | Units | Description | +| ------------ | -------------- | ----- | ----------------------------------------------------------------------------------------------------------------- | +| time_boot_ms | `uint32_t` | ms | Timestamp (time since system boot). | +| count | `uint8_t` | | Number of passthrough packets in this message. | +| packet_buf | `uint8_t[240]` | | Passthrough packet buffer. A packet has 6 bytes: uint16_t id + uint32_t data. The array has space for 40 packets. | ### PARAM_VALUE_ARRAY (60041) — [WIP] {#PARAM_VALUE_ARRAY} @@ -170,14 +163,13 @@ packet_buf | `uint8_t[240]` | | Passthrough packet buffer. A packet has 6 bytes: Parameter multi param value container. -Field Name | Type | Description ---- | --- | --- -param_count | `uint16_t` | Total number of onboard parameters. -param_index_first | `uint16_t` | Index of the first onboard parameter in this array. -param_array_len | `uint8_t` | Number of onboard parameters in this array. -flags | `uint16_t` | Flags. -packet_buf | `uint8_t[248]` | Parameters buffer. Contains a series of variable length parameter blocks, one per parameter, with format as specified elsewhere. - +| Field Name | Type | Description | +| ----------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------- | +| param_count | `uint16_t` | Total number of onboard parameters. | +| param_index_first | `uint16_t` | Index of the first onboard parameter in this array. | +| param_array_len | `uint8_t` | Number of onboard parameters in this array. | +| flags | `uint16_t` | Flags. | +| packet_buf | `uint8_t[248]` | Parameters buffer. Contains a series of variable length parameter blocks, one per parameter, with format as specified elsewhere. | ### MLRS_RADIO_LINK_STATS (60045) {#MLRS_RADIO_LINK_STATS} @@ -191,25 +183,24 @@ The target_system field should normally be set to the system id of the system th The target_component field can normally be set to 0, so that all components of the system can receive the message. Note: The frequency fields are extensions to ensure that they are located at the end of the serialized payload and subject to MAVLink's trailing-zero trimming. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). -target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). -flags | `uint16_t` | | [MLRS_RADIO_LINK_STATS_FLAGS](#MLRS_RADIO_LINK_STATS_FLAGS) | Radio link statistics flags. -rx_LQ_rc | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of RC data stream from Tx to Rx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. -rx_LQ_ser | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of serial MAVLink data stream from Tx to Rx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. -rx_rssi1 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 1. 0: no reception, UINT8_MAX: unknown. -rx_snr1 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 1. Radio link dependent. INT8_MAX: unknown. -tx_LQ_ser | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of serial MAVLink data stream from Rx to Tx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. -tx_rssi1 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 1. 0: no reception. UINT8_MAX: unknown. -tx_snr1 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 1. Radio link dependent. INT8_MAX: unknown. -rx_rssi2 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 2. 0: no reception, UINT8_MAX: use rx_rssi1 if it is known else unknown. -rx_snr2 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 2. Radio link dependent. INT8_MAX: use rx_snr1 if it is known else unknown. -tx_rssi2 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 2. 0: no reception. UINT8_MAX: use tx_rssi1 if it is known else unknown. -tx_snr2 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 2. Radio link dependent. INT8_MAX: use tx_snr1 if it is known else unknown. -frequency1 ++ | `float` | Hz | invalid:0 | Frequency on antenna1 in Hz. 0: unknown. -frequency2 ++ | `float` | Hz | invalid:0 | Frequency on antenna2 in Hz. 0: unknown. - +| Field Name | Type | Units | Values | Description | +| -------------------------------------------------------------------------- | ---------- | ----- | ----------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). | +| target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). | +| flags | `uint16_t` | | [MLRS_RADIO_LINK_STATS_FLAGS](#MLRS_RADIO_LINK_STATS_FLAGS) | Radio link statistics flags. | +| rx_LQ_rc | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of RC data stream from Tx to Rx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. | +| rx_LQ_ser | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of serial MAVLink data stream from Tx to Rx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. | +| rx_rssi1 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 1. 0: no reception, UINT8_MAX: unknown. | +| rx_snr1 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 1. Radio link dependent. INT8_MAX: unknown. | +| tx_LQ_ser | `uint8_t` | c% | invalid:UINT8_MAX | Link quality of serial MAVLink data stream from Rx to Tx. Values: 1..100, 0: no link connection, UINT8_MAX: unknown. | +| tx_rssi1 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 1. 0: no reception. UINT8_MAX: unknown. | +| tx_snr1 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 1. Radio link dependent. INT8_MAX: unknown. | +| rx_rssi2 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 2. 0: no reception, UINT8_MAX: use rx_rssi1 if it is known else unknown. | +| rx_snr2 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 2. Radio link dependent. INT8_MAX: use rx_snr1 if it is known else unknown. | +| tx_rssi2 | `uint8_t` | | invalid:UINT8_MAX | Rssi of antenna 2. 0: no reception. UINT8_MAX: use tx_rssi1 if it is known else unknown. | +| tx_snr2 | `int8_t` | | invalid:INT8_MAX | Noise on antenna 2. Radio link dependent. INT8_MAX: use tx_snr1 if it is known else unknown. | +| frequency1 ++ | `float` | Hz | invalid:0 | Frequency on antenna1 in Hz. 0: unknown. | +| frequency2 ++ | `float` | Hz | invalid:0 | Frequency on antenna2 in Hz. 0: unknown. | ### MLRS_RADIO_LINK_INFORMATION (60046) {#MLRS_RADIO_LINK_INFORMATION} @@ -220,23 +211,22 @@ If values change then the message should temporarily be send more often to infor The target_system field should normally be set to the system id of the system the link is connected to, typically the flight controller. The target_component field can normally be set to 0, so that all components of the system can receive the message. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). -target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). -type | `uint8_t` | | invalid:0 [MLRS_RADIO_LINK_TYPE](#MLRS_RADIO_LINK_TYPE) | Radio link type. 0: unknown/generic type. -mode | `uint8_t` | | invalid:UINT8_MAX | Operation mode. Radio link dependent. UINT8_MAX: ignore/unknown. -tx_power | `int8_t` | dBm | invalid:INT8_MAX | Tx transmit power in dBm. INT8_MAX: unknown. -rx_power | `int8_t` | dBm | invalid:INT8_MAX | Rx transmit power in dBm. INT8_MAX: unknown. -tx_frame_rate | `uint16_t` | Hz | invalid:0 | Frame rate in Hz (frames per second) for Tx to Rx transmission. 0: unknown. -rx_frame_rate | `uint16_t` | Hz | invalid:0 | Frame rate in Hz (frames per second) for Rx to Tx transmission. Normally equal to tx_packet_rate. 0: unknown. -mode_str | `char[6]` | | | Operation mode as human readable string. Radio link dependent. Terminated by NULL if the string length is less than 6 chars and WITHOUT NULL termination if the length is exactly 6 chars - applications have to provide 6+1 bytes storage if the mode is stored as string. Use a zero-length string if not known. -band_str | `char[6]` | | | Frequency band as human readable string. Radio link dependent. Terminated by NULL if the string length is less than 6 chars and WITHOUT NULL termination if the length is exactly 6 chars - applications have to provide 6+1 bytes storage if the mode is stored as string. Use a zero-length string if not known. -tx_ser_data_rate | `uint16_t` | | invalid:0 | Maximum data rate of serial stream in bytes/s for Tx to Rx transmission. 0: unknown. UINT16_MAX: data rate is 64 KBytes/s or larger. -rx_ser_data_rate | `uint16_t` | | invalid:0 | Maximum data rate of serial stream in bytes/s for Rx to Tx transmission. 0: unknown. UINT16_MAX: data rate is 64 KBytes/s or larger. -tx_receive_sensitivity | `uint8_t` | | invalid:0 | Receive sensitivity of Tx in inverted dBm. 1..255 represents -1..-255 dBm, 0: unknown. -rx_receive_sensitivity | `uint8_t` | | invalid:0 | Receive sensitivity of Rx in inverted dBm. 1..255 represents -1..-255 dBm, 0: unknown. - +| Field Name | Type | Units | Values | Description | +| ---------------------- | ---------- | ----- | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| target_system | `uint8_t` | | | System ID (ID of target system, normally flight controller). | +| target_component | `uint8_t` | | | Component ID (normally 0 for broadcast). | +| type | `uint8_t` | | invalid:0 [MLRS_RADIO_LINK_TYPE](#MLRS_RADIO_LINK_TYPE) | Radio link type. 0: unknown/generic type. | +| mode | `uint8_t` | | invalid:UINT8_MAX | Operation mode. Radio link dependent. UINT8_MAX: ignore/unknown. | +| tx_power | `int8_t` | dBm | invalid:INT8_MAX | Tx transmit power in dBm. INT8_MAX: unknown. | +| rx_power | `int8_t` | dBm | invalid:INT8_MAX | Rx transmit power in dBm. INT8_MAX: unknown. | +| tx_frame_rate | `uint16_t` | Hz | invalid:0 | Frame rate in Hz (frames per second) for Tx to Rx transmission. 0: unknown. | +| rx_frame_rate | `uint16_t` | Hz | invalid:0 | Frame rate in Hz (frames per second) for Rx to Tx transmission. Normally equal to tx_packet_rate. 0: unknown. | +| mode_str | `char[6]` | | | Operation mode as human readable string. Radio link dependent. Terminated by NULL if the string length is less than 6 chars and WITHOUT NULL termination if the length is exactly 6 chars - applications have to provide 6+1 bytes storage if the mode is stored as string. Use a zero-length string if not known. | +| band_str | `char[6]` | | | Frequency band as human readable string. Radio link dependent. Terminated by NULL if the string length is less than 6 chars and WITHOUT NULL termination if the length is exactly 6 chars - applications have to provide 6+1 bytes storage if the mode is stored as string. Use a zero-length string if not known. | +| tx_ser_data_rate | `uint16_t` | | invalid:0 | Maximum data rate of serial stream in bytes/s for Tx to Rx transmission. 0: unknown. UINT16_MAX: data rate is 64 KBytes/s or larger. | +| rx_ser_data_rate | `uint16_t` | | invalid:0 | Maximum data rate of serial stream in bytes/s for Rx to Tx transmission. 0: unknown. UINT16_MAX: data rate is 64 KBytes/s or larger. | +| tx_receive_sensitivity | `uint8_t` | | invalid:0 | Receive sensitivity of Tx in inverted dBm. 1..255 represents -1..-255 dBm, 0: unknown. | +| rx_receive_sensitivity | `uint8_t` | | invalid:0 | Receive sensitivity of Rx in inverted dBm. 1..255 represents -1..-255 dBm, 0: unknown. | ### MLRS_RADIO_LINK_FLOW_CONTROL (60047) — [WIP] {#MLRS_RADIO_LINK_FLOW_CONTROL} @@ -244,99 +234,98 @@ rx_receive_sensitivity | `uint8_t` | | invalid:0 | Receive sensitivity of Rx in Injected by a radio link endpoint into the MAVLink stream for purposes of flow control. Should be emitted only by components with component id [MAV_COMP_ID_TELEMETRY_RADIO](#MAV_COMP_ID_TELEMETRY_RADIO). -Field Name | Type | Units | Description ---- | --- | --- | --- -tx_ser_rate | `uint16_t` | bytes/s | Transmitted bytes per second, UINT16_MAX: invalid/unknown. -rx_ser_rate | `uint16_t` | bytes/s | Received bytes per second, UINT16_MAX: invalid/unknown. -tx_used_ser_bandwidth | `uint8_t` | c% | Transmit bandwidth consumption. Values: 0..100, UINT8_MAX: invalid/unknown. -rx_used_ser_bandwidth | `uint8_t` | c% | Receive bandwidth consumption. Values: 0..100, UINT8_MAX: invalid/unknown. -txbuf | `uint8_t` | c% | For compatibility with legacy method. UINT8_MAX: unknown. - +| Field Name | Type | Units | Description | +| --------------------- | ---------- | ------- | --------------------------------------------------------------------------- | +| tx_ser_rate | `uint16_t` | bytes/s | Transmitted bytes per second, UINT16_MAX: invalid/unknown. | +| rx_ser_rate | `uint16_t` | bytes/s | Received bytes per second, UINT16_MAX: invalid/unknown. | +| tx_used_ser_bandwidth | `uint8_t` | c% | Transmit bandwidth consumption. Values: 0..100, UINT8_MAX: invalid/unknown. | +| rx_used_ser_bandwidth | `uint8_t` | c% | Receive bandwidth consumption. Values: 0..100, UINT8_MAX: invalid/unknown. | +| txbuf | `uint8_t` | c% | For compatibility with legacy method. UINT8_MAX: unknown. | ## Enumerated Types ### MAV_STORM32_TUNNEL_PAYLOAD_TYPE {#MAV_STORM32_TUNNEL_PAYLOAD_TYPE} -Value | Name | Description ---- | --- | --- -200 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN) | Registered for STorM32 gimbal controller. For communication with gimbal or camera. -201 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT) | Registered for STorM32 gimbal controller. For communication with gimbal or camera. -202 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN) | Registered for STorM32 gimbal controller. For communication with gimbal. -203 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT) | Registered for STorM32 gimbal controller. For communication with gimbal. -204 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN) | Registered for STorM32 gimbal controller. For communication with camera. -205 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT) | Registered for STorM32 gimbal controller. For communication with camera. +| Value | Name | Description | +| --------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| 200 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN) | Registered for STorM32 gimbal controller. For communication with gimbal or camera. | +| 201 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT) | Registered for STorM32 gimbal controller. For communication with gimbal or camera. | +| 202 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN) | Registered for STorM32 gimbal controller. For communication with gimbal. | +| 203 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT) | Registered for STorM32 gimbal controller. For communication with gimbal. | +| 204 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN) | Registered for STorM32 gimbal controller. For communication with camera. | +| 205 | [MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT](#MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT) | Registered for STorM32 gimbal controller. For communication with camera. | ### MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS {#MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS} (Bitmask) Gimbal manager capability flags. -Value | Name | Description ---- | --- | --- -1 | [MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES](#MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES) | The gimbal manager supports several profiles. +| Value | Name | Description | +| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | --------------------------------------------- | +| 1 | [MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES](#MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES) | The gimbal manager supports several profiles. | ### MAV_STORM32_GIMBAL_MANAGER_FLAGS {#MAV_STORM32_GIMBAL_MANAGER_FLAGS} (Bitmask) Flags for gimbal manager operation. Used for setting and reporting, unless specified otherwise. If a setting has been accepted by the gimbal manager is reported in the STORM32_GIMBAL_MANAGER_STATUS message. -Value | Name | Description ---- | --- | --- -1 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE) | Request to set RC input to active, or report RC input is active. Implies RC mixed. RC exclusive is achieved by setting all clients to inactive. -2 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE) | Request to set onboard/companion computer client to active, or report this client is active. -4 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE) | Request to set autopliot client to active, or report this client is active. -8 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE) | Request to set GCS client to active, or report this client is active. -16 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE) | Request to set camera client to active, or report this client is active. -32 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE) | Request to set GCS2 client to active, or report this client is active. -64 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE) | Request to set camera2 client to active, or report this client is active. -128 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE) | Request to set custom client to active, or report this client is active. -256 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE) | Request to set custom2 client to active, or report this client is active. -512 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON) | Request supervision. This flag is only for setting, it is not reported. -1024 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE) | Release supervision. This flag is only for setting, it is not reported. +| Value | Name | Description | +| ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE) | Request to set RC input to active, or report RC input is active. Implies RC mixed. RC exclusive is achieved by setting all clients to inactive. | +| 2 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE) | Request to set onboard/companion computer client to active, or report this client is active. | +| 4 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE) | Request to set autopliot client to active, or report this client is active. | +| 8 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE) | Request to set GCS client to active, or report this client is active. | +| 16 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE) | Request to set camera client to active, or report this client is active. | +| 32 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE) | Request to set GCS2 client to active, or report this client is active. | +| 64 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE) | Request to set camera2 client to active, or report this client is active. | +| 128 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE) | Request to set custom client to active, or report this client is active. | +| 256 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE) | Request to set custom2 client to active, or report this client is active. | +| 512 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON) | Request supervision. This flag is only for setting, it is not reported. | +| 1024 | [MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE](#MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE) | Release supervision. This flag is only for setting, it is not reported. | ### MAV_STORM32_GIMBAL_MANAGER_CLIENT {#MAV_STORM32_GIMBAL_MANAGER_CLIENT} Gimbal manager client ID. In a prioritizing profile, the priorities are determined by the implementation; they could e.g. be custom1 > onboard > GCS > autopilot/camera > GCS2 > custom2. -Value | Name | Description ---- | --- | --- -0 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE) | For convenience. -1 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD) | This is the onboard/companion computer client. -2 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT) | This is the autopilot client. -3 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS) | This is the GCS client. -4 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA) | This is the camera client. -5 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2) | This is the GCS2 client. -6 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2) | This is the camera2 client. -7 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM) | This is the custom client. -8 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2) | This is the custom2 client. +| Value | Name | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------- | +| 0 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE) | For convenience. | +| 1 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD) | This is the onboard/companion computer client. | +| 2 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT) | This is the autopilot client. | +| 3 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS) | This is the GCS client. | +| 4 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA) | This is the camera client. | +| 5 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2) | This is the GCS2 client. | +| 6 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2) | This is the camera2 client. | +| 7 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM) | This is the custom client. | +| 8 | [MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2](#MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2) | This is the custom2 client. | ### MAV_STORM32_GIMBAL_MANAGER_PROFILE {#MAV_STORM32_GIMBAL_MANAGER_PROFILE} Gimbal manager profiles. Only standard profiles are defined. Any implementation can define its own profile(s) in addition, and should use enum values > 16. -Value | Name | Description ---- | --- | --- -0 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT) | Default profile. Implementation specific. -1 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM) | Not supported/deprecated. -2 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE) | Profile with cooperative behavior. -3 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE) | Profile with exclusive behavior. -4 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE) | Profile with priority and cooperative behavior for equal priority. -5 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE) | Profile with priority and exclusive behavior for equal priority. +| Value | Name | Description | +| --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ | +| 0 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT) | Default profile. Implementation specific. | +| 1 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM) | Not supported/deprecated. | +| 2 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE) | Profile with cooperative behavior. | +| 3 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE) | Profile with exclusive behavior. | +| 4 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE) | Profile with priority and cooperative behavior for equal priority. | +| 5 | [MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE) | Profile with priority and exclusive behavior for equal priority. | ### MAV_QSHOT_MODE {#MAV_QSHOT_MODE} Enumeration of possible shot modes. -Value | Name | Description ---- | --- | --- -0 | [MAV_QSHOT_MODE_UNDEFINED](#MAV_QSHOT_MODE_UNDEFINED) | Undefined shot mode. Can be used to determine if qshots should be used or not. -1 | [MAV_QSHOT_MODE_DEFAULT](#MAV_QSHOT_MODE_DEFAULT) | Start normal gimbal operation. Is usually used to return back from a shot. -2 | [MAV_QSHOT_MODE_GIMBAL_RETRACT](#MAV_QSHOT_MODE_GIMBAL_RETRACT) | Load and keep safe gimbal position and stop stabilization. -3 | [MAV_QSHOT_MODE_GIMBAL_NEUTRAL](#MAV_QSHOT_MODE_GIMBAL_NEUTRAL) | Load neutral gimbal position and keep it while stabilizing. -4 | [MAV_QSHOT_MODE_GIMBAL_MISSION](#MAV_QSHOT_MODE_GIMBAL_MISSION) | Start mission with gimbal control. -5 | [MAV_QSHOT_MODE_GIMBAL_RC_CONTROL](#MAV_QSHOT_MODE_GIMBAL_RC_CONTROL) | Start RC gimbal control. -6 | [MAV_QSHOT_MODE_POI_TARGETING](#MAV_QSHOT_MODE_POI_TARGETING) | Start gimbal tracking the point specified by Lat, Lon, Alt. -7 | [MAV_QSHOT_MODE_SYSID_TARGETING](#MAV_QSHOT_MODE_SYSID_TARGETING) | Start gimbal tracking the system with specified system ID. -8 | [MAV_QSHOT_MODE_CABLECAM_2POINT](#MAV_QSHOT_MODE_CABLECAM_2POINT) | Start 2-point cable cam quick shot. -9 | [MAV_QSHOT_MODE_HOME_TARGETING](#MAV_QSHOT_MODE_HOME_TARGETING) | Start gimbal tracking the home location. +| Value | Name | Description | +| ---------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------------ | +| 0 | [MAV_QSHOT_MODE_UNDEFINED](#MAV_QSHOT_MODE_UNDEFINED) | Undefined shot mode. Can be used to determine if qshots should be used or not. | +| 1 | [MAV_QSHOT_MODE_DEFAULT](#MAV_QSHOT_MODE_DEFAULT) | Start normal gimbal operation. Is usually used to return back from a shot. | +| 2 | [MAV_QSHOT_MODE_GIMBAL_RETRACT](#MAV_QSHOT_MODE_GIMBAL_RETRACT) | Load and keep safe gimbal position and stop stabilization. | +| 3 | [MAV_QSHOT_MODE_GIMBAL_NEUTRAL](#MAV_QSHOT_MODE_GIMBAL_NEUTRAL) | Load neutral gimbal position and keep it while stabilizing. | +| 4 | [MAV_QSHOT_MODE_GIMBAL_MISSION](#MAV_QSHOT_MODE_GIMBAL_MISSION) | Start mission with gimbal control. | +| 5 | [MAV_QSHOT_MODE_GIMBAL_RC_CONTROL](#MAV_QSHOT_MODE_GIMBAL_RC_CONTROL) | Start RC gimbal control. | +| 6 | [MAV_QSHOT_MODE_POI_TARGETING](#MAV_QSHOT_MODE_POI_TARGETING) | Start gimbal tracking the point specified by Lat, Lon, Alt. | +| 7 | [MAV_QSHOT_MODE_SYSID_TARGETING](#MAV_QSHOT_MODE_SYSID_TARGETING) | Start gimbal tracking the system with specified system ID. | +| 8 | [MAV_QSHOT_MODE_CABLECAM_2POINT](#MAV_QSHOT_MODE_CABLECAM_2POINT) | Start 2-point cable cam quick shot. | +| 9 | [MAV_QSHOT_MODE_HOME_TARGETING](#MAV_QSHOT_MODE_HOME_TARGETING) | Start gimbal tracking the home location. | ### MLRS_RADIO_LINK_STATS_FLAGS {#MLRS_RADIO_LINK_STATS_FLAGS} @@ -348,29 +337,29 @@ The [RX_TRANSMIT](#RX_TRANSMIT) and [TX_TRANSMIT](#TX_TRANSMIT) flags specify wh Both antenna 1 and antenna 2 transmit flags can be set simultaneously, e.g., in case of dual-band or dual-frequency systems. If neither flag is set then antenna 1 should be assumed. -Value | Name | Description ---- | --- | --- -1 | [MLRS_RADIO_LINK_STATS_FLAGS_RSSI_DBM](#MLRS_RADIO_LINK_STATS_FLAGS_RSSI_DBM) | Rssi values are in negative dBm. Values 1..254 corresponds to -1..-254 dBm. 0: no reception, UINT8_MAX: unknown. -2 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_RECEIVE_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_RX_RECEIVE_ANTENNA2) | Rx receive antenna. When set the data received on antenna 2 are taken, else the data stems from antenna 1. -4 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA1](#MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA1) | Rx transmit antenna. Data are transmitted on antenna 1. -8 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA2) | Rx transmit antenna. Data are transmitted on antenna 2. -16 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_RECEIVE_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_TX_RECEIVE_ANTENNA2) | Tx receive antenna. When set the data received on antenna 2 are taken, else the data stems from antenna 1. -32 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA1](#MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA1) | Tx transmit antenna. Data are transmitted on antenna 1. -64 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA2) | Tx transmit antenna. Data are transmitted on antenna 2. +| Value | Name | Description | +| --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | +| 1 | [MLRS_RADIO_LINK_STATS_FLAGS_RSSI_DBM](#MLRS_RADIO_LINK_STATS_FLAGS_RSSI_DBM) | Rssi values are in negative dBm. Values 1..254 corresponds to -1..-254 dBm. 0: no reception, UINT8_MAX: unknown. | +| 2 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_RECEIVE_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_RX_RECEIVE_ANTENNA2) | Rx receive antenna. When set the data received on antenna 2 are taken, else the data stems from antenna 1. | +| 4 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA1](#MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA1) | Rx transmit antenna. Data are transmitted on antenna 1. | +| 8 | [MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_RX_TRANSMIT_ANTENNA2) | Rx transmit antenna. Data are transmitted on antenna 2. | +| 16 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_RECEIVE_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_TX_RECEIVE_ANTENNA2) | Tx receive antenna. When set the data received on antenna 2 are taken, else the data stems from antenna 1. | +| 32 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA1](#MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA1) | Tx transmit antenna. Data are transmitted on antenna 1. | +| 64 | [MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA2](#MLRS_RADIO_LINK_STATS_FLAGS_TX_TRANSMIT_ANTENNA2) | Tx transmit antenna. Data are transmitted on antenna 2. | ### MLRS_RADIO_LINK_TYPE {#MLRS_RADIO_LINK_TYPE} [RADIO_LINK_TYPE](#RADIO_LINK_TYPE) enum. -Value | Name | Description ---- | --- | --- -0 | [MLRS_RADIO_LINK_TYPE_GENERIC](#MLRS_RADIO_LINK_TYPE_GENERIC) | Unknown radio link type. -1 | [MLRS_RADIO_LINK_TYPE_HERELINK](#MLRS_RADIO_LINK_TYPE_HERELINK) | Radio link is HereLink. -2 | [MLRS_RADIO_LINK_TYPE_DRAGONLINK](#MLRS_RADIO_LINK_TYPE_DRAGONLINK) | Radio link is Dragon Link. -3 | [MLRS_RADIO_LINK_TYPE_RFD900](#MLRS_RADIO_LINK_TYPE_RFD900) | Radio link is RFD900. -4 | [MLRS_RADIO_LINK_TYPE_CROSSFIRE](#MLRS_RADIO_LINK_TYPE_CROSSFIRE) | Radio link is Crossfire. -5 | [MLRS_RADIO_LINK_TYPE_EXPRESSLRS](#MLRS_RADIO_LINK_TYPE_EXPRESSLRS) | Radio link is ExpressLRS. -6 | [MLRS_RADIO_LINK_TYPE_MLRS](#MLRS_RADIO_LINK_TYPE_MLRS) | Radio link is mLRS. +| Value | Name | Description | +| --------------------------------------------- | ------------------------------------------------------------------- | -------------------------- | +| 0 | [MLRS_RADIO_LINK_TYPE_GENERIC](#MLRS_RADIO_LINK_TYPE_GENERIC) | Unknown radio link type. | +| 1 | [MLRS_RADIO_LINK_TYPE_HERELINK](#MLRS_RADIO_LINK_TYPE_HERELINK) | Radio link is HereLink. | +| 2 | [MLRS_RADIO_LINK_TYPE_DRAGONLINK](#MLRS_RADIO_LINK_TYPE_DRAGONLINK) | Radio link is Dragon Link. | +| 3 | [MLRS_RADIO_LINK_TYPE_RFD900](#MLRS_RADIO_LINK_TYPE_RFD900) | Radio link is RFD900. | +| 4 | [MLRS_RADIO_LINK_TYPE_CROSSFIRE](#MLRS_RADIO_LINK_TYPE_CROSSFIRE) | Radio link is Crossfire. | +| 5 | [MLRS_RADIO_LINK_TYPE_EXPRESSLRS](#MLRS_RADIO_LINK_TYPE_EXPRESSLRS) | Radio link is ExpressLRS. | +| 6 | [MLRS_RADIO_LINK_TYPE_MLRS](#MLRS_RADIO_LINK_TYPE_MLRS) | Radio link is mLRS. | ## Commands (MAV_CMD) {#mav_commands} @@ -378,16 +367,15 @@ Value | Name | Description Command to a gimbal manager to control the gimbal tilt and pan angles. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. A gimbal device is never to react to this command. -Param (Label) | Description | Values | Units ---- | --- | --- | --- -1 (Pitch angle) | Pitch/tilt angle (positive: tilt up). NaN to be ignored. | min: -180 max: 180 | deg -2 (Yaw angle) | Yaw/pan angle (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | min: -180 max: 180 | deg -3 (Pitch rate) | Pitch/tilt rate (positive: tilt up). NaN to be ignored. | | deg/s -4 (Yaw rate) | Yaw/pan rate (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | | deg/s -5 (Gimbal device flags) | Gimbal device flags to be applied. | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | -6 (Gimbal manager flags) | Gimbal manager flags to be applied. | [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | -7 (Gimbal ID and client) | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. The client is copied into bits 8-15. | | - +| Param (Label) | Description | Values | Units | +| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | ----- | +| 1 (Pitch angle) | Pitch/tilt angle (positive: tilt up). NaN to be ignored. | min: -180 max: 180 | deg | +| 2 (Yaw angle) | Yaw/pan angle (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | min: -180 max: 180 | deg | +| 3 (Pitch rate) | Pitch/tilt rate (positive: tilt up). NaN to be ignored. | | deg/s | +| 4 (Yaw rate) | Yaw/pan rate (positive: pan to the right). NaN to be ignored. The frame is determined by the GIMBAL_DEVICE_FLAGS_YAW_IN_xxx_FRAME flags. | | deg/s | +| 5 (Gimbal device flags) | Gimbal device flags to be applied. | [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS) | +| 6 (Gimbal manager flags) | Gimbal manager flags to be applied. | [MAV_STORM32_GIMBAL_MANAGER_FLAGS](#MAV_STORM32_GIMBAL_MANAGER_FLAGS) | +| 7 (Gimbal ID and client) | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. The client is copied into bits 8-15. | | ### MAV_CMD_STORM32_DO_GIMBAL_MANAGER_SETUP (60010) — [WIP] {#MAV_CMD_STORM32_DO_GIMBAL_MANAGER_SETUP} @@ -395,11 +383,10 @@ Param (Label) | Description | Values | Units Command to configure a gimbal manager. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message. -Param (Label) | Description | Values ---- | --- | --- -1 (Profile) | Gimbal manager profile (0 = default). | [MAV_STORM32_GIMBAL_MANAGER_PROFILE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE) -7 (Gimbal ID) | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. | - +| Param (Label) | Description | Values | +| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------- | +| 1 (Profile) | Gimbal manager profile (0 = default). | [MAV_STORM32_GIMBAL_MANAGER_PROFILE](#MAV_STORM32_GIMBAL_MANAGER_PROFILE) | +| 7 (Gimbal ID) | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. | ### MAV_CMD_QSHOT_DO_CONFIGURE (60020) — [WIP] {#MAV_CMD_QSHOT_DO_CONFIGURE} @@ -407,9 +394,7 @@ Param (Label) | Description | Values Command to set the shot manager mode. -Param (Label) | Description | Values ---- | --- | --- -1 (Mode) | Set shot mode. | [MAV_QSHOT_MODE](#MAV_QSHOT_MODE) -2 (Shot state or command) | Set shot state or command. The allowed values are specific to the selected shot mode. | - - +| Param (Label) | Description | Values | +| ------------------------- | ------------------------------------------------------------------------------------- | --------------------------------- | +| 1 (Mode) | Set shot mode. | [MAV_QSHOT_MODE](#MAV_QSHOT_MODE) | +| 2 (Shot state or command) | Set shot state or command. The allowed values are specific to the selected shot mode. | diff --git a/en/messages/test.md b/en/messages/test.md index 534bac1fc..43d9b90c0 100644 --- a/en/messages/test.md +++ b/en/messages/test.md @@ -23,19 +23,20 @@ span.warning { color: red; } + **Protocol version:** 3 ## MAVLink Include Files - None +None ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 1 | 0 -Enums | 0 | 0 -Commands | 0 | 0 +| Type | Defined | Included | +| --------------------- | ------- | -------- | +| [Messages](#messages) | 1 | 0 | +| Enums | 0 | 0 | +| Commands | 0 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -45,29 +46,27 @@ The following sections list all entities in the dialect (both included and defin Test all field types -Field Name | Type | Description ---- | --- | --- -c | `char` | char -s | `char[10]` | string -u8 | `uint8_t` | uint8_t -u16 | `uint16_t` | uint16_t -u32 | `uint32_t` | uint32_t -u64 | `uint64_t` | uint64_t -s8 | `int8_t` | int8_t -s16 | `int16_t` | int16_t -s32 | `int32_t` | int32_t -s64 | `int64_t` | int64_t -f | `float` | float -d | `double` | double -u8_array | `uint8_t[3]` | uint8_t_array -u16_array | `uint16_t[3]` | uint16_t_array -u32_array | `uint32_t[3]` | uint32_t_array -u64_array | `uint64_t[3]` | uint64_t_array -s8_array | `int8_t[3]` | int8_t_array -s16_array | `int16_t[3]` | int16_t_array -s32_array | `int32_t[3]` | int32_t_array -s64_array | `int64_t[3]` | int64_t_array -f_array | `float[3]` | float_array -d_array | `double[3]` | double_array - - +| Field Name | Type | Description | +| ---------- | ------------- | -------------- | +| c | `char` | char | +| s | `char[10]` | string | +| u8 | `uint8_t` | uint8_t | +| u16 | `uint16_t` | uint16_t | +| u32 | `uint32_t` | uint32_t | +| u64 | `uint64_t` | uint64_t | +| s8 | `int8_t` | int8_t | +| s16 | `int16_t` | int16_t | +| s32 | `int32_t` | int32_t | +| s64 | `int64_t` | int64_t | +| f | `float` | float | +| d | `double` | double | +| u8_array | `uint8_t[3]` | uint8_t_array | +| u16_array | `uint16_t[3]` | uint16_t_array | +| u32_array | `uint32_t[3]` | uint32_t_array | +| u64_array | `uint64_t[3]` | uint64_t_array | +| s8_array | `int8_t[3]` | int8_t_array | +| s16_array | `int16_t[3]` | int16_t_array | +| s32_array | `int32_t[3]` | int32_t_array | +| s64_array | `int64_t[3]` | int64_t_array | +| f_array | `float[3]` | float_array | +| d_array | `double[3]` | double_array | diff --git a/en/messages/uAvionix.md b/en/messages/uAvionix.md index 7ff84da34..b5feb226a 100644 --- a/en/messages/uAvionix.md +++ b/en/messages/uAvionix.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 8 | 234 -[Enums](#enumerated-types) | 13 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 8 | 234 | +| [Enums](#enumerated-types) | 13 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,105 +47,97 @@ The following sections list all entities in the dialect (both included and defin Static data to configure the ADS-B transponder (send within 10 sec of a POR and every 10 sec thereafter) -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -ICAO | `uint32_t` | | | Vehicle address (24 bit) -callsign | `char[9]` | | | Vehicle identifier (8 characters, null terminated, valid characters are A-Z, 0-9, " " only) -emitterType | `uint8_t` | | [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) | Transmitting vehicle type. See [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) enum -aircraftSize | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) | Aircraft length and width encoding (table 2-35 of DO-282B) -gpsOffsetLat | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) | GPS antenna lateral offset (table 2-36 of DO-282B) -gpsOffsetLon | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) | GPS antenna longitudinal offset from nose [if non-zero, take position (in meters) divide by 2 and add one] (table 2-37 DO-282B) -stallSpeed | `uint16_t` | cm/s | | Aircraft stall speed in cm/s -rfSelect | `uint8_t` | | [UAVIONIX_ADSB_OUT_RF_SELECT](#UAVIONIX_ADSB_OUT_RF_SELECT) | ADS-B transponder receiver and transmit enable flags - +| Field Name | Type | Units | Values | Description | +| ------------ | ---------- | ----- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| ICAO | `uint32_t` | | | Vehicle address (24 bit) | +| callsign | `char[9]` | | | Vehicle identifier (8 characters, null terminated, valid characters are A-Z, 0-9, " " only) | +| emitterType | `uint8_t` | | [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) | Transmitting vehicle type. See [ADSB_EMITTER_TYPE](#ADSB_EMITTER_TYPE) enum | +| aircraftSize | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE) | Aircraft length and width encoding (table 2-35 of DO-282B) | +| gpsOffsetLat | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT) | GPS antenna lateral offset (table 2-36 of DO-282B) | +| gpsOffsetLon | `uint8_t` | | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON) | GPS antenna longitudinal offset from nose [if non-zero, take position (in meters) divide by 2 and add one] (table 2-37 DO-282B) | +| stallSpeed | `uint16_t` | cm/s | | Aircraft stall speed in cm/s | +| rfSelect | `uint8_t` | | [UAVIONIX_ADSB_OUT_RF_SELECT](#UAVIONIX_ADSB_OUT_RF_SELECT) | ADS-B transponder receiver and transmit enable flags | ### UAVIONIX_ADSB_OUT_DYNAMIC (10002) {#UAVIONIX_ADSB_OUT_DYNAMIC} Dynamic data used to generate ADS-B out transponder data (send at 5Hz) -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -utcTime | `uint32_t` | s | | UTC time in seconds since GPS epoch (Jan 6, 1980). If unknown set to UINT32_MAX -gpsLat | `int32_t` | degE7 | | Latitude WGS84 (deg * 1E7). If unknown set to INT32_MAX -gpsLon | `int32_t` | degE7 | | Longitude WGS84 (deg * 1E7). If unknown set to INT32_MAX -gpsAlt | `int32_t` | mm | | Altitude (WGS84). UP +ve. If unknown set to INT32_MAX -gpsFix | `uint8_t` | | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) | 0-1: no fix, 2: 2D fix, 3: 3D fix, 4: DGPS, 5: RTK -numSats | `uint8_t` | | | Number of satellites visible. If unknown set to UINT8_MAX -baroAltMSL | `int32_t` | mbar | | Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m * 1E-3). (up +ve). If unknown set to INT32_MAX -accuracyHor | `uint32_t` | mm | | Horizontal accuracy in mm (m * 1E-3). If unknown set to UINT32_MAX -accuracyVert | `uint16_t` | cm | | Vertical accuracy in cm. If unknown set to UINT16_MAX -accuracyVel | `uint16_t` | mm/s | | Velocity accuracy in mm/s (m * 1E-3). If unknown set to UINT16_MAX -velVert | `int16_t` | cm/s | | GPS vertical speed in cm/s. If unknown set to INT16_MAX -velNS | `int16_t` | cm/s | | North-South velocity over ground in cm/s North +ve. If unknown set to INT16_MAX -VelEW | `int16_t` | cm/s | | East-West velocity over ground in cm/s East +ve. If unknown set to INT16_MAX -emergencyStatus | `uint8_t` | | [UAVIONIX_ADSB_EMERGENCY_STATUS](#UAVIONIX_ADSB_EMERGENCY_STATUS) | Emergency status -state | `uint16_t` | | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE) | ADS-B transponder dynamic input state flags -squawk | `uint16_t` | | | Mode A code (typically 1200 [0x04B0] for VFR) - +| Field Name | Type | Units | Values | Description | +| --------------- | ---------- | ----- | ----------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| utcTime | `uint32_t` | s | | UTC time in seconds since GPS epoch (Jan 6, 1980). If unknown set to UINT32_MAX | +| gpsLat | `int32_t` | degE7 | | Latitude WGS84 (deg \* 1E7). If unknown set to INT32_MAX | +| gpsLon | `int32_t` | degE7 | | Longitude WGS84 (deg \* 1E7). If unknown set to INT32_MAX | +| gpsAlt | `int32_t` | mm | | Altitude (WGS84). UP +ve. If unknown set to INT32_MAX | +| gpsFix | `uint8_t` | | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX) | 0-1: no fix, 2: 2D fix, 3: 3D fix, 4: DGPS, 5: RTK | +| numSats | `uint8_t` | | | Number of satellites visible. If unknown set to UINT8_MAX | +| baroAltMSL | `int32_t` | mbar | | Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m \* 1E-3). (up +ve). If unknown set to INT32_MAX | +| accuracyHor | `uint32_t` | mm | | Horizontal accuracy in mm (m \* 1E-3). If unknown set to UINT32_MAX | +| accuracyVert | `uint16_t` | cm | | Vertical accuracy in cm. If unknown set to UINT16_MAX | +| accuracyVel | `uint16_t` | mm/s | | Velocity accuracy in mm/s (m \* 1E-3). If unknown set to UINT16_MAX | +| velVert | `int16_t` | cm/s | | GPS vertical speed in cm/s. If unknown set to INT16_MAX | +| velNS | `int16_t` | cm/s | | North-South velocity over ground in cm/s North +ve. If unknown set to INT16_MAX | +| VelEW | `int16_t` | cm/s | | East-West velocity over ground in cm/s East +ve. If unknown set to INT16_MAX | +| emergencyStatus | `uint8_t` | | [UAVIONIX_ADSB_EMERGENCY_STATUS](#UAVIONIX_ADSB_EMERGENCY_STATUS) | Emergency status | +| state | `uint16_t` | | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE) | ADS-B transponder dynamic input state flags | +| squawk | `uint16_t` | | | Mode A code (typically 1200 [0x04B0] for VFR) | ### UAVIONIX_ADSB_TRANSCEIVER_HEALTH_REPORT (10003) {#UAVIONIX_ADSB_TRANSCEIVER_HEALTH_REPORT} Transceiver heartbeat with health report (updated every 10s) -Field Name | Type | Values | Description ---- | --- | --- | --- -rfHealth | `uint8_t` | [UAVIONIX_ADSB_RF_HEALTH](#UAVIONIX_ADSB_RF_HEALTH) | ADS-B transponder messages - +| Field Name | Type | Values | Description | +| ---------- | --------- | --------------------------------------------------- | -------------------------- | +| rfHealth | `uint8_t` | [UAVIONIX_ADSB_RF_HEALTH](#UAVIONIX_ADSB_RF_HEALTH) | ADS-B transponder messages | ### UAVIONIX_ADSB_OUT_CFG_REGISTRATION (10004) {#UAVIONIX_ADSB_OUT_CFG_REGISTRATION} Aircraft Registration. -Field Name | Type | Description ---- | --- | --- -registration | `char[9]` | Aircraft Registration (ASCII string A-Z, 0-9 only), e.g. "N8644B ". Trailing spaces (0x20) only. This is null-terminated. - +| Field Name | Type | Description | +| ------------ | --------- | ------------------------------------------------------------------------------------------------------------------------- | +| registration | `char[9]` | Aircraft Registration (ASCII string A-Z, 0-9 only), e.g. "N8644B ". Trailing spaces (0x20) only. This is null-terminated. | ### UAVIONIX_ADSB_OUT_CFG_FLIGHTID (10005) {#UAVIONIX_ADSB_OUT_CFG_FLIGHTID} Flight Identification for ADSB-Out vehicles. -Field Name | Type | Description ---- | --- | --- -flight_id | `char[9]` | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. Reflects Control message setting. This is null-terminated. - +| Field Name | Type | Description | +| ---------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| flight_id | `char[9]` | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. Reflects Control message setting. This is null-terminated. | ### UAVIONIX_ADSB_GET (10006) {#UAVIONIX_ADSB_GET} Request messages. -Field Name | Type | Description ---- | --- | --- -ReqMessageId | `uint32_t` | Message ID to request. Supports any message in this 10000-10099 range - +| Field Name | Type | Description | +| ------------ | ---------- | --------------------------------------------------------------------- | +| ReqMessageId | `uint32_t` | Message ID to request. Supports any message in this 10000-10099 range | ### UAVIONIX_ADSB_OUT_CONTROL (10007) {#UAVIONIX_ADSB_OUT_CONTROL} Control message with all data sent in UCP control message. -Field Name | Type | Units | Values | Description ---- | --- | --- | --- | --- -state | `uint8_t` | | [UAVIONIX_ADSB_OUT_CONTROL_STATE](#UAVIONIX_ADSB_OUT_CONTROL_STATE) | ADS-B transponder control state flags -baroAltMSL | `int32_t` | mbar | | Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m * 1E-3). (up +ve). If unknown set to INT32_MAX -squawk | `uint16_t` | | | Mode A code (typically 1200 [0x04B0] for VFR) -emergencyStatus | `uint8_t` | | [UAVIONIX_ADSB_EMERGENCY_STATUS](#UAVIONIX_ADSB_EMERGENCY_STATUS) | Emergency status -flight_id | `char[8]` | | | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. -x_bit | `uint8_t` | | [UAVIONIX_ADSB_XBIT](#UAVIONIX_ADSB_XBIT) | X-Bit enable (military transponders only) - +| Field Name | Type | Units | Values | Description | +| --------------- | ---------- | ----- | ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| state | `uint8_t` | | [UAVIONIX_ADSB_OUT_CONTROL_STATE](#UAVIONIX_ADSB_OUT_CONTROL_STATE) | ADS-B transponder control state flags | +| baroAltMSL | `int32_t` | mbar | | Barometric pressure altitude (MSL) relative to a standard atmosphere of 1013.2 mBar and NOT bar corrected altitude (m \* 1E-3). (up +ve). If unknown set to INT32_MAX | +| squawk | `uint16_t` | | | Mode A code (typically 1200 [0x04B0] for VFR) | +| emergencyStatus | `uint8_t` | | [UAVIONIX_ADSB_EMERGENCY_STATUS](#UAVIONIX_ADSB_EMERGENCY_STATUS) | Emergency status | +| flight_id | `char[8]` | | | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. | +| x_bit | `uint8_t` | | [UAVIONIX_ADSB_XBIT](#UAVIONIX_ADSB_XBIT) | X-Bit enable (military transponders only) | ### UAVIONIX_ADSB_OUT_STATUS (10008) {#UAVIONIX_ADSB_OUT_STATUS} Status message with information from UCP Heartbeat and Status messages. -Field Name | Type | Values | Description ---- | --- | --- | --- -state | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_STATE](#UAVIONIX_ADSB_OUT_STATUS_STATE) | ADS-B transponder status state flags -squawk | `uint16_t` | | Mode A code (typically 1200 [0x04B0] for VFR) -NIC_NACp | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_NIC_NACP](#UAVIONIX_ADSB_OUT_STATUS_NIC_NACP) | Integrity and Accuracy of traffic reported as a 4-bit value for each field (NACp 7:4, NIC 3:0) and encoded by Containment Radius (HPL) and Estimated Position Uncertainty (HFOM), respectively -boardTemp | `uint8_t` | | Board temperature in C -fault | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_FAULT](#UAVIONIX_ADSB_OUT_STATUS_FAULT) | ADS-B transponder fault flags -flight_id | `char[8]` | | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. - +| Field Name | Type | Values | Description | +| ---------- | ---------- | ----------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| state | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_STATE](#UAVIONIX_ADSB_OUT_STATUS_STATE) | ADS-B transponder status state flags | +| squawk | `uint16_t` | | Mode A code (typically 1200 [0x04B0] for VFR) | +| NIC_NACp | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_NIC_NACP](#UAVIONIX_ADSB_OUT_STATUS_NIC_NACP) | Integrity and Accuracy of traffic reported as a 4-bit value for each field (NACp 7:4, NIC 3:0) and encoded by Containment Radius (HPL) and Estimated Position Uncertainty (HFOM), respectively | +| boardTemp | `uint8_t` | | Board temperature in C | +| fault | `uint8_t` | [UAVIONIX_ADSB_OUT_STATUS_FAULT](#UAVIONIX_ADSB_OUT_STATUS_FAULT) | ADS-B transponder fault flags | +| flight_id | `char[8]` | | Flight Identification: 8 ASCII characters, '0' through '9', 'A' through 'Z' or space. Spaces (0x20) used as a trailing pad character, or when call sign is unavailable. | ## Enumerated Types @@ -152,185 +145,184 @@ flight_id | `char[8]` | | Flight Identification: 8 ASCII characters, '0' through (Bitmask) State flags for ADS-B transponder dynamic report -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE) | -2 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED) | -4 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED) | -8 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND) | -16 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT) | +| Value | Name | Description | +| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE) | +| 2 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED) | +| 4 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED) | +| 8 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND) | +| 16 | [UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT](#UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT) | ### UAVIONIX_ADSB_OUT_RF_SELECT {#UAVIONIX_ADSB_OUT_RF_SELECT} (Bitmask) Transceiver RF control flags for ADS-B transponder dynamic reports -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED](#UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED) | -2 | [UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED](#UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED) | +| Value | Name | Description | +| ---------------------------------------------------- | --------------------------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED](#UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED) | +| 2 | [UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED](#UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED) | ### UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX {#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX} Status for ADS-B transponder dynamic input -Value | Name | Description ---- | --- | --- -0 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0) | -1 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1) | -2 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D) | -3 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D) | -4 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS) | -5 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK) | +| Value | Name | Description | +| ------------------------------------------------------ | ------------------------------------------------------------------------------------- | ----------- | +| 0 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0) | +| 1 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1) | +| 2 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D) | +| 3 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D) | +| 4 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS) | +| 5 | [UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK](#UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK) | ### UAVIONIX_ADSB_RF_HEALTH {#UAVIONIX_ADSB_RF_HEALTH} (Bitmask) Status flags for ADS-B transponder dynamic output -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_RF_HEALTH_OK](#UAVIONIX_ADSB_RF_HEALTH_OK) | -2 | [UAVIONIX_ADSB_RF_HEALTH_FAIL_TX](#UAVIONIX_ADSB_RF_HEALTH_FAIL_TX) | -16 | [UAVIONIX_ADSB_RF_HEALTH_FAIL_RX](#UAVIONIX_ADSB_RF_HEALTH_FAIL_RX) | +| Value | Name | Description | +| ---------------------------------------------- | ------------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_RF_HEALTH_OK](#UAVIONIX_ADSB_RF_HEALTH_OK) | +| 2 | [UAVIONIX_ADSB_RF_HEALTH_FAIL_TX](#UAVIONIX_ADSB_RF_HEALTH_FAIL_TX) | +| 16 | [UAVIONIX_ADSB_RF_HEALTH_FAIL_RX](#UAVIONIX_ADSB_RF_HEALTH_FAIL_RX) | ### UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE {#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE} Definitions for aircraft size -Value | Name | Description ---- | --- | --- -0 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA) | -1 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M) | -2 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M) | -3 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M) | -4 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M) | -5 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M) | -6 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M) | -7 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M) | -8 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M) | -9 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M) | -10 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M) | -11 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M) | -12 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M) | -13 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M) | -14 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M) | -15 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M) | +| Value | Name | Description | +| ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ----------- | +| 0 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA) | +| 1 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M) | +| 2 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M) | +| 3 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M) | +| 4 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M) | +| 5 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M) | +| 6 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M) | +| 7 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M) | +| 8 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M) | +| 9 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M) | +| 10 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M) | +| 11 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M) | +| 12 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M) | +| 13 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M) | +| 14 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M) | +| 15 | [UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M](#UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M) | ### UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT {#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT} GPS lataral offset encoding -Value | Name | Description ---- | --- | --- -0 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA) | -1 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M) | -2 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M) | -3 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M) | -4 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M) | -5 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M) | -6 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M) | -7 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M) | +| Value | Name | Description | +| ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------- | +| 0 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA) | +| 1 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M) | +| 2 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M) | +| 3 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M) | +| 4 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M) | +| 5 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M) | +| 6 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M) | +| 7 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M) | ### UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON {#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON} GPS longitudinal offset encoding -Value | Name | Description ---- | --- | --- -0 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA) | -1 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR) | +| Value | Name | Description | +| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------- | +| 0 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA) | +| 1 | [UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR](#UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR) | ### UAVIONIX_ADSB_EMERGENCY_STATUS {#UAVIONIX_ADSB_EMERGENCY_STATUS} Emergency status encoding -Value | Name | Description ---- | --- | --- -0 | [UAVIONIX_ADSB_OUT_NO_EMERGENCY](#UAVIONIX_ADSB_OUT_NO_EMERGENCY) | -1 | [UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY](#UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY) | -2 | [UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY](#UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY) | -3 | [UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY](#UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY) | -4 | [UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY](#UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY) | -5 | [UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY](#UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY) | -6 | [UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY](#UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY) | -7 | [UAVIONIX_ADSB_OUT_RESERVED](#UAVIONIX_ADSB_OUT_RESERVED) | +| Value | Name | Description | +| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ----------- | +| 0 | [UAVIONIX_ADSB_OUT_NO_EMERGENCY](#UAVIONIX_ADSB_OUT_NO_EMERGENCY) | +| 1 | [UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY](#UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY) | +| 2 | [UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY](#UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY) | +| 3 | [UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY](#UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY) | +| 4 | [UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY](#UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY) | +| 5 | [UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY](#UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY) | +| 6 | [UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY](#UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY) | +| 7 | [UAVIONIX_ADSB_OUT_RESERVED](#UAVIONIX_ADSB_OUT_RESERVED) | ### UAVIONIX_ADSB_OUT_CONTROL_STATE {#UAVIONIX_ADSB_OUT_CONTROL_STATE} (Bitmask) State flags for ADS-B transponder dynamic report -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_EXTERNAL_BARO_CROSSCHECKED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_EXTERNAL_BARO_CROSSCHECKED) | -4 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_CONTROL_STATE_ON_GROUND) | -8 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_IDENT_BUTTON_ACTIVE](#UAVIONIX_ADSB_OUT_CONTROL_STATE_IDENT_BUTTON_ACTIVE) | -16 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_A_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_A_ENABLED) | -32 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_C_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_C_ENABLED) | -64 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_S_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_S_ENABLED) | -128 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_1090ES_TX_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_1090ES_TX_ENABLED) | +| Value | Name | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_EXTERNAL_BARO_CROSSCHECKED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_EXTERNAL_BARO_CROSSCHECKED) | +| 4 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_CONTROL_STATE_ON_GROUND) | +| 8 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_IDENT_BUTTON_ACTIVE](#UAVIONIX_ADSB_OUT_CONTROL_STATE_IDENT_BUTTON_ACTIVE) | +| 16 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_A_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_A_ENABLED) | +| 32 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_C_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_C_ENABLED) | +| 64 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_S_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_MODE_S_ENABLED) | +| 128 | [UAVIONIX_ADSB_OUT_CONTROL_STATE_1090ES_TX_ENABLED](#UAVIONIX_ADSB_OUT_CONTROL_STATE_1090ES_TX_ENABLED) | ### UAVIONIX_ADSB_XBIT {#UAVIONIX_ADSB_XBIT} (Bitmask) State flags for X-Bit and reserved fields. -Value | Name | Description ---- | --- | --- -128 | [UAVIONIX_ADSB_XBIT_ENABLED](#UAVIONIX_ADSB_XBIT_ENABLED) | +| Value | Name | Description | +| ------------------------------------------ | --------------------------------------------------------- | ----------- | +| 128 | [UAVIONIX_ADSB_XBIT_ENABLED](#UAVIONIX_ADSB_XBIT_ENABLED) | ### UAVIONIX_ADSB_OUT_STATUS_STATE {#UAVIONIX_ADSB_OUT_STATUS_STATE} (Bitmask) State flags for ADS-B transponder status report -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_OUT_STATUS_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_STATUS_STATE_ON_GROUND) | -2 | [UAVIONIX_ADSB_OUT_STATUS_STATE_INTERROGATED_SINCE_LAST](#UAVIONIX_ADSB_OUT_STATUS_STATE_INTERROGATED_SINCE_LAST) | -4 | [UAVIONIX_ADSB_OUT_STATUS_STATE_XBIT_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_XBIT_ENABLED) | -8 | [UAVIONIX_ADSB_OUT_STATUS_STATE_IDENT_ACTIVE](#UAVIONIX_ADSB_OUT_STATUS_STATE_IDENT_ACTIVE) | -16 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_A_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_A_ENABLED) | -32 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_C_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_C_ENABLED) | -64 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_S_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_S_ENABLED) | -128 | [UAVIONIX_ADSB_OUT_STATUS_STATE_1090ES_TX_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_1090ES_TX_ENABLED) | +| Value | Name | Description | +| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_OUT_STATUS_STATE_ON_GROUND](#UAVIONIX_ADSB_OUT_STATUS_STATE_ON_GROUND) | +| 2 | [UAVIONIX_ADSB_OUT_STATUS_STATE_INTERROGATED_SINCE_LAST](#UAVIONIX_ADSB_OUT_STATUS_STATE_INTERROGATED_SINCE_LAST) | +| 4 | [UAVIONIX_ADSB_OUT_STATUS_STATE_XBIT_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_XBIT_ENABLED) | +| 8 | [UAVIONIX_ADSB_OUT_STATUS_STATE_IDENT_ACTIVE](#UAVIONIX_ADSB_OUT_STATUS_STATE_IDENT_ACTIVE) | +| 16 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_A_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_A_ENABLED) | +| 32 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_C_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_C_ENABLED) | +| 64 | [UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_S_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_MODE_S_ENABLED) | +| 128 | [UAVIONIX_ADSB_OUT_STATUS_STATE_1090ES_TX_ENABLED](#UAVIONIX_ADSB_OUT_STATUS_STATE_1090ES_TX_ENABLED) | ### UAVIONIX_ADSB_OUT_STATUS_NIC_NACP {#UAVIONIX_ADSB_OUT_STATUS_NIC_NACP} State flags for ADS-B transponder status report -Value | Name | Description ---- | --- | --- -1 | [UAVIONIX_ADSB_NIC_CR_20_NM](#UAVIONIX_ADSB_NIC_CR_20_NM) | -2 | [UAVIONIX_ADSB_NIC_CR_8_NM](#UAVIONIX_ADSB_NIC_CR_8_NM) | -3 | [UAVIONIX_ADSB_NIC_CR_4_NM](#UAVIONIX_ADSB_NIC_CR_4_NM) | -4 | [UAVIONIX_ADSB_NIC_CR_2_NM](#UAVIONIX_ADSB_NIC_CR_2_NM) | -5 | [UAVIONIX_ADSB_NIC_CR_1_NM](#UAVIONIX_ADSB_NIC_CR_1_NM) | -6 | [UAVIONIX_ADSB_NIC_CR_0_3_NM](#UAVIONIX_ADSB_NIC_CR_0_3_NM) | -7 | [UAVIONIX_ADSB_NIC_CR_0_2_NM](#UAVIONIX_ADSB_NIC_CR_0_2_NM) | -8 | [UAVIONIX_ADSB_NIC_CR_0_1_NM](#UAVIONIX_ADSB_NIC_CR_0_1_NM) | -9 | [UAVIONIX_ADSB_NIC_CR_75_M](#UAVIONIX_ADSB_NIC_CR_75_M) | -10 | [UAVIONIX_ADSB_NIC_CR_25_M](#UAVIONIX_ADSB_NIC_CR_25_M) | -11 | [UAVIONIX_ADSB_NIC_CR_7_5_M](#UAVIONIX_ADSB_NIC_CR_7_5_M) | -16 | [UAVIONIX_ADSB_NACP_EPU_10_NM](#UAVIONIX_ADSB_NACP_EPU_10_NM) | -32 | [UAVIONIX_ADSB_NACP_EPU_4_NM](#UAVIONIX_ADSB_NACP_EPU_4_NM) | -48 | [UAVIONIX_ADSB_NACP_EPU_2_NM](#UAVIONIX_ADSB_NACP_EPU_2_NM) | -64 | [UAVIONIX_ADSB_NACP_EPU_1_NM](#UAVIONIX_ADSB_NACP_EPU_1_NM) | -80 | [UAVIONIX_ADSB_NACP_EPU_0_5_NM](#UAVIONIX_ADSB_NACP_EPU_0_5_NM) | -96 | [UAVIONIX_ADSB_NACP_EPU_0_3_NM](#UAVIONIX_ADSB_NACP_EPU_0_3_NM) | -112 | [UAVIONIX_ADSB_NACP_EPU_0_1_NM](#UAVIONIX_ADSB_NACP_EPU_0_1_NM) | -128 | [UAVIONIX_ADSB_NACP_EPU_0_05_NM](#UAVIONIX_ADSB_NACP_EPU_0_05_NM) | -144 | [UAVIONIX_ADSB_NACP_EPU_30_M](#UAVIONIX_ADSB_NACP_EPU_30_M) | -160 | [UAVIONIX_ADSB_NACP_EPU_10_M](#UAVIONIX_ADSB_NACP_EPU_10_M) | -176 | [UAVIONIX_ADSB_NACP_EPU_3_M](#UAVIONIX_ADSB_NACP_EPU_3_M) | +| Value | Name | Description | +| ---------------------------------------------- | ----------------------------------------------------------------- | ----------- | +| 1 | [UAVIONIX_ADSB_NIC_CR_20_NM](#UAVIONIX_ADSB_NIC_CR_20_NM) | +| 2 | [UAVIONIX_ADSB_NIC_CR_8_NM](#UAVIONIX_ADSB_NIC_CR_8_NM) | +| 3 | [UAVIONIX_ADSB_NIC_CR_4_NM](#UAVIONIX_ADSB_NIC_CR_4_NM) | +| 4 | [UAVIONIX_ADSB_NIC_CR_2_NM](#UAVIONIX_ADSB_NIC_CR_2_NM) | +| 5 | [UAVIONIX_ADSB_NIC_CR_1_NM](#UAVIONIX_ADSB_NIC_CR_1_NM) | +| 6 | [UAVIONIX_ADSB_NIC_CR_0_3_NM](#UAVIONIX_ADSB_NIC_CR_0_3_NM) | +| 7 | [UAVIONIX_ADSB_NIC_CR_0_2_NM](#UAVIONIX_ADSB_NIC_CR_0_2_NM) | +| 8 | [UAVIONIX_ADSB_NIC_CR_0_1_NM](#UAVIONIX_ADSB_NIC_CR_0_1_NM) | +| 9 | [UAVIONIX_ADSB_NIC_CR_75_M](#UAVIONIX_ADSB_NIC_CR_75_M) | +| 10 | [UAVIONIX_ADSB_NIC_CR_25_M](#UAVIONIX_ADSB_NIC_CR_25_M) | +| 11 | [UAVIONIX_ADSB_NIC_CR_7_5_M](#UAVIONIX_ADSB_NIC_CR_7_5_M) | +| 16 | [UAVIONIX_ADSB_NACP_EPU_10_NM](#UAVIONIX_ADSB_NACP_EPU_10_NM) | +| 32 | [UAVIONIX_ADSB_NACP_EPU_4_NM](#UAVIONIX_ADSB_NACP_EPU_4_NM) | +| 48 | [UAVIONIX_ADSB_NACP_EPU_2_NM](#UAVIONIX_ADSB_NACP_EPU_2_NM) | +| 64 | [UAVIONIX_ADSB_NACP_EPU_1_NM](#UAVIONIX_ADSB_NACP_EPU_1_NM) | +| 80 | [UAVIONIX_ADSB_NACP_EPU_0_5_NM](#UAVIONIX_ADSB_NACP_EPU_0_5_NM) | +| 96 | [UAVIONIX_ADSB_NACP_EPU_0_3_NM](#UAVIONIX_ADSB_NACP_EPU_0_3_NM) | +| 112 | [UAVIONIX_ADSB_NACP_EPU_0_1_NM](#UAVIONIX_ADSB_NACP_EPU_0_1_NM) | +| 128 | [UAVIONIX_ADSB_NACP_EPU_0_05_NM](#UAVIONIX_ADSB_NACP_EPU_0_05_NM) | +| 144 | [UAVIONIX_ADSB_NACP_EPU_30_M](#UAVIONIX_ADSB_NACP_EPU_30_M) | +| 160 | [UAVIONIX_ADSB_NACP_EPU_10_M](#UAVIONIX_ADSB_NACP_EPU_10_M) | +| 176 | [UAVIONIX_ADSB_NACP_EPU_3_M](#UAVIONIX_ADSB_NACP_EPU_3_M) | ### UAVIONIX_ADSB_OUT_STATUS_FAULT {#UAVIONIX_ADSB_OUT_STATUS_FAULT} (Bitmask) State flags for ADS-B transponder fault report -Value | Name | Description ---- | --- | --- -8 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_STATUS_MESSAGE_UNAVAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_STATUS_MESSAGE_UNAVAIL) | -16 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_NO_POS](#UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_NO_POS) | -32 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_UNAVAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_UNAVAIL) | -64 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_TX_SYSTEM_FAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_TX_SYSTEM_FAIL) | -128 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_MAINT_REQ](#UAVIONIX_ADSB_OUT_STATUS_FAULT_MAINT_REQ) | +| Value | Name | Description | +| ------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ----------- | +| 8 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_STATUS_MESSAGE_UNAVAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_STATUS_MESSAGE_UNAVAIL) | +| 16 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_NO_POS](#UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_NO_POS) | +| 32 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_UNAVAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_GPS_UNAVAIL) | +| 64 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_TX_SYSTEM_FAIL](#UAVIONIX_ADSB_OUT_STATUS_FAULT_TX_SYSTEM_FAIL) | +| 128 | [UAVIONIX_ADSB_OUT_STATUS_FAULT_MAINT_REQ](#UAVIONIX_ADSB_OUT_STATUS_FAULT_MAINT_REQ) | ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/messages/ualberta.md b/en/messages/ualberta.md index bb2c9302d..83b69281c 100644 --- a/en/messages/ualberta.md +++ b/en/messages/ualberta.md @@ -26,17 +26,18 @@ span.warning { color: red; } + ## MAVLink Include Files - [common.xml](../messages/common.md) ## Summary -Type | Defined | Included ---- | --- | --- -[Messages](#messages) | 3 | 234 -[Enums](#enumerated-types) | 3 | 159 -[Commands](#mav_commands) | 168 | 0 +| Type | Defined | Included | +| -------------------------- | ------- | -------- | +| [Messages](#messages) | 3 | 234 | +| [Enums](#enumerated-types) | 3 | 159 | +| [Commands](#mav_commands) | 168 | 0 | The following sections list all entities in the dialect (both included and defined in this file). @@ -46,41 +47,38 @@ The following sections list all entities in the dialect (both included and defin Accelerometer and Gyro biases from the navigation filter -Field Name | Type | Description ---- | --- | --- -usec | `uint64_t` | Timestamp (microseconds) -accel_0 | `float` | b_f[0] -accel_1 | `float` | b_f[1] -accel_2 | `float` | b_f[2] -gyro_0 | `float` | b_f[0] -gyro_1 | `float` | b_f[1] -gyro_2 | `float` | b_f[2] - +| Field Name | Type | Description | +| ---------- | ---------- | ------------------------ | +| usec | `uint64_t` | Timestamp (microseconds) | +| accel_0 | `float` | b_f[0] | +| accel_1 | `float` | b_f[1] | +| accel_2 | `float` | b_f[2] | +| gyro_0 | `float` | b_f[0] | +| gyro_1 | `float` | b_f[1] | +| gyro_2 | `float` | b_f[2] | ### RADIO_CALIBRATION (221) {#RADIO_CALIBRATION} Complete set of calibration parameters for the radio -Field Name | Type | Description ---- | --- | --- -aileron | `uint16_t[3]` | Aileron setpoints: left, center, right -elevator | `uint16_t[3]` | Elevator setpoints: nose down, center, nose up -rudder | `uint16_t[3]` | Rudder setpoints: nose left, center, nose right -gyro | `uint16_t[2]` | Tail gyro mode/gain setpoints: heading hold, rate mode -pitch | `uint16_t[5]` | Pitch curve setpoints (every 25%) -throttle | `uint16_t[5]` | Throttle curve setpoints (every 25%) - +| Field Name | Type | Description | +| ---------- | ------------- | ------------------------------------------------------ | +| aileron | `uint16_t[3]` | Aileron setpoints: left, center, right | +| elevator | `uint16_t[3]` | Elevator setpoints: nose down, center, nose up | +| rudder | `uint16_t[3]` | Rudder setpoints: nose left, center, nose right | +| gyro | `uint16_t[2]` | Tail gyro mode/gain setpoints: heading hold, rate mode | +| pitch | `uint16_t[5]` | Pitch curve setpoints (every 25%) | +| throttle | `uint16_t[5]` | Throttle curve setpoints (every 25%) | ### UALBERTA_SYS_STATUS (222) {#UALBERTA_SYS_STATUS} System status specific to ualberta uav -Field Name | Type | Description ---- | --- | --- -mode | `uint8_t` | System mode, see [UALBERTA_AUTOPILOT_MODE](#UALBERTA_AUTOPILOT_MODE) ENUM -nav_mode | `uint8_t` | Navigation mode, see [UALBERTA_NAV_MODE](#UALBERTA_NAV_MODE) ENUM -pilot | `uint8_t` | Pilot mode, see [UALBERTA_PILOT_MODE](#UALBERTA_PILOT_MODE) - +| Field Name | Type | Description | +| ---------- | --------- | ------------------------------------------------------------------------- | +| mode | `uint8_t` | System mode, see [UALBERTA_AUTOPILOT_MODE](#UALBERTA_AUTOPILOT_MODE) ENUM | +| nav_mode | `uint8_t` | Navigation mode, see [UALBERTA_NAV_MODE](#UALBERTA_NAV_MODE) ENUM | +| pilot | `uint8_t` | Pilot mode, see [UALBERTA_PILOT_MODE](#UALBERTA_PILOT_MODE) | ## Enumerated Types @@ -88,34 +86,33 @@ pilot | `uint8_t` | Pilot mode, see [UALBERTA_PILOT_MODE](#UALBERTA_PILOT_MODE) Available autopilot modes for ualberta uav -Value | Name | Description ---- | --- | --- -1 | [MODE_MANUAL_DIRECT](#MODE_MANUAL_DIRECT) | Raw input pulse widts sent to output -2 | [MODE_MANUAL_SCALED](#MODE_MANUAL_SCALED) | Inputs are normalized using calibration, the converted back to raw pulse widths for output -3 | [MODE_AUTO_PID_ATT](#MODE_AUTO_PID_ATT) | -4 | [MODE_AUTO_PID_VEL](#MODE_AUTO_PID_VEL) | -5 | [MODE_AUTO_PID_POS](#MODE_AUTO_PID_POS) | +| Value | Name | Description | +| -------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------------------ | +| 1 | [MODE_MANUAL_DIRECT](#MODE_MANUAL_DIRECT) | Raw input pulse widts sent to output | +| 2 | [MODE_MANUAL_SCALED](#MODE_MANUAL_SCALED) | Inputs are normalized using calibration, the converted back to raw pulse widths for output | +| 3 | [MODE_AUTO_PID_ATT](#MODE_AUTO_PID_ATT) | +| 4 | [MODE_AUTO_PID_VEL](#MODE_AUTO_PID_VEL) | +| 5 | [MODE_AUTO_PID_POS](#MODE_AUTO_PID_POS) | ### UALBERTA_NAV_MODE {#UALBERTA_NAV_MODE} Navigation filter mode -Value | Name | Description ---- | --- | --- -1 | [NAV_AHRS_INIT](#NAV_AHRS_INIT) | -2 | [NAV_AHRS](#NAV_AHRS) | AHRS mode -3 | [NAV_INS_GPS_INIT](#NAV_INS_GPS_INIT) | INS/GPS initialization mode -4 | [NAV_INS_GPS](#NAV_INS_GPS) | INS/GPS mode +| Value | Name | Description | +| ------------------------------ | ------------------------------------- | --------------------------- | +| 1 | [NAV_AHRS_INIT](#NAV_AHRS_INIT) | +| 2 | [NAV_AHRS](#NAV_AHRS) | AHRS mode | +| 3 | [NAV_INS_GPS_INIT](#NAV_INS_GPS_INIT) | INS/GPS initialization mode | +| 4 | [NAV_INS_GPS](#NAV_INS_GPS) | INS/GPS mode | ### UALBERTA_PILOT_MODE {#UALBERTA_PILOT_MODE} Mode currently commanded by pilot -Value | Name | Description ---- | --- | --- -1 | [PILOT_MANUAL](#PILOT_MANUAL) | -2 | [PILOT_AUTO](#PILOT_AUTO) | -3 | [PILOT_ROTO](#PILOT_ROTO) | Rotomotion mode +| Value | Name | Description | +| -------------------------- | ----------------------------- | --------------- | +| 1 | [PILOT_MANUAL](#PILOT_MANUAL) | +| 2 | [PILOT_AUTO](#PILOT_AUTO) | +| 3 | [PILOT_ROTO](#PILOT_ROTO) | Rotomotion mode | ## Commands (MAV_CMD) {#mav_commands} - diff --git a/en/services/arm_authorization.md b/en/services/arm_authorization.md index cd934d88e..1268ef327 100644 --- a/en/services/arm_authorization.md +++ b/en/services/arm_authorization.md @@ -7,7 +7,7 @@ This is required to comply with [NASA UTM](https://utm.arc.nasa.gov/), but may a ## Authorization Flow -[![Mermaid Squence: Authorization Flow](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtO1xuICAgIHBhcnRpY2lwYW50IERyb25lXG4gICAgcGFydGljaXBhbnQgUmVtb3RlIGNvbnRyb2wvUUNTXG4gICAgcGFydGljaXBhbnQgQXJtIGF1dGhvcml6ZXJcbiAgICBwYXJ0aWNpcGFudCBJbnRlcm5ldFxuXG4gICAgUmVtb3RlIGNvbnRyb2wvUUNTLT4-RHJvbmU6IFJlcXVlc3QgYXJtXG4gICAgRHJvbmUtPj5Bcm0gYXV0aG9yaXplcjogQ09NTUFORF9MT05HIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUXG4gICAgQXJtIGF1dGhvcml6ZXItPj5Ecm9uZTogQ09NTUFORF9BQ0sgcmVzdWx0PU1BVl9SRVNVTFRfSU5fUFJPR1JFU1NcbiAgICBBcm0gYXV0aG9yaXplci0-PkRyb25lOiAob3B0aW9uYWwpUmVxdWVzdCBpbmZvcm1hdGlvbiBhYm91dCBtaXNzaW9uLCBiYXR0ZXJ5IGxldmVsIGFuZCBldGMuXG4gICAgQXJtIGF1dGhvcml6ZXItPj5JbnRlcm5ldDogKG9wdGlvbmFsKVJlcXVlc3QgaW5mb3JtYXRpb24gYWJvdXQgd2VhdGhlciwgYWVyb3NwYWNlIHRyYWZpYyBhbmQgZXRjLlxuICAgIEFybSBhdXRob3JpemVyLT4-RHJvbmU6IENPTU1BTkRfQUNLIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUIHJlc3VsdD1BQ0NFUFRFRCwgVEVNUE9SQVJJTFlfUkVKRUNURUQgb3IgREVOSUVEXG4gICAgRHJvbmUtPj5SZW1vdGUgY29udHJvbC9RQ1M6IFFDUyBDT01NQU5EX0FDSyBjb21tYW5kPU1BVl9DTURfQ09NUE9ORU5UX0FSTV9ESVNBUk0gcmVzdWx0PUFDQ0VQVEVELCBURU1QT1JBUklMWV9SRUpFQ1RFRCBvciBERU5JRUQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtO1xuICAgIHBhcnRpY2lwYW50IERyb25lXG4gICAgcGFydGljaXBhbnQgUmVtb3RlIGNvbnRyb2wvUUNTXG4gICAgcGFydGljaXBhbnQgQXJtIGF1dGhvcml6ZXJcbiAgICBwYXJ0aWNpcGFudCBJbnRlcm5ldFxuXG4gICAgUmVtb3RlIGNvbnRyb2wvUUNTLT4-RHJvbmU6IFJlcXVlc3QgYXJtXG4gICAgRHJvbmUtPj5Bcm0gYXV0aG9yaXplcjogQ09NTUFORF9MT05HIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUXG4gICAgQXJtIGF1dGhvcml6ZXItPj5Ecm9uZTogQ09NTUFORF9BQ0sgcmVzdWx0PU1BVl9SRVNVTFRfSU5fUFJPR1JFU1NcbiAgICBBcm0gYXV0aG9yaXplci0-PkRyb25lOiAob3B0aW9uYWwpUmVxdWVzdCBpbmZvcm1hdGlvbiBhYm91dCBtaXNzaW9uLCBiYXR0ZXJ5IGxldmVsIGFuZCBldGMuXG4gICAgQXJtIGF1dGhvcml6ZXItPj5JbnRlcm5ldDogKG9wdGlvbmFsKVJlcXVlc3QgaW5mb3JtYXRpb24gYWJvdXQgd2VhdGhlciwgYWVyb3NwYWNlIHRyYWZpYyBhbmQgZXRjLlxuICAgIEFybSBhdXRob3JpemVyLT4-RHJvbmU6IENPTU1BTkRfQUNLIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUIHJlc3VsdD1BQ0NFUFRFRCwgVEVNUE9SQVJJTFlfUkVKRUNURUQgb3IgREVOSUVEXG4gICAgRHJvbmUtPj5SZW1vdGUgY29udHJvbC9RQ1M6IFFDUyBDT01NQU5EX0FDSyBjb21tYW5kPU1BVl9DTURfQ09NUE9ORU5UX0FSTV9ESVNBUk0gcmVzdWx0PUFDQ0VQVEVELCBURU1QT1JBUklMWV9SRUpFQ1RFRCBvciBERU5JRUQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ) +[![Mermaid Sequence: Authorization Flow](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtO1xuICAgIHBhcnRpY2lwYW50IERyb25lXG4gICAgcGFydGljaXBhbnQgUmVtb3RlIGNvbnRyb2wvUUNTXG4gICAgcGFydGljaXBhbnQgQXJtIGF1dGhvcml6ZXJcbiAgICBwYXJ0aWNpcGFudCBJbnRlcm5ldFxuXG4gICAgUmVtb3RlIGNvbnRyb2wvUUNTLT4-RHJvbmU6IFJlcXVlc3QgYXJtXG4gICAgRHJvbmUtPj5Bcm0gYXV0aG9yaXplcjogQ09NTUFORF9MT05HIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUXG4gICAgQXJtIGF1dGhvcml6ZXItPj5Ecm9uZTogQ09NTUFORF9BQ0sgcmVzdWx0PU1BVl9SRVNVTFRfSU5fUFJPR1JFU1NcbiAgICBBcm0gYXV0aG9yaXplci0-PkRyb25lOiAob3B0aW9uYWwpUmVxdWVzdCBpbmZvcm1hdGlvbiBhYm91dCBtaXNzaW9uLCBiYXR0ZXJ5IGxldmVsIGFuZCBldGMuXG4gICAgQXJtIGF1dGhvcml6ZXItPj5JbnRlcm5ldDogKG9wdGlvbmFsKVJlcXVlc3QgaW5mb3JtYXRpb24gYWJvdXQgd2VhdGhlciwgYWVyb3NwYWNlIHRyYWZpYyBhbmQgZXRjLlxuICAgIEFybSBhdXRob3JpemVyLT4-RHJvbmU6IENPTU1BTkRfQUNLIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUIHJlc3VsdD1BQ0NFUFRFRCwgVEVNUE9SQVJJTFlfUkVKRUNURUQgb3IgREVOSUVEXG4gICAgRHJvbmUtPj5SZW1vdGUgY29udHJvbC9RQ1M6IFFDUyBDT01NQU5EX0FDSyBjb21tYW5kPU1BVl9DTURfQ09NUE9ORU5UX0FSTV9ESVNBUk0gcmVzdWx0PUFDQ0VQVEVELCBURU1QT1JBUklMWV9SRUpFQ1RFRCBvciBERU5JRUQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtO1xuICAgIHBhcnRpY2lwYW50IERyb25lXG4gICAgcGFydGljaXBhbnQgUmVtb3RlIGNvbnRyb2wvUUNTXG4gICAgcGFydGljaXBhbnQgQXJtIGF1dGhvcml6ZXJcbiAgICBwYXJ0aWNpcGFudCBJbnRlcm5ldFxuXG4gICAgUmVtb3RlIGNvbnRyb2wvUUNTLT4-RHJvbmU6IFJlcXVlc3QgYXJtXG4gICAgRHJvbmUtPj5Bcm0gYXV0aG9yaXplcjogQ09NTUFORF9MT05HIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUXG4gICAgQXJtIGF1dGhvcml6ZXItPj5Ecm9uZTogQ09NTUFORF9BQ0sgcmVzdWx0PU1BVl9SRVNVTFRfSU5fUFJPR1JFU1NcbiAgICBBcm0gYXV0aG9yaXplci0-PkRyb25lOiAob3B0aW9uYWwpUmVxdWVzdCBpbmZvcm1hdGlvbiBhYm91dCBtaXNzaW9uLCBiYXR0ZXJ5IGxldmVsIGFuZCBldGMuXG4gICAgQXJtIGF1dGhvcml6ZXItPj5JbnRlcm5ldDogKG9wdGlvbmFsKVJlcXVlc3QgaW5mb3JtYXRpb24gYWJvdXQgd2VhdGhlciwgYWVyb3NwYWNlIHRyYWZpYyBhbmQgZXRjLlxuICAgIEFybSBhdXRob3JpemVyLT4-RHJvbmU6IENPTU1BTkRfQUNLIGNvbW1hbmQ9TUFWX0NNRF9BUk1fQVVUSE9SSVpBVElPTl9SRVFVRVNUIHJlc3VsdD1BQ0NFUFRFRCwgVEVNUE9SQVJJTFlfUkVKRUNURUQgb3IgREVOSUVEXG4gICAgRHJvbmUtPj5SZW1vdGUgY29udHJvbC9RQ1M6IFFDUyBDT01NQU5EX0FDSyBjb21tYW5kPU1BVl9DTURfQ09NUE9ORU5UX0FSTV9ESVNBUk0gcmVzdWx0PUFDQ0VQVEVELCBURU1QT1JBUklMWV9SRUpFQ1RFRCBvciBERU5JRUQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ) @@ -41,7 +41,7 @@ sequenceDiagram; Drone->>Arm authorizer: COMMAND_LONG command=MAV_CMD_ARM_AUTHORIZATION_REQUEST Arm authorizer->>Drone: COMMAND_ACK result=MAV_RESULT_IN_PROGRESS Arm authorizer->>Drone: (optional)Request information about mission, battery level and etc. - Arm authorizer->>Internet: (optional)Request information about weather, aerospace trafic and etc. + Arm authorizer->>Internet: (optional)Request information about weather, aerospace traffic and etc. Arm authorizer->>Drone: COMMAND_ACK command=MAV_CMD_ARM_AUTHORIZATION_REQUEST result=ACCEPTED, TEMPORARILY_REJECTED or DENIED Drone->>Remote control/QCS: QCS STATUSTEXT text=Arm authorization was approved or denied @@ -65,7 +65,7 @@ COMMAND_ACK command=MAV_CMD_ARM_AUTHORIZATION_REQUEST result=ACCEPTED, TEMPORARILY_REJECTED or DENIED progress/result_param1=if result is TEMPORARILY_REJECTED or DENIED the reason should be set MAV_ARM_AUTH_DENIED_REASON otherwise it should be set as 0 -result_param2=if result is ACCEPTED the it should be set with the time in seconds that this authorization is valid otherwise an aditional information about why it was denied should be set. example: for result_param1=MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT or MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE it may have the index of the waypoint that caused it to be denied. +result_param2=if result is ACCEPTED the it should be set with the time in seconds that this authorization is valid otherwise an additional information about why it was denied should be set. example: for result_param1=MAV_ARM_AUTH_DENIED_REASON_INVALID_WAYPOINT or MAV_ARM_AUTH_DENIED_REASON_AIRSPACE_IN_USE it may have the index of the waypoint that caused it to be denied. target_system=system id of the drone target_component=component id of the drone ``` diff --git a/en/services/camera.md b/en/services/camera.md index 69e179a2d..d3a2de484 100644 --- a/en/services/camera.md +++ b/en/services/camera.md @@ -508,7 +508,7 @@ Other components like a GCS will typically only use the camera `BATTERY_STATUS.b | [MAV_CMD_VIDEO_STOP_CAPTURE](../messages/common.md#MAV_CMD_VIDEO_STOP_CAPTURE) | Send command to stop video capture. | | [MAV_CMD_VIDEO_START_STREAMING](../messages/common.md#MAV_CMD_VIDEO_START_STREAMING) | Send command to start video streaming for the given Stream ID (`stream_id`.) This is mostly for streaming protocols that _push_ a stream. If your camera uses a connection based streaming configuration (RTSP, TCP, etc.), you may ignore it if you don't need it but note that you still must ACK the command, like all `MAV_CMD_XXX` commands. When using a connection based streaming configuration, the GCS will connect the stream from its side. When a camera offers more than one stream and the user switches from one stream to another, the GCS will send a [MAV_CMD_VIDEO_STOP_STREAMING](../messages/common.md#MAV_CMD_VIDEO_STOP_STREAMING) command targeting the current Stream ID followed by a [MAV_CMD_VIDEO_START_STREAMING](../messages/common.md#MAV_CMD_VIDEO_START_STREAMING) targeting the newly selected Stream ID. | | [MAV_CMD_VIDEO_STOP_STREAMING](../messages/common.md#MAV_CMD_VIDEO_STOP_STREAMING) | Send command to stop video streaming for the given Stream ID (`stream_id`.) This is mostly for streaming protocols that _push_ a stream. If your camera uses a connection based streaming configuration (RTSP, TCP, etc.), you may ignore it if you don't need it but note that you still must ACK the command, like all `MAV_CMD_XXX` commands. When using a connection based streaming configuration, the GCS will disconnect the stream from its side. When a camera offers more than one stream and the user switches from one stream to another, the GCS will send a [MAV_CMD_VIDEO_STOP_STREAMING](../messages/common.md#MAV_CMD_VIDEO_STOP_STREAMING) command targeting the current Stream ID followed by a [MAV_CMD_VIDEO_START_STREAMING](../messages/common.md#MAV_CMD_VIDEO_START_STREAMING) targeting the newly selected Stream ID. | -| [MAV_CMD_CAMERA_TRACK_POINT](../messages/common.md#MAV_CMD_CAMERA_TRACK_POINT) | Initate visual point tracking, if supported by the camera ([CAMERA_CAP_FLAGS_HAS_TRACKING_POINT](#CAMERA_CAP_FLAGS) is set). | +| [MAV_CMD_CAMERA_TRACK_POINT](../messages/common.md#MAV_CMD_CAMERA_TRACK_POINT) | Initiate visual point tracking, if supported by the camera ([CAMERA_CAP_FLAGS_HAS_TRACKING_POINT](#CAMERA_CAP_FLAGS) is set). | | [MAV_CMD_CAMERA_TRACK_RECTANGLE](../messages/common.md#MAV_CMD_CAMERA_TRACK_RECTANGLE) | Initiate visual rectangle tracking, if supported by the camera ([CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE](#CAMERA_CAP_FLAGS) is set). | | [MAV_CMD_CAMERA_STOP_TRACKING](../messages/common.md#MAV_CMD_CAMERA_STOP_TRACKING) | Stop camera tracking (as initiated using `MAV_CMD_CAMERA_TRACK_POINT` or `MAV_CMD_CAMERA_TRACK_RECTANGLE`). | diff --git a/en/services/camera_def.md b/en/services/camera_def.md index 04cae3612..8889923a9 100644 --- a/en/services/camera_def.md +++ b/en/services/camera_def.md @@ -1,30 +1,31 @@ # Camera Definition File -A GCS will build a Camera Controller UI for image capture, video capture and video streaming using information provided by the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message. -For simple cameras, the information in the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message itself is sufficient to construct the UI. -For more advanced cameras (with settings and options) the information required to build the UI can be supplied in a _Camera Definition File_ that is located at the URI specified in the message's `cam_definition_uri` field. +A GCS will build a Camera Controller UI for image capture, video capture and video streaming using information provided +by the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message. For simple cameras, the information in +the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message itself is sufficient to construct the UI. For +more advanced cameras (with settings and options) the information required to build the UI can be supplied in a _Camera +Definition File_ that is located at the URI specified in the message's `cam_definition_uri` field. -The _Camera Definition File_ contains all the camera settings, the options for each setting, and exclusion lists (options that invalidate or are conditional on other settings). -In addition, it may contain localisations of GUI strings for display to the user. +The _Camera Definition File_ contains all the camera settings, the options for each setting, and exclusion lists +(options that invalidate or are conditional on other settings). In addition, it may contain localisations of GUI strings +for display to the user. At the bottom of this page, you can find a [full example](#full_example) of a _Camera Definition File_. -::: info -A _Camera Definition File_ is required because the camera options differ so greatly between cameras. -It is not reasonable to create specific MAVLink messages for each and every possible option and to tell the GCS the valid options for each camera setting. -::: +::: info A _Camera Definition File_ is required because the camera options differ so greatly between cameras. It is not +reasonable to create specific MAVLink messages for each and every possible option and to tell the GCS the valid options +for each camera setting. ::: ## File Compression -Camera definition files may be **.xz** compressed (this is recommended for files that are hosted on the camera component/device). +Camera definition files may be **.xz** compressed (this is recommended for files that are hosted on the camera +component/device). -::: warning -Systems that _request_ camera definition files **must** support extraction of **.xz**-compressed definition files. -::: +::: warning Systems that _request_ camera definition files **must** support extraction of **.xz**-compressed definition +files. ::: -::: tip -The [Tukaani Project XZ Embedded](https://tukaani.org/xz/embedded.html) library is an easy-to-use XZ compression library for embedded systems. -::: +::: tip The [Tukaani Project XZ Embedded](https://tukaani.org/xz/embedded.html) library is an easy-to-use XZ compression +library for embedded systems. ::: ## Schema @@ -47,21 +48,20 @@ All fields are self explanatory: ### Parameters -An extended set of parameter messages is used to define settings and options. -These minimally have a parameter name, type and default value (types can be predefined or arbitrary - though arbitrary types are only supported by custom camera controllers). -They will also have a description that is displayed to the user and the set of possible options. +An extended set of parameter messages is used to define settings and options. These minimally have a parameter name, +type and default value (types can be predefined or arbitrary - though arbitrary types are only supported by custom +camera controllers). They will also have a description that is displayed to the user and the set of possible options. Parameters can be simple or quite complex, depending on the behavior they change. -::: info -The parameter `CAM_MODE` must be part of the parameter list. -It maps to the command [MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE). -It enables exposure of different settings based on the mode, so photo settings in photo mode and video settings in video mode. -::: +::: info The parameter `CAM_MODE` must be part of the parameter list. It maps to the command +[MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE). It enables exposure of different settings +based on the mode, so photo settings in photo mode and video settings in video mode. ::: #### Parameter Types -The type of the parameter follows the enum [MAV_PARAM_EXT_TYPE](../messages/common.md#MAV_PARAM_EXT_TYPE_UINT8). Within the XML file, these are defined as: +The type of the parameter follows the enum [MAV_PARAM_EXT_TYPE](../messages/common.md#MAV_PARAM_EXT_TYPE_UINT8). Within +the XML file, these are defined as: - bool (internally treated as a uint8) - uint8 @@ -76,7 +76,9 @@ The type of the parameter follows the enum [MAV_PARAM_EXT_TYPE](../messages/comm - double - custom -The `custom` type is a special case that allows for arbitrary data structures of up to 128 bytes. However these are not supported by default - you would need to extend or write your own camera controller within the GCS to interpret this type. +The `custom` type is a special case that allows for arbitrary data structures of up to 128 bytes. However these are not +supported by default - you would need to extend or write your own camera controller within the GCS to interpret this +type. #### Parameter Definition @@ -88,8 +90,8 @@ The simplest parameter would be a boolean type, which inherently (and automatica ``` -The `name` attribute is the name of the parameter. This is the name used when requesting or setting the parameter's value using the extended parameter messages. -The `description` is what is shown to the user. +The `name` attribute is the name of the parameter. This is the name used when requesting or setting the parameter's +value using the extended parameter messages. The `description` is what is shown to the user. More common are parameters that provide options: @@ -108,16 +110,17 @@ More common are parameters that provide options: ``` In this case, the GCS will automatically build a drop down list with the options defined within the `options` group. -When sending/receiving the options, the `value` field is used and it is not in any way interpreted by the GCS. -The `name` field is used for display only. In other words, using the example above, when the user selects _Sunset_, the GCS will send a [PARAM_EXT_SET](../messages/common.md#PARAM_EXT_SET) message with the id `CAM_WBMODE` and a uint32 value of 3. +When sending/receiving the options, the `value` field is used and it is not in any way interpreted by the GCS. The +`name` field is used for display only. In other words, using the example above, when the user selects _Sunset_, the GCS +will send a [PARAM_EXT_SET](../messages/common.md#PARAM_EXT_SET) message with the id `CAM_WBMODE` and a uint32 value +of 3. #### Common Parameters -_Common Parameters_ are reserved parameter names for which the GCS can build specific UI controls (if found in a camera definition). +_Common Parameters_ are reserved parameter names for which the GCS can build specific UI controls (if found in a camera +definition). -::: info -These parameters are common to many cameras (though their valid options vary considerably). -::: +::: info These parameters are common to many cameras (though their valid options vary considerably). ::: | Parameter | Description | | ---------------- | ---------------------------------------------------------------------- | @@ -146,9 +149,10 @@ These parameters are common to many cameras (though their valid options vary con #### Exclusion Rules -Some parameters are only relevant when some other parameter is set to some specific option. -For example, shutter speed, aperture and ISO would only be available when the camera is set to _manual_ exposure mode and not shown when the camera is set to _auto_ exposure mode. -Conversely, _EV_ (Exposure Compensation) is only used when the camera is set to _auto_ and hidden otherwise. To specify this behavior, you would use the `exclusion` element: +Some parameters are only relevant when some other parameter is set to some specific option. For example, shutter speed, +aperture and ISO would only be available when the camera is set to _manual_ exposure mode and not shown when the camera +is set to _auto_ exposure mode. Conversely, _EV_ (Exposure Compensation) is only used when the camera is set to _auto_ +and hidden otherwise. To specify this behavior, you would use the `exclusion` element: ```XML @@ -170,11 +174,17 @@ Conversely, _EV_ (Exposure Compensation) is only used when the camera is set to ``` -The above example describes an _Exposure Mode_ parameter and its two options: _Auto_ and _Manual_. When the option is set to _Auto_, the `CAM_APERTURE`, `CAM_ISO` and `CAM_SHUTTERSPD` parameters (defined elsewhere in the parameter list) are hidden from the UI as they are not applicable. On the other hand, if the option is set to _Manual_, the `CAM_EV` parameter is hidden as it is not applicable while the camera is in _Manual Exposure Mode_. +The above example describes an _Exposure Mode_ parameter and its two options: _Auto_ and _Manual_. When the option is +set to _Auto_, the `CAM_APERTURE`, `CAM_ISO` and `CAM_SHUTTERSPD` parameters (defined elsewhere in the parameter list) +are hidden from the UI as they are not applicable. On the other hand, if the option is set to _Manual_, the `CAM_EV` +parameter is hidden as it is not applicable while the camera is in _Manual Exposure Mode_. #### Required Option Updates -There are cases where an option change requires a parameter to be updated. For example, using the example above, when the camera is set to _Auto Exposure Mode_, it internally might change the Aperture, ISO and Shutter speed. When the user switches back to _Manual Exposure Mode_, the GCS must request an update for the current Aperture, ISO and Shutter speed as they may have changed. To do this, you would use the `update` element: +There are cases where an option change requires a parameter to be updated. For example, using the example above, when +the camera is set to _Auto Exposure Mode_, it internally might change the Aperture, ISO and Shutter speed. When the user +switches back to _Manual Exposure Mode_, the GCS must request an update for the current Aperture, ISO and Shutter speed +as they may have changed. To do this, you would use the `update` element: ```XML @@ -201,7 +211,8 @@ There are cases where an option change requires a parameter to be updated. For e ``` -This tells the GCS that when the `CAM_EXPMODE` parameter changes, the `CAM_APERTURE`, `CAM_SHUTTERSPD` and the `CAM_ISO` parameters must be updated (requested from the camera). +This tells the GCS that when the `CAM_EXPMODE` parameter changes, the `CAM_APERTURE`, `CAM_SHUTTERSPD` and the `CAM_ISO` +parameters must be updated (requested from the camera). #### Option Range Limit @@ -226,7 +237,8 @@ Suppose your camera has the following ISO options: ``` -But this full range is only available when in _Photo Mode_. For whatever reason, when the camera is set to _Video Mode_, only a subset of the above range is valid. In this case, you would use the `parameterrange` element: +But this full range is only available when in _Photo Mode_. For whatever reason, when the camera is set to _Video Mode_, +only a subset of the above range is valid. In this case, you would use the `parameterrange` element: ```XML @@ -252,13 +264,19 @@ But this full range is only available when in _Photo Mode_. For whatever reason, ``` -This indicates to the GCS that when the `CAM_MODE` parameter is set to _Video_, only the given range for the `CAM_ISO` parameter is valid. It additionally gives a condition that this is only the case when the `CAM_EXPOSURE` mode is set to _Manual_ (1). +This indicates to the GCS that when the `CAM_MODE` parameter is set to _Video_, only the given range for the `CAM_ISO` +parameter is valid. It additionally gives a condition that this is only the case when the `CAM_EXPOSURE` mode is set to +_Manual_ (1). -This example also tells the GCS not to display this parameter to the user (`control=“0”`). Camera Mode is a standard parameter defined in the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message and it’s handled by the GCS in that way. The parameter definition above was created in order to tell the GCS the rules that are applied when changes to the camera mode occur. +This example also tells the GCS not to display this parameter to the user (`control=“0”`). Camera Mode is a standard +parameter defined in the [CAMERA_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message and it’s handled by the +GCS in that way. The parameter definition above was created in order to tell the GCS the rules that are applied when +changes to the camera mode occur. #### Param Ranges -It is also possible to define param ranges without individual options, but by specifiying the minimum, maximum, and optionally a step size: +It is also possible to define param ranges without individual options, but by specifying the minimum, maximum, and +optionally a step size: ```xml @@ -281,12 +299,17 @@ This would be equivalent to: ``` -Note that this approach cannot be used in conjunction with exclusions or option range limits (defined with `parameterrange`). -Therefore it is recommended for cases where the range of allowed values does not vary with any other camera mode or setting. +Note that this approach cannot be used in conjunction with exclusions or option range limits (defined with +`parameterrange`). Therefore it is recommended for cases where the range of allowed values does not vary with any other +camera mode or setting. ### Localization -The `localization` element is used for defining localized strings for display to users. If found, the GCS will use to replace all `description` and options `name` values found in the file with the strings defined here. Here is an example for German localization (de_DE): +The `localization` element is used for defining localized strings for display to users. If found, the GCS will use to +replace all `description` and options `name` values found in the file with the strings defined here. Here is an example +for German localization (de_DE): + + ```XML @@ -305,24 +328,35 @@ The `localization` element is used for defining localized strings for display to ``` -When the GCS loads and parses the XML file, it will check and see if it can find a localized version appropriate to the system language. If it finds a localisation, it will proceed to replace all occurrences of `original` with `translated`. If something is not found, the default English string is used. You can have as many locales as deemed necessary. + + +When the GCS loads and parses the XML file, it will check and see if it can find a localized version appropriate to the +system language. If it finds a localisation, it will proceed to replace all occurrences of `original` with `translated`. +If something is not found, the default English string is used. You can have as many locales as deemed necessary. ## Protocol Definition -Once the Camera Definition File is loaded by the GCS, it will request all parameters from the camera using the [PARAM_EXT_REQUEST_LIST](../messages/common.md#PARAM_EXT_REQUEST_LIST) message. In response, the camera will send back all parameters using the [PARAM_EXT_VALUE](../messages/common.md#PARAM_EXT_VALUE) message. +Once the Camera Definition File is loaded by the GCS, it will request all parameters from the camera using the +[PARAM_EXT_REQUEST_LIST](../messages/common.md#PARAM_EXT_REQUEST_LIST) message. In response, the camera will send back +all parameters using the [PARAM_EXT_VALUE](../messages/common.md#PARAM_EXT_VALUE) message. -When the user makes a selection, the GCS will send the new option using the [PARAM_EXT_SET](../messages/common.md#PARAM_EXT_SET) message and it will expect in response a [PARAM_EXT_ACK](../messages/common.md#PARAM_EXT_ACK) message. +When the user makes a selection, the GCS will send the new option using the +[PARAM_EXT_SET](../messages/common.md#PARAM_EXT_SET) message and it will expect in response a +[PARAM_EXT_ACK](../messages/common.md#PARAM_EXT_ACK) message. -When the GCS requires a current option for a given parameter, it will use the [PARAM_EXT_REQUEST_READ](../messages/common.md#PARAM_EXT_REQUEST_READ) message and it will expect in response a [PARAM_EXT_VALUE](../messages/common.md#PARAM_EXT_VALUE) message. +When the GCS requires a current option for a given parameter, it will use the +[PARAM_EXT_REQUEST_READ](../messages/common.md#PARAM_EXT_REQUEST_READ) message and it will expect in response a +[PARAM_EXT_VALUE](../messages/common.md#PARAM_EXT_VALUE) message. -::: info -For more detailed information about the protocol see: [Extended Parameter Protocol](../services/parameter_ext.md). -::: +::: info For more detailed information about the protocol see: +[Extended Parameter Protocol](../services/parameter_ext.md). ::: ## Full Camera Definition File Example {#full_example} -An example camera definition file is listed below. -This can be downloaded from GitHub here: [camera_definition_example.xml](https://raw.githubusercontent.com/mavlink/mavlink-devguide/master/en/services/camera_definition_example.xml). +An example camera definition file is listed below. This can be downloaded from GitHub here: +[camera_definition_example.xml](https://raw.githubusercontent.com/mavlink/mavlink-devguide/master/en/services/camera_definition_example.xml). + + ```XML @@ -989,3 +1023,5 @@ This can be downloaded from GitHub here: [camera_definition_example.xml](https:/ ``` + + diff --git a/en/services/command.md b/en/services/command.md index 381fe6d3f..3c6b92293 100644 --- a/en/services/command.md +++ b/en/services/command.md @@ -13,7 +13,7 @@ If no acknowledgement is received the command must be automatically re-sent. | Message | Description | | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [COMMAND_INT](../messages/common.md#COMMAND_INT) | Message for encoding a command ([MAV_CMD](#MAV_CMD)). The message encodes commands into up to 7 parameters: parameters 1-4, 7 are floats, and parameters 5,6 are scaled integers. The scaled integers are used for positional information (scaling depends on the actual command value). The coordinate frame of positional parameters is explicitly specified in a frame field. Commands that require float-only properties in parameters 5, 6 cannot be sent in this message (e.g. commands where NaN has an explicit meaning). | -| [COMMAND_LONG](../messages/common.md#COMMAND_LONG) | Message for encoding a command ([MAV_CMD](#MAV_CMD)). The message encodes commands into up to 7 float parameters. The coordinate frame used for positional co-ordinates is implementation dependent. Any command may be packaged in this message, but there may be some loss of precision for positional co-ordinates (latitude, longitude). | +| [COMMAND_LONG](../messages/common.md#COMMAND_LONG) | Message for encoding a command ([MAV_CMD](#MAV_CMD)). The message encodes commands into up to 7 float parameters. The coordinate frame used for positional co-ordinates is implementation dependent. Any command may be packaged in this message, but there may be some loss of precision for positional co-ordinates (latitude, longitude). | | [COMMAND_ACK](../messages/common.md#COMMAND_ACK) | Command acknowledgement. Includes result (success, failure, still in progress) and may include progress information and additional detail about failure reasons. | | [COMMAND_CANCEL](../messages/common.md#COMMAND_CANCEL) | Cancel a long running command. | diff --git a/en/services/component_information.md b/en/services/component_information.md index 72fedff9d..de36695ea 100644 --- a/en/services/component_information.md +++ b/en/services/component_information.md @@ -1 +1 @@ - \ No newline at end of file + diff --git a/en/services/component_metadata.md b/en/services/component_metadata.md index 05a536d6e..2c06cec33 100644 --- a/en/services/component_metadata.md +++ b/en/services/component_metadata.md @@ -42,10 +42,10 @@ The component information file types and schema are (at time of writing): | ------------------------------------------------------------------ | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | General metadata | [COMP_METADATA_TYPE_GENERAL](../messages/common.md#COMP_METADATA_TYPE_GENERAL) | [general.schema.json](https://github.com/mavlink/mavlink/blob/master/component_metadata/general.schema.json) | General information about the component including hardware/firmware vendor version. This metadata includes information about all the other metadata types are supported by the component and where their metadata files are located. This metadata type must be supported if this protocol is supported and the file must be present on vehicle and delivered by MAVLink FTP. Note however that you never actually need to specify this type! | | Parameter metadata | [COMP_METADATA_TYPE_PARAMETER](../messages/common.md#COMP_METADATA_TYPE_PARAMETER) | [parameter.schema.json](https://github.com/mavlink/mavlink/blob/master/component_metadata/parameter.schema.json) | Information about parameters supported by the vehicle (on boot). | -| Command protocol metadata | [COMP_METADATA_TYPE_COMMANDS](../messages/common.md#COMP_METADATA_TYPE_COMMANDS) | TBD | Information about which commands and command parameters are supported via the command protocol. | +| Command protocol metadata | [COMP_METADATA_TYPE_COMMANDS](../messages/common.md#COMP_METADATA_TYPE_COMMANDS) | TBD | Information about which commands and command parameters are supported via the command protocol. | | Peripheral metadata | [COMP_METADATA_TYPE_PERIPHERALS](../messages/common.md#COMP_METADATA_TYPE_PERIPHERALS) | [peripherals.schema.json](https://github.com/mavlink/mavlink/blob/master/component_metadata/peripherals.schema.json) | Information about non-MAVLink peripherals connected to vehicle (on boot). | | Event metadata | [COMP_METADATA_TYPE_EVENTS](../messages/common.md#COMP_METADATA_TYPE_EVENTS) | TBD | Information about events interface support by the vehicle. | -| Event metadata | [COMP_METADATA_TYPE_ACTUATORS](../messages/common.md#COMP_METADATA_TYPE_ACTUATORS) | [actuators.schema.json ](https://github.com/mavlink/mavlink/blob/master/component_metadata/actuators.schema.json) | Metadata for actuator configuration (motors, servos and vehicle geometry) and testing. | +| Event metadata | [COMP_METADATA_TYPE_ACTUATORS](../messages/common.md#COMP_METADATA_TYPE_ACTUATORS) | [actuators.schema.json](https://github.com/mavlink/mavlink/blob/master/component_metadata/actuators.schema.json) | Metadata for actuator configuration (motors, servos and vehicle geometry) and testing. | All schema files are _versioned_ using a `version` integer. diff --git a/en/services/gimbal_v2.md b/en/services/gimbal_v2.md index e3264f762..b9b24a512 100644 --- a/en/services/gimbal_v2.md +++ b/en/services/gimbal_v2.md @@ -323,10 +323,10 @@ This is the set of messages/enums for communicating with the gimbal manager (by | [MAV_CMD_DO_GIMBAL_MANAGER_TRACK_POINT](../messages/common.md#MAV_CMD_DO_GIMBAL_MANAGER_TRACK_POINT) | If the gimbal manager supports visual tracking (`GIMBAL_MANAGER_CAP_FLAGS_HAS_TRACKING_POINT` is set), this command allows to initiate the tracking. Such a tracking gimbal manager would usually be an integrated camera/gimbal, or alternatively a companion computer connected to a camera. | | [MAV_CMD_DO_GIMBAL_MANAGER_TRACK_RECTANGLE](../messages/common.md#MAV_CMD_DO_GIMBAL_MANAGER_TRACK_RECTANGLE) | If the gimbal supports visual tracking (GIMBAL_MANAGER_CAP_FLAGS_HAS_TRACKING_RECTANGLE is set), this command allows to initiate the tracking. Such a tracking gimbal manager would usually be an integrated camera/gimbal, or alternatively a companion computer connected to a camera. | -| Enum | Description | -| --------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [GIMBAL_MANAGER_FLAGS](../messages/common.md#GIMBAL_MANAGER_FLAGS) | Flags for high level gimbal manager operation.
The first 16 bytes are identical to the [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS). Used in [MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW](#MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW), [GIMBAL_MANAGER_STATUS ](#GIMBAL_MANAGER_STATUS), [GIMBAL_MANAGER_SET_ATTITUDE](#GIMBAL_MANAGER_SET_ATTITUDE). | -| [GIMBAL_MANAGER_CAP_FLAGS](../messages/common.md#GIMBAL_MANAGER_CAP_FLAGS) | Gimbal manager high level capability flags (bitmap).
The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS which are identical with GIMBAL_DEVICE_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. Used in [GIMBAL_MANAGER_INFORMATION ](#GIMBAL_MANAGER_INFORMATION) | +| Enum | Description | +| --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [GIMBAL_MANAGER_FLAGS](../messages/common.md#GIMBAL_MANAGER_FLAGS) | Flags for high level gimbal manager operation.
The first 16 bytes are identical to the [GIMBAL_DEVICE_FLAGS](#GIMBAL_DEVICE_FLAGS). Used in [MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW](#MAV_CMD_DO_GIMBAL_MANAGER_PITCHYAW), [GIMBAL_MANAGER_STATUS](#GIMBAL_MANAGER_STATUS), [GIMBAL_MANAGER_SET_ATTITUDE](#GIMBAL_MANAGER_SET_ATTITUDE). | +| [GIMBAL_MANAGER_CAP_FLAGS](../messages/common.md#GIMBAL_MANAGER_CAP_FLAGS) | Gimbal manager high level capability flags (bitmap).
The first 16 bits are identical to the GIMBAL_DEVICE_CAP_FLAGS which are identical with GIMBAL_DEVICE_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal but can also enhance the capabilities and thus add flags. Used in [GIMBAL_MANAGER_INFORMATION](#GIMBAL_MANAGER_INFORMATION) | ### Gimbal Device Messages diff --git a/en/services/illuminator.md b/en/services/illuminator.md index 8d2811f86..87b729165 100644 --- a/en/services/illuminator.md +++ b/en/services/illuminator.md @@ -48,7 +48,7 @@ These illuminators have built-in MAVLink support: Illuminators are expected to follow the [Heartbeat/Connection Protocol](../services/heartbeat.md) and send a constant flow of heartbeats (nominally at 1Hz). Illuminators are identified via their type [MAV_TYPE_ILLUMINATOR](#MAV_TYPE_ILLUMINATOR). Individual illuminators are distinguished via their unique component ID, which by default should be [MAV_COMP_ID_ILLUMINATOR](#MAV_COMP_ID_ILLUMINATOR) (though this is not mandated and any ID may be used). -Once a heartbeat is received, the drone can then send a [MAV_CMD_REQUEST_MESSAGE ][MAV_CMD_REQUEST_MESSAGE] command to the illuminator to receive information, set settings, or control the illuminator. +Once a heartbeat is received, the drone can then send a [MAV_CMD_REQUEST_MESSAGE][MAV_CMD_REQUEST_MESSAGE] command to the illuminator to receive information, set settings, or control the illuminator. An example below illustrates how a drone can request the status of the illuminator.