添加MAVLINK协议库

This commit is contained in:
OPTOC
2025-09-02 10:34:06 +08:00
parent 7960bb80ec
commit 040ce2c62c
360 changed files with 143976 additions and 0 deletions

View File

@@ -0,0 +1,238 @@
<?xml version="1.0"?>
<!-- ASLUAV Mavlink Message Definition File -->
<!-- Used for the ASLUAV fixed-wing autopilot (www.asl.ethz.ch), which implements extensions to the Pixhawk (https://docs.px4.io/en/flight_controller/pixhawk.html) autopilot -->
<mavlink>
<include>common.xml</include>
<enums>
<enum name="MAV_CMD">
<!-- ASLUAV specific MAV_CMD_* commands -->
<entry name="MAV_CMD_RESET_MPPT" value="40001">
<description>Mission command to reset Maximum Power Point Tracker (MPPT)</description>
<param index="1">MPPT number</param>
<param index="2">Empty</param>
<param index="3">Empty</param>
<param index="4">Empty</param>
<param index="5">Empty</param>
<param index="6">Empty</param>
<param index="7">Empty</param>
</entry>
<entry name="MAV_CMD_PAYLOAD_CONTROL" value="40002">
<description>Mission command to perform a power cycle on payload</description>
<param index="1">Complete power cycle</param>
<param index="2">VISensor power cycle</param>
<param index="3">Empty</param>
<param index="4">Empty</param>
<param index="5">Empty</param>
<param index="6">Empty</param>
<param index="7">Empty</param>
</entry>
</enum>
</enums>
<messages>
<message id="78" name="COMMAND_INT_STAMPED">
<description>Message encoding a command with parameters as scaled integers and additional metadata. Scaling depends on the actual command value.</description>
<field type="uint32_t" name="utc_time">UTC time, seconds elapsed since 01.01.1970</field>
<field type="uint64_t" name="vehicle_timestamp">Microseconds elapsed since vehicle boot</field>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint8_t" name="frame" enum="MAV_FRAME">The coordinate system of the COMMAND, as defined by MAV_FRAME enum</field>
<field type="uint16_t" name="command" enum="MAV_CMD">The scheduled action for the mission item, as defined by MAV_CMD enum</field>
<field type="uint8_t" name="current">false:0, true:1</field>
<field type="uint8_t" name="autocontinue">autocontinue to next wp</field>
<field type="float" name="param1">PARAM1, see MAV_CMD enum</field>
<field type="float" name="param2">PARAM2, see MAV_CMD enum</field>
<field type="float" name="param3">PARAM3, see MAV_CMD enum</field>
<field type="float" name="param4">PARAM4, see MAV_CMD enum</field>
<field type="int32_t" name="x">PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7</field>
<field type="int32_t" name="y">PARAM6 / local: y position in meters * 1e4, global: longitude in degrees * 10^7</field>
<field type="float" name="z">PARAM7 / z position: global: altitude in meters (relative or absolute, depending on frame.</field>
</message>
<message id="79" name="COMMAND_LONG_STAMPED">
<description>Send a command with up to seven parameters to the MAV and additional metadata</description>
<field type="uint32_t" name="utc_time">UTC time, seconds elapsed since 01.01.1970</field>
<field type="uint64_t" name="vehicle_timestamp">Microseconds elapsed since vehicle boot</field>
<field type="uint8_t" name="target_system">System which should execute the command</field>
<field type="uint8_t" name="target_component">Component which should execute the command, 0 for all components</field>
<field type="uint16_t" name="command" enum="MAV_CMD">Command ID, as defined by MAV_CMD enum.</field>
<field type="uint8_t" name="confirmation">0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command)</field>
<field type="float" name="param1">Parameter 1, as defined by MAV_CMD enum.</field>
<field type="float" name="param2">Parameter 2, as defined by MAV_CMD enum.</field>
<field type="float" name="param3">Parameter 3, as defined by MAV_CMD enum.</field>
<field type="float" name="param4">Parameter 4, as defined by MAV_CMD enum.</field>
<field type="float" name="param5">Parameter 5, as defined by MAV_CMD enum.</field>
<field type="float" name="param6">Parameter 6, as defined by MAV_CMD enum.</field>
<field type="float" name="param7">Parameter 7, as defined by MAV_CMD enum.</field>
</message>
<message id="201" name="SENS_POWER">
<description>Voltage and current sensor data</description>
<field type="float" name="adc121_vspb_volt" units="V"> Power board voltage sensor reading</field>
<field type="float" name="adc121_cspb_amp" units="A"> Power board current sensor reading</field>
<field type="float" name="adc121_cs1_amp" units="A"> Board current sensor 1 reading</field>
<field type="float" name="adc121_cs2_amp" units="A"> Board current sensor 2 reading</field>
</message>
<message id="202" name="SENS_MPPT">
<description>Maximum Power Point Tracker (MPPT) sensor data for solar module power performance tracking</description>
<field type="uint64_t" name="mppt_timestamp" units="us"> MPPT last timestamp </field>
<field type="float" name="mppt1_volt" units="V"> MPPT1 voltage </field>
<field type="float" name="mppt1_amp" units="A"> MPPT1 current </field>
<field type="uint16_t" name="mppt1_pwm" units="us"> MPPT1 pwm </field>
<field type="uint8_t" name="mppt1_status"> MPPT1 status </field>
<field type="float" name="mppt2_volt" units="V"> MPPT2 voltage </field>
<field type="float" name="mppt2_amp" units="A"> MPPT2 current </field>
<field type="uint16_t" name="mppt2_pwm" units="us"> MPPT2 pwm </field>
<field type="uint8_t" name="mppt2_status"> MPPT2 status </field>
<field type="float" name="mppt3_volt" units="V">MPPT3 voltage </field>
<field type="float" name="mppt3_amp" units="A"> MPPT3 current </field>
<field type="uint16_t" name="mppt3_pwm" units="us"> MPPT3 pwm </field>
<field type="uint8_t" name="mppt3_status"> MPPT3 status </field>
</message>
<message id="203" name="ASLCTRL_DATA">
<description>ASL-fixed-wing controller data</description>
<field type="uint64_t" name="timestamp" units="us"> Timestamp</field>
<field type="uint8_t" name="aslctrl_mode"> ASLCTRL control-mode (manual, stabilized, auto, etc...)</field>
<field type="float" name="h"> See sourcecode for a description of these values... </field>
<field type="float" name="hRef"> </field>
<field type="float" name="hRef_t"> </field>
<field type="float" name="PitchAngle" units="deg">Pitch angle</field>
<field type="float" name="PitchAngleRef" units="deg">Pitch angle reference</field>
<field type="float" name="q"> </field>
<field type="float" name="qRef"> </field>
<field type="float" name="uElev"> </field>
<field type="float" name="uThrot"> </field>
<field type="float" name="uThrot2"> </field>
<field type="float" name="nZ"> </field>
<field type="float" name="AirspeedRef" units="m/s">Airspeed reference</field>
<field type="uint8_t" name="SpoilersEngaged"> </field>
<field type="float" name="YawAngle" units="deg">Yaw angle</field>
<field type="float" name="YawAngleRef" units="deg">Yaw angle reference</field>
<field type="float" name="RollAngle" units="deg">Roll angle</field>
<field type="float" name="RollAngleRef" units="deg">Roll angle reference</field>
<field type="float" name="p"> </field>
<field type="float" name="pRef"> </field>
<field type="float" name="r"> </field>
<field type="float" name="rRef"> </field>
<field type="float" name="uAil"> </field>
<field type="float" name="uRud"> </field>
</message>
<message id="204" name="ASLCTRL_DEBUG">
<description>ASL-fixed-wing controller debug data</description>
<field type="uint32_t" name="i32_1"> Debug data</field>
<field type="uint8_t" name="i8_1"> Debug data</field>
<field type="uint8_t" name="i8_2"> Debug data</field>
<field type="float" name="f_1"> Debug data </field>
<field type="float" name="f_2"> Debug data</field>
<field type="float" name="f_3"> Debug data</field>
<field type="float" name="f_4"> Debug data</field>
<field type="float" name="f_5"> Debug data</field>
<field type="float" name="f_6"> Debug data</field>
<field type="float" name="f_7"> Debug data</field>
<field type="float" name="f_8"> Debug data</field>
</message>
<message id="205" name="ASLUAV_STATUS">
<description>Extended state information for ASLUAVs</description>
<field type="uint8_t" name="LED_status"> Status of the position-indicator LEDs</field>
<field type="uint8_t" name="SATCOM_status"> Status of the IRIDIUM satellite communication system</field>
<field type="uint8_t[8]" name="Servo_status"> Status vector for up to 8 servos</field>
<field type="float" name="Motor_rpm"> Motor RPM </field>
<!-- to be extended-->
</message>
<message id="206" name="EKF_EXT">
<description>Extended EKF state estimates for ASLUAVs</description>
<field type="uint64_t" name="timestamp" units="us"> Time since system start</field>
<field type="float" name="Windspeed" units="m/s"> Magnitude of wind velocity (in lateral inertial plane)</field>
<field type="float" name="WindDir" units="rad"> Wind heading angle from North</field>
<field type="float" name="WindZ" units="m/s"> Z (Down) component of inertial wind velocity</field>
<field type="float" name="Airspeed" units="m/s"> Magnitude of air velocity</field>
<field type="float" name="beta" units="rad"> Sideslip angle</field>
<field type="float" name="alpha" units="rad"> Angle of attack</field>
</message>
<message id="207" name="ASL_OBCTRL">
<description>Off-board controls/commands for ASLUAVs</description>
<field type="uint64_t" name="timestamp" units="us"> Time since system start</field>
<field type="float" name="uElev"> Elevator command [~]</field>
<field type="float" name="uThrot"> Throttle command [~]</field>
<field type="float" name="uThrot2"> Throttle 2 command [~]</field>
<field type="float" name="uAilL"> Left aileron command [~]</field>
<field type="float" name="uAilR"> Right aileron command [~]</field>
<field type="float" name="uRud"> Rudder command [~]</field>
<field type="uint8_t" name="obctrl_status"> Off-board computer status</field>
</message>
<message id="208" name="SENS_ATMOS">
<description>Atmospheric sensors (temperature, humidity, ...) </description>
<field type="float" name="TempAmbient" units="degC"> Ambient temperature</field>
<field type="float" name="Humidity" units="%"> Relative humidity</field>
</message>
<message id="209" name="SENS_BATMON">
<description>Battery pack monitoring data for Li-Ion batteries</description>
<field type="uint64_t" name="batmon_timestamp" units="us">Time since system start</field>
<field type="float" name="temperature" units="degC">Battery pack temperature</field>
<field type="uint16_t" name="voltage" units="mV">Battery pack voltage</field>
<field type="int16_t" name="current" units="mA">Battery pack current</field>
<field type="uint8_t" name="SoC">Battery pack state-of-charge</field>
<field type="uint16_t" name="batterystatus">Battery monitor status report bits in Hex</field>
<field type="uint16_t" name="serialnumber">Battery monitor serial number in Hex</field>
<field type="uint32_t" name="safetystatus">Battery monitor safetystatus report bits in Hex</field>
<field type="uint32_t" name="operationstatus">Battery monitor operation status report bits in Hex</field>
<field type="uint16_t" name="cellvoltage1" units="mV">Battery pack cell 1 voltage</field>
<field type="uint16_t" name="cellvoltage2" units="mV">Battery pack cell 2 voltage</field>
<field type="uint16_t" name="cellvoltage3" units="mV">Battery pack cell 3 voltage</field>
<field type="uint16_t" name="cellvoltage4" units="mV">Battery pack cell 4 voltage</field>
<field type="uint16_t" name="cellvoltage5" units="mV">Battery pack cell 5 voltage</field>
<field type="uint16_t" name="cellvoltage6" units="mV">Battery pack cell 6 voltage</field>
</message>
<message id="210" name="FW_SOARING_DATA">
<description>Fixed-wing soaring (i.e. thermal seeking) data</description>
<field type="uint64_t" name="timestamp" units="ms">Timestamp</field>
<field type="uint64_t" name="timestampModeChanged" units="ms">Timestamp since last mode change</field>
<field type="float" name="xW" units="m/s">Thermal core updraft strength</field>
<field type="float" name="xR" units="m">Thermal radius</field>
<field type="float" name="xLat" units="deg">Thermal center latitude</field>
<field type="float" name="xLon" units="deg">Thermal center longitude</field>
<field type="float" name="VarW">Variance W</field>
<field type="float" name="VarR">Variance R</field>
<field type="float" name="VarLat">Variance Lat</field>
<field type="float" name="VarLon">Variance Lon </field>
<field type="float" name="LoiterRadius" units="m">Suggested loiter radius</field>
<field type="float" name="LoiterDirection">Suggested loiter direction</field>
<field type="float" name="DistToSoarPoint" units="m">Distance to soar point</field>
<field type="float" name="vSinkExp" units="m/s">Expected sink rate at current airspeed, roll and throttle</field>
<field type="float" name="z1_LocalUpdraftSpeed" units="m/s">Measurement / updraft speed at current/local airplane position</field>
<field type="float" name="z2_DeltaRoll" units="deg">Measurement / roll angle tracking error</field>
<field type="float" name="z1_exp">Expected measurement 1</field>
<field type="float" name="z2_exp">Expected measurement 2</field>
<field type="float" name="ThermalGSNorth" units="m/s">Thermal drift (from estimator prediction step only)</field>
<field type="float" name="ThermalGSEast" units="m/s">Thermal drift (from estimator prediction step only)</field>
<field type="float" name="TSE_dot" units="m/s"> Total specific energy change (filtered)</field>
<field type="float" name="DebugVar1"> Debug variable 1</field>
<field type="float" name="DebugVar2"> Debug variable 2</field>
<field type="uint8_t" name="ControlMode">Control Mode [-]</field>
<field type="uint8_t" name="valid">Data valid [-]</field>
</message>
<message id="211" name="SENSORPOD_STATUS">
<description>Monitoring of sensorpod status</description>
<field type="uint64_t" name="timestamp" units="ms">Timestamp in linuxtime (since 1.1.1970)</field>
<field type="uint8_t" name="visensor_rate_1">Rate of ROS topic 1</field>
<field type="uint8_t" name="visensor_rate_2">Rate of ROS topic 2</field>
<field type="uint8_t" name="visensor_rate_3">Rate of ROS topic 3</field>
<field type="uint8_t" name="visensor_rate_4">Rate of ROS topic 4</field>
<field type="uint8_t" name="recording_nodes_count">Number of recording nodes</field>
<field type="uint8_t" name="cpu_temp" units="degC">Temperature of sensorpod CPU in</field>
<field type="uint16_t" name="free_space">Free space available in recordings directory in [Gb] * 1e2</field>
</message>
<message id="212" name="SENS_POWER_BOARD">
<description>Monitoring of power board status</description>
<field type="uint64_t" name="timestamp" units="us">Timestamp</field>
<field type="uint8_t" name="pwr_brd_status">Power board status register</field>
<field type="uint8_t" name="pwr_brd_led_status">Power board leds status</field>
<field type="float" name="pwr_brd_system_volt" units="V">Power board system voltage</field>
<field type="float" name="pwr_brd_servo_volt" units="V">Power board servo voltage</field>
<field type="float" name="pwr_brd_digital_volt" units="V">Power board digital voltage</field>
<field type="float" name="pwr_brd_mot_l_amp" units="A">Power board left motor current sensor</field>
<field type="float" name="pwr_brd_mot_r_amp" units="A">Power board right motor current sensor</field>
<field type="float" name="pwr_brd_analog_amp" units="A">Power board analog current sensor</field>
<field type="float" name="pwr_brd_digital_amp" units="A">Power board digital current sensor</field>
<field type="float" name="pwr_brd_ext_amp" units="A">Power board extension current sensor</field>
<field type="float" name="pwr_brd_aux_amp" units="A">Power board aux current sensor</field>
</message>
</messages>
</mavlink>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,168 @@
<?xml version="1.0"?>
<mavlink>
<include>common.xml</include>
<version>3</version>
<enums>
<enum name="AUTOQUAD_MAVLINK_DEFS_VERSION">
<description>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.</description>
<entry name="AQ_MAVLINK_DEFS_VERSION_1"/>
</enum>
<enum name="AUTOQUAD_NAV_STATUS">
<description>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.</description>
<entry value="0" name="AQ_NAV_STATUS_INIT">
<description>System is initializing</description>
</entry>
<!-- active modes -->
<entry value="0x00000001" name="AQ_NAV_STATUS_STANDBY">
<description>System is *armed* and standing by, with no throttle input and no autonomous mode</description>
</entry>
<entry value="0x00000002" name="AQ_NAV_STATUS_MANUAL">
<description>Flying (throttle input detected), assumed under manual control unless other mode bits are set</description>
</entry>
<entry value="0x00000004" name="AQ_NAV_STATUS_ALTHOLD">
<description>Altitude hold engaged</description>
</entry>
<entry value="0x00000008" name="AQ_NAV_STATUS_POSHOLD">
<description>Position hold engaged</description>
</entry>
<entry value="0x00000010" name="AQ_NAV_STATUS_GUIDED">
<description>Externally-guided (eg. GCS) navigation mode</description>
</entry>
<entry value="0x00000020" name="AQ_NAV_STATUS_MISSION">
<description>Autonomous mission execution mode</description>
</entry>
<!-- pre-flight -->
<entry value="0x00000100" name="AQ_NAV_STATUS_READY">
<description>Ready but *not armed*</description>
</entry>
<entry value="0x00000200" name="AQ_NAV_STATUS_CALIBRATING">
<description>Calibration mode active</description>
</entry>
<!-- alerts -->
<entry value="0x00001000" name="AQ_NAV_STATUS_NO_RC">
<description>No valid control input (eg. no radio link)</description>
</entry>
<entry value="0x00002000" name="AQ_NAV_STATUS_FUEL_LOW">
<description>Battery is low (stage 1 warning)</description>
</entry>
<entry value="0x00004000" name="AQ_NAV_STATUS_FUEL_CRITICAL">
<description>Battery is depleted (stage 2 warning)</description>
</entry>
<!-- high side feature/modifier/constraint bits (0x8000 0000 = bit 32) -->
<entry value="0x01000000" name="AQ_NAV_STATUS_DVH">
<description>Dynamic Velocity Hold is active (PH with proportional manual direction override)</description>
</entry>
<entry value="0x02000000" name="AQ_NAV_STATUS_DAO">
<description>ynamic Altitude Override is active (AH with proportional manual adjustment)</description>
</entry>
<entry value="0x04000000" name="AQ_NAV_STATUS_CEILING_REACHED">
<description>Craft is at ceiling altitude</description>
</entry>
<entry value="0x08000000" name="AQ_NAV_STATUS_CEILING">
<description>Ceiling altitude is set</description>
</entry>
<entry value="0x10000000" name="AQ_NAV_STATUS_HF_DYNAMIC">
<description>Heading-Free dynamic mode active</description>
</entry>
<entry value="0x20000000" name="AQ_NAV_STATUS_HF_LOCKED">
<description>Heading-Free locked mode active</description>
</entry>
<entry value="0x40000000" name="AQ_NAV_STATUS_RTH">
<description>Automatic Return to Home is active</description>
</entry>
<entry value="0x80000000" name="AQ_NAV_STATUS_FAILSAFE">
<description>System is in failsafe recovery mode</description>
</entry>
</enum>
<enum name="MAV_CMD">
<entry value="1" name="MAV_CMD_AQ_NAV_LEG_ORBIT">
<description>Orbit a waypoint.</description>
<param index="1">Orbit radius in meters</param>
<param index="2">Loiter time in decimal seconds</param>
<param index="3">Maximum horizontal speed in m/s</param>
<param index="4">Desired yaw angle at waypoint</param>
<param index="5">Latitude</param>
<param index="6">Longitude</param>
<param index="7">Altitude</param>
</entry>
<entry value="2" name="MAV_CMD_AQ_TELEMETRY">
<description>Start/stop AutoQuad telemetry values stream.</description>
<param index="1">Start or stop (1 or 0)</param>
<param index="2">Stream frequency in us</param>
<param index="3">Dataset ID (refer to aq_mavlink.h::mavlinkCustomDataSets enum in AQ flight controller code)</param>
<param index="4">Empty</param>
<param index="5">Empty</param>
<param index="6">Empty</param>
<param index="7">Empty</param>
</entry>
<!-- <entry value="3" name="MAV_CMD_AQ_FOLLOW"><description>unused, removed</description></entry> -->
<entry value="4" name="MAV_CMD_AQ_REQUEST_VERSION">
<description>Request AutoQuad firmware version number.</description>
<param index="1">Empty</param>
<param index="2">Empty</param>
<param index="3">Empty</param>
<param index="4">Empty</param>
<param index="5">Empty</param>
<param index="6">Empty</param>
<param index="7">Empty</param>
</entry>
</enum>
<!-- extend MAV_DATA_STREAM -->
<enum name="MAV_DATA_STREAM">
<entry name="MAV_DATA_STREAM_PROPULSION">
<description>Motor/ESC telemetry data.</description>
</entry>
</enum>
</enums>
<messages>
<message id="150" name="AQ_TELEMETRY_F">
<description>Sends up to 20 raw float values.</description>
<field type="uint16_t" name="Index">Index of message</field>
<field type="float" name="value1">value1</field>
<field type="float" name="value2">value2</field>
<field type="float" name="value3">value3</field>
<field type="float" name="value4">value4</field>
<field type="float" name="value5">value5</field>
<field type="float" name="value6">value6</field>
<field type="float" name="value7">value7</field>
<field type="float" name="value8">value8</field>
<field type="float" name="value9">value9</field>
<field type="float" name="value10">value10</field>
<field type="float" name="value11">value11</field>
<field type="float" name="value12">value12</field>
<field type="float" name="value13">value13</field>
<field type="float" name="value14">value14</field>
<field type="float" name="value15">value15</field>
<field type="float" name="value16">value16</field>
<field type="float" name="value17">value17</field>
<field type="float" name="value18">value18</field>
<field type="float" name="value19">value19</field>
<field type="float" name="value20">value20</field>
</message>
<message id="152" name="AQ_ESC_TELEMETRY">
<description>Sends ESC32 telemetry data for up to 4 motors. Multiple messages may be sent in sequence when system has &gt; 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;
</description>
<field type="uint32_t" name="time_boot_ms">Timestamp of the component clock since boot time in ms.</field>
<field type="uint8_t" name="seq">Sequence number of message (first set of 4 motors is #1, next 4 is #2, etc).</field>
<field type="uint8_t" name="num_motors">Total number of active ESCs/motors on the system.</field>
<field type="uint8_t" name="num_in_seq">Number of active ESCs in this sequence (1 through this many array members will be populated with data)</field>
<field type="uint8_t[4]" name="escid">ESC/Motor ID</field>
<field type="uint16_t[4]" name="status_age">Age of each ESC telemetry reading in ms compared to boot time. A value of 0xFFFF means timeout/no data.</field>
<field type="uint8_t[4]" name="data_version">Version of data structure (determines contents).</field>
<field type="uint32_t[4]" name="data0">Data bits 1-32 for each ESC.</field>
<field type="uint32_t[4]" name="data1">Data bits 33-64 for each ESC.</field>
</message>
</messages>
</mavlink>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,48 @@
<?xml version="1.0"?>
<mavlink>
<!-- ICAROUS message definitions -->
<!-- https://github.com/nasa/icarous -->
<!-- email contacts: Swee Balachandran: swee.balachandran@nianet.org -->
<!-- Cesar Munoz: cesar.a.munoz@nasa.gov -->
<!-- mavlink ID range 42000 - 42099 -->
<enums>
<enum name="ICAROUS_TRACK_BAND_TYPES">
<entry name="ICAROUS_TRACK_BAND_TYPE_NONE" value="0"/>
<entry name="ICAROUS_TRACK_BAND_TYPE_NEAR" value="1"/>
<entry name="ICAROUS_TRACK_BAND_TYPE_RECOVERY" value="2"/>
</enum>
<enum name="ICAROUS_FMS_STATE">
<entry name="ICAROUS_FMS_STATE_IDLE" value="0"/>
<entry name="ICAROUS_FMS_STATE_TAKEOFF" value="1"/>
<entry name="ICAROUS_FMS_STATE_CLIMB" value="2"/>
<entry name="ICAROUS_FMS_STATE_CRUISE" value="3"/>
<entry name="ICAROUS_FMS_STATE_APPROACH" value="4"/>
<entry name="ICAROUS_FMS_STATE_LAND" value="5"/>
</enum>
</enums>
<messages>
<message id="42000" name="ICAROUS_HEARTBEAT">
<description>ICAROUS heartbeat</description>
<field type="uint8_t" name="status" enum="ICAROUS_FMS_STATE">See the FMS_STATE enum.</field>
</message>
<message id="42001" name="ICAROUS_KINEMATIC_BANDS">
<description>Kinematic multi bands (track) output from Daidalus</description>
<field type="int8_t" name="numBands">Number of track bands</field>
<field type="uint8_t" name="type1" enum="ICAROUS_TRACK_BAND_TYPES">See the TRACK_BAND_TYPES enum.</field>
<field type="float" name="min1" units="deg">min angle (degrees)</field>
<field type="float" name="max1" units="deg">max angle (degrees)</field>
<field type="uint8_t" name="type2" enum="ICAROUS_TRACK_BAND_TYPES">See the TRACK_BAND_TYPES enum.</field>
<field type="float" name="min2" units="deg">min angle (degrees)</field>
<field type="float" name="max2" units="deg">max angle (degrees)</field>
<field type="uint8_t" name="type3" enum="ICAROUS_TRACK_BAND_TYPES">See the TRACK_BAND_TYPES enum.</field>
<field type="float" name="min3" units="deg">min angle (degrees)</field>
<field type="float" name="max3" units="deg">max angle (degrees)</field>
<field type="uint8_t" name="type4" enum="ICAROUS_TRACK_BAND_TYPES">See the TRACK_BAND_TYPES enum.</field>
<field type="float" name="min4" units="deg">min angle (degrees)</field>
<field type="float" name="max4" units="deg">max angle (degrees)</field>
<field type="uint8_t" name="type5" enum="ICAROUS_TRACK_BAND_TYPES">See the TRACK_BAND_TYPES enum.</field>
<field type="float" name="min5" units="deg">min angle (degrees)</field>
<field type="float" name="max5" units="deg">max angle (degrees)</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,349 @@
<?xml version="1.0"?>
<mavlink>
<include>common.xml</include>
<!-- note that UDB specific messages should use the command id
range from 150 to 250, to leave plenty of room for growth
of common.xml
If you prototype a message here, then you should consider if it
is general enough to move into common.xml later
-->
<enums>
<enum name="MAV_PREFLIGHT_STORAGE_ACTION">
<description>Action required when performing CMD_PREFLIGHT_STORAGE</description>
<entry value="0" name="MAV_PFS_CMD_READ_ALL">
<description>Read all parameters from storage</description>
</entry>
<entry value="1" name="MAV_PFS_CMD_WRITE_ALL">
<description>Write all parameters to storage</description>
</entry>
<entry value="2" name="MAV_PFS_CMD_CLEAR_ALL">
<description>Clear all parameters in storage</description>
</entry>
<entry value="3" name="MAV_PFS_CMD_READ_SPECIFIC">
<description>Read specific parameters from storage</description>
</entry>
<entry value="4" name="MAV_PFS_CMD_WRITE_SPECIFIC">
<description>Write specific parameters to storage</description>
</entry>
<entry value="5" name="MAV_PFS_CMD_CLEAR_SPECIFIC">
<description>Clear specific parameters in storage</description>
</entry>
<entry value="6" name="MAV_PFS_CMD_DO_NOTHING">
<description>do nothing</description>
</entry>
</enum>
<enum name="MAV_CMD">
<entry value="0" name="MAV_CMD_PREFLIGHT_STORAGE_ADVANCED">
<description>Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode.</description>
<param index="1">Storage action: Action defined by MAV_PREFLIGHT_STORAGE_ACTION_ADVANCED</param>
<param index="2">Storage area as defined by parameter database</param>
<param index="3">Storage flags as defined by parameter database</param>
<param index="4">Empty</param>
<param index="5">Empty</param>
<param index="6">Empty</param>
<param index="7">Empty</param>
</entry>
</enum>
</enums>
<messages>
<message id="150" name="FLEXIFUNCTION_SET">
<description>Depreciated but used as a compiler flag. Do not remove</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
</message>
<message id="151" name="FLEXIFUNCTION_READ_REQ">
<description>Reqest reading of flexifunction data</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="int16_t" name="read_req_type">Type of flexifunction data requested</field>
<field type="int16_t" name="data_index">index into data where needed</field>
</message>
<message id="152" name="FLEXIFUNCTION_BUFFER_FUNCTION">
<description>Flexifunction type and parameters for component at function index from buffer</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint16_t" name="func_index">Function index</field>
<field type="uint16_t" name="func_count">Total count of functions</field>
<field type="uint16_t" name="data_address">Address in the flexifunction data, Set to 0xFFFF to use address in target memory</field>
<field type="uint16_t" name="data_size">Size of the </field>
<field type="int8_t[48]" name="data">Settings data</field>
</message>
<message id="153" name="FLEXIFUNCTION_BUFFER_FUNCTION_ACK">
<description>Flexifunction type and parameters for component at function index from buffer</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint16_t" name="func_index">Function index</field>
<field type="uint16_t" name="result">result of acknowledge, 0=fail, 1=good</field>
</message>
<message id="155" name="FLEXIFUNCTION_DIRECTORY">
<description>Acknowldge sucess or failure of a flexifunction command</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint8_t" name="directory_type">0=inputs, 1=outputs</field>
<field type="uint8_t" name="start_index">index of first directory entry to write</field>
<field type="uint8_t" name="count">count of directory entries to write</field>
<field type="int8_t[48]" name="directory_data">Settings data</field>
</message>
<message id="156" name="FLEXIFUNCTION_DIRECTORY_ACK">
<description>Acknowldge sucess or failure of a flexifunction command</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint8_t" name="directory_type">0=inputs, 1=outputs</field>
<field type="uint8_t" name="start_index">index of first directory entry to write</field>
<field type="uint8_t" name="count">count of directory entries to write</field>
<field type="uint16_t" name="result">result of acknowledge, 0=fail, 1=good</field>
</message>
<message id="157" name="FLEXIFUNCTION_COMMAND">
<description>Acknowldge sucess or failure of a flexifunction command</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint8_t" name="command_type">Flexifunction command type</field>
</message>
<message id="158" name="FLEXIFUNCTION_COMMAND_ACK">
<description>Acknowldge sucess or failure of a flexifunction command</description>
<field type="uint16_t" name="command_type">Command acknowledged</field>
<field type="uint16_t" name="result">result of acknowledge</field>
</message>
<message id="170" name="SERIAL_UDB_EXTRA_F2_A">
<description>Backwards compatible MAVLink version of SERIAL_UDB_EXTRA - F2: Format Part A</description>
<field type="uint32_t" name="sue_time">Serial UDB Extra Time</field>
<field type="uint8_t" name="sue_status">Serial UDB Extra Status</field>
<field type="int32_t" name="sue_latitude">Serial UDB Extra Latitude</field>
<field type="int32_t" name="sue_longitude">Serial UDB Extra Longitude</field>
<field type="int32_t" name="sue_altitude">Serial UDB Extra Altitude</field>
<field type="uint16_t" name="sue_waypoint_index">Serial UDB Extra Waypoint Index</field>
<field type="int16_t" name="sue_rmat0">Serial UDB Extra Rmat 0</field>
<field type="int16_t" name="sue_rmat1">Serial UDB Extra Rmat 1</field>
<field type="int16_t" name="sue_rmat2">Serial UDB Extra Rmat 2</field>
<field type="int16_t" name="sue_rmat3">Serial UDB Extra Rmat 3</field>
<field type="int16_t" name="sue_rmat4">Serial UDB Extra Rmat 4</field>
<field type="int16_t" name="sue_rmat5">Serial UDB Extra Rmat 5</field>
<field type="int16_t" name="sue_rmat6">Serial UDB Extra Rmat 6</field>
<field type="int16_t" name="sue_rmat7">Serial UDB Extra Rmat 7</field>
<field type="int16_t" name="sue_rmat8">Serial UDB Extra Rmat 8</field>
<field type="uint16_t" name="sue_cog">Serial UDB Extra GPS Course Over Ground</field>
<field type="int16_t" name="sue_sog">Serial UDB Extra Speed Over Ground</field>
<field type="uint16_t" name="sue_cpu_load">Serial UDB Extra CPU Load</field>
<field type="uint16_t" name="sue_air_speed_3DIMU">Serial UDB Extra 3D IMU Air Speed</field>
<field type="int16_t" name="sue_estimated_wind_0">Serial UDB Extra Estimated Wind 0</field>
<field type="int16_t" name="sue_estimated_wind_1">Serial UDB Extra Estimated Wind 1</field>
<field type="int16_t" name="sue_estimated_wind_2">Serial UDB Extra Estimated Wind 2</field>
<field type="int16_t" name="sue_magFieldEarth0">Serial UDB Extra Magnetic Field Earth 0 </field>
<field type="int16_t" name="sue_magFieldEarth1">Serial UDB Extra Magnetic Field Earth 1 </field>
<field type="int16_t" name="sue_magFieldEarth2">Serial UDB Extra Magnetic Field Earth 2 </field>
<field type="int16_t" name="sue_svs">Serial UDB Extra Number of Sattelites in View</field>
<field type="int16_t" name="sue_hdop">Serial UDB Extra GPS Horizontal Dilution of Precision</field>
</message>
<message id="171" name="SERIAL_UDB_EXTRA_F2_B">
<description>Backwards compatible version of SERIAL_UDB_EXTRA - F2: Part B</description>
<field type="uint32_t" name="sue_time">Serial UDB Extra Time</field>
<field type="int16_t" name="sue_pwm_input_1">Serial UDB Extra PWM Input Channel 1</field>
<field type="int16_t" name="sue_pwm_input_2">Serial UDB Extra PWM Input Channel 2</field>
<field type="int16_t" name="sue_pwm_input_3">Serial UDB Extra PWM Input Channel 3</field>
<field type="int16_t" name="sue_pwm_input_4">Serial UDB Extra PWM Input Channel 4</field>
<field type="int16_t" name="sue_pwm_input_5">Serial UDB Extra PWM Input Channel 5</field>
<field type="int16_t" name="sue_pwm_input_6">Serial UDB Extra PWM Input Channel 6</field>
<field type="int16_t" name="sue_pwm_input_7">Serial UDB Extra PWM Input Channel 7</field>
<field type="int16_t" name="sue_pwm_input_8">Serial UDB Extra PWM Input Channel 8</field>
<field type="int16_t" name="sue_pwm_input_9">Serial UDB Extra PWM Input Channel 9</field>
<field type="int16_t" name="sue_pwm_input_10">Serial UDB Extra PWM Input Channel 10</field>
<field type="int16_t" name="sue_pwm_input_11">Serial UDB Extra PWM Input Channel 11</field>
<field type="int16_t" name="sue_pwm_input_12">Serial UDB Extra PWM Input Channel 12</field>
<field type="int16_t" name="sue_pwm_output_1">Serial UDB Extra PWM Output Channel 1</field>
<field type="int16_t" name="sue_pwm_output_2">Serial UDB Extra PWM Output Channel 2</field>
<field type="int16_t" name="sue_pwm_output_3">Serial UDB Extra PWM Output Channel 3</field>
<field type="int16_t" name="sue_pwm_output_4">Serial UDB Extra PWM Output Channel 4</field>
<field type="int16_t" name="sue_pwm_output_5">Serial UDB Extra PWM Output Channel 5</field>
<field type="int16_t" name="sue_pwm_output_6">Serial UDB Extra PWM Output Channel 6</field>
<field type="int16_t" name="sue_pwm_output_7">Serial UDB Extra PWM Output Channel 7</field>
<field type="int16_t" name="sue_pwm_output_8">Serial UDB Extra PWM Output Channel 8</field>
<field type="int16_t" name="sue_pwm_output_9">Serial UDB Extra PWM Output Channel 9</field>
<field type="int16_t" name="sue_pwm_output_10">Serial UDB Extra PWM Output Channel 10</field>
<field type="int16_t" name="sue_pwm_output_11">Serial UDB Extra PWM Output Channel 11</field>
<field type="int16_t" name="sue_pwm_output_12">Serial UDB Extra PWM Output Channel 12</field>
<field type="int16_t" name="sue_imu_location_x">Serial UDB Extra IMU Location X</field>
<field type="int16_t" name="sue_imu_location_y">Serial UDB Extra IMU Location Y</field>
<field type="int16_t" name="sue_imu_location_z">Serial UDB Extra IMU Location Z</field>
<field type="int16_t" name="sue_location_error_earth_x">Serial UDB Location Error Earth X</field>
<field type="int16_t" name="sue_location_error_earth_y">Serial UDB Location Error Earth Y</field>
<field type="int16_t" name="sue_location_error_earth_z">Serial UDB Location Error Earth Z</field>
<field type="uint32_t" name="sue_flags">Serial UDB Extra Status Flags</field>
<field type="int16_t" name="sue_osc_fails">Serial UDB Extra Oscillator Failure Count</field>
<field type="int16_t" name="sue_imu_velocity_x">Serial UDB Extra IMU Velocity X</field>
<field type="int16_t" name="sue_imu_velocity_y">Serial UDB Extra IMU Velocity Y</field>
<field type="int16_t" name="sue_imu_velocity_z">Serial UDB Extra IMU Velocity Z</field>
<field type="int16_t" name="sue_waypoint_goal_x">Serial UDB Extra Current Waypoint Goal X</field>
<field type="int16_t" name="sue_waypoint_goal_y">Serial UDB Extra Current Waypoint Goal Y</field>
<field type="int16_t" name="sue_waypoint_goal_z">Serial UDB Extra Current Waypoint Goal Z</field>
<field type="int16_t" name="sue_aero_x">Aeroforce in UDB X Axis</field>
<field type="int16_t" name="sue_aero_y">Aeroforce in UDB Y Axis</field>
<field type="int16_t" name="sue_aero_z">Aeroforce in UDB Z axis</field>
<field type="int16_t" name="sue_barom_temp">SUE barometer temperature</field>
<field type="int32_t" name="sue_barom_press">SUE barometer pressure</field>
<field type="int32_t" name="sue_barom_alt">SUE barometer altitude</field>
<field type="int16_t" name="sue_bat_volt">SUE battery voltage</field>
<field type="int16_t" name="sue_bat_amp">SUE battery current</field>
<field type="int16_t" name="sue_bat_amp_hours">SUE battery milli amp hours used</field>
<field type="int16_t" name="sue_desired_height">Sue autopilot desired height</field>
<field type="int16_t" name="sue_memory_stack_free">Serial UDB Extra Stack Memory Free</field>
</message>
<message id="172" name="SERIAL_UDB_EXTRA_F4">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F4: format</description>
<field type="uint8_t" name="sue_ROLL_STABILIZATION_AILERONS">Serial UDB Extra Roll Stabilization with Ailerons Enabled</field>
<field type="uint8_t" name="sue_ROLL_STABILIZATION_RUDDER">Serial UDB Extra Roll Stabilization with Rudder Enabled</field>
<field type="uint8_t" name="sue_PITCH_STABILIZATION">Serial UDB Extra Pitch Stabilization Enabled</field>
<field type="uint8_t" name="sue_YAW_STABILIZATION_RUDDER">Serial UDB Extra Yaw Stabilization using Rudder Enabled</field>
<field type="uint8_t" name="sue_YAW_STABILIZATION_AILERON">Serial UDB Extra Yaw Stabilization using Ailerons Enabled</field>
<field type="uint8_t" name="sue_AILERON_NAVIGATION">Serial UDB Extra Navigation with Ailerons Enabled</field>
<field type="uint8_t" name="sue_RUDDER_NAVIGATION">Serial UDB Extra Navigation with Rudder Enabled</field>
<field type="uint8_t" name="sue_ALTITUDEHOLD_STABILIZED">Serial UDB Extra Type of Alitude Hold when in Stabilized Mode</field>
<field type="uint8_t" name="sue_ALTITUDEHOLD_WAYPOINT">Serial UDB Extra Type of Alitude Hold when in Waypoint Mode</field>
<field type="uint8_t" name="sue_RACING_MODE">Serial UDB Extra Firmware racing mode enabled</field>
</message>
<message id="173" name="SERIAL_UDB_EXTRA_F5">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F5: format</description>
<field type="float" name="sue_YAWKP_AILERON">Serial UDB YAWKP_AILERON Gain for Proporional control of navigation</field>
<field type="float" name="sue_YAWKD_AILERON">Serial UDB YAWKD_AILERON Gain for Rate control of navigation</field>
<field type="float" name="sue_ROLLKP">Serial UDB Extra ROLLKP Gain for Proportional control of roll stabilization</field>
<field type="float" name="sue_ROLLKD">Serial UDB Extra ROLLKD Gain for Rate control of roll stabilization</field>
</message>
<message id="174" name="SERIAL_UDB_EXTRA_F6">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F6: format</description>
<field type="float" name="sue_PITCHGAIN">Serial UDB Extra PITCHGAIN Proportional Control</field>
<field type="float" name="sue_PITCHKD">Serial UDB Extra Pitch Rate Control</field>
<field type="float" name="sue_RUDDER_ELEV_MIX">Serial UDB Extra Rudder to Elevator Mix</field>
<field type="float" name="sue_ROLL_ELEV_MIX">Serial UDB Extra Roll to Elevator Mix</field>
<field type="float" name="sue_ELEVATOR_BOOST">Gain For Boosting Manual Elevator control When Plane Stabilized</field>
</message>
<message id="175" name="SERIAL_UDB_EXTRA_F7">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F7: format</description>
<field type="float" name="sue_YAWKP_RUDDER">Serial UDB YAWKP_RUDDER Gain for Proporional control of navigation</field>
<field type="float" name="sue_YAWKD_RUDDER">Serial UDB YAWKD_RUDDER Gain for Rate control of navigation</field>
<field type="float" name="sue_ROLLKP_RUDDER">Serial UDB Extra ROLLKP_RUDDER Gain for Proportional control of roll stabilization</field>
<field type="float" name="sue_ROLLKD_RUDDER">Serial UDB Extra ROLLKD_RUDDER Gain for Rate control of roll stabilization</field>
<field type="float" name="sue_RUDDER_BOOST">SERIAL UDB EXTRA Rudder Boost Gain to Manual Control when stabilized</field>
<field type="float" name="sue_RTL_PITCH_DOWN">Serial UDB Extra Return To Landing - Angle to Pitch Plane Down</field>
</message>
<message id="176" name="SERIAL_UDB_EXTRA_F8">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F8: format</description>
<field type="float" name="sue_HEIGHT_TARGET_MAX">Serial UDB Extra HEIGHT_TARGET_MAX</field>
<field type="float" name="sue_HEIGHT_TARGET_MIN">Serial UDB Extra HEIGHT_TARGET_MIN</field>
<field type="float" name="sue_ALT_HOLD_THROTTLE_MIN">Serial UDB Extra ALT_HOLD_THROTTLE_MIN</field>
<field type="float" name="sue_ALT_HOLD_THROTTLE_MAX">Serial UDB Extra ALT_HOLD_THROTTLE_MAX</field>
<field type="float" name="sue_ALT_HOLD_PITCH_MIN">Serial UDB Extra ALT_HOLD_PITCH_MIN</field>
<field type="float" name="sue_ALT_HOLD_PITCH_MAX">Serial UDB Extra ALT_HOLD_PITCH_MAX</field>
<field type="float" name="sue_ALT_HOLD_PITCH_HIGH">Serial UDB Extra ALT_HOLD_PITCH_HIGH</field>
</message>
<message id="177" name="SERIAL_UDB_EXTRA_F13">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F13: format</description>
<field type="int16_t" name="sue_week_no">Serial UDB Extra GPS Week Number</field>
<field type="int32_t" name="sue_lat_origin">Serial UDB Extra MP Origin Latitude</field>
<field type="int32_t" name="sue_lon_origin">Serial UDB Extra MP Origin Longitude</field>
<field type="int32_t" name="sue_alt_origin">Serial UDB Extra MP Origin Altitude Above Sea Level</field>
</message>
<message id="178" name="SERIAL_UDB_EXTRA_F14">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F14: format</description>
<field type="uint8_t" name="sue_WIND_ESTIMATION">Serial UDB Extra Wind Estimation Enabled</field>
<field type="uint8_t" name="sue_GPS_TYPE">Serial UDB Extra Type of GPS Unit</field>
<field type="uint8_t" name="sue_DR">Serial UDB Extra Dead Reckoning Enabled</field>
<field type="uint8_t" name="sue_BOARD_TYPE">Serial UDB Extra Type of UDB Hardware</field>
<field type="uint8_t" name="sue_AIRFRAME">Serial UDB Extra Type of Airframe</field>
<field type="int16_t" name="sue_RCON">Serial UDB Extra Reboot Register of DSPIC</field>
<field type="int16_t" name="sue_TRAP_FLAGS">Serial UDB Extra Last dspic Trap Flags</field>
<field type="uint32_t" name="sue_TRAP_SOURCE">Serial UDB Extra Type Program Address of Last Trap</field>
<field type="int16_t" name="sue_osc_fail_count">Serial UDB Extra Number of Ocillator Failures</field>
<field type="uint8_t" name="sue_CLOCK_CONFIG">Serial UDB Extra UDB Internal Clock Configuration</field>
<field type="uint8_t" name="sue_FLIGHT_PLAN_TYPE">Serial UDB Extra Type of Flight Plan</field>
</message>
<message id="179" name="SERIAL_UDB_EXTRA_F15">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F15 format</description>
<field type="uint8_t[40]" name="sue_ID_VEHICLE_MODEL_NAME">Serial UDB Extra Model Name Of Vehicle</field>
<field type="uint8_t[20]" name="sue_ID_VEHICLE_REGISTRATION">Serial UDB Extra Registraton Number of Vehicle</field>
</message>
<message id="180" name="SERIAL_UDB_EXTRA_F16">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F16 format</description>
<field type="uint8_t[40]" name="sue_ID_LEAD_PILOT">Serial UDB Extra Name of Expected Lead Pilot</field>
<field type="uint8_t[70]" name="sue_ID_DIY_DRONES_URL">Serial UDB Extra URL of Lead Pilot or Team</field>
</message>
<message id="181" name="ALTITUDES">
<description>The altitude measured by sensors and IMU</description>
<field type="uint32_t" name="time_boot_ms">Timestamp (milliseconds since system boot)</field>
<field type="int32_t" name="alt_gps">GPS altitude in meters, expressed as * 1000 (millimeters), above MSL</field>
<field type="int32_t" name="alt_imu">IMU altitude above ground in meters, expressed as * 1000 (millimeters)</field>
<field type="int32_t" name="alt_barometric">barometeric altitude above ground in meters, expressed as * 1000 (millimeters)</field>
<field type="int32_t" name="alt_optical_flow">Optical flow altitude above ground in meters, expressed as * 1000 (millimeters)</field>
<field type="int32_t" name="alt_range_finder">Rangefinder Altitude above ground in meters, expressed as * 1000 (millimeters)</field>
<field type="int32_t" name="alt_extra">Extra altitude above ground in meters, expressed as * 1000 (millimeters)</field>
</message>
<message id="182" name="AIRSPEEDS">
<description>The airspeed measured by sensors and IMU</description>
<field type="uint32_t" name="time_boot_ms">Timestamp (milliseconds since system boot)</field>
<field type="int16_t" name="airspeed_imu">Airspeed estimate from IMU, cm/s</field>
<field type="int16_t" name="airspeed_pitot">Pitot measured forward airpseed, cm/s</field>
<field type="int16_t" name="airspeed_hot_wire">Hot wire anenometer measured airspeed, cm/s</field>
<field type="int16_t" name="airspeed_ultrasonic">Ultrasonic measured airspeed, cm/s</field>
<field type="int16_t" name="aoa">Angle of attack sensor, degrees * 10</field>
<field type="int16_t" name="aoy">Yaw angle sensor, degrees * 10</field>
</message>
<message id="183" name="SERIAL_UDB_EXTRA_F17">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F17 format</description>
<field type="float" name="sue_feed_forward">SUE Feed Forward Gain</field>
<field type="float" name="sue_turn_rate_nav">SUE Max Turn Rate when Navigating</field>
<field type="float" name="sue_turn_rate_fbw">SUE Max Turn Rate in Fly By Wire Mode</field>
</message>
<message id="184" name="SERIAL_UDB_EXTRA_F18">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F18 format</description>
<field type="float" name="angle_of_attack_normal">SUE Angle of Attack Normal</field>
<field type="float" name="angle_of_attack_inverted">SUE Angle of Attack Inverted</field>
<field type="float" name="elevator_trim_normal">SUE Elevator Trim Normal</field>
<field type="float" name="elevator_trim_inverted">SUE Elevator Trim Inverted</field>
<field type="float" name="reference_speed">SUE reference_speed</field>
</message>
<message id="185" name="SERIAL_UDB_EXTRA_F19">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F19 format</description>
<field type="uint8_t" name="sue_aileron_output_channel">SUE aileron output channel</field>
<field type="uint8_t" name="sue_aileron_reversed">SUE aileron reversed</field>
<field type="uint8_t" name="sue_elevator_output_channel">SUE elevator output channel</field>
<field type="uint8_t" name="sue_elevator_reversed">SUE elevator reversed</field>
<field type="uint8_t" name="sue_throttle_output_channel">SUE throttle output channel</field>
<field type="uint8_t" name="sue_throttle_reversed">SUE throttle reversed</field>
<field type="uint8_t" name="sue_rudder_output_channel">SUE rudder output channel</field>
<field type="uint8_t" name="sue_rudder_reversed">SUE rudder reversed</field>
</message>
<message id="186" name="SERIAL_UDB_EXTRA_F20">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F20 format</description>
<field type="uint8_t" name="sue_number_of_inputs">SUE Number of Input Channels</field>
<field type="int16_t" name="sue_trim_value_input_1">SUE UDB PWM Trim Value on Input 1</field>
<field type="int16_t" name="sue_trim_value_input_2">SUE UDB PWM Trim Value on Input 2</field>
<field type="int16_t" name="sue_trim_value_input_3">SUE UDB PWM Trim Value on Input 3</field>
<field type="int16_t" name="sue_trim_value_input_4">SUE UDB PWM Trim Value on Input 4</field>
<field type="int16_t" name="sue_trim_value_input_5">SUE UDB PWM Trim Value on Input 5</field>
<field type="int16_t" name="sue_trim_value_input_6">SUE UDB PWM Trim Value on Input 6</field>
<field type="int16_t" name="sue_trim_value_input_7">SUE UDB PWM Trim Value on Input 7</field>
<field type="int16_t" name="sue_trim_value_input_8">SUE UDB PWM Trim Value on Input 8</field>
<field type="int16_t" name="sue_trim_value_input_9">SUE UDB PWM Trim Value on Input 9</field>
<field type="int16_t" name="sue_trim_value_input_10">SUE UDB PWM Trim Value on Input 10</field>
<field type="int16_t" name="sue_trim_value_input_11">SUE UDB PWM Trim Value on Input 11</field>
<field type="int16_t" name="sue_trim_value_input_12">SUE UDB PWM Trim Value on Input 12</field>
</message>
<message id="187" name="SERIAL_UDB_EXTRA_F21">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F21 format</description>
<field type="int16_t" name="sue_accel_x_offset">SUE X accelerometer offset</field>
<field type="int16_t" name="sue_accel_y_offset">SUE Y accelerometer offset</field>
<field type="int16_t" name="sue_accel_z_offset">SUE Z accelerometer offset</field>
<field type="int16_t" name="sue_gyro_x_offset">SUE X gyro offset</field>
<field type="int16_t" name="sue_gyro_y_offset">SUE Y gyro offset</field>
<field type="int16_t" name="sue_gyro_z_offset">SUE Z gyro offset</field>
</message>
<message id="188" name="SERIAL_UDB_EXTRA_F22">
<description>Backwards compatible version of SERIAL_UDB_EXTRA F22 format</description>
<field type="int16_t" name="sue_accel_x_at_calibration">SUE X accelerometer at calibration time</field>
<field type="int16_t" name="sue_accel_y_at_calibration">SUE Y accelerometer at calibration time</field>
<field type="int16_t" name="sue_accel_z_at_calibration">SUE Z accelerometer at calibration time</field>
<field type="int16_t" name="sue_gyro_x_at_calibration">SUE X gyro at calibration time</field>
<field type="int16_t" name="sue_gyro_y_at_calibration">SUE Y gyro at calibration time</field>
<field type="int16_t" name="sue_gyro_z_at_calibration">SUE Z gyro at calibration time</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,189 @@
<?xml version="1.0"?>
<mavlink>
<version>2</version>
<enums>
<enum name="MAV_AUTOPILOT">
<description>Micro air vehicle / autopilot classes. This identifies the individual model.</description>
<entry value="0" name="MAV_AUTOPILOT_GENERIC">
<description>Generic autopilot, full support for everything</description>
</entry>
<entry value="1" name="MAV_AUTOPILOT_PIXHAWK">
<description>PIXHAWK autopilot, http://pixhawk.ethz.ch</description>
</entry>
<entry value="2" name="MAV_AUTOPILOT_SLUGS">
<description>SLUGS autopilot, http://slugsuav.soe.ucsc.edu</description>
</entry>
<entry value="3" name="MAV_AUTOPILOT_ARDUPILOTMEGA">
<description>ArduPilotMega / ArduCopter, http://diydrones.com</description>
</entry>
<entry value="4" name="MAV_AUTOPILOT_OPENPILOT">
<description>OpenPilot, http://openpilot.org</description>
</entry>
<entry value="5" name="MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY">
<description>Generic autopilot only supporting simple waypoints</description>
</entry>
<entry value="6" name="MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY">
<description>Generic autopilot supporting waypoints and other simple navigation commands</description>
</entry>
<entry value="7" name="MAV_AUTOPILOT_GENERIC_MISSION_FULL">
<description>Generic autopilot supporting the full mission command set</description>
</entry>
<entry value="8" name="MAV_AUTOPILOT_INVALID">
<description>No valid autopilot, e.g. a GCS or other MAVLink component</description>
</entry>
<entry value="9" name="MAV_AUTOPILOT_PPZ">
<description>PPZ UAV - http://nongnu.org/paparazzi</description>
</entry>
<entry value="10" name="MAV_AUTOPILOT_UDB">
<description>UAV Dev Board</description>
</entry>
<entry value="11" name="MAV_AUTOPILOT_FP">
<description>FlexiPilot</description>
</entry>
</enum>
<enum name="MAV_TYPE">
<entry value="0" name="MAV_TYPE_GENERIC">
<description>Generic micro air vehicle.</description>
</entry>
<entry value="1" name="MAV_TYPE_FIXED_WING">
<description>Fixed wing aircraft.</description>
</entry>
<entry value="2" name="MAV_TYPE_QUADROTOR">
<description>Quadrotor</description>
</entry>
<entry value="3" name="MAV_TYPE_COAXIAL">
<description>Coaxial helicopter</description>
</entry>
<entry value="4" name="MAV_TYPE_HELICOPTER">
<description>Normal helicopter with tail rotor.</description>
</entry>
<entry value="5" name="MAV_TYPE_ANTENNA_TRACKER">
<description>Ground installation</description>
</entry>
<entry value="6" name="MAV_TYPE_GCS">
<description>Operator control unit / ground control station</description>
</entry>
<entry value="7" name="MAV_TYPE_AIRSHIP">
<description>Airship, controlled</description>
</entry>
<entry value="8" name="MAV_TYPE_FREE_BALLOON">
<description>Free balloon, uncontrolled</description>
</entry>
<entry value="9" name="MAV_TYPE_ROCKET">
<description>Rocket</description>
</entry>
<entry value="10" name="MAV_TYPE_GROUND_ROVER">
<description>Ground rover</description>
</entry>
<entry value="11" name="MAV_TYPE_SURFACE_BOAT">
<description>Surface vessel, boat, ship</description>
</entry>
<entry value="12" name="MAV_TYPE_SUBMARINE">
<description>Submarine</description>
</entry>
<entry value="13" name="MAV_TYPE_HEXAROTOR">
<description>Hexarotor</description>
</entry>
<entry value="14" name="MAV_TYPE_OCTOROTOR">
<description>Octorotor</description>
</entry>
<entry value="15" name="MAV_TYPE_TRICOPTER">
<description>Octorotor</description>
</entry>
<entry value="16" name="MAV_TYPE_FLAPPING_WING">
<description>Flapping wing</description>
</entry>
</enum>
<enum name="MAV_MODE_FLAG">
<description>These flags encode the MAV mode.</description>
<entry value="128" name="MAV_MODE_FLAG_SAFETY_ARMED">
<description>0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly.</description>
</entry>
<entry value="64" name="MAV_MODE_FLAG_MANUAL_INPUT_ENABLED">
<description>0b01000000 remote control input is enabled.</description>
</entry>
<entry value="32" name="MAV_MODE_FLAG_HIL_ENABLED">
<description>0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational.</description>
</entry>
<entry value="16" name="MAV_MODE_FLAG_STABILIZE_ENABLED">
<description>0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around.</description>
</entry>
<entry value="8" name="MAV_MODE_FLAG_GUIDED_ENABLED">
<description>0b00001000 guided mode enabled, system flies waypoints / mission items.</description>
</entry>
<entry value="4" name="MAV_MODE_FLAG_AUTO_ENABLED">
<description>0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation.</description>
</entry>
<entry value="2" name="MAV_MODE_FLAG_TEST_ENABLED">
<description>0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations.</description>
</entry>
<entry value="1" name="MAV_MODE_FLAG_CUSTOM_MODE_ENABLED">
<description>0b00000001 Reserved for future use.</description>
</entry>
</enum>
<enum name="MAV_MODE_FLAG_DECODE_POSITION">
<description>These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not.</description>
<entry value="128" name="MAV_MODE_FLAG_DECODE_POSITION_SAFETY">
<description>First bit: 10000000</description>
</entry>
<entry value="64" name="MAV_MODE_FLAG_DECODE_POSITION_MANUAL">
<description>Second bit: 01000000</description>
</entry>
<entry value="32" name="MAV_MODE_FLAG_DECODE_POSITION_HIL">
<description>Third bit: 00100000</description>
</entry>
<entry value="16" name="MAV_MODE_FLAG_DECODE_POSITION_STABILIZE">
<description>Fourth bit: 00010000</description>
</entry>
<entry value="8" name="MAV_MODE_FLAG_DECODE_POSITION_GUIDED">
<description>Fifth bit: 00001000</description>
</entry>
<entry value="4" name="MAV_MODE_FLAG_DECODE_POSITION_AUTO">
<description>Sixt bit: 00000100</description>
</entry>
<entry value="2" name="MAV_MODE_FLAG_DECODE_POSITION_TEST">
<description>Seventh bit: 00000010</description>
</entry>
<entry value="1" name="MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE">
<description>Eighth bit: 00000001</description>
</entry>
</enum>
<enum name="MAV_STATE">
<entry value="0" name="MAV_STATE_UNINIT">
<description>Uninitialized system, state is unknown.</description>
</entry>
<entry name="MAV_STATE_BOOT">
<description>System is booting up.</description>
</entry>
<entry name="MAV_STATE_CALIBRATING">
<description>System is calibrating and not flight-ready.</description>
</entry>
<entry name="MAV_STATE_STANDBY">
<description>System is grounded and on standby. It can be launched any time.</description>
</entry>
<entry name="MAV_STATE_ACTIVE">
<description>System is active and might be already airborne. Motors are engaged.</description>
</entry>
<entry name="MAV_STATE_CRITICAL">
<description>System is in a non-normal flight mode. It can however still navigate.</description>
</entry>
<entry name="MAV_STATE_EMERGENCY">
<description>System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down.</description>
</entry>
<entry name="MAV_STATE_POWEROFF">
<description>System just initialized its power-down sequence, will shut down now.</description>
</entry>
</enum>
</enums>
<messages>
<message id="0" name="HEARTBEAT">
<description>The heartbeat message shows that a system is present and responding. The type of the MAV and Autopilot hardware allow the receiving system to treat further messages from this system appropriate (e.g. by laying out the user interface based on the autopilot).</description>
<field type="uint8_t" name="type" enum="MAV_TYPE">Type of the MAV (quadrotor, helicopter, etc., up to 15 types, defined in MAV_TYPE ENUM)</field>
<field type="uint8_t" name="autopilot" enum="MAV_AUTOPILOT">Autopilot type / class. defined in MAV_AUTOPILOT ENUM</field>
<field type="uint8_t" name="base_mode">System mode bitfield, see MAV_MODE_FLAGS ENUM in mavlink/include/mavlink_types.h</field>
<field type="uint32_t" name="custom_mode">A bitfield for use for autopilot-specific flags.</field>
<field type="uint8_t" name="system_status" enum="MAV_STATE">System status flag, see MAV_STATE ENUM</field>
<field type="uint8_t_mavlink_version" name="mavlink_version">MAVLink version</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0"?>
<mavlink>
<include>common.xml</include>
<version>3</version>
<enums>
</enums>
<messages>
<!-- Messages specifically designated for the Paparazzi autopilot -->
<message id="180" name="SCRIPT_ITEM">
<description>Message encoding a mission script item. This message is emitted upon a request for the next script item.</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint16_t" name="seq">Sequence</field>
<field type="char[50]" name="name">The name of the mission script, NULL terminated.</field>
</message>
<message id="181" name="SCRIPT_REQUEST">
<description>Request script item with the sequence number seq. The response of the system to this message should be a SCRIPT_ITEM message.</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint16_t" name="seq">Sequence</field>
</message>
<message id="182" name="SCRIPT_REQUEST_LIST">
<description>Request the overall list of mission items from the system/component.</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
</message>
<message id="183" name="SCRIPT_COUNT">
<description>This message is emitted as response to SCRIPT_REQUEST_LIST by the MAV to get the number of mission scripts.</description>
<field type="uint8_t" name="target_system">System ID</field>
<field type="uint8_t" name="target_component">Component ID</field>
<field type="uint16_t" name="count">Number of script items in the sequence</field>
</message>
<message id="184" name="SCRIPT_CURRENT">
<description>This message informs about the currently active SCRIPT.</description>
<field type="uint16_t" name="seq">Active Sequence</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,67 @@
<?xml version="1.0"?>
<!-- MESSAGE IDs 150 - 240: Space for custom messages in individual projectname_messages.xml files -->
<mavlink>
<include>common.xml</include>
<messages>
<message id="150" name="ARRAY_TEST_0">
<description>Array test #0.</description>
<field type="uint8_t" name="v1">Stub field</field>
<field type="int8_t[4]" name="ar_i8">Value array</field>
<field type="uint8_t[4]" name="ar_u8">Value array</field>
<field type="uint16_t[4]" name="ar_u16">Value array</field>
<field type="uint32_t[4]" name="ar_u32">Value array</field>
</message>
<message id="151" name="ARRAY_TEST_1">
<description>Array test #1.</description>
<field type="uint32_t[4]" name="ar_u32">Value array</field>
</message>
<message id="153" name="ARRAY_TEST_3">
<description>Array test #3.</description>
<field type="uint8_t" name="v">Stub field</field>
<field type="uint32_t[4]" name="ar_u32">Value array</field>
</message>
<message id="154" name="ARRAY_TEST_4">
<description>Array test #4.</description>
<field type="uint32_t[4]" name="ar_u32">Value array</field>
<field type="uint8_t" name="v">Stub field</field>
</message>
<message id="155" name="ARRAY_TEST_5">
<description>Array test #5.</description>
<field type="char[5]" name="c1">Value array</field>
<field type="char[5]" name="c2">Value array</field>
</message>
<message id="156" name="ARRAY_TEST_6">
<description>Array test #6.</description>
<field type="uint8_t" name="v1">Stub field</field>
<field type="uint16_t" name="v2">Stub field</field>
<field type="uint32_t" name="v3">Stub field</field>
<field type="uint32_t[2]" name="ar_u32">Value array</field>
<field type="int32_t[2]" name="ar_i32">Value array</field>
<field type="uint16_t[2]" name="ar_u16">Value array</field>
<field type="int16_t[2]" name="ar_i16">Value array</field>
<field type="uint8_t[2]" name="ar_u8">Value array</field>
<field type="int8_t[2]" name="ar_i8">Value array</field>
<field type="char[32]" name="ar_c">Value array</field>
<field type="double[2]" name="ar_d">Value array</field>
<field type="float[2]" name="ar_f">Value array</field>
</message>
<message id="157" name="ARRAY_TEST_7">
<description>Array test #7.</description>
<field type="double[2]" name="ar_d">Value array</field>
<field type="float[2]" name="ar_f">Value array</field>
<field type="uint32_t[2]" name="ar_u32">Value array</field>
<field type="int32_t[2]" name="ar_i32">Value array</field>
<field type="uint16_t[2]" name="ar_u16">Value array</field>
<field type="int16_t[2]" name="ar_i16">Value array</field>
<field type="uint8_t[2]" name="ar_u8">Value array</field>
<field type="int8_t[2]" name="ar_i8">Value array</field>
<field type="char[32]" name="ar_c">Value array</field>
</message>
<message id="158" name="ARRAY_TEST_8">
<description>Array test #8.</description>
<field type="uint32_t" name="v3">Stub field</field>
<field type="double[2]" name="ar_d">Value array</field>
<field type="uint16_t[2]" name="ar_u16">Value array</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,313 @@
<?xml version="1.0"?>
<mavlink>
<include>common.xml</include>
<enums>
<enum name="MAV_CMD">
<!-- 1-10000 reserved for common commands -->
<entry value="10001" name="MAV_CMD_DO_NOTHING">
<description>Does nothing.</description>
<param index="1">1 to arm, 0 to disarm</param>
</entry>
<!-- Unused Commands -->
<!--
<entry value="10002" name="MAV_CMD_CALIBRATE_RC">
<description>Initiate radio control calibration.</description>
</entry>
<entry value="10003" name="MAV_CMD_CALIBRATE_MAGNETOMETER">
<description>Stops recording data.</description>
</entry>
<entry value="10004" name="MAV_CMD_START_RECORDING">
<description>Start recording data.</description>
</entry>
<entry value="10005" name="MAV_CMD_PAUSE_RECORDING">
<description>Pauses recording data.</description>
</entry>
<entry value="10006" name="MAV_CMD_STOP_RECORDING">
<description>Stops recording data.</description>
</entry>
-->
<!-- Old MAVlink Common Actions -->
<entry value="10011" name="MAV_CMD_RETURN_TO_BASE">
<description>Return vehicle to base.</description>
<param index="1">0: return to base, 1: track mobile base</param>
</entry>
<entry value="10012" name="MAV_CMD_STOP_RETURN_TO_BASE">
<description>Stops the vehicle from returning to base and resumes flight. </description>
</entry>
<entry value="10013" name="MAV_CMD_TURN_LIGHT">
<description>Turns the vehicle's visible or infrared lights on or off.</description>
<param index="1">0: visible lights, 1: infrared lights</param>
<param index="2">0: turn on, 1: turn off</param>
</entry>
<entry value="10014" name="MAV_CMD_GET_MID_LEVEL_COMMANDS">
<description>Requests vehicle to send current mid-level commands to ground station.</description>
</entry>
<entry value="10015" name="MAV_CMD_MIDLEVEL_STORAGE">
<description>Requests storage of mid-level commands.</description>
<param index="1">Mid-level command storage: 0: read from flash/EEPROM, 1: write to flash/EEPROM</param>
</entry>
<!-- From SLUGS_ACTION Enum -->
</enum>
<enum name="SLUGS_MODE">
<description>Slugs-specific navigation modes.</description>
<entry value="0" name="SLUGS_MODE_NONE">
<description>No change to SLUGS mode.</description>
</entry>
<entry value="1" name="SLUGS_MODE_LIFTOFF">
<description>Vehicle is in liftoff mode.</description>
</entry>
<entry value="2" name="SLUGS_MODE_PASSTHROUGH">
<description>Vehicle is in passthrough mode, being controlled by a pilot.</description>
</entry>
<entry value="3" name="SLUGS_MODE_WAYPOINT">
<description>Vehicle is in waypoint mode, navigating to waypoints.</description>
</entry>
<entry value="4" name="SLUGS_MODE_MID_LEVEL">
<description>Vehicle is executing mid-level commands.</description>
</entry>
<entry value="5" name="SLUGS_MODE_RETURNING">
<description>Vehicle is returning to the home location.</description>
</entry>
<entry value="6" name="SLUGS_MODE_LANDING">
<description>Vehicle is landing.</description>
</entry>
<entry value="7" name="SLUGS_MODE_LOST">
<description>Lost connection with vehicle.</description>
</entry>
<entry value="8" name="SLUGS_MODE_SELECTIVE_PASSTHROUGH">
<description>Vehicle is in selective passthrough mode, where selected surfaces are being manually controlled.</description>
</entry>
<entry value="9" name="SLUGS_MODE_ISR">
<description>Vehicle is in ISR mode, performing reconaissance at a point specified by ISR_LOCATION message.</description>
</entry>
<entry value="10" name="SLUGS_MODE_LINE_PATROL">
<description>Vehicle is patrolling along lines between waypoints.</description>
</entry>
<entry value="11" name="SLUGS_MODE_GROUNDED">
<description>Vehicle is grounded or an error has occurred.</description>
</entry>
</enum>
<enum name="CONTROL_SURFACE_FLAG">
<description>These flags encode the control surfaces for selective passthrough mode. If a bit is set then the pilot console
has control of the surface, and if not then the autopilot has control of the surface.</description>
<entry value="128" name="CONTROL_SURFACE_FLAG_THROTTLE">
<description>0b10000000 Throttle control passes through to pilot console.</description>
</entry>
<entry value="64" name="CONTROL_SURFACE_FLAG_LEFT_AILERON">
<description>0b01000000 Left aileron control passes through to pilot console.</description>
</entry>
<entry value="32" name="CONTROL_SURFACE_FLAG_RIGHT_AILERON">
<description>0b00100000 Right aileron control passes through to pilot console.</description>
</entry>
<entry value="16" name="CONTROL_SURFACE_FLAG_RUDDER">
<description>0b00010000 Rudder control passes through to pilot console.</description>
</entry>
<entry value="8" name="CONTROL_SURFACE_FLAG_LEFT_ELEVATOR">
<description>0b00001000 Left elevator control passes through to pilot console.</description>
</entry>
<entry value="4" name="CONTROL_SURFACE_FLAG_RIGHT_ELEVATOR">
<description>0b00000100 Right elevator control passes through to pilot console.</description>
</entry>
<entry value="2" name="CONTROL_SURFACE_FLAG_LEFT_FLAP">
<description>0b00000010 Left flap control passes through to pilot console.</description>
</entry>
<entry value="1" name="CONTROL_SURFACE_FLAG_RIGHT_FLAP">
<description>0b00000001 Right flap control passes through to pilot console.</description>
</entry>
</enum>
</enums>
<!--
<enum name="WP_PROTOCOL_STATE" >
<description> Waypoint Protocol States </description>
<entry name = "WP_PROT_IDLE">
<entry name = "WP_PROT_LIST_REQUESTED">
<entry name = "WP_PROT_NUM_SENT">
<entry name = "WP_PROT_TX_WP">
<entry name = "WP_PROT_RX_WP">
<entry name = "WP_PROT_SENDING_WP_IDLE">
<entry name = "WP_PROT_GETTING_WP_IDLE">
</enum>
-->
<messages>
<message name="CPU_LOAD" id="170">
<description>Sensor and DSC control loads.</description>
<field name="sensLoad" type="uint8_t">Sensor DSC Load</field>
<field name="ctrlLoad" type="uint8_t">Control DSC Load</field>
<field name="batVolt" type="uint16_t" units="mV">Battery Voltage</field>
</message>
<message name="SENSOR_BIAS" id="172">
<description>Accelerometer and gyro biases.</description>
<field name="axBias" type="float" units="m/s">Accelerometer X bias</field>
<field name="ayBias" type="float" units="m/s">Accelerometer Y bias</field>
<field name="azBias" type="float" units="m/s">Accelerometer Z bias</field>
<field name="gxBias" type="float" units="rad/s">Gyro X bias</field>
<field name="gyBias" type="float" units="rad/s">Gyro Y bias</field>
<field name="gzBias" type="float" units="rad/s">Gyro Z bias</field>
</message>
<message name="DIAGNOSTIC" id="173">
<description>Configurable diagnostic messages.</description>
<field name="diagFl1" type="float">Diagnostic float 1</field>
<field name="diagFl2" type="float">Diagnostic float 2</field>
<field name="diagFl3" type="float">Diagnostic float 3</field>
<field name="diagSh1" type="int16_t">Diagnostic short 1</field>
<field name="diagSh2" type="int16_t">Diagnostic short 2</field>
<field name="diagSh3" type="int16_t">Diagnostic short 3</field>
</message>
<message name="SLUGS_NAVIGATION" id="176">
<description>Data used in the navigation algorithm.</description>
<field name="u_m" type="float" units="m/s">Measured Airspeed prior to the nav filter</field>
<field name="phi_c" type="float">Commanded Roll</field>
<field name="theta_c" type="float">Commanded Pitch</field>
<field name="psiDot_c" type="float">Commanded Turn rate</field>
<field name="ay_body" type="float">Y component of the body acceleration</field>
<field name="totalDist" type="float">Total Distance to Run on this leg of Navigation</field>
<field name="dist2Go" type="float">Remaining distance to Run on this leg of Navigation</field>
<field name="fromWP" type="uint8_t">Origin WP</field>
<field name="toWP" type="uint8_t">Destination WP</field>
<field name="h_c" type="uint16_t" units="dm">Commanded altitude</field>
</message>
<message name="DATA_LOG" id="177">
<description>Configurable data log probes to be used inside Simulink</description>
<field name="fl_1" type="float">Log value 1 </field>
<field name="fl_2" type="float">Log value 2 </field>
<field name="fl_3" type="float">Log value 3 </field>
<field name="fl_4" type="float">Log value 4 </field>
<field name="fl_5" type="float">Log value 5 </field>
<field name="fl_6" type="float">Log value 6 </field>
</message>
<message name="GPS_DATE_TIME" id="179">
<description>Pilot console PWM messges.</description>
<field name="year" type="uint8_t">Year reported by Gps </field>
<field name="month" type="uint8_t">Month reported by Gps </field>
<field name="day" type="uint8_t">Day reported by Gps </field>
<field name="hour" type="uint8_t">Hour reported by Gps </field>
<field name="min" type="uint8_t">Min reported by Gps </field>
<field name="sec" type="uint8_t">Sec reported by Gps </field>
<field name="clockStat" type="uint8_t">Clock Status. See table 47 page 211 OEMStar Manual </field>
<field name="visSat" type="uint8_t">Visible satellites reported by Gps </field>
<field name="useSat" type="uint8_t">Used satellites in Solution </field>
<field name="GppGl" type="uint8_t">GPS+GLONASS satellites in Solution </field>
<field name="sigUsedMask" type="uint8_t">GPS and GLONASS usage mask (bit 0 GPS_used? bit_4 GLONASS_used?)</field>
<field name="percentUsed" type="uint8_t" units="%">Percent used GPS</field>
</message>
<message name="MID_LVL_CMDS" id="180">
<description>Mid Level commands sent from the GS to the autopilot. These are only sent when being operated in mid-level commands mode from the ground.</description>
<field name="target" type="uint8_t">The system setting the commands</field>
<field name="hCommand" type="float" units="m">Commanded Altitude</field>
<field name="uCommand" type="float" units="m/s">Commanded Airspeed</field>
<field name="rCommand" type="float" units="rad/s">Commanded Turnrate</field>
</message>
<message name="CTRL_SRFC_PT" id="181">
<description>This message sets the control surfaces for selective passthrough mode.</description>
<field name="target" type="uint8_t">The system setting the commands</field>
<field name="bitfieldPt" type="uint16_t" enum="CONTROL_SURFACE_FLAG" display="bitmask">Bitfield containing the passthrough configuration, see CONTROL_SURFACE_FLAG ENUM.</field>
</message>
<message name="SLUGS_CAMERA_ORDER" id="184">
<description>Orders generated to the SLUGS camera mount. </description>
<field name="target" type="uint8_t">The system reporting the action</field>
<field name="pan" type="int8_t">Order the mount to pan: -1 left, 0 No pan motion, +1 right</field>
<field name="tilt" type="int8_t">Order the mount to tilt: -1 down, 0 No tilt motion, +1 up</field>
<field name="zoom" type="int8_t">Order the zoom values 0 to 10</field>
<field name="moveHome" type="int8_t">Orders the camera mount to move home. The other fields are ignored when this field is set. 1: move home, 0 ignored</field>
</message>
<message name="CONTROL_SURFACE" id="185">
<description>Control for surface; pending and order to origin.</description>
<field name="target" type="uint8_t">The system setting the commands</field>
<field name="idSurface" type="uint8_t">ID control surface send 0: throttle 1: aileron 2: elevator 3: rudder</field>
<field name="mControl" type="float">Pending</field>
<field name="bControl" type="float">Order to origin</field>
</message>
<!-- Moved into MAV_CMD_RETURN_TO_BASE -->
<!--
<message name="SLUGS_RTB" id="187">
<description>Orders SLUGS to RTB. It also decides to either track a mobile or RTB </description>
<field name="target" type="uint8_t">The system ordered to RTB</field>
<field name="rtb" type="uint8_t">Order SLUGS to: 0: Stop RTB and resume flight; 1: RTB</field>
<field name="track_mobile" type="uint8_t">Order SLUGS to: 0: RTB to GS Location; 1: Track mobile </field>
</message>
-->
<message name="SLUGS_MOBILE_LOCATION" id="186">
<description>Transmits the last known position of the mobile GS to the UAV. Very relevant when Track Mobile is enabled</description>
<field name="target" type="uint8_t">The system reporting the action</field>
<field name="latitude" type="float" units="deg">Mobile Latitude</field>
<field name="longitude" type="float" units="deg">Mobile Longitude</field>
</message>
<message name="SLUGS_CONFIGURATION_CAMERA" id="188">
<description>Control for camara.</description>
<field name="target" type="uint8_t">The system setting the commands</field>
<field name="idOrder" type="uint8_t">ID 0: brightness 1: aperture 2: iris 3: ICR 4: backlight</field>
<field name="order" type="uint8_t"> 1: up/on 2: down/off 3: auto/reset/no action</field>
</message>
<message name="ISR_LOCATION" id="189">
<description>Transmits the position of watch</description>
<field name="target" type="uint8_t">The system reporting the action</field>
<field name="latitude" type="float" units="deg">ISR Latitude</field>
<field name="longitude" type="float" units="deg">ISR Longitude</field>
<field name="height" type="float">ISR Height</field>
<field name="option1" type="uint8_t">Option 1</field>
<field name="option2" type="uint8_t">Option 2</field>
<field name="option3" type="uint8_t">Option 3</field>
</message>
<!-- Removed to MAV_CMD_TURN_LIGHT -->
<!--
<message name="TURN_LIGHT" id="190">
<description>Transmits the order to turn on lights</description>
<field name="target" type="uint8_t">The system ordered to turn on lights</field>
<field name="type" type="uint8_t">Type lights 0: Visible; 1: Infrared</field>
<field name="turn" type="uint8_t">Order turn on lights 1: Turn on; 0: Turn off</field>
</message>
-->
<message name="VOLT_SENSOR" id="191">
<description>Transmits the readings from the voltage and current sensors</description>
<field name="r2Type" type="uint8_t">It is the value of reading 2: 0 - Current, 1 - Foreward Sonar, 2 - Back Sonar, 3 - RPM</field>
<field name="voltage" type="uint16_t">Voltage in uS of PWM. 0 uS = 0V, 20 uS = 21.5V </field>
<field name="reading2" type="uint16_t">Depends on the value of r2Type (0) Current consumption in uS of PWM, 20 uS = 90Amp (1) Distance in cm (2) Distance in cm (3) Absolute value</field>
</message>
<message name="PTZ_STATUS" id="192">
<description>Transmits the actual Pan, Tilt and Zoom values of the camera unit</description>
<field name="zoom" type="uint8_t">The actual Zoom Value</field>
<field name="pan" type="int16_t">The Pan value in 10ths of degree</field>
<field name="tilt" type="int16_t">The Tilt value in 10ths of degree</field>
</message>
<message name="UAV_STATUS" id="193">
<description>Transmits the actual status values UAV in flight</description>
<field name="target" type="uint8_t">The ID system reporting the action</field>
<field name="latitude" type="float" units="deg">Latitude UAV</field>
<field name="longitude" type="float" units="deg">Longitude UAV</field>
<field name="altitude" type="float" units="m">Altitude UAV</field>
<field name="speed" type="float" units="m/s">Speed UAV</field>
<field name="course" type="float">Course UAV</field>
</message>
<message name="STATUS_GPS" id="194">
<description>This contains the status of the GPS readings</description>
<field name="csFails" type="uint16_t">Number of times checksum has failed</field>
<field name="gpsQuality" type="uint8_t">The quality indicator, 0=fix not available or invalid, 1=GPS fix, 2=C/A differential GPS, 6=Dead reckoning mode, 7=Manual input mode (fixed position), 8=Simulator mode, 9= WAAS a</field>
<field name="msgsType" type="uint8_t"> Indicates if GN, GL or GP messages are being received</field>
<field name="posStatus" type="uint8_t"> A = data valid, V = data invalid</field>
<field name="magVar" type="float" units="deg">Magnetic variation</field>
<field name="magDir" type="int8_t"> Magnetic variation direction E/W. Easterly variation (E) subtracts from True course and Westerly variation (W) adds to True course</field>
<field name="modeInd" type="uint8_t"> Positioning system mode indicator. A - Autonomous;D-Differential; E-Estimated (dead reckoning) mode;M-Manual input; N-Data not valid</field>
</message>
<message name="NOVATEL_DIAG" id="195">
<description>Transmits the diagnostics data from the Novatel OEMStar GPS</description>
<field name="timeStatus" type="uint8_t">The Time Status. See Table 8 page 27 Novatel OEMStar Manual</field>
<field name="receiverStatus" type="uint32_t">Status Bitfield. See table 69 page 350 Novatel OEMstar Manual</field>
<field name="solStatus" type="uint8_t">solution Status. See table 44 page 197</field>
<field name="posType" type="uint8_t">position type. See table 43 page 196</field>
<field name="velType" type="uint8_t">velocity type. See table 43 page 196</field>
<field name="posSolAge" type="float" units="s">Age of the position solution</field>
<field name="csFails" type="uint16_t">Times the CRC has failed since boot</field>
</message>
<message name="SENSOR_DIAG" id="196">
<description>Diagnostic data Sensor MCU</description>
<field name="float1" type="float">Float field 1</field>
<field name="float2" type="float">Float field 2</field>
<field name="int1" type="int16_t">Int 16 field 1</field>
<field name="char1" type="int8_t">Int 8 field 1</field>
</message>
<message id="197" name="BOOT">
<description>The boot message indicates that a system is starting. The onboard software version allows to keep track of onboard soft/firmware revisions. This message allows the sensor and control MCUs to communicate version numbers on startup.</description>
<field type="uint32_t" name="version">The onboard software version</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0"?>
<mavlink>
<!-- MAVLink standard messages -->
<include>common.xml</include>
<dialect>0</dialect>
<!-- use common.xml enums -->
<enums/>
<!-- use common.xml messages -->
<messages/>
</mavlink>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0"?>
<mavlink>
<version>3</version>
<messages>
<message id="0" name="TEST_TYPES">
<description>Test all field types</description>
<field type="char" name="c">char</field>
<field type="char[10]" name="s">string</field>
<field type="uint8_t" name="u8">uint8_t</field>
<field type="uint16_t" name="u16">uint16_t</field>
<field print_format="0x%08x" type="uint32_t" name="u32">uint32_t</field>
<field type="uint64_t" name="u64">uint64_t</field>
<field type="int8_t" name="s8">int8_t</field>
<field type="int16_t" name="s16">int16_t</field>
<field type="int32_t" name="s32">int32_t</field>
<field type="int64_t" name="s64">int64_t</field>
<field type="float" name="f">float</field>
<field type="double" name="d">double</field>
<field type="uint8_t[3]" name="u8_array">uint8_t_array</field>
<field type="uint16_t[3]" name="u16_array">uint16_t_array</field>
<field type="uint32_t[3]" name="u32_array">uint32_t_array</field>
<field type="uint64_t[3]" name="u64_array">uint64_t_array</field>
<field type="int8_t[3]" name="s8_array">int8_t_array</field>
<field type="int16_t[3]" name="s16_array">int16_t_array</field>
<field type="int32_t[3]" name="s32_array">int32_t_array</field>
<field type="int64_t[3]" name="s64_array">int64_t_array</field>
<field type="float[3]" name="f_array">float_array</field>
<field type="double[3]" name="d_array">double_array</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,121 @@
<?xml version="1.0"?>
<mavlink>
<!-- uAvionix contact info: -->
<!-- company URL: http://www.uAvionix.com -->
<!-- email contact: matt@uAvionix.com or jeff@uAvionix.com -->
<!-- mavlink ID range: 10000 - 10099 -->
<enums>
<enum name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE">
<description>State flags for ADS-B transponder dynamic report</description>
<entry value="1" name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE_INTENT_CHANGE"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE_AUTOPILOT_ENABLED"/>
<entry value="4" name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE_NICBARO_CROSSCHECKED"/>
<entry value="8" name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE_ON_GROUND"/>
<entry value="16" name="UAVIONIX_ADSB_OUT_DYNAMIC_STATE_IDENT"/>
</enum>
<enum name="UAVIONIX_ADSB_OUT_RF_SELECT">
<description>Transceiver RF control flags for ADS-B transponder dynamic reports</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_RF_SELECT_STANDBY"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_RF_SELECT_RX_ENABLED"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_RF_SELECT_TX_ENABLED"/>
</enum>
<enum name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX">
<description>Status for ADS-B transponder dynamic input</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_0"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_NONE_1"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D"/>
<entry value="3" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D"/>
<entry value="4" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_DGPS"/>
<entry value="5" name="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_RTK"/>
</enum>
<enum name="UAVIONIX_ADSB_RF_HEALTH">
<description>Status flags for ADS-B transponder dynamic output</description>
<entry value="0" name="UAVIONIX_ADSB_RF_HEALTH_INITIALIZING"/>
<entry value="1" name="UAVIONIX_ADSB_RF_HEALTH_OK"/>
<entry value="2" name="UAVIONIX_ADSB_RF_HEALTH_FAIL_TX"/>
<entry value="16" name="UAVIONIX_ADSB_RF_HEALTH_FAIL_RX"/>
</enum>
<enum name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE">
<description>Definitions for aircraft size</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_NO_DATA"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L15M_W23M"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25M_W28P5M"/>
<entry value="3" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L25_34M"/>
<entry value="4" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_33M"/>
<entry value="5" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L35_38M"/>
<entry value="6" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_39P5M"/>
<entry value="7" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L45_45M"/>
<entry value="8" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_45M"/>
<entry value="9" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L55_52M"/>
<entry value="10" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_59P5M"/>
<entry value="11" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L65_67M"/>
<entry value="12" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W72P5M"/>
<entry value="13" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L75_W80M"/>
<entry value="14" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W80M"/>
<entry value="15" name="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE_L85_W90M"/>
</enum>
<enum name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT">
<description>GPS lataral offset encoding</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_NO_DATA"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_2M"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_4M"/>
<entry value="3" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_LEFT_6M"/>
<entry value="4" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_0M"/>
<entry value="5" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_2M"/>
<entry value="6" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_4M"/>
<entry value="7" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT_RIGHT_6M"/>
</enum>
<enum name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON">
<description>GPS longitudinal offset encoding</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_NO_DATA"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LON_APPLIED_BY_SENSOR"/>
</enum>
<enum name="UAVIONIX_ADSB_EMERGENCY_STATUS">
<description>Emergency status encoding</description>
<entry value="0" name="UAVIONIX_ADSB_OUT_NO_EMERGENCY"/>
<entry value="1" name="UAVIONIX_ADSB_OUT_GENERAL_EMERGENCY"/>
<entry value="2" name="UAVIONIX_ADSB_OUT_LIFEGUARD_EMERGENCY"/>
<entry value="3" name="UAVIONIX_ADSB_OUT_MINIMUM_FUEL_EMERGENCY"/>
<entry value="4" name="UAVIONIX_ADSB_OUT_NO_COMM_EMERGENCY"/>
<entry value="5" name="UAVIONIX_ADSB_OUT_UNLAWFUL_INTERFERANCE_EMERGENCY"/>
<entry value="6" name="UAVIONIX_ADSB_OUT_DOWNED_AIRCRAFT_EMERGENCY"/>
<entry value="7" name="UAVIONIX_ADSB_OUT_RESERVED"/>
</enum>
</enums>
<messages>
<message id="10001" name="UAVIONIX_ADSB_OUT_CFG">
<description>Static data to configure the ADS-B transponder (send within 10 sec of a POR and every 10 sec thereafter)</description>
<field type="uint32_t" name="ICAO">Vehicle address (24 bit)</field>
<field type="char[9]" name="callsign">Vehicle identifier (8 characters, null terminated, valid characters are A-Z, 0-9, " " only)</field>
<field type="uint8_t" name="emitterType" enum="ADSB_EMITTER_TYPE">Transmitting vehicle type. See ADSB_EMITTER_TYPE enum</field>
<field type="uint8_t" name="aircraftSize" enum="UAVIONIX_ADSB_OUT_CFG_AIRCRAFT_SIZE">Aircraft length and width encoding (table 2-35 of DO-282B)</field>
<field type="uint8_t" name="gpsOffsetLat" enum="UAVIONIX_ADSB_OUT_CFG_GPS_OFFSET_LAT">GPS antenna lateral offset (table 2-36 of DO-282B)</field>
<field type="uint8_t" name="gpsOffsetLon" enum="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)</field>
<field type="uint16_t" name="stallSpeed" units="cm/s">Aircraft stall speed in cm/s</field>
<field type="uint8_t" name="rfSelect" enum="UAVIONIX_ADSB_OUT_RF_SELECT" display="bitmask">ADS-B transponder reciever and transmit enable flags</field>
</message>
<message id="10002" name="UAVIONIX_ADSB_OUT_DYNAMIC">
<description>Dynamic data used to generate ADS-B out transponder data (send at 5Hz)</description>
<field type="uint32_t" name="utcTime" units="s">UTC time in seconds since GPS epoch (Jan 6, 1980). If unknown set to UINT32_MAX</field>
<field type="int32_t" name="gpsLat" units="degE7">Latitude WGS84 (deg * 1E7). If unknown set to INT32_MAX</field>
<field type="int32_t" name="gpsLon" units="degE7">Longitude WGS84 (deg * 1E7). If unknown set to INT32_MAX</field>
<field type="int32_t" name="gpsAlt" units="mm">Altitude in mm (m * 1E-3) UP +ve. WGS84 altitude. If unknown set to INT32_MAX</field>
<field type="uint8_t" name="gpsFix" enum="UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX">0-1: no fix, 2: 2D fix, 3: 3D fix, 4: DGPS, 5: RTK</field>
<field type="uint8_t" name="numSats">Number of satellites visible. If unknown set to UINT8_MAX</field>
<field type="int32_t" name="baroAltMSL" units="mbar">Barometric pressure altitude 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</field>
<field type="uint32_t" name="accuracyHor" units="mm">Horizontal accuracy in mm (m * 1E-3). If unknown set to UINT32_MAX</field>
<field type="uint16_t" name="accuracyVert" units="cm">Vertical accuracy in cm. If unknown set to UINT16_MAX</field>
<field type="uint16_t" name="accuracyVel" units="mm/s">Velocity accuracy in mm/s (m * 1E-3). If unknown set to UINT16_MAX</field>
<field type="int16_t" name="velVert" units="cm/s">GPS vertical speed in cm/s. If unknown set to INT16_MAX</field>
<field type="int16_t" name="velNS" units="cm/s">North-South velocity over ground in cm/s North +ve. If unknown set to INT16_MAX</field>
<field type="int16_t" name="VelEW" units="cm/s">East-West velocity over ground in cm/s East +ve. If unknown set to INT16_MAX</field>
<field type="uint8_t" name="emergencyStatus" enum="UAVIONIX_ADSB_EMERGENCY_STATUS">Emergency status</field>
<field type="uint16_t" name="state" enum="UAVIONIX_ADSB_OUT_DYNAMIC_STATE" display="bitmask">ADS-B transponder dynamic input state flags</field>
<field type="uint16_t" name="squawk">Mode A code (typically 1200 [0x04B0] for VFR)</field>
</message>
<message id="10003" name="UAVIONIX_ADSB_TRANSCEIVER_HEALTH_REPORT">
<description>Transceiver heartbeat with health report (updated every 10s)</description>
<field type="uint8_t" name="rfHealth" enum="UAVIONIX_ADSB_RF_HEALTH" display="bitmask">ADS-B transponder messages</field>
</message>
</messages>
</mavlink>

View File

@@ -0,0 +1,76 @@
<?xml version="1.0"?>
<mavlink>
<include>common.xml</include>
<enums>
<enum name="UALBERTA_AUTOPILOT_MODE">
<description>Available autopilot modes for ualberta uav</description>
<entry name="MODE_MANUAL_DIRECT">
<description>Raw input pulse widts sent to output</description>
</entry>
<entry name="MODE_MANUAL_SCALED">
<description>Inputs are normalized using calibration, the converted back to raw pulse widths for output</description>
</entry>
<entry name="MODE_AUTO_PID_ATT">
<description> dfsdfs</description>
</entry>
<entry name="MODE_AUTO_PID_VEL">
<description> dfsfds</description>
</entry>
<entry name="MODE_AUTO_PID_POS">
<description> dfsdfsdfs</description>
</entry>
</enum>
<enum name="UALBERTA_NAV_MODE">
<description>Navigation filter mode</description>
<entry name="NAV_AHRS_INIT"/>
<entry name="NAV_AHRS">
<description>AHRS mode</description>
</entry>
<entry name="NAV_INS_GPS_INIT">
<description>INS/GPS initialization mode</description>
</entry>
<entry name="NAV_INS_GPS">
<description>INS/GPS mode</description>
</entry>
</enum>
<enum name="UALBERTA_PILOT_MODE">
<description>Mode currently commanded by pilot</description>
<entry name="PILOT_MANUAL">
<description> sdf</description>
</entry>
<entry name="PILOT_AUTO">
<description> dfs</description>
</entry>
<entry name="PILOT_ROTO">
<description> Rotomotion mode </description>
</entry>
</enum>
</enums>
<messages>
<message id="220" name="NAV_FILTER_BIAS">
<description>Accelerometer and Gyro biases from the navigation filter</description>
<field type="uint64_t" name="usec">Timestamp (microseconds)</field>
<field type="float" name="accel_0">b_f[0]</field>
<field type="float" name="accel_1">b_f[1]</field>
<field type="float" name="accel_2">b_f[2]</field>
<field type="float" name="gyro_0">b_f[0]</field>
<field type="float" name="gyro_1">b_f[1]</field>
<field type="float" name="gyro_2">b_f[2]</field>
</message>
<message id="221" name="RADIO_CALIBRATION">
<description>Complete set of calibration parameters for the radio</description>
<field type="uint16_t[3]" name="aileron">Aileron setpoints: left, center, right</field>
<field type="uint16_t[3]" name="elevator">Elevator setpoints: nose down, center, nose up</field>
<field type="uint16_t[3]" name="rudder">Rudder setpoints: nose left, center, nose right</field>
<field type="uint16_t[2]" name="gyro">Tail gyro mode/gain setpoints: heading hold, rate mode</field>
<field type="uint16_t[5]" name="pitch">Pitch curve setpoints (every 25%)</field>
<field type="uint16_t[5]" name="throttle">Throttle curve setpoints (every 25%)</field>
</message>
<message id="222" name="UALBERTA_SYS_STATUS">
<description>System status specific to ualberta uav</description>
<field type="uint8_t" name="mode">System mode, see UALBERTA_AUTOPILOT_MODE ENUM</field>
<field type="uint8_t" name="nav_mode">Navigation mode, see UALBERTA_NAV_MODE ENUM</field>
<field type="uint8_t" name="pilot">Pilot mode, see UALBERTA_PILOT_MODE</field>
</message>
</messages>
</mavlink>