mavlink-mappings
Version:
MavLink message definitions
1,088 lines (1,087 loc) • 32.9 kB
TypeScript
import { uint32_t, uint8_t_mavlink_version } from './types';
import { MavLinkPacketRegistry, MavLinkPacketField, MavLinkData } from './mavlink';
/**
* Micro air vehicle / autopilot classes. This identifies the individual model.
*/
export declare enum MavAutopilot {
/**
* Generic autopilot, full support for everything
*/
'GENERIC' = 0,
/**
* Reserved for future use.
*/
'RESERVED' = 1,
/**
* SLUGS autopilot, http://slugsuav.soe.ucsc.edu
*/
'SLUGS' = 2,
/**
* ArduPilot - Plane/Copter/Rover/Sub/Tracker, https://ardupilot.org
*/
'ARDUPILOTMEGA' = 3,
/**
* OpenPilot, http://openpilot.org
*/
'OPENPILOT' = 4,
/**
* Generic autopilot only supporting simple waypoints
*/
'GENERIC_WAYPOINTS_ONLY' = 5,
/**
* Generic autopilot supporting waypoints and other simple navigation commands
*/
'GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY' = 6,
/**
* Generic autopilot supporting the full mission command set
*/
'GENERIC_MISSION_FULL' = 7,
/**
* No valid autopilot, e.g. a GCS or other MAVLink component
*/
'INVALID' = 8,
/**
* PPZ UAV - http://nongnu.org/paparazzi
*/
'PPZ' = 9,
/**
* UAV Dev Board
*/
'UDB' = 10,
/**
* FlexiPilot
*/
'FP' = 11,
/**
* PX4 Autopilot - http://px4.io/
*/
'PX4' = 12,
/**
* SMACCMPilot - http://smaccmpilot.org
*/
'SMACCMPILOT' = 13,
/**
* AutoQuad -- http://autoquad.org
*/
'AUTOQUAD' = 14,
/**
* Armazila -- http://armazila.com
*/
'ARMAZILA' = 15,
/**
* Aerob -- http://aerob.ru
*/
'AEROB' = 16,
/**
* ASLUAV autopilot -- http://www.asl.ethz.ch
*/
'ASLUAV' = 17,
/**
* SmartAP Autopilot - http://sky-drones.com
*/
'SMARTAP' = 18,
/**
* AirRails - http://uaventure.com
*/
'AIRRAILS' = 19,
/**
* Fusion Reflex - https://fusion.engineering
*/
'REFLEX' = 20
}
/**
* MAVLINK component type reported in HEARTBEAT message. Flight controllers must report the type of the
* vehicle on which they are mounted (e.g. MAV_TYPE_OCTOROTOR). All other components must report a
* value appropriate for their type (e.g. a camera must use MAV_TYPE_CAMERA).
*/
export declare enum MavType {
/**
* Generic micro air vehicle
*/
'GENERIC' = 0,
/**
* Fixed wing aircraft.
*/
'FIXED_WING' = 1,
/**
* Quadrotor
*/
'QUADROTOR' = 2,
/**
* Coaxial helicopter
*/
'COAXIAL' = 3,
/**
* Normal helicopter with tail rotor.
*/
'HELICOPTER' = 4,
/**
* Ground installation
*/
'ANTENNA_TRACKER' = 5,
/**
* Operator control unit / ground control station
*/
'GCS' = 6,
/**
* Airship, controlled
*/
'AIRSHIP' = 7,
/**
* Free balloon, uncontrolled
*/
'FREE_BALLOON' = 8,
/**
* Rocket
*/
'ROCKET' = 9,
/**
* Ground rover
*/
'GROUND_ROVER' = 10,
/**
* Surface vessel, boat, ship
*/
'SURFACE_BOAT' = 11,
/**
* Submarine
*/
'SUBMARINE' = 12,
/**
* Hexarotor
*/
'HEXAROTOR' = 13,
/**
* Octorotor
*/
'OCTOROTOR' = 14,
/**
* Tricopter
*/
'TRICOPTER' = 15,
/**
* Flapping wing
*/
'FLAPPING_WING' = 16,
/**
* Kite
*/
'KITE' = 17,
/**
* Onboard companion controller
*/
'ONBOARD_CONTROLLER' = 18,
/**
* Two-rotor Tailsitter VTOL that additionally uses control surfaces in vertical operation. Note, value
* previously named MAV_TYPE_VTOL_DUOROTOR.
*/
'VTOL_TAILSITTER_DUOROTOR' = 19,
/**
* Quad-rotor Tailsitter VTOL using a V-shaped quad config in vertical operation. Note: value
* previously named MAV_TYPE_VTOL_QUADROTOR.
*/
'VTOL_TAILSITTER_QUADROTOR' = 20,
/**
* Tiltrotor VTOL. Fuselage and wings stay (nominally) horizontal in all flight phases. It able to tilt
* (some) rotors to provide thrust in cruise flight.
*/
'VTOL_TILTROTOR' = 21,
/**
* VTOL with separate fixed rotors for hover and cruise flight. Fuselage and wings stay (nominally)
* horizontal in all flight phases.
*/
'VTOL_FIXEDROTOR' = 22,
/**
* Tailsitter VTOL. Fuselage and wings orientation changes depending on flight phase: vertical for
* hover, horizontal for cruise. Use more specific VTOL MAV_TYPE_VTOL_TAILSITTER_DUOROTOR or
* MAV_TYPE_VTOL_TAILSITTER_QUADROTOR if appropriate.
*/
'VTOL_TAILSITTER' = 23,
/**
* Tiltwing VTOL. Fuselage stays horizontal in all flight phases. The whole wing, along with any
* attached engine, can tilt between vertical and horizontal mode.
*/
'VTOL_TILTWING' = 24,
/**
* VTOL reserved 5
*/
'VTOL_RESERVED5' = 25,
/**
* Gimbal
*/
'GIMBAL' = 26,
/**
* ADSB system
*/
'ADSB' = 27,
/**
* Steerable, nonrigid airfoil
*/
'PARAFOIL' = 28,
/**
* Dodecarotor
*/
'DODECAROTOR' = 29,
/**
* Camera
*/
'CAMERA' = 30,
/**
* Charging station
*/
'CHARGING_STATION' = 31,
/**
* FLARM collision avoidance system
*/
'FLARM' = 32,
/**
* Servo
*/
'SERVO' = 33,
/**
* Open Drone ID. See https://mavlink.io/en/services/opendroneid.html.
*/
'ODID' = 34,
/**
* Decarotor
*/
'DECAROTOR' = 35,
/**
* Battery
*/
'BATTERY' = 36,
/**
* Parachute
*/
'PARACHUTE' = 37,
/**
* Log
*/
'LOG' = 38,
/**
* OSD
*/
'OSD' = 39,
/**
* IMU
*/
'IMU' = 40,
/**
* GPS
*/
'GPS' = 41,
/**
* Winch
*/
'WINCH' = 42,
/**
* Generic multirotor that does not fit into a specific type or whose type is unknown
*/
'GENERIC_MULTIROTOR' = 43
}
/**
* These flags encode the MAV mode.
*/
export declare enum MavModeFlag {
/**
* 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly.
* Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and
* MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed
* state.
*/
'SAFETY_ARMED' = 128,
/**
* 0b01000000 remote control input is enabled.
*/
'MANUAL_INPUT_ENABLED' = 64,
/**
* 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal
* software is full operational.
*/
'HIL_ENABLED' = 32,
/**
* 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however
* further control inputs to move around.
*/
'STABILIZE_ENABLED' = 16,
/**
* 0b00001000 guided mode enabled, system flies waypoints / mission items.
*/
'GUIDED_ENABLED' = 8,
/**
* 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or
* not, depends on the actual implementation.
*/
'AUTO_ENABLED' = 4,
/**
* 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and
* should not be used for stable implementations.
*/
'TEST_ENABLED' = 2,
/**
* 0b00000001 Reserved for future use.
*/
'CUSTOM_MODE_ENABLED' = 1
}
/**
* These values encode the bit positions of the decode position. These values can be used to read the
* value of a flag bit by combining the base_mode variable with AND with the flag position value. The
* result will be either 0 or 1, depending on if the flag is set or not.
*/
export declare enum MavModeFlagDecodePosition {
/**
* First bit: 10000000
*/
'SAFETY' = 128,
/**
* Second bit: 01000000
*/
'MANUAL' = 64,
/**
* Third bit: 00100000
*/
'HIL' = 32,
/**
* Fourth bit: 00010000
*/
'STABILIZE' = 16,
/**
* Fifth bit: 00001000
*/
'GUIDED' = 8,
/**
* Sixth bit: 00000100
*/
'AUTO' = 4,
/**
* Seventh bit: 00000010
*/
'TEST' = 2,
/**
* Eighth bit: 00000001
*/
'CUSTOM_MODE' = 1
}
/**
* MAV_STATE
*/
export declare enum MavState {
/**
* Uninitialized system, state is unknown.
*/
'UNINIT' = 0,
/**
* System is booting up.
*/
'BOOT' = 1,
/**
* System is calibrating and not flight-ready.
*/
'CALIBRATING' = 2,
/**
* System is grounded and on standby. It can be launched any time.
*/
'STANDBY' = 3,
/**
* System is active and might be already airborne. Motors are engaged.
*/
'ACTIVE' = 4,
/**
* System is in a non-normal flight mode (failsafe). It can however still navigate.
*/
'CRITICAL' = 5,
/**
* System is in a non-normal flight mode (failsafe). It lost control over parts or over the whole
* airframe. It is in mayday and going down.
*/
'EMERGENCY' = 6,
/**
* System just initialized its power-down sequence, will shut down now.
*/
'POWEROFF' = 7,
/**
* System is terminating itself (failsafe or commanded).
*/
'FLIGHT_TERMINATION' = 8
}
/**
* Component ids (values) for the different types and instances of onboard hardware/software that might
* make up a MAVLink system (autopilot, cameras, servos, GPS systems, avoidance systems etc.).
* Components must use the appropriate ID in their source address when sending messages. Components can
* also use IDs to determine if they are the intended recipient of an incoming message. The
* MAV_COMP_ID_ALL value is used to indicate messages that must be processed by all components. When
* creating new entries, components that can have multiple instances (e.g. cameras, servos etc.) should
* be allocated sequential values. An appropriate number of values should be left free after these
* components to allow the number of instances to be expanded.
*/
export declare enum MavComponent {
/**
* Target id (target_component) used to broadcast messages to all components of the receiving system.
* Components should attempt to process messages with this component ID and forward to components on
* any other interfaces. Note: This is not a valid *source* component id for a message.
*/
'ALL' = 0,
/**
* System flight controller component ("autopilot"). Only one autopilot is expected in a particular
* system.
*/
'AUTOPILOT1' = 1,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER1' = 25,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER2' = 26,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER3' = 27,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER4' = 28,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER5' = 29,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER6' = 30,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER7' = 31,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER8' = 32,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER9' = 33,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER10' = 34,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER11' = 35,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER12' = 36,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER13' = 37,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER14' = 38,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER15' = 39,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER16' = 40,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER17' = 41,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER18' = 42,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER19' = 43,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER20' = 44,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER21' = 45,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER22' = 46,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER23' = 47,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER24' = 48,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER25' = 49,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER26' = 50,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER27' = 51,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER28' = 52,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER29' = 53,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER30' = 54,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER31' = 55,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER32' = 56,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER33' = 57,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER34' = 58,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER35' = 59,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER36' = 60,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER37' = 61,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER38' = 62,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER39' = 63,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER40' = 64,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER41' = 65,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER42' = 66,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER43' = 67,
/**
* Telemetry radio (e.g. SiK radio, or other component that emits RADIO_STATUS messages).
*/
'TELEMETRY_RADIO' = 68,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER45' = 69,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER46' = 70,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER47' = 71,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER48' = 72,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER49' = 73,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER50' = 74,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER51' = 75,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER52' = 76,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER53' = 77,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER54' = 78,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER55' = 79,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER56' = 80,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER57' = 81,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER58' = 82,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER59' = 83,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER60' = 84,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER61' = 85,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER62' = 86,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER63' = 87,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER64' = 88,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER65' = 89,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER66' = 90,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER67' = 91,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER68' = 92,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER69' = 93,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER70' = 94,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER71' = 95,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER72' = 96,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER73' = 97,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER74' = 98,
/**
* Id for a component on privately managed MAVLink network. Can be used for any purpose but may not be
* published by components outside of the private network.
*/
'USER75' = 99,
/**
* Camera #1.
*/
'CAMERA' = 100,
/**
* Camera #2.
*/
'CAMERA2' = 101,
/**
* Camera #3.
*/
'CAMERA3' = 102,
/**
* Camera #4.
*/
'CAMERA4' = 103,
/**
* Camera #5.
*/
'CAMERA5' = 104,
/**
* Camera #6.
*/
'CAMERA6' = 105,
/**
* Servo #1.
*/
'SERVO1' = 140,
/**
* Servo #2.
*/
'SERVO2' = 141,
/**
* Servo #3.
*/
'SERVO3' = 142,
/**
* Servo #4.
*/
'SERVO4' = 143,
/**
* Servo #5.
*/
'SERVO5' = 144,
/**
* Servo #6.
*/
'SERVO6' = 145,
/**
* Servo #7.
*/
'SERVO7' = 146,
/**
* Servo #8.
*/
'SERVO8' = 147,
/**
* Servo #9.
*/
'SERVO9' = 148,
/**
* Servo #10.
*/
'SERVO10' = 149,
/**
* Servo #11.
*/
'SERVO11' = 150,
/**
* Servo #12.
*/
'SERVO12' = 151,
/**
* Servo #13.
*/
'SERVO13' = 152,
/**
* Servo #14.
*/
'SERVO14' = 153,
/**
* Gimbal #1.
*/
'GIMBAL' = 154,
/**
* Logging component.
*/
'LOG' = 155,
/**
* Automatic Dependent Surveillance-Broadcast (ADS-B) component.
*/
'ADSB' = 156,
/**
* On Screen Display (OSD) devices for video links.
*/
'OSD' = 157,
/**
* Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter
* microservice.
*/
'PERIPHERAL' = 158,
/**
* Gimbal ID for QX1.
*/
'QX1_GIMBAL' = 159,
/**
* FLARM collision alert component.
*/
'FLARM' = 160,
/**
* Parachute component.
*/
'PARACHUTE' = 161,
/**
* Winch component.
*/
'WINCH' = 169,
/**
* Gimbal #2.
*/
'GIMBAL2' = 171,
/**
* Gimbal #3.
*/
'GIMBAL3' = 172,
/**
* Gimbal #4
*/
'GIMBAL4' = 173,
/**
* Gimbal #5.
*/
'GIMBAL5' = 174,
/**
* Gimbal #6.
*/
'GIMBAL6' = 175,
/**
* Battery #1.
*/
'BATTERY' = 180,
/**
* Battery #2.
*/
'BATTERY2' = 181,
/**
* CAN over MAVLink client.
*/
'MAVCAN' = 189,
/**
* Component that can generate/supply a mission flight plan (e.g. GCS or developer API).
*/
'MISSIONPLANNER' = 190,
/**
* Component that lives on the onboard computer (companion computer) and has some generic
* functionalities, such as settings system parameters and monitoring the status of some processes that
* don't directly speak mavlink and so on.
*/
'ONBOARD_COMPUTER' = 191,
/**
* Component that lives on the onboard computer (companion computer) and has some generic
* functionalities, such as settings system parameters and monitoring the status of some processes that
* don't directly speak mavlink and so on.
*/
'ONBOARD_COMPUTER2' = 192,
/**
* Component that lives on the onboard computer (companion computer) and has some generic
* functionalities, such as settings system parameters and monitoring the status of some processes that
* don't directly speak mavlink and so on.
*/
'ONBOARD_COMPUTER3' = 193,
/**
* Component that lives on the onboard computer (companion computer) and has some generic
* functionalities, such as settings system parameters and monitoring the status of some processes that
* don't directly speak mavlink and so on.
*/
'ONBOARD_COMPUTER4' = 194,
/**
* Component that finds an optimal path between points based on a certain constraint (e.g. minimum
* snap, shortest path, cost, etc.).
*/
'PATHPLANNER' = 195,
/**
* Component that plans a collision free path between two points.
*/
'OBSTACLE_AVOIDANCE' = 196,
/**
* Component that provides position estimates using VIO techniques.
*/
'VISUAL_INERTIAL_ODOMETRY' = 197,
/**
* Component that manages pairing of vehicle and GCS.
*/
'PAIRING_MANAGER' = 198,
/**
* Inertial Measurement Unit (IMU) #1.
*/
'IMU' = 200,
/**
* Inertial Measurement Unit (IMU) #2.
*/
'IMU_2' = 201,
/**
* Inertial Measurement Unit (IMU) #3.
*/
'IMU_3' = 202,
/**
* GPS #1.
*/
'GPS' = 220,
/**
* GPS #2.
*/
'GPS2' = 221,
/**
* Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet).
*/
'ODID_TXRX_1' = 236,
/**
* Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet).
*/
'ODID_TXRX_2' = 237,
/**
* Open Drone ID transmitter/receiver (Bluetooth/WiFi/Internet).
*/
'ODID_TXRX_3' = 238,
/**
* Component to bridge MAVLink to UDP (i.e. from a UART).
*/
'UDP_BRIDGE' = 240,
/**
* Component to bridge to UART (i.e. from UDP).
*/
'UART_BRIDGE' = 241,
/**
* Component handling TUNNEL messages (e.g. vendor specific GUI of a component).
*/
'TUNNEL_NODE' = 242,
/**
* Deprecated, don't use. Component for handling system messages (e.g. to ARM, takeoff, etc.).
*/
'SYSTEM_CONTROL' = 250
}
/**
* The heartbeat message shows that a system or component is present and responding. The type and
* autopilot fields (along with the message component id), allow the receiving system to treat further
* messages from this system appropriately (e.g. by laying out the user interface based on the
* autopilot). This microservice is documented at https://mavlink.io/en/services/heartbeat.html
*/
export declare class Heartbeat extends MavLinkData {
static MSG_ID: number;
static MSG_NAME: string;
static PAYLOAD_LENGTH: number;
static MAGIC_NUMBER: number;
static FIELDS: MavLinkPacketField[];
constructor();
/**
* Vehicle or component type. For a flight controller component the vehicle type (quadrotor,
* helicopter, etc.). For other components the component type (e.g. camera, gimbal, etc.). This should
* be used in preference to component id for identifying the component type.
*/
type: MavType;
/**
* Autopilot type / class. Use MAV_AUTOPILOT_INVALID for components that are not flight controllers.
*/
autopilot: MavAutopilot;
/**
* System mode bitmap.
*/
baseMode: MavModeFlag;
/**
* A bitfield for use for autopilot-specific flags
*/
customMode: uint32_t;
/**
* System status flag.
*/
systemStatus: MavState;
/**
* MAVLink version, not writable by user, gets added by protocol because of magic data type:
* uint8_t_mavlink_version
*/
mavlinkVersion: uint8_t_mavlink_version;
}
export declare const REGISTRY: MavLinkPacketRegistry;