Dialect: MAVLink-M (military.xml)
This page is a human-readable form of the dialect definition file military.xml. To change a message, edit the XML and open a pull request.
Entities included from common.xml are listed as headings only, with a link to their full definition.
INFO
- MAVLink 2 extension fields are displayed in blue.
- Entities from dialects are displayed only as headings (with link to original)
Protocol dialect: 0
Protocol version: 1
MAVLink Include Files
Summary
| Type | Defined | Included |
|---|---|---|
| Messages | 26 | 235 |
| Enums | 74 | 160 |
| Commands | 4 | 170 |
The following sections list all entities in the dialect (both included and defined in this file).
Messages
TRACK_IDENTITY (53000)
Correlation spine for the kill chain. Binds one real-world object to a globally-unique track UID that persists across find, fix, track, target, engage, and assess, so every downstream report can be tied back to the same object. Carries the basis of identification (method + confidence) separately from classification, and lineage when tracks split or merge.
This message asserts identity and how it was derived. It does not assert engagement authority; see TARGET_AUTHORIZATION.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID). Stable across the whole chain. | ||
| parent_track_uid | uint8_t[16] | Parent track UID for split/merge/re-id lineage. All-zero if none. | ||
| target_set_id | uint32_t | Associated target set identifier, if any. 0 = none. | ||
| first_detected_usec | uint64_t | us | Time the object was first detected (UNIX epoch, microseconds UTC). | |
| id_confidence | float | Confidence of identification [0.0-1.0]. NaN if not provided. | ||
| origin_sysid | uint8_t | System ID of the platform that originated/owns this track. | ||
| origin_sensor | uint8_t | MAVLINK_M_ID_METHOD | Sensor/method underlying the current identification. | |
| id_method | uint8_t | MAVLINK_M_ID_METHOD | Method by which identification was reached. | |
| pid_status | uint8_t | MAVLINK_M_PID_STATUS | Positive identification status (descriptive). | |
| track_rel | uint8_t | MAVLINK_M_TRACK_REL | Relationship to parent track (split/merge/re-id). | |
| target_class | uint8_t | MAVLINK_M_TARGET_CLASS | Classification (what it is), distinct from id_method (how it was identified). | |
| target_force | uint8_t | MAVLINK_M_TARGET_FORCE | Force affiliation. | |
| id_basis | char[50] | Optional free-text basis/notes for the identification (null-terminated). | ||
| external_track_number | char[20] | External/joint track number (e.g. Link 16 track number or VMF URN), as text for gateway round-trip. Empty if none. Encoding per external_track_type. | ||
| external_track_type | uint8_t | MAVLINK_M_TRACK_NUMBER_TYPE | Namespace of external_track_number. | |
| stanag_identity | uint8_t | MAVLINK_M_STANAG_IDENTITY | STANAG/APP-6 standard identity (richer than target_force). | |
| environment | uint8_t | MAVLINK_M_ENVIRONMENT | STANAG/APP-6 battle dimension / environment. | |
| atr_confidence_pct | uint8_t | % | ATR model confidence [0-100]. 255 = N/A. Raw score; the C2 node owns any ROE threshold. | |
| atr_model_id | uint16_t | Identifier of the ATR model/version that produced atr_confidence_pct. 0 = unspecified. | ||
| atr_conf_tier | uint8_t | MAVLINK_M_ATR_CONFIDENCE | OPTIONAL advisory display tier derived from atr_confidence_pct. Not for automated ROE. | |
| sidc_context | uint8_t | MAVLINK_M_SIDC_CONTEXT | Reality context (MIL-STD-2525D SIDC digit 3): real-world vs exercise vs simulation. Prevents a live track and an exercise/simulated track from being indistinguishable on a joint net. |
TARGET_CUE (53001)
Non-kinetic point-of-interest cue relayed from a sensing/ISR platform to one or more consumers (e.g. a manually piloted aircraft, an OSD, or a GCS) to direct attention to a WGS84 location for observation or investigation. Carries the geolocated point and minimal context only. It intentionally omits the authorization token, weaponeering, and CEP fields of the fires-related messages so that ISR cueing is cleanly separable from engagement on the wire.
Bearing and range to the cue are NOT transmitted: a consumer computes them locally from this point and its own GLOBAL_POSITION_INT, so the same cue is valid for every receiver regardless of position.
target_class and target_force on a cue are the SENSING platform's provisional read at detection, qualified by confidence_score - a starting hint, NOT an established identification. A cue does not identify or authorize; identification is carried on TRACK_IDENTITY and the engagement decision on TARGET_AUTHORIZATION. A consumer must not treat a cued class or affiliation as confirmed, and must never derive a release decision from a cue.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| cue_id | uint32_t | Unique identifier of this cue, assigned by the originator. | ||
| target_set_id | uint32_t | Parent target set identifier, if associated. 0 = none. | ||
| lat | int32_t | degE7 | Cue latitude, WGS84. | |
| lon | int32_t | degE7 | Cue longitude, WGS84. | |
| alt | float | m | invalid:NaN | Cue altitude, MSL. NaN if unknown. |
| vx | float | m/s | invalid:NaN | Velocity north (NED) if the point is moving. NaN if unknown/static. |
| vy | float | m/s | invalid:NaN | Velocity east (NED) if the point is moving. NaN if unknown/static. |
| vz | float | m/s | invalid:NaN | Velocity down (NED) if the point is moving. NaN if unknown/static. |
| confidence_score | float | invalid:NaN | Confidence of the geolocation and of the provisional class/force read [0.0-1.0]. NaN if not provided. | |
| origin_sysid | uint8_t | MAVLink system ID of the originating (sensing) platform. | ||
| cue_type | uint8_t | MAVLINK_M_CUE_TYPE | Intent of the cue. Non-kinetic. | |
| target_class | uint8_t | MAVLINK_M_TARGET_CLASS | Provisional target classification from the sensing platform, qualified by confidence_score. A hint, not an identification. | |
| target_force | uint8_t | MAVLINK_M_TARGET_FORCE | Provisional force affiliation from the sensing platform, qualified by confidence_score. A hint, not a combat-ID determination; do not use as a release input. | |
| name | char[20] | Short human-readable label (null-terminated). |
TARGET_HANDOVER (53002)
Transfers tracking responsibility for a target to another system, including kinematic state, classification, identification media, and authorization.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the system taking the target. Never 0; receivers ignore a handover sent to every system. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| detected_first_usec | uint64_t | us | Time target was first detected (UNIX epoch, microseconds UTC). | |
| valid_until_usec | uint64_t | us | Handover data validity expiry (UNIX epoch, microseconds UTC). | |
| lat | int32_t | degE7 | Target latitude, WGS84. | |
| lon | int32_t | degE7 | Target longitude, WGS84. | |
| alt | float | m | Target altitude, MSL. | |
| vx | float | m/s | Velocity north component (NED). | |
| vy | float | m/s | Velocity east component (NED). | |
| vz | float | m/s | Velocity down component (NED). | |
| cov_pos_x | float | Position covariance, north axis (m^2). | ||
| cov_pos_y | float | Position covariance, east axis (m^2). | ||
| cov_pos_z | float | Position covariance, down axis (m^2). | ||
| cov_vel_x | float | Velocity covariance, north axis (m^2/s^2). | ||
| cov_vel_y | float | Velocity covariance, east axis (m^2/s^2). | ||
| cov_vel_z | float | Velocity covariance, down axis (m^2/s^2). | ||
| target_set_id | uint32_t | Parent target set identifier. | ||
| target_name | char[50] | Human-readable target name (null-terminated). | ||
| match_media_url | char[50] | Short URL referencing matching media asset (null-terminated). | ||
| confidence_score | float | Confidence score of identification [0.0-1.0]. | ||
| authorization | uint8_t[8] | Opaque authorization token. | ||
| target_class | uint8_t | MAVLINK_M_TARGET_CLASS | Target classification. | |
| target_force | uint8_t | MAVLINK_M_TARGET_FORCE | Force affiliation. | |
| match_media_type | uint8_t | MAVLINK_M_MATCH_MEDIA_TYPE | Type of matching media referenced by match_media_url. | |
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID) of the TRACK_IDENTITY this handover transfers. The authoritative correlation handle across aircraft; target_name is a human label only. All-zero if not associated with a track. |
PARTICIPANT_POSITION (53003)
Friendly-participant self-report of identity and position (PPLI-style / Blue Force Tracking). Distinct from target/cue messages: this is a network participant reporting "I am here, this is who I am" for the common operational picture, mappable to Link 16 PPLI, VMF position reports, and Cursor-on-Target friendly events.
Structural placeholder for joint interop; identity/type value sets and any external track-number encoding are per STANAG 5516 / MIL-STD-6017, to be reconciled from spec.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| lat | int32_t | degE7 | Participant latitude, WGS84. | |
| lon | int32_t | degE7 | Participant longitude, WGS84. | |
| alt | float | m | Participant altitude, MSL. NaN if unknown. | |
| vx | float | m/s | Velocity north (NED). NaN if unknown. | |
| vy | float | m/s | Velocity east (NED). NaN if unknown. | |
| vz | float | m/s | Velocity down (NED). NaN if unknown. | |
| course | float | deg | Course over ground. NaN if unknown. | |
| external_track_number | char[20] | External/joint track number or URN for this participant. Empty if none. | ||
| callsign | char[50] | Human-readable callsign/designation (null-terminated). | ||
| origin_sysid | uint8_t | System ID of the reporting participant. | ||
| external_track_type | uint8_t | MAVLINK_M_TRACK_NUMBER_TYPE | Namespace of external_track_number. | |
| stanag_identity | uint8_t | MAVLINK_M_STANAG_IDENTITY | Standard identity (normally FRIEND for own-force PPLI). | |
| ppli_type | uint8_t | MAVLINK_M_PPLI_TYPE | Participant environment/type. |
MAVLINK_M_ACK (53004)
Generic acknowledgment for MAVLink-M messages. A recipient emits this in response to an acknowledged MAVLink-M message to close the loop on delivery and acceptance, addressed to the system and component that sent that message. Keyed by the acknowledged message ID, an instance identifier (e.g. cue_id, target_set_id, or sequence) and that message's time_usec, so the originator can match the ACK to the one message it answers. The acknowledging system identifies itself in the MAVLink frame header.
Every MAVLink-M message that carries target_system is acknowledged, except SENSOR_TASKING, which its status response answers. The recipient answers with one final result, and may send MAVLINK_M_ACK_RECEIVED first while a human decision is pending. A message sent with target_system 0 is answered only by the systems where it selects something, with the result of applying it there, each after a short random delay so that answers on a shared channel do not collide. A system where it selects nothing, or that does not support it, does not answer, so a stop sent to every system draws one acknowledgment from each system it stops rather than one from every system on the network, and its sender expects answers only from the systems it knows hold what the stop selects. A sender with a start of its own still unacknowledged by a system also addresses the stop to that system, so that system answers it whether or not the start has arrived. Silence cannot show that a stop reached a holder its sender did not know of, so a sender that cannot rule one out repeats the stop unchanged a number of times set for the network, an answer timeout apart, and stops repeating once it issues a start the stop covers. A sender that gets no acknowledgment from a system it expects to answer sends the stop again addressed to that system, up to that number of times, and may send any other message again, unchanged, time_usec included. A receiver treats a repeat of a message it has processed (same source system and component, message ID and field values, target_system and target_component aside) as a duplicate: it does not act on it a second time, and answers it with its latest answer to that message, or with MAVLINK_M_ACK_NOT_APPLICABLE when it gave none and the repeat is addressed to it. Receivers ignore an acknowledgment sent with target_system 0.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| ack_time_usec | uint64_t | us | time_usec of the acknowledged message, copied unchanged. Tells apart acknowledgments of different messages with the same ack_msgid and ack_instance, such as a MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE and the MAVLINK_M_ENGAGEMENT_DIRECTIVE_RESUME of the same mission. | |
| target_system | uint8_t | System ID of the recipient: the source system ID in the frame header of the acknowledged message, not that message's own target_system. Never 0. | ||
| target_component | uint8_t | Component ID of the recipient: the source component ID in the frame header of the acknowledged message, not that message's own target_component. Never 0. | ||
| ack_msgid | uint32_t | MAVLink message ID being acknowledged (e.g. 53001 for TARGET_CUE). | ||
| ack_instance | uint32_t | Instance identifier of the acknowledged item (e.g. cue_id / target_set_id / sequence). 0 if not applicable. | ||
| result | uint8_t | MAVLINK_M_ACK_RESULT | Result of receiving/processing the acknowledged message. | |
| reason | char[50] | Optional human-readable reason, primarily for REJECTED/FAILED (null-terminated). |
TARGET (53010)
Position, velocity, classification, engagement context, and optional external package location for an individual target. This message does not authorize action.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_time_usec | uint64_t | us | Timestamp when the target was detected or designated (UNIX epoch, microseconds UTC). | |
| target_id | uint32_t | Unique target identifier generated by the source system. | ||
| target_set_id | uint32_t | Parent target set identifier. | ||
| package_id_hash | uint32_t | Compact hash or identifier for the associated target package. 0 if no package is associated. | ||
| target_name | char[50] | Human-readable target name (null-terminated). | ||
| lat | int32_t | degE7 | Target latitude, WGS84. | |
| lon | int32_t | degE7 | Target longitude, WGS84. | |
| alt | float | m | Target altitude, MSL. | |
| vx | float | m/s | Velocity north component (NED). | |
| vy | float | m/s | Velocity east component (NED). | |
| vz | float | m/s | Velocity down component (NED). | |
| cov_pos_x | float | Position covariance, north axis (m^2). | ||
| cov_pos_y | float | Position covariance, east axis (m^2). | ||
| cov_pos_z | float | Position covariance, down axis (m^2). | ||
| cov_vel_x | float | Velocity covariance, north axis (m^2/s^2). | ||
| cov_vel_y | float | Velocity covariance, east axis (m^2/s^2). | ||
| cov_vel_z | float | Velocity covariance, down axis (m^2/s^2). | ||
| cep_desired | float | m | Desired circular error probable. | |
| cep_max | float | m | Maximum acceptable circular error probable. | |
| flags | uint32_t | MAVLINK_M_TARGET_FLAGS | Target warning and status flags. | |
| package_endpoint_ip_1 | uint32_t | Primary IPv4 endpoint address for target package retrieval, packed as (a<<24) | ||
| package_endpoint_ip_2 | uint32_t | Secondary IPv4 endpoint address for target package retrieval, packed as (a<<24) | ||
| package_endpoint_ip_3 | uint32_t | Third IPv4 endpoint address for target package retrieval, packed as (a<<24) | ||
| target_class | uint8_t | MAVLINK_M_TARGET_CLASS | Target classification. | |
| target_domain | uint8_t | MAVLINK_M_TARGET_DOMAIN | Primary operating domain of the target. | |
| target_entity_2525d | uint8_t | MAVLINK_M_TARGET_ENTITY_2525D | Optional MIL-STD-2525D land target entity refinement. UNKNOWN if not provided or not a land entity. | |
| target_force | uint8_t | MAVLINK_M_TARGET_FORCE | Force affiliation. | |
| confidence | uint16_t | Classification or detection confidence scaled from 0 to 10000, where 0 = 0.0 and 10000 = 1.0. | ||
| package_endpoint_port | uint16_t | TCP port for target package retrieval. 0 if no package is associated. | ||
| sensor_type | uint8_t | MAVLINK_M_TARGET_SENSOR_TYPE | Primary sensor source used for target identification. | |
| package_transport | uint8_t | MAVLINK_M_TARGET_PACKAGE_TRANSPORT | Transport protocol used to retrieve the target package. | |
| package_path | char[80] | Path component for target package retrieval, null-terminated. Empty if no package is associated. | ||
| prf_code | uint16_t | Laser designator PRF code for SAL engagement (e.g. 1111-1788). 0 = no laser code assigned. | ||
| tle_category | uint8_t | MAVLINK_M_TLE_CATEGORY | Target-location-error category (label only, not a mensuration figure). | |
| dmpi_reference_kind | uint8_t | MAVLINK_M_DMPI_REFERENCE_KIND | How the DMPI reference is expressed. A mensurated DMPI tied to a weapon solution is NOT carried. | |
| restricted_target_flags | uint8_t | MAVLINK_M_RESTRICTED_TARGET_FLAGS | No-strike / restricted-target / no-fire-area context flags (bitmask). |
TARGET_SET_COORD (53011)
Defines a circular target set area in WGS84. A target set groups one or more individual targets sharing a common operational context.
| Field Name | Type | Units | Description |
|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). |
| target_set_id | uint32_t | Unique identifier of the target set. | |
| target_set_name | char[50] | Human-readable name of the target set (null-terminated). | |
| lat | int32_t | degE7 | Centroid latitude, WGS84. |
| lon | int32_t | degE7 | Centroid longitude, WGS84. |
| alt | float | m | Centroid altitude, MSL. |
| radius | float | m | Radius of the circular target set area. |
| time_start | uint64_t | us | Area validity start time (UNIX epoch, microseconds UTC). 0 = immediate. |
| time_end | uint64_t | us | Area validity end time (UNIX epoch, microseconds UTC). 0 = indefinite. |
TARGET_BOX_COORD (53012)
Defines a polygonal (quadrilateral) target set area using four WGS84 corner coordinates ordered clockwise.
| Field Name | Type | Units | Description |
|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). |
| target_set_id | uint32_t | Unique identifier of the target set. | |
| target_set_name | char[50] | Human-readable name of the target set (null-terminated). | |
| lat | int32_t[4] | degE7 | Corner latitudes, WGS84, clockwise order. |
| lon | int32_t[4] | degE7 | Corner longitudes, WGS84, clockwise order. |
| alt | float[4] | m | Corner altitudes, MSL. |
| time_start | uint64_t | us | Area validity start time (UNIX epoch, microseconds UTC). 0 = immediate. |
| time_end | uint64_t | us | Area validity end time (UNIX epoch, microseconds UTC). 0 = indefinite. |
TARGET_AUTHORIZATION (53013)
Accountability attestation for a track. Records that a specific human authority asserted positive identification, an ROE/clearance state, and no-strike context at a specific time, so the decision trail travels with the chain and is auditable after the fact.
IMPORTANT: this message is a DESCRIPTIVE RECORD, not a command. It does NOT grant authority, does NOT gate or trigger weapon release, and must not be used as an arming or engagement interlock. Release authority lives in the crewed C2 system. A receiver must never treat the presence of this message as permission to act.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp this attestation was recorded (UNIX epoch, microseconds UTC). | |
| track_uid | uint8_t[16] | Track UID this authorization record applies to. | ||
| decision_usec | uint64_t | us | Time the authority made the decision (UNIX epoch, microseconds UTC). | |
| valid_until_usec | uint64_t | us | Expiry of this attestation (UNIX epoch, microseconds UTC). 0 = unspecified. | |
| auth_nonce | uint32_t | Freshness nonce bound into the authorization token by the C2 node. A verifier caches seen nonces within the validity window to reject replays. Anti-replay input only; not itself a secret. | ||
| collateral_estimate | float | Collateral-damage estimate context [0.0-1.0 normalized], if assessed. NaN if not. | ||
| authority_id | uint8_t[16] | Opaque identifier of the authorizing authority/operator (for audit). | ||
| authorization_token | uint8_t[8] | Opaque authorization token (carried for record; not a release key). | ||
| pid_status | uint8_t | MAVLINK_M_PID_STATUS | PID status asserted by the authority. | |
| roe_state | uint8_t | MAVLINK_M_ROE_STATE | ROE/clearance state asserted (attested, not commanded). | |
| nostrike_status | uint8_t | MAVLINK_M_NOSTRIKE_STATUS | No-strike / restricted-target context. | |
| authority_role | char[50] | Human-readable role of the authority (e.g. designation), null-terminated. | ||
| cde_level | uint8_t | MAVLINK_M_CDE_LEVEL | Collateral-damage-estimation LEVEL number only (CJCSI 3160.01). Never the underlying computation or population data. |
FIRES (53020)
Fire mission order. Commands an effector to engage a WGS84 coordinate with a specified expected impact time and CEP.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the effector's system. Never 0; receivers ignore a FIRES sent to every system. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| time_impact_usec | uint64_t | us | Expected time of impact (UNIX epoch, microseconds UTC). | |
| lat | int32_t | degE7 | Target latitude, WGS84. | |
| lon | int32_t | degE7 | Target longitude, WGS84. | |
| alt | float | m | Target altitude, MSL. | |
| effector_id | uint32_t | Identifier of the assigned effector. | ||
| sequence | uint16_t | Fire mission sequence number, chosen by the issuer. 0xFFFF is reserved: in a stop it means every fire mission. | ||
| cep_expected | float | m | Expected circular error probable at impact. | |
| prf_code | uint16_t | Laser designator PRF code for SAL weapons (e.g. 1111-1788). 0 = no laser code assigned. | ||
| store_id | uint8_t | Target store/bay on a multi-store carrier. 0 = system default / vehicle itself (e.g. OWA). | ||
| requested_effect | uint8_t | MAVLINK_M_REQUESTED_EFFECT | Coarse requested effect (intent), for non-artillery/OWA effectors. For call-for-fire missions use munition_class + fuze_action instead. | |
| munition_class | uint8_t | MAVLINK_M_MUNITION_CLASS | Call-for-fire projectile/shell class (method of engagement). UNKNOWN if N/A. | |
| fuze_mode | uint8_t | MAVLINK_M_FUZE_MODE | Call-for-fire requested fuze mode (method of engagement). UNKNOWN if N/A. | |
| hob_intent | uint8_t | MAVLINK_M_HOB_INTENT | Airburst height-of-burst intent for proximity/time modes (descriptive selector, not a value). | |
| fuze_mofa_capable | uint8_t | 1 if the fielded fuze is multi-option (e.g. M782 MOFA) and settable to any mode; 0 otherwise. Capability flag, not a mode. | ||
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID) of the TRACK_IDENTITY this message correlates to. Ties the engagement/assessment to the authorized track. All-zero if not associated. |
SPLASH_CORRECTION (53021)
Post-impact adjustment spotting used to correct fire mission accuracy, structured per joint observed-fire doctrine (ATP 3-09.30, STANAG 1034) and the VMF K02.22 Subsequent Adjust message. The spotting is decomposed into deviation (relative to the observer-target line), range, and height-of-burst, from which a fire direction center computes corrections (e.g. bracketing, the graze "Up 40"). SURFACE and OBSCURATION are supplementary sensor context.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp of observation (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient. 0 (every system) is valid only with command MAVLINK_M_FMC_CHECK_FIRING or MAVLINK_M_FMC_CEASE_LOADING, and a receiver acts only on that command in such a message, ignoring its spotting; receivers ignore any other SPLASH_CORRECTION sent with 0. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| lat | int32_t | degE7 | Observed splash latitude, WGS84. | |
| lon | int32_t | degE7 | Observed splash longitude, WGS84. | |
| alt | float | m | Observed splash altitude, MSL. | |
| sequence | uint16_t | Fire mission sequence number this correction applies to. With command MAVLINK_M_FMC_CHECK_FIRING or MAVLINK_M_FMC_CEASE_LOADING, 0xFFFF means every fire mission the receiving system holds. | ||
| type_detected | uint8_t | Coarse splash detector cue (implementation-defined; e.g. 0=unknown, 1=smoke, 2=explosion). Doctrinal observed-fire adjustment is carried by deviation, range_spot, hob, impact_surface, and obscuration. | ||
| cep_expected | float | m | Estimated CEP of the observed splash. | |
| deviation | uint8_t | MAVLINK_M_SPLASH_DEVIATION | Deviation spotting relative to the observer-target line. | |
| range_spot | uint8_t | MAVLINK_M_SPLASH_RANGE | Range spotting along the observer-target line. | |
| hob | uint8_t | MAVLINK_M_SPLASH_HOB | Height-of-burst spotting (observation, not munition/fuze setting). | |
| impact_surface | uint8_t | MAVLINK_M_SPLASH_SURFACE | Supplementary: what was struck / what the splash landed in/on. | |
| obscuration | uint8_t | MAVLINK_M_SPLASH_OBSCURATION | Supplementary: cause of obscuration, if observation was masked. | |
| command | uint8_t | MAVLINK_M_FIRE_MISSION_COMMAND | Procedural fire-mission command accompanying this spotting (NONE if pure spotting). | |
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID) of the TRACK_IDENTITY this message correlates to. Ties the engagement/assessment to the authorized track. All-zero if not associated. |
BATTLE_DAMAGE_ASSESSMENT (53022)
Reports the assessed destruction level and confidence for an engaged target following a fire mission.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| lat | int32_t | degE7 | Assessed target latitude, WGS84. | |
| lon | int32_t | degE7 | Assessed target longitude, WGS84. | |
| alt | float | m | Assessed target altitude, MSL. | |
| vx | float | m/s | Velocity north component (NED). 0 if target is static. | |
| vy | float | m/s | Velocity east component (NED). 0 if target is static. | |
| vz | float | m/s | Velocity down component (NED). 0 if target is static. | |
| cov_pos_x | float | Position covariance, north axis (m^2). | ||
| cov_pos_y | float | Position covariance, east axis (m^2). | ||
| cov_pos_z | float | Position covariance, down axis (m^2). | ||
| cov_vel_x | float | Velocity covariance, north axis (m^2/s^2). | ||
| cov_vel_y | float | Velocity covariance, east axis (m^2/s^2). | ||
| cov_vel_z | float | Velocity covariance, down axis (m^2/s^2). | ||
| target_set_id | uint32_t | Parent target set identifier. | ||
| target_name | char[50] | Human-readable target name (null-terminated). | ||
| authorization | uint8_t[8] | Opaque authorization token. | ||
| destruction_pct | uint8_t | % | Assessed target destruction level [0-100]. | |
| confidence_pct | uint8_t | % | Confidence of assessment [0-100]. | |
| target_class | uint8_t | MAVLINK_M_TARGET_CLASS | Target classification. | |
| target_force | uint8_t | MAVLINK_M_TARGET_FORCE | Force affiliation. | |
| functional_damage | uint8_t | MAVLINK_M_FUNCTIONAL_DAMAGE | Discrete functional damage state (joint-aligned), carried alongside destruction_pct. | |
| physical_damage | uint8_t | MAVLINK_M_PHYSICAL_DAMAGE | Discrete physical damage state (combat-assessment layer). | |
| reattack_recommended | uint8_t | Reattack recommendation: 1 = yes, 0 = no. Operational output of BDA. | ||
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID) of the TRACK_IDENTITY this message correlates to. Ties the engagement/assessment to the authorized track. All-zero if not associated. |
ENGAGEMENT_DIRECTIVE (53023)
Engagement-control directive making abort, check-fire, resume, and re-target first-class actions alongside FIRES. The ability to STOP a mission is a protocol citizen, not an afterthought. Should be paired with MAVLINK_M_ACK so the originator gets positive confirmation the directive was received and actioned.
MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT and MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE are safety actions: every system they select acts on them on receipt, once message signing accepts them (see SAFETY BOUNDARIES). They do not require the authorization trail that initiating fire does.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient. 0 (every system) is valid only for MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT and MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE; receivers ignore any other directive sent with 0. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| track_uid | uint8_t[16] | Track UID the directive applies to. All-zero if addressed by sequence only. A MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT or MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE applies to every engagement that matches its sequence or its nonzero track_uid, whoever issued that engagement, and is never declined because one selector does not match. A MAVLINK_M_ENGAGEMENT_DIRECTIVE_RESUME or MAVLINK_M_ENGAGEMENT_DIRECTIVE_RETARGET applies only to an engagement that matches every selector it carries. | ||
| sequence | uint16_t | Fire mission sequence number the directive applies to. For MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT and MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE, 0xFFFF means every fire mission the receiving system holds. | ||
| effector_id | uint32_t | Effector the directive is addressed to. 0 = all assigned. | ||
| retarget_lat | int32_t | degE7 | New target latitude for RETARGET, WGS84. INT32_MAX = not provided (0,0 is a valid coordinate). Ignored unless directive is RETARGET. | |
| retarget_lon | int32_t | degE7 | New target longitude for RETARGET, WGS84. INT32_MAX = not provided. Ignored unless directive is RETARGET. | |
| retarget_alt | float | m | New target altitude for RETARGET, MSL. NaN = not provided. Ignored unless directive is RETARGET. | |
| directive | uint8_t | MAVLINK_M_ENGAGEMENT_DIRECTIVE | Directive type. | |
| origin_sysid | uint8_t | System ID of the system that first issued the directive. A system that passes the directive on as a message of its own keeps this value, so it can differ from the source system ID in the frame header; routers never change either. Not authenticated: for display and audit, never a reason to act or not to act on the directive. |
CALL_FOR_FIRE (53024)
Complete call-for-fire method elements (ATP 3-09.30 Ch.4; maps to VMF K02.4). Complements FIRES (which carries target + munition/fuze) with the warning-order, method-of-engagement, and method-of-fire-and-control elements a VMF/Link-16 packer requires. Descriptive intent only.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the fire direction center. Never 0; receivers ignore a call for fire sent to every system. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| sequence | uint16_t | Fire-mission sequence number this CFF applies to. | ||
| mission_type | uint8_t | MAVLINK_M_MISSION_TYPE | Warning-order mission type. | |
| location_method | uint8_t | MAVLINK_M_TARGET_LOCATION_METHOD | Method of target location. | |
| adjustment_type | uint8_t | MAVLINK_M_ADJUSTMENT_TYPE | Area vs precision. | |
| trajectory | uint8_t | MAVLINK_M_TRAJECTORY | Low/high angle. | |
| sheaf | uint8_t | MAVLINK_M_SHEAF | Distribution / sheaf. | |
| control_method | uint8_t | MAVLINK_M_FIRE_CONTROL_METHOD | Method of fire and control. | |
| danger_close | uint8_t | 1 = danger close (target within doctrinal threshold of friendlies); 0 = not. Flag only, no RED table. | ||
| rounds | uint16_t | Number of rounds for fire for effect. 0 = unspecified. | ||
| duration_s | uint16_t | s | Duration of fire. 0 = unspecified. | |
| tle_category | uint8_t | MAVLINK_M_TLE_CATEGORY | Target-location-error category label. | |
| mensurated | uint8_t | 1 = coordinate mensurated from precision imagery; 0 = map spot. | ||
| sheaf_length_m | uint16_t | m | Linear-target sheaf length (special sheaf). 0 if N/A. | |
| sheaf_width_m | uint16_t | m | Linear-target sheaf width (special sheaf). 0 if N/A. | |
| sheaf_attitude_cdeg | uint16_t | cdeg | Linear-target sheaf attitude (special sheaf), centidegrees [0..35999]. 0xFFFF = N/A (0 is a valid attitude, due north). | |
| ot_direction_cdeg | uint16_t | cdeg | Virtual observer-target direction (bearing observer/drone to target), centidegrees [0..35999]. Lets the gateway orient VMF K02.22 relative corrections (Add/Drop, L/R) from an absolute-coordinate edge feed. 0xFFFF = not provided (0 is a valid bearing, due north). | |
| ot_factor_dm | uint16_t | dm | Observer-target factor: OT range / 1000, in decimeters of shift per mil. Supports relative-correction math at the gateway. 0xFFFF = not provided. | |
| effect_verb | uint8_t | MAVLINK_M_EFFECT_VERB | Mission-effect task verb (suppress/neutralize/destroy/...), descriptive tasking intent. Distinct from mission_type and from the fuze-effect intent carried on FIRES.requested_effect. | |
| track_uid | uint8_t[16] | Globally-unique track identifier (UUID) of the TRACK_IDENTITY this message correlates to. Ties the engagement/assessment to the authorized track. All-zero if not associated. |
ESAD_STATE (53030)
Electronic Safe and Arm Device (ESAD) telemetry for one ESAD instance on a store. Reports arming, munition, and ignition states, fault flags, and software identity. esad_id identifies the device; store_id identifies the physical bay/store.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| esad_id | uint8_t | Vehicle-local ESAD instance identifier. Must be 1-254. 0 is invalid for ESAD_STATE, 255 is reserved. A system that accepts ESAD_ARMING or ESAD_CONFIG with esad_id = 0 sets the same arming_challenge_hash on every ESAD such a command can select. | ||
| arming_challenge_hash | uint32_t | Challenge for this ESAD instance, which an ARM or an ESAD_CONFIG must carry. It ties a command to this state and is not secret. | ||
| fault_flags | uint32_t | MAVLINK_M_ESAD_FAULT_FLAGS | Active fault flag bitmask. | |
| input_1 | float | Analog/digital input 1 (implementation-defined). For the standard safety inputs use the typed fields below instead. | ||
| input_2 | float | Analog/digital input 2 (implementation-defined). For the standard safety inputs use the typed fields below instead. | ||
| sw_version_hash | uint8_t[8] | Software version as 8-byte short Git hash. | ||
| arming_status | uint8_t | MAVLINK_M_ESAD_ARMING_STATUS | Current arming state. | |
| munition_status | uint8_t | MAVLINK_M_ESAD_MUNITION_STATUS | Current munition state. | |
| ignition_status | uint8_t | MAVLINK_M_ESAD_IGNITION_STATUS | Current ignition circuit state. | |
| munition_type | uint8_t | Munition/store type identifier (implementation-defined). | ||
| store_id | uint8_t | Store instance identifier. Fixed physical bay assignment: a bay keeps its store_id permanently, and when a store is expended the bay may be reloaded under the same store_id. IDs never renumber. 0 = not applicable / single store. This is the canonical definition of store_id across the dialect. | ||
| pin_state | uint8_t | MAVLINK_M_ESAD_PIN_STATE | Physical safety pull-pin state (read-only status). | |
| arm_delay_setting | uint8_t | MAVLINK_M_ESAD_ARM_DELAY_SETTING | Selected arming-delay switch position (90/60/30 s). The chosen setting. | |
| arm_delay_remaining_s | int16_t | s | Live arming-delay countdown: seconds remaining after the in-flight-event signal until arming is permitted. -1 = not counting / not applicable. Distinct from arm_delay_setting (the switch position). | |
| trigger_distance_mode | uint8_t | MAVLINK_M_ESAD_TRIGGER_DISTANCE_MODE | Trigger-distance standoff mode currently in effect (coarse selection, not a distance value). | |
| track_uid | uint8_t[16] | Track UID (UUID) of the engagement this store is armed for, when applicable. Ties the armed state to a specific authorized track so a monitoring station sees "armed against track X," not merely "an ESAD is hot." All-zero if not associated with a track, and cleared to all-zero when the store is disarmed. |
ESAD_ARMING (53031)
ESAD arming command for one or more ESAD instances on the receiving system. An ARM must carry the challenge the selected ESAD advertises in ESAD_STATE; with esad_id = 0 it applies only if every local ESAD selected by store_id advertises arming_challenge_hash, and is otherwise rejected, so an ARM never applies in part. A DISARM applies to every selected local ESAD without checking arming_challenge_hash, so no ESAD's state can block it; as for any stop, MAVLink message signing on the link authenticates the sender. An addressed ARM whose esad_id and store_id select no local ESAD is rejected, and an addressed DISARM that selects none is answered MAVLINK_M_ACK_NOT_APPLICABLE; a DISARM sent to every system that selects no local ESAD is not acted on or answered. Each system judges only its own ESADs, so a command that reaches several systems can apply on some and not on others; the originator confirms the result for each system from its MAVLINK_M_ACK and ESAD_STATE.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient. 0 (every system) is valid only for MAVLINK_M_ESAD_REQUEST_DISARM, which each receiving system applies to its own ESADs; receivers ignore an arm request sent with 0. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| esad_id | uint8_t | Vehicle-local ESAD instance identifier to arm or disarm. 0 = every local ESAD selected by store_id, 1-254 = specific ESAD instance, 255 = reserved. | ||
| arming_challenge_hash | uint32_t | Challenge hash the selected ESAD advertises in ESAD_STATE. Checked for an ARM, where with esad_id = 0 every selected local ESAD must advertise it; not checked for a DISARM. | ||
| arming_request | uint8_t | MAVLINK_M_ESAD_ARMING_REQUEST | Requested arming state change. | |
| store_id | uint8_t | Target store instance identifier. 0 = every store on the receiving system. | ||
| track_uid | uint8_t[16] | Track UID (see TRACK_IDENTITY) of the engagement an ARM is for, reported back in ESAD_STATE.track_uid. All-zero if the arming is not tied to a track. Ignored for DISARM. |
ESAD_CONFIG (53032)
Configuration command for an ESAD that accepts live configuration of a safe/arm parameter (e.g. a proximity device whose trigger-distance mode is set from the FMU or edge compute rather than a physical switch). Checked the same way as an ESAD_ARMING arm: arming_challenge_hash must match the value the selected ESAD last advertised in ESAD_STATE, so a command made for an older ESAD state does not apply. The hash is public, since ESAD_STATE goes to every system; MAVLink message signing on the link authenticates the sender. With esad_id = 0, store_id = 0, or both, a receiving system applies the configuration only if every local ESAD selected advertises arming_challenge_hash, and otherwise rejects it. A command that selects no local ESAD is rejected. Only coarse, device-defined SAFE/ARM modes may be set here; this message must never carry a free continuous distance, a fuze timing value, or any height-of-burst configuration. The resulting mode is reported back in ESAD_STATE.trigger_distance_mode.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient. Never 0; receivers ignore an ESAD_CONFIG sent to every system. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| arming_challenge_hash | uint32_t | Challenge hash the selected ESAD advertises in ESAD_STATE. With esad_id = 0 or store_id = 0, every selected local ESAD must advertise this hash. | ||
| esad_id | uint8_t | Vehicle-local ESAD instance identifier to configure. 0 = every local ESAD selected by store_id, 1-254 = specific ESAD instance, 255 = reserved. | ||
| store_id | uint8_t | Target store instance identifier. 0 = every store on the receiving system. | ||
| trigger_distance_mode | uint8_t | MAVLINK_M_ESAD_TRIGGER_DISTANCE_MODE | Requested coarse trigger-distance standoff mode. Coarse selection only. |
STORE_STATUS (53033)
Per-store roll-up summary for release decisions. Aggregates ESAD arming state and deceleration-sensor health into a single readiness value so an operator/GCS can gate release without parsing every sensor message.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| sensor_fault_mask | uint32_t | Bitmask of MAVLINK_M_STORE_SENSOR_TYPE values currently NOT healthy (bit = 1<<sensor_type). | ||
| store_id | uint8_t | Store instance identifier. | ||
| store_count | uint8_t | Total number of stores on the carrier (lets the GCS know how many to expect). 0 if unknown. | ||
| readiness | uint8_t | MAVLINK_M_STORE_READINESS | Roll-up release-readiness state. | |
| arming_status | uint8_t | MAVLINK_M_ESAD_ARMING_STATUS | ESAD arming state of this store (mirrored for convenience). | |
| sensors_healthy | uint8_t | Count of sensors reporting OK. | ||
| sensors_total | uint8_t | Total count of sensors on this store. |
STORE_SENSOR_STATUS (53034)
Health and current reading of one deceleration/landing-trigger sensor on a store. Emitted per sensor (one message per sensor) so the set of sensors per store can vary. A pre-release consumer aggregates these into a go/no-go decision (see STORE_STATUS).
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| value | float | invalid:NaN | Current sensor reading in the sensor's native units. NaN if invalid. | |
| value_min | float | invalid:NaN | Lower bound of the valid operating range, native units. NaN if unspecified. | |
| value_max | float | invalid:NaN | Upper bound of the valid operating range, native units. NaN if unspecified. | |
| store_id | uint8_t | Store instance identifier this sensor belongs to. | ||
| sensor_type | uint8_t | MAVLINK_M_STORE_SENSOR_TYPE | Type of sensor. | |
| sensor_index | uint8_t | Index when multiple sensors of the same type exist on a store (0-based). | ||
| health | uint8_t | MAVLINK_M_SENSOR_HEALTH | Health state of this sensor. |
STORE_MUNITION (53035)
Descriptive munition inventory/status for a store, for mapping into a joint weapon-status report (e.g. at a JTAC/C2 interface). Reports WHAT is loaded so a gateway maps real data rather than synthesizing it; it does NOT carry fuze/employment configuration, which is device-internal and out of scope for this dialect. Keyed by store_id to correlate with ESAD_STATE / STORE_STATUS. Low-rate: changes on load and on release.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| mass | float | kg | Munition mass. NaN if unknown. | |
| external_track_number | char[20] | External/joint track or store reference for gateway correlation. Empty if none. | ||
| nomenclature | char[30] | Munition nomenclature/designation (null-terminated). | ||
| quantity_remaining | uint16_t | Count of this munition remaining available on the store/carrier. | ||
| store_id | uint8_t | Store instance identifier. | ||
| munition_type | uint8_t | Munition type code (implementation-defined; consistent with ESAD_STATE.munition_type). | ||
| guidance | uint8_t | MAVLINK_M_MUNITION_GUIDANCE | Coarse guidance category. | |
| warhead | uint8_t | MAVLINK_M_MUNITION_WARHEAD | Coarse warhead category. | |
| arming_status | uint8_t | MAVLINK_M_ESAD_ARMING_STATUS | Safe/armed state (mirrored from ESAD for convenience). | |
| fuze_health | uint8_t | MAVLINK_M_FUZE_HEALTH | Coarse fuze HEALTH (functioning/fault), not fuze configuration. | |
| external_track_type | uint8_t | MAVLINK_M_TRACK_NUMBER_TYPE | Namespace of external_track_number. | |
| munition_family | uint8_t | MAVLINK_M_MUNITION_FAMILY | Composite-munition family (finer than the warhead/guidance pair). Descriptive. | |
| munition_payload | uint8_t | MAVLINK_M_MUNITION_PAYLOAD | Composite-munition payload category. Descriptive. | |
| warhead_mode | uint8_t | MAVLINK_M_WARHEAD_MODE | Coarse selectable warhead MODE currently set for a selectable/multi-mode warhead (e.g. surface vs penetrate on a multi-drop magazine store). Reports the mode only. It is a COARSE enum and MUST NOT be widened to carry a fuze timing / inter-stage delay value; the actual timing is device-internal and configured on the component bus (e.g. DroneCAN) below the FMU. | |
| sd_duration | uint8_t | MAVLINK_M_SD_DURATION | Scatterable-mine self-destruct duration CATEGORY (not exact seconds), for mine payloads. |
LOITER_MUNITION_CONTROL (53036)
Loitering-munition / one-way-attack UAS control and consent handshake (JFIRE 2023). SAFETY-CRITICAL: consent_state records a MAN-IN-THE-LOOP human decision and MUST NOT be used to build an automated release path; release authority remains with the crewed C2 system. terminate provides abort/wave-off/self-destruct. Pairs with TARGET_AUTHORIZATION (record). A loitering munition also acts on ENGAGEMENT_DIRECTIVE: MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT as MAVLINK_M_LM_TERMINATE_ABORT, and MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE as MAVLINK_M_LM_TERMINATE_WAVE_OFF held until a MAVLINK_M_ENGAGEMENT_DIRECTIVE_RESUME.
Both ends send it. A munition sends consent_state MAVLINK_M_LM_CONSENT_REQUESTED addressed to the human authority for the engagement: the source of the FIRES or addressed LOITER_MUNITION_CONTROL that tasked it against track_uid. It applies MAVLINK_M_LM_CONSENT_GRANTED only from that system, and every stop from any sender. consent_state and terminate carry changes, not a copy of state: a sender sets them only to make that change and otherwise sends MAVLINK_M_LM_CONSENT_NONE and MAVLINK_M_LM_TERMINATE_NONE, which leave the munition's consent and action as they are.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the munition, or the human authority for a consent request. 0 (every system) is valid only to stop. From a message sent with 0, a munition applies terminate MAVLINK_M_LM_TERMINATE_WAVE_OFF or MAVLINK_M_LM_TERMINATE_ABORT and consent_state MAVLINK_M_LM_CONSENT_WITHHELD or MAVLINK_M_LM_CONSENT_WITHDRAWN, treats any other terminate or consent_state value as none, and ignores the loiter station and every other field, so after an ABORT it returns to the loiter station it already holds. It never drops the stop because the message carries something else. Receivers ignore a LOITER_MUNITION_CONTROL sent with 0 that carries no stop. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| track_uid | uint8_t[16] | 128-bit track UID of the engaged object (see TRACK_IDENTITY). | ||
| consent_state | uint8_t | MAVLINK_M_LM_CONSENT_STATE | Man-in-the-loop consent-to-strike state (recorded human decision, not a trigger). | |
| terminate | uint8_t | MAVLINK_M_LM_TERMINATE | Abort / wave-off / self-destruct action. | |
| tst_status | uint8_t | MAVLINK_M_TST_STATUS | Time-sensitive-target prosecution status. | |
| pid_status | uint8_t | MAVLINK_M_PID_STATUS | Positive-identification status gate (from TRACK_IDENTITY set). | |
| cde_level | uint8_t | MAVLINK_M_CDE_LEVEL | Collateral-damage-estimate level gate (number only). | |
| loiter_lat | int32_t | degE7 | Loiter/orbit station latitude, WGS84. INT32_MAX = not provided (0 is a valid coordinate). | |
| loiter_lon | int32_t | degE7 | Loiter/orbit station longitude, WGS84. INT32_MAX = not provided (0 is a valid coordinate). | |
| dmpi_kind | uint8_t | MAVLINK_M_DMPI_REFERENCE_KIND | How the desired point of impact is referenced (no mensurated coordinate). |
RWS_POSE (53040)
Remote Weapon System (RWS) pose relative to the host vehicle. Describes the physical mounting offset and orientation of the weapon system, plus its absolute position and velocity if available.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| lat | int32_t | degE7 | RWS latitude, WGS84. INT32_MAX if unknown. | |
| lon | int32_t | degE7 | RWS longitude, WGS84. INT32_MAX if unknown. | |
| alt | float | m | RWS altitude, MSL. NaN if unknown. | |
| vx | float | m/s | Velocity north component (NED). NaN if unknown. | |
| vy | float | m/s | Velocity east component (NED). NaN if unknown. | |
| vz | float | m/s | Velocity down component (NED). NaN if unknown. | |
| cov_pos_x | float | Position covariance, north axis (m^2). NaN if unknown. | ||
| cov_pos_y | float | Position covariance, east axis (m^2). NaN if unknown. | ||
| cov_pos_z | float | Position covariance, down axis (m^2). NaN if unknown. | ||
| cov_vel_x | float | Velocity covariance, north axis (m^2/s^2). NaN if unknown. | ||
| cov_vel_y | float | Velocity covariance, east axis (m^2/s^2). NaN if unknown. | ||
| cov_vel_z | float | Velocity covariance, down axis (m^2/s^2). NaN if unknown. | ||
| offset_x | float | m | Mounting offset X from vehicle reference point in coordinate_frame. | |
| offset_y | float | m | Mounting offset Y from vehicle reference point in coordinate_frame. | |
| offset_z | float | m | Mounting offset Z from vehicle reference point in coordinate_frame. | |
| q | float[4] | RWS orientation quaternion [w, x, y, z] relative to coordinate_frame. | ||
| accuracy_roll | float | rad | Roll orientation accuracy (1-sigma). | |
| accuracy_pitch | float | rad | Pitch orientation accuracy (1-sigma). | |
| accuracy_yaw | float | rad | Yaw orientation accuracy (1-sigma). | |
| coordinate_frame | uint8_t | MAV_FRAME | Coordinate frame for offset and orientation. See MAV_FRAME. |
RWS_STATE (53041)
Remote Weapon System (RWS) operational state including arming status and loaded weapon information.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| weapon_string | char[50] | Human-readable weapon description or designation (null-terminated). | ||
| arming_state | uint8_t | MAVLINK_M_RWS_ARMING_STATE | Current arming state of the weapon system. | |
| weapon_type | uint8_t | Weapon type identifier (implementation-defined). |
SENSOR_TASKING (53050)
Inbound sensor/payload tasking from a UCI C2 node, and the platform's tasking-status response. Provided for gateway mapping between UCI publish/subscribe events and native MAVLink payload control; it does not replace MAVLink platform control. Carries commanded sensor mode and an optional point of interest or track to slew to.
A request carries status MAVLINK_M_TASKING_UNSPECIFIED and is addressed to the sensor or payload. A status response carries any other status and is addressed to the requester: the source system and component IDs in the request's frame header. A response echoes task_id and track_uid and reports the mode in effect in sensor_mode; receivers ignore its point-of-interest fields. When a task ends for any reason other than its requester's own request, the sensor sends that requester a status response with MAVLINK_M_TASKING_INTERRUPTED, echoing the task's task_id and track_uid. Status responses go only to the requester.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the sensor's system for a request, the requester's for a status response. Never 0, not even to cage every sensor: a STANDBY sent to every system would also cage a designator guiding a weapon already in flight. Receivers ignore a SENSOR_TASKING sent with 0. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system: the sensor or payload for a request, the requester for a status response. 0 = every component of that system. Ignored when target_system is 0. | ||
| task_id | uint16_t | Tasking correlation id, chosen by the requester and echoed unchanged in every status response for that task. A sensor tells tasks apart by the requester's system and component IDs together with task_id. | ||
| sensor_mode | uint8_t | MAVLINK_M_SENSOR_MODE | Commanded sensor/payload mode in a request; the mode in effect in a status response. | |
| status | uint8_t | MAVLINK_M_TASKING_STATUS | MAVLINK_M_TASKING_UNSPECIFIED in a request, any other value in a status response; this is how a receiver tells the two apart. | |
| poi_lat | int32_t | degE7 | Point-of-interest latitude to slew to, WGS84. INT32_MAX = not provided (0 is a valid coordinate). | |
| poi_lon | int32_t | degE7 | Point-of-interest longitude to slew to, WGS84. INT32_MAX = not provided (0 is a valid coordinate). | |
| poi_alt | float | m | Point-of-interest altitude, MSL. NaN = not provided. | |
| track_uid | uint8_t[16] | Track UID (see TRACK_IDENTITY) the sensor is to follow. When set, the sensor follows that track and the point of interest is only a starting cue; with sensor_mode MAVLINK_M_SENSOR_MODE_LASER_DESIGNATE or MAVLINK_M_SENSOR_MODE_IR_MARK the track only cues the sensor, which lases or marks what its own tracker holds. All-zero to point at the point of interest. |
CAS_9LINE (53060)
Close air support 9-line brief (JP 3-09.3 / JFIRE). Descriptive tasking data classes for a CAS attack. Laser code is carried as a slot, never a value. Danger close is a flag; RED tables are never embedded.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the attacking aircraft. A flight gets the brief addressed to each of its aircraft. Never 0; receivers ignore a 9-line sent to every system. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| sequence | uint16_t | Engagement sequence of this brief, chosen by its sender. TERMINAL_CONTROL.sequence refers to it. 0xFFFF is reserved: in a stop it means every brief. | ||
| ip_lat | int32_t | degE7 | Line 1: initial point / battle position latitude, WGS84. | |
| ip_lon | int32_t | degE7 | Line 1: initial point / battle position longitude, WGS84. | |
| heading_deg | uint16_t | deg | Line 2: heading (IP to target). | |
| offset_deg | int16_t | deg | Line 2: offset (L/R); sign indicates side. | |
| distance_m | uint32_t | m | Line 3: distance IP to target. | |
| tgt_elev_m | int32_t | m | Line 4: target elevation, MSL. | |
| tgt_lat | int32_t | degE7 | Line 6: target latitude, WGS84. | |
| tgt_lon | int32_t | degE7 | Line 6: target longitude, WGS84. | |
| mark_type | uint8_t | MAVLINK_M_MARK_TYPE | Line 7: type of mark / terminal guidance. | |
| laser_code_slot | uint8_t | Line 7: 1 = a laser code is assigned (slot); 0 = none. Never the numeric code. | ||
| friendlies_lat | int32_t | degE7 | Line 8: friendlies latitude, WGS84. | |
| friendlies_lon | int32_t | degE7 | Line 8: friendlies longitude, WGS84. | |
| egress_deg | uint16_t | deg | Line 9: egress heading. | |
| final_attack_heading_deg | uint16_t | deg | Remarks: final attack heading (FAH). 0xFFFF if unspecified. | |
| danger_close | uint8_t | Remarks: 1 = danger close / troops in contact; 0 = not. | ||
| delivery | uint8_t | MAVLINK_M_ORDNANCE_DELIVERY | Bomb-on-coordinate vs bomb-on-target. | |
| track_uid | uint8_t[16] | Track UID (see TRACK_IDENTITY) of the target this brief describes. All-zero if not associated with a track. |
TERMINAL_CONTROL (53061)
Terminal-attack-control handshake (JP 3-09.3). Carries the control type, the clearance or abort verb, and attacking-aircraft status calls. Both ends send it. The controller sends clearance, addressed to the attacking aircraft, with aircraft_call MAVLINK_M_ACFT_CALL_NONE. The aircraft sends aircraft_call, addressed to the controller (the source of the CAS_9LINE with this sequence), with clearance MAVLINK_M_CAS_NONE, so a report is never read as a clearance or an abort. MAVLINK_M_CAS_CONTINUE and MAVLINK_M_CAS_CLEARED_HOT are human-authority instruments: they record a human decision, must not be wired as an automated release path, and are acted on only from the controller that sent the brief. MAVLINK_M_CAS_ABORT and MAVLINK_M_CAS_CEASE_FIRE are safety actions: the aircraft acts on them on receipt from any sender, whatever tac_type and abort_authority_present say.
| Field Name | Type | Units | Values | Description |
|---|---|---|---|---|
| time_usec | uint64_t | us | Timestamp (UNIX epoch, microseconds UTC). | |
| target_system | uint8_t | System ID of the intended recipient: the attacking aircraft for a clearance, the controller for an aircraft call. 0 (every system) is valid only with clearance MAVLINK_M_CAS_ABORT or MAVLINK_M_CAS_CEASE_FIRE, and a receiver acts only on that clearance in such a message; receivers ignore any other TERMINAL_CONTROL sent with 0. | ||
| target_component | uint8_t | Component ID of the intended recipient within target_system. 0 = every component of that system. Ignored when target_system is 0. | ||
| sequence | uint16_t | Engagement sequence this handshake applies to: the CAS_9LINE.sequence of the brief it controls. With clearance MAVLINK_M_CAS_ABORT or MAVLINK_M_CAS_CEASE_FIRE, 0xFFFF means every attack the receiving aircraft is making. | ||
| tac_type | uint8_t | MAVLINK_M_TAC_TYPE | Type of terminal attack control (1/2/3). | |
| clearance | uint8_t | MAVLINK_M_CAS_CLEARANCE | Clearance / abort verb (human authority). | |
| aircraft_call | uint8_t | MAVLINK_M_AIRCRAFT_CALL | Attacking-aircraft status call. | |
| abort_authority_present | uint8_t | 1 = a valid abort authority is established for this engagement; 0 = not. A precondition for MAVLINK_M_CAS_CLEARED_HOT; it never gates MAVLINK_M_CAS_ABORT or MAVLINK_M_CAS_CEASE_FIRE. |
Enumerated Types
MAVLINK_M_TARGET_CLASS
Classification of a target across physical and non-physical domains.
MAVLINK_M_TARGET_DOMAIN
Primary operating domain of the target.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TARGET_DOMAIN_UNKNOWN | Unknown target domain. |
| 1 | MAVLINK_M_TARGET_DOMAIN_GROUND | Ground or land surface target. |
| 2 | MAVLINK_M_TARGET_DOMAIN_AIR | Airborne target. |
| 3 | MAVLINK_M_TARGET_DOMAIN_MARITIME_SURFACE | Maritime surface target. |
| 4 | MAVLINK_M_TARGET_DOMAIN_SUBSURFACE | Submerged or underwater target. |
| 5 | MAVLINK_M_TARGET_DOMAIN_SPACE | Space target or orbital object. |
| 6 | MAVLINK_M_TARGET_DOMAIN_CYBER | Cyber, network, or digital infrastructure target. |
| 7 | MAVLINK_M_TARGET_DOMAIN_ELECTROMAGNETIC | Electromagnetic emitter, jammer, radar, or spectrum target. |
| 8 | MAVLINK_M_TARGET_DOMAIN_INFRASTRUCTURE | Fixed infrastructure target spanning one or more physical domains. |
MAVLINK_M_TARGET_ENTITY_2525D
Target entity class, representative subset of the MIL-STD-2525D (Distribution A) land entity library. Note 2525D has no separate IFV entity; an IFV renders as ARMORED_FIGHTING_VEHICLE. Pin the 2525D version to the target 6017 baseline for lossless round-trip.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ENT_UNKNOWN | Unknown entity. |
| 1 | MAVLINK_M_ENT_TANK_LIGHT | Tank (light). |
| 2 | MAVLINK_M_ENT_TANK_MEDIUM | Tank (medium). |
| 3 | MAVLINK_M_ENT_TANK_HEAVY | Tank (heavy); MBT maps here. |
| 4 | MAVLINK_M_ENT_ARMORED_FIGHTING_VEHICLE | Armored fighting vehicle; IFV renders here. |
| 5 | MAVLINK_M_ENT_APC | Armored personnel carrier. |
| 6 | MAVLINK_M_ENT_HOWITZER | Howitzer. |
| 7 | MAVLINK_M_ENT_MRL | Multiple rocket launcher. |
| 8 | MAVLINK_M_ENT_MORTAR | Mortar. |
| 9 | MAVLINK_M_ENT_ADA_GUN | Air-defense gun (AAA). |
| 10 | MAVLINK_M_ENT_ADA_MISSILE | Air-defense missile launcher (SAM; TLAR/TELAR). |
| 11 | MAVLINK_M_ENT_ANTITANK | Antitank gun or missile launcher. |
| 12 | MAVLINK_M_ENT_SSM_LAUNCHER | Surface-to-surface missile launcher. |
| 13 | MAVLINK_M_ENT_RADAR | Radar (sensor entity). |
| 14 | MAVLINK_M_ENT_C2_NODE | Command-and-control node or command post. |
| 15 | MAVLINK_M_ENT_ENGINEER_VEHICLE | Engineer vehicle. |
| 16 | MAVLINK_M_ENT_POL | Petroleum/oil/lubricant site (logistics). |
| 17 | MAVLINK_M_ENT_AMMO | Ammunition site (logistics). |
| 18 | MAVLINK_M_ENT_BRIDGE | Bridge. |
| 19 | MAVLINK_M_ENT_ROUTE | Road or route. |
| 20 | MAVLINK_M_ENT_INFANTRY | Infantry unit. |
| 21 | MAVLINK_M_ENT_FIELD_ARTILLERY | Field artillery unit. |
| 22 | MAVLINK_M_ENT_EW_MI | Electronic warfare or military intelligence unit. |
| 23 | MAVLINK_M_ENT_LAND_MINE_IED | Land mine or IED. |
MAVLINK_M_TARGET_FORCE
Force affiliation of a target.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TARGET_FORCE_UNKNOWN | Force affiliation unknown. |
| 10 | MAVLINK_M_TARGET_FORCE_NEUTRAL | Neutral force. |
| 20 | MAVLINK_M_TARGET_FORCE_FRIENDLY | Friendly force. |
| 30 | MAVLINK_M_TARGET_FORCE_FOE | Enemy force. |
| 250 | MAVLINK_M_TARGET_FORCE_EXTRATERRESTRIAL | Extraterrestrial / non-human origin. |
MAVLINK_M_TARGET_PACKAGE_TRANSPORT
Transport protocol used to retrieve an externally hosted target package.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TARGET_PACKAGE_TRANSPORT_UNKNOWN | Unknown or no target package transport. |
| 1 | MAVLINK_M_TARGET_PACKAGE_TRANSPORT_HTTP | HTTP target package transport. |
| 2 | MAVLINK_M_TARGET_PACKAGE_TRANSPORT_HTTPS | HTTPS target package transport. |
MAVLINK_M_TARGET_FLAGS
(Bitmask) Target warning and status flags.
| Value | Name | Description |
|---|---|---|
| 1 | MAVLINK_M_TARGET_FLAG_AUTHORIZATION_REQUIRED | Authorization is required before action can be taken. |
| 2 | MAVLINK_M_TARGET_FLAG_GNSS_DEGRADED | GNSS quality was degraded when the target was generated. |
| 4 | MAVLINK_M_TARGET_FLAG_LINK_DEGRADED | Link quality was degraded when the target was generated. |
| 8 | MAVLINK_M_TARGET_FLAG_LOW_CONFIDENCE | Target confidence is low. |
| 16 | MAVLINK_M_TARGET_FLAG_LOW_IMAGE_QUALITY | Associated imagery quality is low. |
| 32 | MAVLINK_M_TARGET_FLAG_MOVING | Target is assessed to be moving. |
| 64 | MAVLINK_M_TARGET_FLAG_STALE | Target data may be stale. |
| 128 | MAVLINK_M_TARGET_FLAG_INTEGRITY_PRESENT | Associated target package contains integrity material. |
| 256 | MAVLINK_M_TARGET_FLAG_MANUAL_DESIGNATION | Target was designated manually by an operator. |
| 512 | MAVLINK_M_TARGET_FLAG_AUTONOMOUS_DETECTION | Target was detected or designated autonomously. |
MAVLINK_M_TARGET_SENSOR_TYPE
Primary sensor source used for target identification.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TARGET_SENSOR_TYPE_UNKNOWN | Unknown or unspecified target identification sensor. |
| 1 | MAVLINK_M_TARGET_SENSOR_TYPE_EO | Electro-optical sensor. |
| 2 | MAVLINK_M_TARGET_SENSOR_TYPE_IR | Infrared sensor. |
| 3 | MAVLINK_M_TARGET_SENSOR_TYPE_ACOUSTIC | Acoustic sensor. |
| 4 | MAVLINK_M_TARGET_SENSOR_TYPE_RADAR | Radar sensor. |
| 5 | MAVLINK_M_TARGET_SENSOR_TYPE_RF | RF sensor. |
| 6 | MAVLINK_M_TARGET_SENSOR_TYPE_FUSED | Multiple sensor sources were fused for target identification. |
MAVLINK_M_TAC_TYPE
Type of terminal attack control, a defined construct in JP 3-09.3 (Close Air Support). The three types are distinguished by what the terminal controller can visually acquire before granting clearance.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TAC_TYPE_NONE | Not under terminal attack control. |
| 1 | MAVLINK_M_TAC_TYPE_1 | Type 1: controller must visually acquire both the attacking aircraft and the target before clearance. |
| 2 | MAVLINK_M_TAC_TYPE_2 | Type 2: controller clears an individual attack without visually acquiring the aircraft and/or target at release. |
| 3 | MAVLINK_M_TAC_TYPE_3 | Type 3: controller grants clearance for multiple attacks within a defined engagement/period under stated restrictions. |
MAVLINK_M_CAS_CLEARANCE
CAS clearance / abort handshake verbs (JP 3-09.3). Human-authority instruments.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_CAS_NONE | No clearance state. |
| 1 | MAVLINK_M_CAS_CONTINUE | Continue. |
| 2 | MAVLINK_M_CAS_CLEARED_HOT | Cleared hot. |
| 3 | MAVLINK_M_CAS_ABORT | Abort. |
| 4 | MAVLINK_M_CAS_CEASE_FIRE | Cease fire. |
MAVLINK_M_AIRCRAFT_CALL
Attacking-aircraft status calls (JFIRE 9-line flow).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ACFT_CALL_NONE | No call. |
| 1 | MAVLINK_M_ACFT_CALL_IN | IN (commencing attack run). |
| 2 | MAVLINK_M_ACFT_CALL_OFF | OFF (off target). |
| 3 | MAVLINK_M_ACFT_CALL_VISUAL | VISUAL (sees friendlies). |
| 4 | MAVLINK_M_ACFT_CALL_TALLY | TALLY (sees target). |
MAVLINK_M_MARK_TYPE
Type of target mark / terminal guidance (9-line line 7).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MARK_NONE | No mark. |
| 1 | MAVLINK_M_MARK_WP | White phosphorus mark. |
| 2 | MAVLINK_M_MARK_ILLUM | Illumination mark. |
| 3 | MAVLINK_M_MARK_LASER | Laser designation (code carried as slot, not value). |
| 4 | MAVLINK_M_MARK_IR | IR pointer. |
MAVLINK_M_ORDNANCE_DELIVERY
Bomb-on-coordinate vs bomb-on-target delivery intent.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_DELIVERY_UNSPECIFIED | Unspecified. |
| 1 | MAVLINK_M_DELIVERY_BOC | Bomb on coordinate. |
| 2 | MAVLINK_M_DELIVERY_BOT | Bomb on target. |
MAVLINK_M_ESAD_ARMING_STATUS
ESAD arming state.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_ARMING_DISARMED | System is disarmed. |
| 1 | MAVLINK_M_ESAD_ARMING_ARMED | System is armed. |
| 2 | MAVLINK_M_ESAD_ARMING_FAULT | Arming fault detected. |
MAVLINK_M_ESAD_MUNITION_STATUS
ESAD munition readiness state.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_MUNITION_NOT_PRESENT | No munition present. |
| 1 | MAVLINK_M_ESAD_MUNITION_PRESENT | Munition present and not ready. |
| 2 | MAVLINK_M_ESAD_MUNITION_READY | Munition present and ready. |
| 3 | MAVLINK_M_ESAD_MUNITION_FAULT | Munition fault detected. |
MAVLINK_M_ESAD_IGNITION_STATUS
ESAD ignition circuit state.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_IGNITION_OPEN | Ignition circuit open. |
| 1 | MAVLINK_M_ESAD_IGNITION_CLOSED | Ignition circuit closed. |
| 2 | MAVLINK_M_ESAD_IGNITION_FIRED | Ignition has fired. |
| 3 | MAVLINK_M_ESAD_IGNITION_FAULT | Ignition circuit fault. |
MAVLINK_M_ESAD_FAULT_FLAGS
(Bitmask) ESAD fault flag bitmask. Scope is ESAD-internal faults only. Deceleration/landing sensor health is reported separately via STORE_SENSOR_STATUS and is not represented here.
| Value | Name | Description |
|---|---|---|
| 1 | MAVLINK_M_ESAD_FAULT_WIRING | Wiring fault detected. |
| 2 | MAVLINK_M_ESAD_FAULT_POWER_GLITCH | Power supply glitch detected. |
| 4 | MAVLINK_M_ESAD_FAULT_SIGNAL_INTEGRITY | Signal integrity fault detected. |
MAVLINK_M_ESAD_ARMING_REQUEST
ESAD arming command.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_REQUEST_DISARM | Request disarm. |
| 1 | MAVLINK_M_ESAD_REQUEST_ARM | Request arm. |
MAVLINK_M_ESAD_PIN_STATE
State of the physical safety pull-pin on an ESAD. Read-only status.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_PIN_UNKNOWN | Pin state not determined. |
| 1 | MAVLINK_M_ESAD_PIN_PRESENT | Pin present (device mechanically safed). |
| 2 | MAVLINK_M_ESAD_PIN_REMOVED | Pin removed (mechanical safety released). |
MAVLINK_M_ESAD_ARM_DELAY_SETTING
Selected arming-delay setting: how long after the in-flight-event signal the ESAD will PERMIT arming. Reports the physical switch detent position. This is a safety timer setting, not a fuze timing value.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_ARM_DELAY_UNKNOWN | Setting not determined. |
| 1 | MAVLINK_M_ESAD_ARM_DELAY_90S | 90 second arming delay. |
| 2 | MAVLINK_M_ESAD_ARM_DELAY_60S | 60 second arming delay. |
| 3 | MAVLINK_M_ESAD_ARM_DELAY_30S | 30 second arming delay. |
MAVLINK_M_ESAD_TRIGGER_DISTANCE_MODE
Selected trigger-distance MODE for a proximity (TOF or equivalent) safe/arm device: the coarse standoff detent at which the device is permitted to function. This is a SAFE/ARM standoff SELECTION among the device's defined modes, NOT a settable continuous distance and NOT a fuze height-of-burst configuration. It must remain a coarse enum; it must never be widened to a free continuous distance value on the wire, which would turn the bus into a fuze-configuration channel. On devices with a physical switch this reports the switch position; on devices that accept ESAD_CONFIG it reports the mode currently in effect.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ESAD_TRIG_DIST_UNKNOWN | Mode not determined. |
| 1 | MAVLINK_M_ESAD_TRIG_DIST_2M | 2 metre standoff mode. |
| 2 | MAVLINK_M_ESAD_TRIG_DIST_4M | 4 metre standoff mode. |
| 3 | MAVLINK_M_ESAD_TRIG_DIST_MANUAL | Manual mode (standoff governed by the platform/operator, not an auto standoff). |
MAVLINK_M_RWS_ARMING_STATE
Remote weapon system arming state.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_RWS_ARMING_SAFE | Weapon system safe. |
| 1 | MAVLINK_M_RWS_ARMING_ARMED | Weapon system armed. |
| 2 | MAVLINK_M_RWS_ARMING_FAULT | Weapon system fault. |
MAVLINK_M_MATCH_MEDIA_TYPE
Media type used for target matching.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MATCH_MEDIA_NONE | No matching media. |
| 1 | MAVLINK_M_MATCH_MEDIA_IMAGE | Still image. |
| 2 | MAVLINK_M_MATCH_MEDIA_VIDEO_CLIP | Video clip. |
| 3 | MAVLINK_M_MATCH_MEDIA_IR_IMAGE | Infrared image. |
| 4 | MAVLINK_M_MATCH_MEDIA_SAR_IMAGE | SAR image. |
MAVLINK_M_SPLASH_DEVIATION
Deviation spotting relative to the observer-target (OT) line (ATP 3-09.30 / VMF K02.22).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SPLASH_DEVIATION_UNKNOWN | Deviation not determined. |
| 1 | MAVLINK_M_SPLASH_DEVIATION_LINE | Impact on the OT line; zero lateral deviation. |
| 2 | MAVLINK_M_SPLASH_DEVIATION_LEFT | Impact left of the OT line (correction: shift right). |
| 3 | MAVLINK_M_SPLASH_DEVIATION_RIGHT | Impact right of the OT line (correction: shift left). |
MAVLINK_M_SPLASH_RANGE
Range spotting along the observer-target line (ATP 3-09.30 / STANAG 1034 / VMF K02.22).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SPLASH_RANGE_UNKNOWN | Range relationship not determined. |
| 1 | MAVLINK_M_SPLASH_RANGE_OVER | Impact beyond the target (range too long; decrease range). |
| 2 | MAVLINK_M_SPLASH_RANGE_SHORT | Impact between observer and target (range too short; increase range). |
| 3 | MAVLINK_M_SPLASH_RANGE_TARGET | Direct hit at target range (precision/registration); enter fire for effect. |
| 4 | MAVLINK_M_SPLASH_RANGE_RANGE_CORRECT | Impact at correct range along the OT line. |
| 5 | MAVLINK_M_SPLASH_RANGE_STRADDLE | Multi-gun salvo: rounds fell both over and short; MPI correct, enter FFE. |
| 6 | MAVLINK_M_SPLASH_RANGE_DOUBTFUL | Impact seen but cannot be called over/short. |
| 7 | MAVLINK_M_SPLASH_RANGE_LOST | Round neither seen nor heard. |
| 8 | MAVLINK_M_SPLASH_RANGE_UNOBSERVED | Heard/seen but cannot determine over/short (distinct from LOST). |
| 9 | MAVLINK_M_SPLASH_RANGE_NEGLECT | Naval (NSFS): last salvo fired on incorrect data; disregard spotting. |
MAVLINK_M_SPLASH_HOB
Height-of-burst spotting (ATP 3-09.30). An OBSERVATION of where the round detonated vertically, NOT a munition property or a fuze setting. Drives the doctrinal vertical correction (e.g. graze on an intended airburst => "Up 40").
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SPLASH_HOB_NA | Not applicable / not observed. |
| 1 | MAVLINK_M_SPLASH_HOB_AIR | Detonated in the air as intended. |
| 2 | MAVLINK_M_SPLASH_HOB_GRAZE | Detonated on contact with the ground (ground-burst). |
| 3 | MAVLINK_M_SPLASH_HOB_MIXED | Salvo: air and graze bursts, no clear majority. |
| 4 | MAVLINK_M_SPLASH_HOB_MIXED_AIR | Salvo: mixed, majority air. |
| 5 | MAVLINK_M_SPLASH_HOB_MIXED_GRAZE | Salvo: mixed, majority graze. |
| 6 | MAVLINK_M_SPLASH_HOB_RIPPED_CHUTE | Illumination parachute ripped/separated on deployment; repeat illum. |
| 7 | MAVLINK_M_SPLASH_HOB_DARK_STAR | Illumination round failed to deploy or properly ignite (ATP 3-09.32). |
MAVLINK_M_SPLASH_SURFACE
Supplementary: what the round struck / what the splash was observed in/on. Sensor context, not part of the doctrinal spotting set.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SPLASH_SURFACE_UNKNOWN | Surface not determined. |
| 1 | MAVLINK_M_SPLASH_SURFACE_GROUND | Bare land / terrain. |
| 2 | MAVLINK_M_SPLASH_SURFACE_WATER | Water surface. A near-miss beside a vessel reports this. |
| 3 | MAVLINK_M_SPLASH_SURFACE_STRUCTURE | Building or fixed structure. |
| 4 | MAVLINK_M_SPLASH_SURFACE_VEHICLE | Land vehicle (tank, IFV, truck). Mobile; may have moved by next correction. |
| 5 | MAVLINK_M_SPLASH_SURFACE_SURFACE_VESSEL | Ship or boat. Distinct from WATER so hit-vs-near-miss on a vessel is unambiguous. |
| 6 | MAVLINK_M_SPLASH_SURFACE_FOLIAGE | Tree canopy / vegetation; may cause early function or masking. |
MAVLINK_M_SPLASH_OBSCURATION
Supplementary: why the observer could not fully resolve the impact. Relates to RANGE_DOUBTFUL / RANGE_LOST.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SPLASH_OBSCURATION_NONE | Clear observation, no obscuration. |
| 1 | MAVLINK_M_SPLASH_OBSCURATION_TERRAIN | Masked by terrain / defilade. |
| 2 | MAVLINK_M_SPLASH_OBSCURATION_SMOKE | Masked by smoke or dust (own or battlefield). |
| 3 | MAVLINK_M_SPLASH_OBSCURATION_WEATHER | Masked by cloud, fog, or precipitation. |
| 4 | MAVLINK_M_SPLASH_OBSCURATION_VEGETATION | Masked by foliage / canopy. |
| 5 | MAVLINK_M_SPLASH_OBSCURATION_SENSOR_LIMIT | Sensor resolution / range / angle limit, not an external mask. |
MAVLINK_M_FIRE_MISSION_COMMAND
Procedural fire-mission control commands exchanged in the observer/FDC digital handshake (ATP 3-09.30; map to VMF K02.16 End of Mission and K02.22 Subsequent Adjust flows). These are control verbs, not spotting.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_FMC_NONE | No command. |
| 1 | MAVLINK_M_FMC_FIRE_FOR_EFFECT | Enter fire for effect. |
| 2 | MAVLINK_M_FMC_END_OF_MISSION | End of mission (EOM). |
| 3 | MAVLINK_M_FMC_RECORD_AS_TARGET | Record the current data as a target. |
| 4 | MAVLINK_M_FMC_REPEAT | Repeat the last fire. |
| 5 | MAVLINK_M_FMC_CHECK_FIRING | Check firing (temporary halt). |
| 6 | MAVLINK_M_FMC_CANCEL_CHECK_FIRING | Cancel check firing / resume. |
| 7 | MAVLINK_M_FMC_CEASE_LOADING | Cease loading. |
| 8 | MAVLINK_M_FMC_CANCEL_AT_MY_COMMAND | Cancel At My Command. |
| 9 | MAVLINK_M_FMC_CANCEL_HIGH_ANGLE | Cancel high angle. |
| 10 | MAVLINK_M_FMC_CHECK_SOLUTION | Check fire-control solution (NSFS). |
| 11 | MAVLINK_M_FMC_FRESH_TARGET | Fresh target: interrupt current mission for higher-priority target (NSFS). |
| 12 | MAVLINK_M_FMC_NEW_TARGET | New target: engage additional non-priority target, continue original (NSFS). |
MAVLINK_M_MUNITION_CLASS
Projectile / shell class for the call-for-fire method of engagement (ATP 3-09.30 element 5). The projectile is a distinct component from the fuze; the two are specified separately. This is requester intent, not weaponeering configuration.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MUNITION_CLASS_UNKNOWN | Unspecified. |
| 1 | MAVLINK_M_MUNITION_CLASS_HE | High explosive. |
| 2 | MAVLINK_M_MUNITION_CLASS_WP | White phosphorus (incendiary / marking / obscuration). |
| 3 | MAVLINK_M_MUNITION_CLASS_ILLUM | Illumination. |
| 4 | MAVLINK_M_MUNITION_CLASS_SMOKE | Smoke (e.g. HC base-ejection). |
| 5 | MAVLINK_M_MUNITION_CLASS_DPICM | Dual-purpose improved conventional munition. |
| 6 | MAVLINK_M_MUNITION_CLASS_PGM | Precision guided munition (e.g. Excalibur, APMI). |
MAVLINK_M_FUZE_MODE
Requested fuze MODE for the call-for-fire method of engagement (ATP 3-09.30). Product-independent: selects the standard fuze behavior category (the observer's intent), NOT internal fuze timing or height-of-burst settings, which remain device-internal and out of scope. Whether the fielded fuze is multi-option (e.g. M782 MOFA) is carried separately as the fuze_mofa_capable flag on FIRES, since MOFA is a capability, not a mode.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_FUZE_MODE_UNKNOWN | Unspecified. |
| 1 | MAVLINK_M_FUZE_MODE_PD | Point-detonating; detonate on contact. |
| 2 | MAVLINK_M_FUZE_MODE_PD_SQ | Point-detonating superquick. |
| 3 | MAVLINK_M_FUZE_MODE_DELAY | Delay; detonate after impact for penetration. |
| 4 | MAVLINK_M_FUZE_MODE_TIME | Mechanical/electronic time; burst at a set point in trajectory. |
| 5 | MAVLINK_M_FUZE_MODE_ET | Electronic time. |
| 6 | MAVLINK_M_FUZE_MODE_MTSQ | Mechanical time superquick. |
| 7 | MAVLINK_M_FUZE_MODE_VT | Variable time / proximity; burst at a preset height above ground. |
| 8 | MAVLINK_M_FUZE_MODE_CVT | Controlled variable time. |
MAVLINK_M_HOB_INTENT
Descriptive airburst height-of-burst intent for proximity/time modes. A selector, NOT a millisecond or metric value.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_HOB_INTENT_NA | Not applicable (non-airburst mode). |
| 1 | MAVLINK_M_HOB_INTENT_LOW | Low airburst intent. |
| 2 | MAVLINK_M_HOB_INTENT_HIGH | High airburst intent. |
MAVLINK_M_CUE_TYPE
Intent of a non-kinetic point-of-interest cue. These values explicitly denote observation/investigation tasking and carry NO engagement semantics. A consumer must not interpret a TARGET_CUE as a fires order.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_CUE_TYPE_UNSPECIFIED | Not specified (default for an unset field). A consumer must not act on an unspecified cue type. |
| 1 | MAVLINK_M_CUE_TYPE_INVESTIGATE | Proceed to the point and gather further information. Non-kinetic. |
| 2 | MAVLINK_M_CUE_TYPE_OBSERVE | Maintain standoff observation of the point. Non-kinetic. |
| 3 | MAVLINK_M_CUE_TYPE_MARK | Record/mark the point as a reference of interest. No tasking implied. |
MAVLINK_M_ACK_RESULT
Result of receiving/processing a MAVLink-M message, reported via MAVLINK_M_ACK. Distinguishes "received" from "accepted" so a sender can tell delivery from agreement.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ACK_RECEIVED | Message was received and parsed. No acceptance implied. |
| 1 | MAVLINK_M_ACK_ACCEPTED | Message was received and accepted/actioned by the recipient. |
| 2 | MAVLINK_M_ACK_REJECTED | Message was received but rejected (e.g. operator declined the cue). |
| 3 | MAVLINK_M_ACK_UNSUPPORTED | Message type or requested action is not supported by the recipient. |
| 4 | MAVLINK_M_ACK_FAILED | Message was received but processing failed (e.g. malformed or stale, or a start (SAFETY BOUNDARIES) dated later than the receiving system's clock plus the maximum clock offset). |
| 5 | MAVLINK_M_ACK_EXPIRED | Message was received after its validity window had passed: a start (SAFETY BOUNDARIES) whose time_usec is older than the maximum age the receiving system is configured with. A stop is never rejected for its time. |
| 6 | MAVLINK_M_ACK_NOT_APPLICABLE | Message was addressed to this system, and nothing on this system is what it applies to, for example a stop for an engagement this system does not hold. A final result. Never sent in answer to a message sent to every system: a system where such a message selects nothing does not answer it. |
| 7 | MAVLINK_M_ACK_HELD | A start (SAFETY BOUNDARIES) was not applied because it may have been issued before a stop the receiving system recorded and that covers it, or before the system restarted. It may be the start the stop was sent to prevent, so it is issued again, with a new time_usec, only as a new decision of its authority, never automatically. A final result. |
| 8 | MAVLINK_M_ACK_NO_TIME | The receiving system cannot keep its clock within half the maximum clock offset of UTC, so it rejects every start (SAFETY BOUNDARIES) and acts only on stops until it can. A final result. |
MAVLINK_M_STORE_SENSOR_TYPE
Type of sensor feeding a store's deceleration/landing-trigger system.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_STORE_SENSOR_UNKNOWN | Unknown / unspecified sensor. |
| 1 | MAVLINK_M_STORE_SENSOR_BARO | Barometric altimeter. |
| 2 | MAVLINK_M_STORE_SENSOR_MMWAVE_RADAR | Millimeter-wave radar altimeter/ranger. |
| 3 | MAVLINK_M_STORE_SENSOR_AIRSPEED | Airspeed sensor. |
| 4 | MAVLINK_M_STORE_SENSOR_LIDAR | LIDAR rangefinder. |
| 5 | MAVLINK_M_STORE_SENSOR_TOF | Time-of-flight rangefinder (generic, non-LIDAR). |
| 6 | MAVLINK_M_STORE_SENSOR_IMU | Inertial measurement unit (accel/gyro). |
| 7 | MAVLINK_M_STORE_SENSOR_GNSS | GNSS receiver. |
MAVLINK_M_SENSOR_HEALTH
Health state of an individual store sensor.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SENSOR_HEALTH_NOT_PRESENT | Sensor not installed / not detected. |
| 1 | MAVLINK_M_SENSOR_HEALTH_OK | Sensor present and healthy. |
| 2 | MAVLINK_M_SENSOR_HEALTH_DEGRADED | Sensor functional but degraded (e.g. noisy, low confidence). |
| 3 | MAVLINK_M_SENSOR_HEALTH_FAULT | Sensor faulted / no valid data. |
| 4 | MAVLINK_M_SENSOR_HEALTH_CALIBRATING | Sensor initializing or calibrating; not yet usable. |
| 5 | MAVLINK_M_SENSOR_HEALTH_OUT_OF_RANGE | Sensor reading outside valid operating range. |
MAVLINK_M_STORE_READINESS
Roll-up release-readiness state of a store.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_STORE_READINESS_UNKNOWN | Readiness not yet determined. |
| 1 | MAVLINK_M_STORE_READINESS_NOT_READY | Not ready to release (one or more blocking conditions). |
| 2 | MAVLINK_M_STORE_READINESS_READY | All checks passed; cleared for release. |
| 3 | MAVLINK_M_STORE_READINESS_FAULT | Store in fault state; must not be released. |
| 4 | MAVLINK_M_STORE_READINESS_RELEASED | Store has been released from the carrier. |
MAVLINK_M_TRACK_REL
Relationship of a track to its parent, used when tracks split, merge, or are re-identified.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TRACK_REL_NONE | No parent; this is an originating track. |
| 1 | MAVLINK_M_TRACK_REL_CHILD | Derived from a single parent track (e.g. a split). |
| 2 | MAVLINK_M_TRACK_REL_MERGED | Result of merging two or more parent tracks. |
| 3 | MAVLINK_M_TRACK_REL_REID | Re-identification of a previously dropped track. |
MAVLINK_M_ID_METHOD
Method by which a target identification was reached. Records the basis of ID, separate from classification.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ID_METHOD_UNKNOWN | Method not recorded. |
| 1 | MAVLINK_M_ID_METHOD_VISUAL_EO | Electro-optical (visual) identification. |
| 2 | MAVLINK_M_ID_METHOD_IR | Infrared / thermal identification. |
| 3 | MAVLINK_M_ID_METHOD_SAR | Synthetic-aperture radar identification. |
| 4 | MAVLINK_M_ID_METHOD_RADAR | Radar (non-SAR) identification. |
| 5 | MAVLINK_M_ID_METHOD_SIGINT | Signals-intelligence-derived identification. |
| 6 | MAVLINK_M_ID_METHOD_AUTOMATED_ATR | Automated target recognition (machine). |
| 7 | MAVLINK_M_ID_METHOD_HUMAN_CONFIRM | Human-confirmed identification. |
| 8 | MAVLINK_M_ID_METHOD_MULTI_SOURCE | Correlated from multiple sources. |
| 9 | MAVLINK_M_ID_METHOD_GMTI | Ground moving target indicator. Distinct from generic RADAR because it drives specific track-correlation handling in Link 16. |
MAVLINK_M_PID_STATUS
Positive identification (PID) status of a target. Descriptive record, not a release authority.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_PID_STATUS_NONE | No PID established. |
| 1 | MAVLINK_M_PID_STATUS_TENTATIVE | Tentative ID; PID not yet established. |
| 2 | MAVLINK_M_PID_STATUS_POSITIVE | Positive identification established. |
| 3 | MAVLINK_M_PID_STATUS_LOST | PID previously held but since lost. |
MAVLINK_M_ROE_STATE
Rules-of-engagement / clearance state asserted for a target. Descriptive attestation carried for audit; does NOT gate weapon release.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ROE_STATE_UNKNOWN | ROE state not recorded. |
| 1 | MAVLINK_M_ROE_STATE_HOLD | Hold / do not engage. |
| 2 | MAVLINK_M_ROE_STATE_INVESTIGATE | Investigate further before any decision. |
| 3 | MAVLINK_M_ROE_STATE_CLEARED | Engagement cleared by competent authority (attested, not commanded). |
| 4 | MAVLINK_M_ROE_STATE_RESTRICTED | Restricted: constraints apply (see no-strike / collateral context). |
MAVLINK_M_NOSTRIKE_STATUS
No-strike / restricted-target context for a coordinate or target.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_NOSTRIKE_STATUS_UNKNOWN | No-strike status not evaluated. |
| 1 | MAVLINK_M_NOSTRIKE_STATUS_CLEAR | Not on any no-strike or restricted list. |
| 2 | MAVLINK_M_NOSTRIKE_STATUS_NEAR | Within proximity of a no-strike / protected entity. |
| 3 | MAVLINK_M_NOSTRIKE_STATUS_ON_LIST | On a no-strike or restricted-target list. |
MAVLINK_M_ENGAGEMENT_DIRECTIVE
Engagement-control directive type. Provides abort / check-fire / re-target as first-class protocol actions alongside FIRES.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ENGAGEMENT_DIRECTIVE_ABORT | Abort the referenced fire mission. |
| 1 | MAVLINK_M_ENGAGEMENT_DIRECTIVE_CHECK_FIRE | Temporary check-fire; hold without cancelling. |
| 2 | MAVLINK_M_ENGAGEMENT_DIRECTIVE_RESUME | Resume after a check-fire. |
| 3 | MAVLINK_M_ENGAGEMENT_DIRECTIVE_RETARGET | Re-target the referenced fire mission to a new track/coordinate. |
MAVLINK_M_REQUESTED_EFFECT
Coarse requested weapon effect, expressing requester INTENT (as in a call-for-fire method of engagement). The store controller translates this to device-internal fuze timing locally; this enum carries NO timing, height-of-burst, or arming-delay values and must not be extended to.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_REQUESTED_EFFECT_UNSPECIFIED | No specific effect requested; store default. |
| 1 | MAVLINK_M_REQUESTED_EFFECT_PROXIMITY | Proximity / airburst effect requested. |
| 2 | MAVLINK_M_REQUESTED_EFFECT_IMPACT | Point-detonate / impact effect requested. |
| 3 | MAVLINK_M_REQUESTED_EFFECT_DELAY | Delayed / penetration effect requested. |
MAVLINK_M_FUNCTIONAL_DAMAGE
Discrete functional damage state for BDA (functional damage assessment layer, per CJCSI 3162.02 / JP 3-09), mirroring joint reporting. Carried alongside destruction_pct and the physical damage state, not replacing them.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_FUNCTIONAL_DAMAGE_UNKNOWN | Damage state not determined. |
| 1 | MAVLINK_M_FUNCTIONAL_DAMAGE_NONE | No functional damage assessed. |
| 2 | MAVLINK_M_FUNCTIONAL_DAMAGE_MOBILITY | Mobility kill (target immobilized). |
| 3 | MAVLINK_M_FUNCTIONAL_DAMAGE_FIREPOWER | Firepower kill (target's weapons disabled). |
| 4 | MAVLINK_M_FUNCTIONAL_DAMAGE_COMMS | Communications / C2 kill. |
| 5 | MAVLINK_M_FUNCTIONAL_DAMAGE_MISSION | Mission kill (cannot perform role short of total destruction). |
| 6 | MAVLINK_M_FUNCTIONAL_DAMAGE_CATASTROPHIC | Catastrophic kill (target destroyed). |
MAVLINK_M_PHYSICAL_DAMAGE
Discrete physical damage state for BDA (physical damage assessment layer, per CJCSI 3162.02A Methodology for Combat Assessment). Distinct from the functional-kill layer.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_PHYSICAL_DAMAGE_NO_ASSESSMENT | No assessment / unknown. |
| 1 | MAVLINK_M_PHYSICAL_DAMAGE_NONE | No damage. |
| 2 | MAVLINK_M_PHYSICAL_DAMAGE_LIGHT | Light damage. |
| 3 | MAVLINK_M_PHYSICAL_DAMAGE_MODERATE | Moderate damage. |
| 4 | MAVLINK_M_PHYSICAL_DAMAGE_SEVERE | Severe damage. |
| 5 | MAVLINK_M_PHYSICAL_DAMAGE_DESTROYED | Destroyed. |
MAVLINK_M_STANAG_IDENTITY
Standard identity of a track, aligned to MIL-STD-2525D / APP-6D standard identity (SIDC digit 4). MIL-STD-2525D is Distribution A, making it a public authoritative source. Richer than MAVLINK_M_TARGET_FORCE: preserves PENDING / ASSUMED_FRIEND / SUSPECT distinctions that carry ROE meaning and are lost if collapsed to FRIENDLY/FOE. Values follow the 2525D digit-4 code so a gateway can populate a SIDC directly.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_STANAG_IDENTITY_PENDING | Pending: identity not yet evaluated (SIDC 0). |
| 1 | MAVLINK_M_STANAG_IDENTITY_UNKNOWN | Unknown: evaluated but not established (SIDC 1). |
| 2 | MAVLINK_M_STANAG_IDENTITY_ASSUMED_FRIEND | Assumed friend (SIDC 2). |
| 3 | MAVLINK_M_STANAG_IDENTITY_FRIEND | Friend (SIDC 3). |
| 4 | MAVLINK_M_STANAG_IDENTITY_NEUTRAL | Neutral (SIDC 4). |
| 5 | MAVLINK_M_STANAG_IDENTITY_SUSPECT | Suspect / joker (SIDC 5). |
| 6 | MAVLINK_M_STANAG_IDENTITY_HOSTILE | Hostile / faker (SIDC 6). |
MAVLINK_M_SIDC_CONTEXT
Reality context of a track, per MIL-STD-2525D SIDC digit 3. Lets exercise/simulation tracks be distinguished from real ones.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SIDC_CONTEXT_REALITY | Reality (SIDC 0). |
| 1 | MAVLINK_M_SIDC_CONTEXT_EXERCISE | Exercise (SIDC 1). |
| 2 | MAVLINK_M_SIDC_CONTEXT_SIMULATION | Simulation (SIDC 2). |
MAVLINK_M_ENVIRONMENT
Track environment / dimension, aligned to the STANAG 5516 / APP-6 battle dimension. Pairs with MAVLINK_M_STANAG_IDENTITY to make a track mappable to joint symbology. Value numbering to be confirmed against spec.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ENVIRONMENT_UNKNOWN | Environment not determined. |
| 1 | MAVLINK_M_ENVIRONMENT_SPACE | Space. |
| 2 | MAVLINK_M_ENVIRONMENT_AIR | Air. |
| 3 | MAVLINK_M_ENVIRONMENT_SURFACE | Surface (land or sea surface). |
| 4 | MAVLINK_M_ENVIRONMENT_SUBSURFACE | Subsurface. |
| 5 | MAVLINK_M_ENVIRONMENT_LAND | Land. |
MAVLINK_M_TRACK_NUMBER_TYPE
Type/namespace of the external track number carried alongside the native track_uid, so a gateway knows how to interpret it. Encodings per the respective standard; do not assume a format from this enum alone.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TRACK_NUMBER_TYPE_NONE | No external track number present. |
| 1 | MAVLINK_M_TRACK_NUMBER_TYPE_LINK16 | Link 16 track number (STANAG 5516 J-series). |
| 2 | MAVLINK_M_TRACK_NUMBER_TYPE_VMF_URN | VMF unit reference number (MIL-STD-6017). |
| 3 | MAVLINK_M_TRACK_NUMBER_TYPE_OTHER | Other/national namespace (implementation-defined). |
MAVLINK_M_PPLI_TYPE
Nature of a participant reporting its own position/identity (PPLI-style). Value numbering to be confirmed against spec.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_PPLI_TYPE_UNKNOWN | Unspecified participant. |
| 1 | MAVLINK_M_PPLI_TYPE_AIR | Air participant. |
| 2 | MAVLINK_M_PPLI_TYPE_LAND | Land participant. |
| 3 | MAVLINK_M_PPLI_TYPE_SURFACE | Surface (maritime) participant. |
| 4 | MAVLINK_M_PPLI_TYPE_SUBSURFACE | Subsurface participant. |
MAVLINK_M_MUNITION_GUIDANCE
Coarse guidance category of a loaded munition. Descriptive inventory data, not employment configuration.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MUNITION_GUIDANCE_UNKNOWN | Guidance category not specified. |
| 1 | MAVLINK_M_MUNITION_GUIDANCE_UNGUIDED | Unguided. |
| 2 | MAVLINK_M_MUNITION_GUIDANCE_GPS_INS | GPS/INS-guided. |
| 3 | MAVLINK_M_MUNITION_GUIDANCE_LASER | Semi-active laser-guided. |
| 4 | MAVLINK_M_MUNITION_GUIDANCE_IR | Infrared / imaging-IR seeker. |
| 5 | MAVLINK_M_MUNITION_GUIDANCE_RADAR | Radar-guided. |
| 6 | MAVLINK_M_MUNITION_GUIDANCE_EO | Electro-optical / visual seeker. |
| 7 | MAVLINK_M_MUNITION_GUIDANCE_MULTI | Multi-mode seeker. |
MAVLINK_M_MUNITION_WARHEAD
Coarse warhead category of a loaded munition. Descriptive inventory data; mirrors the effect families used by MAVLINK_M_SPLASH_FUNCTION. Not employment configuration.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MUNITION_WARHEAD_UNKNOWN | Warhead category not specified. |
| 1 | MAVLINK_M_MUNITION_WARHEAD_INERT | Inert / training. |
| 2 | MAVLINK_M_MUNITION_WARHEAD_HE | High explosive. |
| 3 | MAVLINK_M_MUNITION_WARHEAD_FRAG | Fragmentation. |
| 4 | MAVLINK_M_MUNITION_WARHEAD_SHAPED | Shaped charge / anti-armor. |
| 5 | MAVLINK_M_MUNITION_WARHEAD_THERMOBARIC | Thermobaric. |
| 6 | MAVLINK_M_MUNITION_WARHEAD_SMOKE | Smoke. |
| 7 | MAVLINK_M_MUNITION_WARHEAD_ILLUM | Illumination. |
MAVLINK_M_FUZE_HEALTH
Coarse HEALTH of the fuze subsystem. This reports whether the fuze is functioning, NOT how it is configured. Fuze mode/timing/height-of-burst configuration is intentionally out of scope for this dialect and is device-internal.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_FUZE_HEALTH_UNKNOWN | Fuze health not reported. |
| 1 | MAVLINK_M_FUZE_HEALTH_NOMINAL | Fuze subsystem nominal. |
| 2 | MAVLINK_M_FUZE_HEALTH_FAULT | Fuze subsystem fault. |
| 3 | MAVLINK_M_FUZE_HEALTH_NOT_PRESENT | No fuze present. |
MAVLINK_M_MISSION_TYPE
Warning-order mission type for a call for fire (ATP 3-09.30 Ch.4). Descriptive intent.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MISSION_TYPE_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_MISSION_TYPE_ADJUST_FIRE | Adjust fire. |
| 2 | MAVLINK_M_MISSION_TYPE_FIRE_FOR_EFFECT | Fire for effect. |
| 3 | MAVLINK_M_MISSION_TYPE_SUPPRESSION | Suppression. |
| 4 | MAVLINK_M_MISSION_TYPE_IMMEDIATE_SUPPRESSION | Immediate suppression. |
| 5 | MAVLINK_M_MISSION_TYPE_IMMEDIATE_SMOKE | Immediate smoke. |
| 6 | MAVLINK_M_MISSION_TYPE_SEAD | Suppression of enemy air defenses. |
| 7 | MAVLINK_M_MISSION_TYPE_REGISTRATION | Registration. |
| 8 | MAVLINK_M_MISSION_TYPE_DESTRUCTION | Destruction. |
MAVLINK_M_TARGET_LOCATION_METHOD
Method of target location for a call for fire (ATP 3-09.30 Ch.4).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TGT_LOC_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_TGT_LOC_GRID | Grid. |
| 2 | MAVLINK_M_TGT_LOC_POLAR | Polar (from observer). |
| 3 | MAVLINK_M_TGT_LOC_SHIFT_KNOWN_POINT | Shift from a known point. |
| 4 | MAVLINK_M_TGT_LOC_LASER_GRID | Laser-derived grid. |
| 5 | MAVLINK_M_TGT_LOC_LASER_POLAR | Laser-derived polar. |
MAVLINK_M_ADJUSTMENT_TYPE
Type of adjustment (method of engagement).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ADJUSTMENT_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_ADJUSTMENT_AREA | Area adjustment. |
| 2 | MAVLINK_M_ADJUSTMENT_PRECISION | Precision adjustment. |
MAVLINK_M_TRAJECTORY
Requested trajectory (method of engagement).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TRAJECTORY_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_TRAJECTORY_LOW_ANGLE | Low angle. |
| 2 | MAVLINK_M_TRAJECTORY_HIGH_ANGLE | High angle. |
MAVLINK_M_SHEAF
Distribution / sheaf for the fire-for-effect pattern (method of engagement).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SHEAF_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_SHEAF_CONVERGED | Converged sheaf. |
| 2 | MAVLINK_M_SHEAF_OPEN | Open sheaf. |
| 3 | MAVLINK_M_SHEAF_PARALLEL | Parallel sheaf. |
| 4 | MAVLINK_M_SHEAF_SPECIAL | Special sheaf (linear target; length/width/attitude specified separately). |
MAVLINK_M_FIRE_CONTROL_METHOD
Method of fire and control (ATP 3-09.30 Ch.4).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_FCM_UNSPECIFIED | Not specified (default for an unset field). |
| 1 | MAVLINK_M_FCM_WHEN_READY | When ready. |
| 2 | MAVLINK_M_FCM_AT_MY_COMMAND | At my command (AMC). |
| 3 | MAVLINK_M_FCM_TIME_ON_TARGET | Time on target (TOT). |
| 4 | MAVLINK_M_FCM_CANNOT_OBSERVE | Cannot observe. |
| 5 | MAVLINK_M_FCM_CONTINUOUS_ILLUM | Continuous illumination. |
| 6 | MAVLINK_M_FCM_COORDINATED_ILLUM | Coordinated illumination. |
| 7 | MAVLINK_M_FCM_CONTINUOUS_FIRE | Continuous fire. |
MAVLINK_M_TLE_CATEGORY
Target-location-error CATEGORY LABEL only (ATP 3-09.30 Fig.3-14). The category band label is Distribution A; the underlying CEP/performance figure is NOT carried.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TLE_UNKNOWN | TLE not established. |
| 1 | MAVLINK_M_TLE_CAT_I | Category I (highest accuracy band). |
| 2 | MAVLINK_M_TLE_CAT_II | Category II. |
| 3 | MAVLINK_M_TLE_CAT_III | Category III. |
| 4 | MAVLINK_M_TLE_CAT_IV | Category IV. |
MAVLINK_M_CDE_LEVEL
Collateral-damage-estimation LEVEL NUMBER only (CJCSI 3160.01 series). Carries the level as a status value; NEVER the underlying CDE computation or population data.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_CDE_LEVEL_NONE | No CDE recorded. |
| 1 | MAVLINK_M_CDE_LEVEL_1 | Level 1 - target validation / initial assessment. |
| 2 | MAVLINK_M_CDE_LEVEL_2 | Level 2 - general / target-size assessment. |
| 3 | MAVLINK_M_CDE_LEVEL_3 | Level 3 - weaponeering assessment. |
| 4 | MAVLINK_M_CDE_LEVEL_4 | Level 4 - refined assessment. |
| 5 | MAVLINK_M_CDE_LEVEL_5 | Level 5 - casualty assessment. |
MAVLINK_M_RESTRICTED_TARGET_FLAGS
(Bitmask) No-strike / restricted-target context flags. Status flags only.
| Value | Name | Description |
|---|---|---|
| 1 | MAVLINK_M_RTL_NO_STRIKE_LIST | On the No-Strike List. |
| 2 | MAVLINK_M_RTL_RESTRICTED_TARGET | On the Restricted Target List. |
| 4 | MAVLINK_M_RTL_NO_FIRE_AREA | Within a No-Fire Area. |
MAVLINK_M_DMPI_REFERENCE_KIND
How a desired-mean-point-of-impact reference is expressed. A precise mensurated DMPI tied to a weapon solution is treated as controlled and is NOT carried here; carry target location + TLE category instead.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_DMPI_NONE | No DMPI reference. |
| 1 | MAVLINK_M_DMPI_TARGET_LOCATION | DMPI = the target location already carried (with TLE category). |
| 2 | MAVLINK_M_DMPI_OFFSET_REF | DMPI expressed as a labeled offset reference (not a mensurated coordinate). |
MAVLINK_M_ATR_CONFIDENCE
OPTIONAL, ADVISORY coarse tier for human display only, derived from the raw atr_confidence_pct. It has NO protocol-defined probability band and MUST NOT be used as an automated rules-of-engagement input; the raw score
- model id are the authoritative fields and the C2 node owns the threshold policy.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_ATR_CONF_NA | Not an ATR identification / not applicable. |
| 1 | MAVLINK_M_ATR_CONF_LOW | Advisory display tier: low. No protocol-defined band. |
| 2 | MAVLINK_M_ATR_CONF_MEDIUM | Advisory display tier: medium. No protocol-defined band. |
| 3 | MAVLINK_M_ATR_CONF_HIGH | Advisory display tier: high. No protocol-defined band. |
MAVLINK_M_LM_CONSENT_STATE
Man-in-the-loop consent-to-strike state for a loitering munition / OWA UAS. HUMAN-IN-THE-LOOP INSTRUMENT: this records a human consent decision and its withdrawal. It MUST NOT be used to construct an automated release path; release authority remains with the crewed C2 system, and consent is a precondition recorded for accountability, not a trigger.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_LM_CONSENT_NONE | No consent state. |
| 1 | MAVLINK_M_LM_CONSENT_REQUESTED | Consent-to-strike requested from human authority. |
| 2 | MAVLINK_M_LM_CONSENT_GRANTED | Consent granted by human authority (recorded). |
| 3 | MAVLINK_M_LM_CONSENT_WITHHELD | Consent withheld. |
| 4 | MAVLINK_M_LM_CONSENT_WITHDRAWN | Previously-granted consent withdrawn. |
MAVLINK_M_LM_TERMINATE
Loitering-munition abort / terminate action.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_LM_TERMINATE_NONE | No action. |
| 1 | MAVLINK_M_LM_TERMINATE_WAVE_OFF | Wave off / break engagement, remain flyable. |
| 2 | MAVLINK_M_LM_TERMINATE_ABORT | Abort current attack, return to loiter. |
| 3 | MAVLINK_M_LM_TERMINATE_SELF_DESTRUCT | Self-destruct / render safe (per platform capability). |
MAVLINK_M_TST_STATUS
Time-sensitive-target prosecution status.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TST_NONE | Not a TST / no status. |
| 1 | MAVLINK_M_TST_NOMINATED | Nominated as TST. |
| 2 | MAVLINK_M_TST_PROSECUTING | Under prosecution. |
| 3 | MAVLINK_M_TST_COMPLETE | Prosecution complete. |
MAVLINK_M_MUNITION_FAMILY
Munition family (composite munition, part 1 of 3). Descriptive class names, all Distribution-A doctrine.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MUN_FAM_UNKNOWN | Unspecified. |
| 1 | MAVLINK_M_MUN_FAM_HE | High explosive. |
| 2 | MAVLINK_M_MUN_FAM_DPICM | Dual-purpose ICM (e.g. M483A1). Distinct submunition/dispersion profile from APICM. |
| 3 | MAVLINK_M_MUN_FAM_APICM | Antipersonnel ICM (e.g. M449 family). Distinct dispersion from DPICM. |
| 4 | MAVLINK_M_MUN_FAM_SMOKE | Smoke (WP/HC/base-eject). |
| 5 | MAVLINK_M_MUN_FAM_ILLUM | Illumination (visible/IR). |
| 6 | MAVLINK_M_MUN_FAM_SCATTERABLE_MINE | Scatterable mine (RAAMS/ADAM); carries SD-duration enum, not exact seconds. |
| 7 | MAVLINK_M_MUN_FAM_SENSOR_FUZED | Sensor-fused / top-attack (SADARM, BONUS). Requires aimpoint-offset footprint, not a point coordinate. |
| 8 | MAVLINK_M_MUN_FAM_PRECISION | Precision/guided conventional (Excalibur). Requires 10-digit grid + TLE minimum. |
| 9 | MAVLINK_M_MUN_FAM_PGK | Precision guidance kit / APMI. Hybrid HE/PGM; TLE minimum required or reverts ballistic. |
| 10 | MAVLINK_M_MUN_FAM_THERMOBARIC | Thermobaric / fuel-air explosive. Overpressure-primary; hardened/subterranean targets. |
| 11 | MAVLINK_M_MUN_FAM_ANTIPERSONNEL | Antipersonnel (APERS/flechette). |
| 12 | MAVLINK_M_MUN_FAM_ROCKET_MISSILE | Rocket/missile (ATACMS, GMLRS, RAP). |
| 13 | MAVLINK_M_MUN_FAM_LOITERING | Loitering munition / LMAMS. Platform becomes terminal-guidance/relay, not passive observer. |
MAVLINK_M_MUNITION_PAYLOAD
Munition payload (composite munition, part 3 of 3).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_MUN_PAY_UNKNOWN | Unspecified. |
| 1 | MAVLINK_M_MUN_PAY_HE_FRAG | HE / fragmentation. |
| 2 | MAVLINK_M_MUN_PAY_HEAT | Shaped charge / HEAT. |
| 3 | MAVLINK_M_MUN_PAY_WP | White phosphorus. |
| 4 | MAVLINK_M_MUN_PAY_HC_SMOKE | HC smoke. |
| 5 | MAVLINK_M_MUN_PAY_ILLUM | Illuminant. |
| 6 | MAVLINK_M_MUN_PAY_SUBMUNITION | Submunitions. |
| 7 | MAVLINK_M_MUN_PAY_MINE | Mine payload. |
MAVLINK_M_WARHEAD_MODE
Coarse selectable warhead MODE for a multi-mode / selectable warhead (e.g. a penetrating warhead with a surface-vs-penetrate selection on a multi-drop magazine). Reports/sets the coarse mode only. This is a SAFE/ARM-adjacent coarse selection, NOT a fuze timing channel: it must never be widened to carry an inter-stage delay or any timing value. The actual timing (e.g. secondary-charge delay) is device-internal and is configured on the component bus (DroneCAN or vendor structure) below the FMU, never on this dialect.
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_WARHEAD_MODE_UNSPECIFIED | Not specified / not a selectable warhead. |
| 1 | MAVLINK_M_WARHEAD_MODE_SURFACE | Surface / point-detonating effect selected. |
| 2 | MAVLINK_M_WARHEAD_MODE_PENETRATE | Penetrating effect selected. |
| 3 | MAVLINK_M_WARHEAD_MODE_AIRBURST | Airburst / height-of-burst effect selected (coarse selection; no HOB value carried). |
MAVLINK_M_SD_DURATION
Scatterable-mine self-destruct duration CATEGORY (not exact seconds).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SD_NA | Not applicable. |
| 1 | MAVLINK_M_SD_SHORT | Short self-destruct duration. |
| 2 | MAVLINK_M_SD_LONG | Long self-destruct duration. |
MAVLINK_M_EFFECT_VERB
Mission-effect task verb (FM 3-09 / ATP 3-60), SEPARATE from burst geometry. The verb is descriptive tasking intent. The doctrinal casualty-percentage definitions are NOT carried on the wire (they drift from tasking intent to effects computation).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_EFFECT_UNSPECIFIED | Unspecified. |
| 1 | MAVLINK_M_EFFECT_SUPPRESS | Suppress. |
| 2 | MAVLINK_M_EFFECT_NEUTRALIZE | Neutralize. |
| 3 | MAVLINK_M_EFFECT_DESTROY | Destroy. |
| 4 | MAVLINK_M_EFFECT_HARASS | Harass. |
| 5 | MAVLINK_M_EFFECT_INTERDICT | Interdict. |
| 6 | MAVLINK_M_EFFECT_OBSCURE | Obscure / screen. |
| 7 | MAVLINK_M_EFFECT_ILLUMINATE | Illuminate. |
| 8 | MAVLINK_M_EFFECT_MARK | Mark. |
| 9 | MAVLINK_M_EFFECT_SEAD | Suppression of enemy air defenses. |
MAVLINK_M_SENSOR_MODE
Commanded/reported sensor payload mode (UCI-style tasking).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_SENSOR_MODE_UNKNOWN | Unspecified. |
| 1 | MAVLINK_M_SENSOR_MODE_WIDE_AREA_SEARCH | Wide-area search. |
| 2 | MAVLINK_M_SENSOR_MODE_POINT_TRACK | Point-target track. |
| 3 | MAVLINK_M_SENSOR_MODE_LASER_DESIGNATE | Laser designation (code carried as slot elsewhere, not a value). |
| 4 | MAVLINK_M_SENSOR_MODE_LASER_RANGE | Laser ranging. |
| 5 | MAVLINK_M_SENSOR_MODE_IR_MARK | IR pointer / mark. |
| 6 | MAVLINK_M_SENSOR_MODE_STANDBY | Sensor standby / caged. |
MAVLINK_M_TASKING_STATUS
Response to an inbound tasking request (UCI publish/subscribe event).
| Value | Name | Description |
|---|---|---|
| 0 | MAVLINK_M_TASKING_UNSPECIFIED | Marks a SENSOR_TASKING request; a status response never carries it. Not an acceptance. |
| 1 | MAVLINK_M_TASKING_ACK | Tasking accepted. |
| 2 | MAVLINK_M_TASKING_REJECTED | Tasking rejected (unable/ineligible). |
| 3 | MAVLINK_M_TASKING_COMPLETE | Tasking complete. |
| 4 | MAVLINK_M_TASKING_ACTIVE | Tasking in progress. |
| 5 | MAVLINK_M_TASKING_INTERRUPTED | Tasking ended before completion for a reason its requester did not cause: another request took the sensor, or the sensor lost the track it was following. Sent to the requester of the interrupted task. |
Commands (MAV_CMD)
MAV_CMD_MAVLINK_M_STORE_ARM (53090)
Safe a store's ESAD. A command carries no time_usec, so no stop can be ordered against an arm sent this way (SAFETY BOUNDARIES): receivers answer an arm (Arm = 1) with MAV_RESULT_DENIED, and ESAD_ARMING arms.
| Param (Label) | Description |
|---|---|
| 1 (Store ID) | Target store instance (0 = every store on the receiving system). |
| 2 (Arm) | 0 = safe/disarm. 1 = arm, which receivers deny; arm with ESAD_ARMING. |
| 3 (Challenge Hash) | Ignored: a safe applies whatever the ESAD challenge holds, as an ESAD_ARMING DISARM does. |
| 4 | Reserved (0). |
| 5 | Reserved (0). |
| 6 | Reserved (0). |
| 7 | Reserved (0). |
MAV_CMD_MAVLINK_M_STORE_RUN_BIT (53091)
Run a built-in self-test (BIT) on a store. Never sent with target_system 0; receivers ignore one that is.
| Param (Label) | Description |
|---|---|
| 1 (Store ID) | Target store instance (0 = every store on the receiving system). |
| 2 (Scope) | 0 = full BIT, 1 = sensors only, 2 = ESAD only. |
| 3 | Reserved (0). |
| 4 | Reserved (0). |
| 5 | Reserved (0). |
| 6 | Reserved (0). |
| 7 | Reserved (0). |
MAV_CMD_MAVLINK_M_STORE_REQUEST_STATUS (53092)
Request status push from a store.
| Param (Label) | Description |
|---|---|
| 1 (Store ID) | Target store instance (0 = every store on the receiving system). |
| 2 (What) | 0 = STORE_STATUS only, 1 = all STORE_SENSOR_STATUS, 2 = both. |
| 3 | Reserved (0). |
| 4 | Reserved (0). |
| 5 | Reserved (0). |
| 6 | Reserved (0). |
| 7 | Reserved (0). |
MAV_CMD_MAVLINK_M_STORE_SET_DECEL_THRESHOLD (53093)
Set the deceleration/landing-system trigger threshold for a store. Never sent with target_system 0; receivers ignore one that is.
| Param (Label) | Description |
|---|---|
| 1 (Store ID) | Target store instance (0 = every store on the receiving system). |
| 2 (Sensor Type) | Sensor (MAVLINK_M_STORE_SENSOR_TYPE) that gates deployment. |
| 3 (Threshold) | Threshold value in the sensor's native units. |
| 4 (Direction) | 0 = trigger when reading falls below threshold, 1 = trigger when reading rises above threshold. |
| 5 | Reserved (0). |
| 6 | Reserved (0). |
| 7 | Reserved (0). |