# xmavlink v0.14.3 - Table of Contents

> An elixir library for MAVLink,
    an application that enables communication with other systems
    using the MAVLink protocol over serial, UDP and TCP
    connections, and utility modules for performing common MAVLink
    commands and tasks with one or more remote vehicles.

## Pages

- [XMAVLink](readme.md)

- Guides
  - [Migrating to XMAVLink 0.14.0](migrating_0_14.md)
  - [Security Policy](security.md)
  - [MAVLink Spec Alignment for 1.0](mavlink_spec_alignment.md)

- Release
  - [Changelog](changelog.md)

## Modules

- Core Runtime
  - [XMAVLink.Frame](XMAVLink.Frame.md): Represent and work with MAVLink v1/2 message frames

  - [XMAVLink.Frame.Signature](XMAVLink.Frame.Signature.md): MAVLink 2 signed-frame trailer.
  - [XMAVLink.Heartbeat](XMAVLink.Heartbeat.md): Emits MAVLink HEARTBEAT messages on a configurable interval.
  - [XMAVLink.Message](XMAVLink.Message.md)
  - [XMAVLink.Router](XMAVLink.Router.md): Connect to serial, udp and tcp ports and listen for, validate and
forward MAVLink messages towards their destinations on other connections
and/or Elixir processes subscribing to messages.
  - [XMAVLink.Signing](XMAVLink.Signing.md): Stateful MAVLink 2 signing policy helpers.

- Utilities
  - [XMAVLink.Util.Arm](XMAVLink.Util.Arm.md): Convenience helpers for arming and disarming a focused or explicit vehicle.
  - [XMAVLink.Util.Cache.Message](XMAVLink.Util.Cache.Message.md): Cached latest MAVLink message with monotonic receive time metadata.

  - [XMAVLink.Util.Cache.Param](XMAVLink.Util.Cache.Param.md): Cached latest MAVLink parameter value with monotonic receive time metadata.

  - [XMAVLink.Util.Cache.System](XMAVLink.Util.Cache.System.md): Cached metadata for one visible MAVLink system/component.

  - [XMAVLink.Util.CacheManager](XMAVLink.Util.CacheManager.md): 
Populate and keep updated a set of protected ETS tables representing
  - [XMAVLink.Util.Context](XMAVLink.Util.Context.md): Utility-layer runtime context.
  - [XMAVLink.Util.FocusManager](XMAVLink.Util.FocusManager.md): Manage a protected ETS table representing the nominated MAV focus of
zero or more local PIDs. The API uses this to streamline iex sessions
by letting the user select a MAV to work with and transparently adding
{system_id, component_id} tuples to call arguments.
  - [XMAVLink.Util.ParamRequest](XMAVLink.Util.ParamRequest.md): Convenience helper for requesting a vehicle's full parameter list.
  - [XMAVLink.Util.ParamSet](XMAVLink.Util.ParamSet.md): Convenience helper for setting cached MAVLink parameters.
  - [XMAVLink.Util.SITL](XMAVLink.Util.SITL.md): Provides SITL-specific support such as RC channel forwarding.
  - [XMAVLink.Util.Supervisor](XMAVLink.Util.Supervisor.md): Supervisor for opt-in utility processes.
  - [XMAVLink.Util.Tables](XMAVLink.Util.Tables.md): Utility ETS table name helpers.

- Dialect And Generator Support
  - [XMAVLink.Dialect](XMAVLink.Dialect.md): Behaviour implemented by generated MAVLink dialect modules.
  - [XMAVLink.Parser](XMAVLink.Parser.md): Parse a mavlink xml file into an idiomatic Elixir representation
  - [XMAVLink.Types](XMAVLink.Types.md): Core types that remain the same across dialects.

  - [XMAVLink.Utils](XMAVLink.Utils.md): MAVLink support functions used during code generation and runtime
Parts of this module are ported from corresponding implementations
in mavutils.py

