Dialect: autoquad
This is a human-readable form of the XML definition file: autoquad.xml.
MAVLink 2 messages have an ID > 255 and are marked up using (MAVLink 2) in their description.
MAVLink 2 extension fields that have been added to MAVLink 1 messages are displayed in blue.
MAVLink Include Files: common.xml
MAVLink Protocol Version
The current MAVLink version is 2.3. The minor version numbers (after the dot) range from 1-255.
MAVLink Type Enumerations
AUTOQUAD_MAVLINK_DEFS_VERSION
[Enum] Track current version of these definitions (can be used by checking value of AUTOQUAD_MAVLINK_DEFS_VERSION_ENUM_END). Append a new entry for each published change.
| Value | Field Name | Description |
|---|---|---|
| AQ_MAVLINK_DEFS_VERSION_1 |
AUTOQUAD_NAV_STATUS
[Enum] Available operating modes/statuses for AutoQuad flight controller. Bitmask up to 32 bits. Low side bits for base modes, high side for additional active features/modifiers/constraints.
| Value | Field Name | Description |
|---|---|---|
| 0 | AQ_NAV_STATUS_INIT | System is initializing |
| 0x00000001 | AQ_NAV_STATUS_STANDBY | System is *armed* and standing by, with no throttle input and no autonomous mode |
| 0x00000002 | AQ_NAV_STATUS_MANUAL | Flying (throttle input detected), assumed under manual control unless other mode bits are set |
| 0x00000004 | AQ_NAV_STATUS_ALTHOLD | Altitude hold engaged |
| 0x00000008 | AQ_NAV_STATUS_POSHOLD | Position hold engaged |
| 0x00000010 | AQ_NAV_STATUS_GUIDED | Externally-guided (eg. GCS) navigation mode |
| 0x00000020 | AQ_NAV_STATUS_MISSION | Autonomous mission execution mode |
| 0x00000100 | AQ_NAV_STATUS_READY | Ready but *not armed* |
| 0x00000200 | AQ_NAV_STATUS_CALIBRATING | Calibration mode active |
| 0x00001000 | AQ_NAV_STATUS_NO_RC | No valid control input (eg. no radio link) |
| 0x00002000 | AQ_NAV_STATUS_FUEL_LOW | Battery is low (stage 1 warning) |
| 0x00004000 | AQ_NAV_STATUS_FUEL_CRITICAL | Battery is depleted (stage 2 warning) |
| 0x01000000 | AQ_NAV_STATUS_DVH | Dynamic Velocity Hold is active (PH with proportional manual direction override) |
| 0x02000000 | AQ_NAV_STATUS_DAO | Dynamic Altitude Override is active (AH with proportional manual adjustment) |
| 0x04000000 | AQ_NAV_STATUS_CEILING_REACHED | Craft is at ceiling altitude |
| 0x08000000 | AQ_NAV_STATUS_CEILING | Ceiling altitude is set |
| 0x10000000 | AQ_NAV_STATUS_HF_DYNAMIC | Heading-Free dynamic mode active |
| 0x20000000 | AQ_NAV_STATUS_HF_LOCKED | Heading-Free locked mode active |
| 0x40000000 | AQ_NAV_STATUS_RTH | Automatic Return to Home is active |
| 0x80000000 | AQ_NAV_STATUS_FAILSAFE | System is in failsafe recovery mode |
MAV_DATA_STREAM
| Value | Field Name | Description |
|---|---|---|
| MAV_DATA_STREAM_PROPULSION | Motor/ESC telemetry data. |
MAVLink Commands (MAV_CMD)
MAVLink commands (MAV_CMD) and messages are different! These commands define the values of up to 7 parameters that are packaged INSIDE specific messages used in the Mission Protocol and Command Protocol. Use commands for actions in missions or if you need acknowledgment and/or retry logic from a request. Otherwise use messages.
MAV_CMD_AQ_NAV_LEG_ORBIT (1 )
[Command] Orbit a waypoint.
| Param (:Label) | Description |
|---|---|
| 1 | Orbit radius in meters |
| 2 | Loiter time in decimal seconds |
| 3 | Maximum horizontal speed in m/s |
| 4 | Desired yaw angle at waypoint |
| 5 | Latitude |
| 6 | Longitude |
| 7 | Altitude |
MAV_CMD_AQ_TELEMETRY (2 )
[Command] Start/stop AutoQuad telemetry values stream.
| Param (:Label) | Description |
|---|---|
| 1 | Start or stop (1 or 0) |
| 2 | Stream frequency in us |
| 3 | Dataset ID (refer to aq_mavlink.h::mavlinkCustomDataSets enum in AQ flight controller code) |
| 4 | Empty |
| 5 | Empty |
| 6 | Empty |
| 7 | Empty |
MAV_CMD_AQ_REQUEST_VERSION (4 )
[Command] Request AutoQuad firmware version number.
| Param (:Label) | Description |
|---|---|
| 1 | Empty |
| 2 | Empty |
| 3 | Empty |
| 4 | Empty |
| 5 | Empty |
| 6 | Empty |
| 7 | Empty |
MAVLink Messages
AQ_TELEMETRY_F ( #150 )
[Message] Sends up to 20 raw float values.
| Field Name | Type | Description |
|---|---|---|
| Index | uint16_t | Index of message |
| value1 | float | value1 |
| value2 | float | value2 |
| value3 | float | value3 |
| value4 | float | value4 |
| value5 | float | value5 |
| value6 | float | value6 |
| value7 | float | value7 |
| value8 | float | value8 |
| value9 | float | value9 |
| value10 | float | value10 |
| value11 | float | value11 |
| value12 | float | value12 |
| value13 | float | value13 |
| value14 | float | value14 |
| value15 | float | value15 |
| value16 | float | value16 |
| value17 | float | value17 |
| value18 | float | value18 |
| value19 | float | value19 |
| value20 | float | value20 |
AQ_ESC_TELEMETRY ( #152 )
[Message] Sends ESC32 telemetry data for up to 4 motors. Multiple messages may be sent in sequence when system has > 4 motors. Data is described as follows: // unsigned int state : 3; // unsigned int vin : 12; // x 100 // unsigned int amps : 14; // x 100 // unsigned int rpm : 15; // unsigned int duty : 8; // x (255/100) // - Data Version 2 - // unsigned int errors : 9; // Bad detects error count // - Data Version 3 - // unsigned int temp : 9; // (Deg C + 32) * 4 // unsigned int errCode : 3;
| Field Name | Type | Description |
|---|---|---|
| time_boot_ms | uint32_t | Timestamp of the component clock since boot time in ms. |
| seq | uint8_t | Sequence number of message (first set of 4 motors is #1, next 4 is #2, etc). |
| num_motors | uint8_t | Total number of active ESCs/motors on the system. |
| num_in_seq | uint8_t | Number of active ESCs in this sequence (1 through this many array members will be populated with data) |
| escid | uint8_t[4] | ESC/Motor ID |
| status_age | uint16_t[4] | Age of each ESC telemetry reading in ms compared to boot time. A value of 0xFFFF means timeout/no data. |
| data_version | uint8_t[4] | Version of data structure (determines contents). |
| data0 | uint32_t[4] | Data bits 1-32 for each ESC. |
| data1 | uint32_t[4] | Data bits 33-64 for each ESC. |