- Generated Common Dialect
  - [Common](Common.md): Common 3.0 generated by MAVLink mix task from common.xml
  - [Common.Message.ActuatorControlTarget](Common.Message.ActuatorControlTarget.md)
  - [Common.Message.ActuatorOutputStatus](Common.Message.ActuatorOutputStatus.md)
  - [Common.Message.AdsbVehicle](Common.Message.AdsbVehicle.md)
  - [Common.Message.AisVessel](Common.Message.AisVessel.md)
  - [Common.Message.Altitude](Common.Message.Altitude.md)
  - [Common.Message.AttPosMocap](Common.Message.AttPosMocap.md)
  - [Common.Message.Attitude](Common.Message.Attitude.md)
  - [Common.Message.AttitudeQuaternion](Common.Message.AttitudeQuaternion.md)
  - [Common.Message.AttitudeQuaternionCov](Common.Message.AttitudeQuaternionCov.md)
  - [Common.Message.AttitudeTarget](Common.Message.AttitudeTarget.md)
  - [Common.Message.AuthKey](Common.Message.AuthKey.md)
  - [Common.Message.AutopilotStateForGimbalDevice](Common.Message.AutopilotStateForGimbalDevice.md)
  - [Common.Message.AutopilotVersion](Common.Message.AutopilotVersion.md)
  - [Common.Message.BatteryStatus](Common.Message.BatteryStatus.md)
  - [Common.Message.ButtonChange](Common.Message.ButtonChange.md)
  - [Common.Message.CameraCaptureStatus](Common.Message.CameraCaptureStatus.md)
  - [Common.Message.CameraFovStatus](Common.Message.CameraFovStatus.md)
  - [Common.Message.CameraImageCaptured](Common.Message.CameraImageCaptured.md)
  - [Common.Message.CameraInformation](Common.Message.CameraInformation.md)
  - [Common.Message.CameraSettings](Common.Message.CameraSettings.md)
  - [Common.Message.CameraTrackingGeoStatus](Common.Message.CameraTrackingGeoStatus.md)
  - [Common.Message.CameraTrackingImageStatus](Common.Message.CameraTrackingImageStatus.md)
  - [Common.Message.CameraTrigger](Common.Message.CameraTrigger.md)
  - [Common.Message.CanFilterModify](Common.Message.CanFilterModify.md)
  - [Common.Message.CanFrame](Common.Message.CanFrame.md)
  - [Common.Message.CanfdFrame](Common.Message.CanfdFrame.md)
  - [Common.Message.CellularConfig](Common.Message.CellularConfig.md)
  - [Common.Message.CellularStatus](Common.Message.CellularStatus.md)
  - [Common.Message.ChangeOperatorControl](Common.Message.ChangeOperatorControl.md)
  - [Common.Message.ChangeOperatorControlAck](Common.Message.ChangeOperatorControlAck.md)
  - [Common.Message.Collision](Common.Message.Collision.md)
  - [Common.Message.CommandAck](Common.Message.CommandAck.md)
  - [Common.Message.CommandCancel](Common.Message.CommandCancel.md)
  - [Common.Message.CommandInt](Common.Message.CommandInt.md)
  - [Common.Message.CommandLong](Common.Message.CommandLong.md)
  - [Common.Message.ComponentInformation](Common.Message.ComponentInformation.md)
  - [Common.Message.ComponentMetadata](Common.Message.ComponentMetadata.md)
  - [Common.Message.ControlSystemState](Common.Message.ControlSystemState.md)
  - [Common.Message.CurrentEventSequence](Common.Message.CurrentEventSequence.md)
  - [Common.Message.DataStream](Common.Message.DataStream.md)
  - [Common.Message.DataTransmissionHandshake](Common.Message.DataTransmissionHandshake.md)
  - [Common.Message.Debug](Common.Message.Debug.md)
  - [Common.Message.DebugFloatArray](Common.Message.DebugFloatArray.md)
  - [Common.Message.DebugVect](Common.Message.DebugVect.md)
  - [Common.Message.DistanceSensor](Common.Message.DistanceSensor.md)
  - [Common.Message.EfiStatus](Common.Message.EfiStatus.md)
  - [Common.Message.EncapsulatedData](Common.Message.EncapsulatedData.md)
  - [Common.Message.EscInfo](Common.Message.EscInfo.md)
  - [Common.Message.EscStatus](Common.Message.EscStatus.md)
  - [Common.Message.EstimatorStatus](Common.Message.EstimatorStatus.md)
  - [Common.Message.Event](Common.Message.Event.md)
  - [Common.Message.ExtendedSysState](Common.Message.ExtendedSysState.md)
  - [Common.Message.FenceStatus](Common.Message.FenceStatus.md)
  - [Common.Message.FileTransferProtocol](Common.Message.FileTransferProtocol.md)
  - [Common.Message.FlightInformation](Common.Message.FlightInformation.md)
  - [Common.Message.FollowTarget](Common.Message.FollowTarget.md)
  - [Common.Message.GeneratorStatus](Common.Message.GeneratorStatus.md)
  - [Common.Message.GimbalDeviceAttitudeStatus](Common.Message.GimbalDeviceAttitudeStatus.md)
  - [Common.Message.GimbalDeviceInformation](Common.Message.GimbalDeviceInformation.md)
  - [Common.Message.GimbalDeviceSetAttitude](Common.Message.GimbalDeviceSetAttitude.md)
  - [Common.Message.GimbalManagerInformation](Common.Message.GimbalManagerInformation.md)
  - [Common.Message.GimbalManagerSetAttitude](Common.Message.GimbalManagerSetAttitude.md)
  - [Common.Message.GimbalManagerSetManualControl](Common.Message.GimbalManagerSetManualControl.md)
  - [Common.Message.GimbalManagerSetPitchyaw](Common.Message.GimbalManagerSetPitchyaw.md)
  - [Common.Message.GimbalManagerStatus](Common.Message.GimbalManagerStatus.md)
  - [Common.Message.GlobalPositionInt](Common.Message.GlobalPositionInt.md)
  - [Common.Message.GlobalPositionIntCov](Common.Message.GlobalPositionIntCov.md)
  - [Common.Message.GlobalVisionPositionEstimate](Common.Message.GlobalVisionPositionEstimate.md)
  - [Common.Message.Gps2Raw](Common.Message.Gps2Raw.md)
  - [Common.Message.Gps2Rtk](Common.Message.Gps2Rtk.md)
  - [Common.Message.GpsGlobalOrigin](Common.Message.GpsGlobalOrigin.md)
  - [Common.Message.GpsInjectData](Common.Message.GpsInjectData.md)
  - [Common.Message.GpsInput](Common.Message.GpsInput.md)
  - [Common.Message.GpsRawInt](Common.Message.GpsRawInt.md)
  - [Common.Message.GpsRtcmData](Common.Message.GpsRtcmData.md)
  - [Common.Message.GpsRtk](Common.Message.GpsRtk.md)
  - [Common.Message.GpsStatus](Common.Message.GpsStatus.md)
  - [Common.Message.Heartbeat](Common.Message.Heartbeat.md)
  - [Common.Message.HighLatency](Common.Message.HighLatency.md)
  - [Common.Message.HighLatency2](Common.Message.HighLatency2.md)
  - [Common.Message.HighresImu](Common.Message.HighresImu.md)
  - [Common.Message.HilActuatorControls](Common.Message.HilActuatorControls.md)
  - [Common.Message.HilControls](Common.Message.HilControls.md)
  - [Common.Message.HilGps](Common.Message.HilGps.md)
  - [Common.Message.HilOpticalFlow](Common.Message.HilOpticalFlow.md)
  - [Common.Message.HilRcInputsRaw](Common.Message.HilRcInputsRaw.md)
  - [Common.Message.HilSensor](Common.Message.HilSensor.md)
  - [Common.Message.HilState](Common.Message.HilState.md)
  - [Common.Message.HilStateQuaternion](Common.Message.HilStateQuaternion.md)
  - [Common.Message.HomePosition](Common.Message.HomePosition.md)
  - [Common.Message.HygrometerSensor](Common.Message.HygrometerSensor.md)
  - [Common.Message.IsbdLinkStatus](Common.Message.IsbdLinkStatus.md)
  - [Common.Message.LandingTarget](Common.Message.LandingTarget.md)
  - [Common.Message.LinkNodeStatus](Common.Message.LinkNodeStatus.md)
  - [Common.Message.LocalPositionNed](Common.Message.LocalPositionNed.md)
  - [Common.Message.LocalPositionNedCov](Common.Message.LocalPositionNedCov.md)
  - [Common.Message.LocalPositionNedSystemGlobalOffset](Common.Message.LocalPositionNedSystemGlobalOffset.md)
  - [Common.Message.LogData](Common.Message.LogData.md)
  - [Common.Message.LogEntry](Common.Message.LogEntry.md)
  - [Common.Message.LogErase](Common.Message.LogErase.md)
  - [Common.Message.LogRequestData](Common.Message.LogRequestData.md)
  - [Common.Message.LogRequestEnd](Common.Message.LogRequestEnd.md)
  - [Common.Message.LogRequestList](Common.Message.LogRequestList.md)
  - [Common.Message.LoggingAck](Common.Message.LoggingAck.md)
  - [Common.Message.LoggingData](Common.Message.LoggingData.md)
  - [Common.Message.LoggingDataAcked](Common.Message.LoggingDataAcked.md)
  - [Common.Message.MagCalReport](Common.Message.MagCalReport.md)
  - [Common.Message.ManualControl](Common.Message.ManualControl.md)
  - [Common.Message.ManualSetpoint](Common.Message.ManualSetpoint.md)
  - [Common.Message.MemoryVect](Common.Message.MemoryVect.md)
  - [Common.Message.MessageInterval](Common.Message.MessageInterval.md)
  - [Common.Message.MissionAck](Common.Message.MissionAck.md)
  - [Common.Message.MissionClearAll](Common.Message.MissionClearAll.md)
  - [Common.Message.MissionCount](Common.Message.MissionCount.md)
  - [Common.Message.MissionCurrent](Common.Message.MissionCurrent.md)
  - [Common.Message.MissionItem](Common.Message.MissionItem.md)
  - [Common.Message.MissionItemInt](Common.Message.MissionItemInt.md)
  - [Common.Message.MissionItemReached](Common.Message.MissionItemReached.md)
  - [Common.Message.MissionRequest](Common.Message.MissionRequest.md)
  - [Common.Message.MissionRequestInt](Common.Message.MissionRequestInt.md)
  - [Common.Message.MissionRequestList](Common.Message.MissionRequestList.md)
  - [Common.Message.MissionRequestPartialList](Common.Message.MissionRequestPartialList.md)
  - [Common.Message.MissionSetCurrent](Common.Message.MissionSetCurrent.md)
  - [Common.Message.MissionWritePartialList](Common.Message.MissionWritePartialList.md)
  - [Common.Message.MountOrientation](Common.Message.MountOrientation.md)
  - [Common.Message.NamedValueFloat](Common.Message.NamedValueFloat.md)
  - [Common.Message.NamedValueInt](Common.Message.NamedValueInt.md)
  - [Common.Message.NavControllerOutput](Common.Message.NavControllerOutput.md)
  - [Common.Message.ObstacleDistance](Common.Message.ObstacleDistance.md)
  - [Common.Message.Odometry](Common.Message.Odometry.md)
  - [Common.Message.OnboardComputerStatus](Common.Message.OnboardComputerStatus.md)
  - [Common.Message.OpenDroneIdArmStatus](Common.Message.OpenDroneIdArmStatus.md)
  - [Common.Message.OpenDroneIdAuthentication](Common.Message.OpenDroneIdAuthentication.md)
  - [Common.Message.OpenDroneIdBasicId](Common.Message.OpenDroneIdBasicId.md)
  - [Common.Message.OpenDroneIdLocation](Common.Message.OpenDroneIdLocation.md)
  - [Common.Message.OpenDroneIdMessagePack](Common.Message.OpenDroneIdMessagePack.md)
  - [Common.Message.OpenDroneIdOperatorId](Common.Message.OpenDroneIdOperatorId.md)
  - [Common.Message.OpenDroneIdSelfId](Common.Message.OpenDroneIdSelfId.md)
  - [Common.Message.OpenDroneIdSystem](Common.Message.OpenDroneIdSystem.md)
  - [Common.Message.OpenDroneIdSystemUpdate](Common.Message.OpenDroneIdSystemUpdate.md)
  - [Common.Message.OpticalFlow](Common.Message.OpticalFlow.md)
  - [Common.Message.OpticalFlowRad](Common.Message.OpticalFlowRad.md)
  - [Common.Message.OrbitExecutionStatus](Common.Message.OrbitExecutionStatus.md)
  - [Common.Message.ParamExtAck](Common.Message.ParamExtAck.md)
  - [Common.Message.ParamExtRequestList](Common.Message.ParamExtRequestList.md)
  - [Common.Message.ParamExtRequestRead](Common.Message.ParamExtRequestRead.md)
  - [Common.Message.ParamExtSet](Common.Message.ParamExtSet.md)
  - [Common.Message.ParamExtValue](Common.Message.ParamExtValue.md)
  - [Common.Message.ParamMapRc](Common.Message.ParamMapRc.md)
  - [Common.Message.ParamRequestList](Common.Message.ParamRequestList.md)
  - [Common.Message.ParamRequestRead](Common.Message.ParamRequestRead.md)
  - [Common.Message.ParamSet](Common.Message.ParamSet.md)
  - [Common.Message.ParamValue](Common.Message.ParamValue.md)
  - [Common.Message.Ping](Common.Message.Ping.md)
  - [Common.Message.PlayTune](Common.Message.PlayTune.md)
  - [Common.Message.PlayTuneV2](Common.Message.PlayTuneV2.md)
  - [Common.Message.PositionTargetGlobalInt](Common.Message.PositionTargetGlobalInt.md)
  - [Common.Message.PositionTargetLocalNed](Common.Message.PositionTargetLocalNed.md)
  - [Common.Message.PowerStatus](Common.Message.PowerStatus.md)
  - [Common.Message.ProtocolVersion](Common.Message.ProtocolVersion.md)
  - [Common.Message.RadioStatus](Common.Message.RadioStatus.md)
  - [Common.Message.RawImu](Common.Message.RawImu.md)
  - [Common.Message.RawPressure](Common.Message.RawPressure.md)
  - [Common.Message.RawRpm](Common.Message.RawRpm.md)
  - [Common.Message.RcChannels](Common.Message.RcChannels.md)
  - [Common.Message.RcChannelsOverride](Common.Message.RcChannelsOverride.md)
  - [Common.Message.RcChannelsRaw](Common.Message.RcChannelsRaw.md)
  - [Common.Message.RcChannelsScaled](Common.Message.RcChannelsScaled.md)
  - [Common.Message.RequestDataStream](Common.Message.RequestDataStream.md)
  - [Common.Message.RequestEvent](Common.Message.RequestEvent.md)
  - [Common.Message.ResourceRequest](Common.Message.ResourceRequest.md)
  - [Common.Message.ResponseEventError](Common.Message.ResponseEventError.md)
  - [Common.Message.SafetyAllowedArea](Common.Message.SafetyAllowedArea.md)
  - [Common.Message.SafetySetAllowedArea](Common.Message.SafetySetAllowedArea.md)
  - [Common.Message.ScaledImu](Common.Message.ScaledImu.md)
  - [Common.Message.ScaledImu2](Common.Message.ScaledImu2.md)
  - [Common.Message.ScaledImu3](Common.Message.ScaledImu3.md)
  - [Common.Message.ScaledPressure](Common.Message.ScaledPressure.md)
  - [Common.Message.ScaledPressure2](Common.Message.ScaledPressure2.md)
  - [Common.Message.ScaledPressure3](Common.Message.ScaledPressure3.md)
  - [Common.Message.SerialControl](Common.Message.SerialControl.md)
  - [Common.Message.ServoOutputRaw](Common.Message.ServoOutputRaw.md)
  - [Common.Message.SetActuatorControlTarget](Common.Message.SetActuatorControlTarget.md)
  - [Common.Message.SetAttitudeTarget](Common.Message.SetAttitudeTarget.md)
  - [Common.Message.SetGpsGlobalOrigin](Common.Message.SetGpsGlobalOrigin.md)
  - [Common.Message.SetHomePosition](Common.Message.SetHomePosition.md)
  - [Common.Message.SetMode](Common.Message.SetMode.md)
  - [Common.Message.SetPositionTargetGlobalInt](Common.Message.SetPositionTargetGlobalInt.md)
  - [Common.Message.SetPositionTargetLocalNed](Common.Message.SetPositionTargetLocalNed.md)
  - [Common.Message.SetupSigning](Common.Message.SetupSigning.md)
  - [Common.Message.SimState](Common.Message.SimState.md)
  - [Common.Message.SmartBatteryInfo](Common.Message.SmartBatteryInfo.md)
  - [Common.Message.Statustext](Common.Message.Statustext.md)
  - [Common.Message.StorageInformation](Common.Message.StorageInformation.md)
  - [Common.Message.SupportedTunes](Common.Message.SupportedTunes.md)
  - [Common.Message.SysStatus](Common.Message.SysStatus.md)
  - [Common.Message.SystemTime](Common.Message.SystemTime.md)
  - [Common.Message.TerrainCheck](Common.Message.TerrainCheck.md)
  - [Common.Message.TerrainData](Common.Message.TerrainData.md)
  - [Common.Message.TerrainReport](Common.Message.TerrainReport.md)
  - [Common.Message.TerrainRequest](Common.Message.TerrainRequest.md)
  - [Common.Message.TimeEstimateToTarget](Common.Message.TimeEstimateToTarget.md)
  - [Common.Message.Timesync](Common.Message.Timesync.md)
  - [Common.Message.TrajectoryRepresentationBezier](Common.Message.TrajectoryRepresentationBezier.md)
  - [Common.Message.TrajectoryRepresentationWaypoints](Common.Message.TrajectoryRepresentationWaypoints.md)
  - [Common.Message.Tunnel](Common.Message.Tunnel.md)
  - [Common.Message.UavcanNodeInfo](Common.Message.UavcanNodeInfo.md)
  - [Common.Message.UavcanNodeStatus](Common.Message.UavcanNodeStatus.md)
  - [Common.Message.UtmGlobalPosition](Common.Message.UtmGlobalPosition.md)
  - [Common.Message.V2Extension](Common.Message.V2Extension.md)
  - [Common.Message.VfrHud](Common.Message.VfrHud.md)
  - [Common.Message.Vibration](Common.Message.Vibration.md)
  - [Common.Message.ViconPositionEstimate](Common.Message.ViconPositionEstimate.md)
  - [Common.Message.VideoStreamInformation](Common.Message.VideoStreamInformation.md)
  - [Common.Message.VideoStreamStatus](Common.Message.VideoStreamStatus.md)
  - [Common.Message.VisionPositionEstimate](Common.Message.VisionPositionEstimate.md)
  - [Common.Message.VisionSpeedEstimate](Common.Message.VisionSpeedEstimate.md)
  - [Common.Message.WheelDistance](Common.Message.WheelDistance.md)
  - [Common.Message.WifiConfigAp](Common.Message.WifiConfigAp.md)
  - [Common.Message.WinchStatus](Common.Message.WinchStatus.md)
  - [Common.Message.WindCov](Common.Message.WindCov.md)
  - [Common.Types](Common.Types.md)

## Mix Tasks

- Dialect And Generator Support
  - [mix xmavlink](Mix.Tasks.Xmavlink.md)

