mavlink-mappings
Version:
MavLink message definitions
1,669 lines • 647 kB
TypeScript
import { int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, float, double } from './types';
import { MavLinkPacketRegistry, MavLinkPacketField, MavLinkData, MavLinkDataConstructor } from './mavlink';
import { MavType, MavAutopilot, MavModeFlag } from './minimal';
export type MavLinkCommandRegistry = Record<number, MavLinkDataConstructor<CommandLong>>;
/**
* These values define the type of firmware release. These values indicate the first version or release
* of this type. For example the first alpha release would be 64, the second would be 65.
*/
export declare enum FirmwareVersionType {
/**
* development release
*/
'DEV' = 0,
/**
* alpha release
*/
'ALPHA' = 64,
/**
* beta release
*/
'BETA' = 128,
/**
* release candidate
*/
'RC' = 192,
/**
* official stable release
*/
'OFFICIAL' = 255
}
/**
* Flags to report failure cases over the high latency telemetry.
*/
export declare enum HlFailureFlag {
/**
* GPS failure.
*/
'GPS' = 1,
/**
* Differential pressure sensor failure.
*/
'DIFFERENTIAL_PRESSURE' = 2,
/**
* Absolute pressure sensor failure.
*/
'ABSOLUTE_PRESSURE' = 4,
/**
* Accelerometer sensor failure.
*/
'HL_FAILURE_FLAG_3D_ACCEL' = 8,
/**
* Gyroscope sensor failure.
*/
'HL_FAILURE_FLAG_3D_GYRO' = 16,
/**
* Magnetometer sensor failure.
*/
'HL_FAILURE_FLAG_3D_MAG' = 32,
/**
* Terrain subsystem failure.
*/
'TERRAIN' = 64,
/**
* Battery failure/critical low battery.
*/
'BATTERY' = 128,
/**
* RC receiver failure/no RC connection.
*/
'RC_RECEIVER' = 256,
/**
* Offboard link failure.
*/
'OFFBOARD_LINK' = 512,
/**
* Engine failure.
*/
'ENGINE' = 1024,
/**
* Geofence violation.
*/
'GEOFENCE' = 2048,
/**
* Estimator failure, for example measurement rejection or large variances.
*/
'ESTIMATOR' = 4096,
/**
* Mission failure.
*/
'MISSION' = 8192
}
/**
* Actions that may be specified in MAV_CMD_OVERRIDE_GOTO to override mission execution.
*/
export declare enum MavGoto {
/**
* Hold at the current position.
*/
'DO_HOLD' = 0,
/**
* Continue with the next item in mission execution.
*/
'DO_CONTINUE' = 1,
/**
* Hold at the current position of the system
*/
'HOLD_AT_CURRENT_POSITION' = 2,
/**
* Hold at the position specified in the parameters of the DO_HOLD action
*/
'HOLD_AT_SPECIFIED_POSITION' = 3
}
/**
* These defines are predefined OR-combined mode flags. There is no need to use values from this enum,
* but it simplifies the use of the mode flags. Note that manual input is enabled in all modes as a
* safety override.
*/
export declare enum MavMode {
/**
* System is not ready to fly, booting, calibrating, etc. No flag is set.
*/
'PREFLIGHT' = 0,
/**
* System is allowed to be active, under assisted RC control.
*/
'STABILIZE_DISARMED' = 80,
/**
* System is allowed to be active, under assisted RC control.
*/
'STABILIZE_ARMED' = 208,
/**
* System is allowed to be active, under manual (RC) control, no stabilization
*/
'MANUAL_DISARMED' = 64,
/**
* System is allowed to be active, under manual (RC) control, no stabilization
*/
'MANUAL_ARMED' = 192,
/**
* System is allowed to be active, under autonomous control, manual setpoint
*/
'GUIDED_DISARMED' = 88,
/**
* System is allowed to be active, under autonomous control, manual setpoint
*/
'GUIDED_ARMED' = 216,
/**
* System is allowed to be active, under autonomous control and navigation (the trajectory is decided
* onboard and not pre-programmed by waypoints)
*/
'AUTO_DISARMED' = 92,
/**
* System is allowed to be active, under autonomous control and navigation (the trajectory is decided
* onboard and not pre-programmed by waypoints)
*/
'AUTO_ARMED' = 220,
/**
* UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers
* only.
*/
'TEST_DISARMED' = 66,
/**
* UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers
* only.
*/
'TEST_ARMED' = 194
}
/**
* These encode the sensors whose status is sent as part of the SYS_STATUS message.
*/
export declare enum MavSysStatusSensor {
/**
* 0x01 3D gyro
*/
'SENSOR_3D_GYRO' = 1,
/**
* 0x02 3D accelerometer
*/
'SENSOR_3D_ACCEL' = 2,
/**
* 0x04 3D magnetometer
*/
'SENSOR_3D_MAG' = 4,
/**
* 0x08 absolute pressure
*/
'SENSOR_ABSOLUTE_PRESSURE' = 8,
/**
* 0x10 differential pressure
*/
'SENSOR_DIFFERENTIAL_PRESSURE' = 16,
/**
* 0x20 GPS
*/
'SENSOR_GPS' = 32,
/**
* 0x40 optical flow
*/
'SENSOR_OPTICAL_FLOW' = 64,
/**
* 0x80 computer vision position
*/
'SENSOR_VISION_POSITION' = 128,
/**
* 0x100 laser based position
*/
'SENSOR_LASER_POSITION' = 256,
/**
* 0x200 external ground truth (Vicon or Leica)
*/
'SENSOR_EXTERNAL_GROUND_TRUTH' = 512,
/**
* 0x400 3D angular rate control
*/
'SENSOR_ANGULAR_RATE_CONTROL' = 1024,
/**
* 0x800 attitude stabilization
*/
'SENSOR_ATTITUDE_STABILIZATION' = 2048,
/**
* 0x1000 yaw position
*/
'SENSOR_YAW_POSITION' = 4096,
/**
* 0x2000 z/altitude control
*/
'SENSOR_Z_ALTITUDE_CONTROL' = 8192,
/**
* 0x4000 x/y position control
*/
'SENSOR_XY_POSITION_CONTROL' = 16384,
/**
* 0x8000 motor outputs / control
*/
'SENSOR_MOTOR_OUTPUTS' = 32768,
/**
* 0x10000 RC receiver
*/
'SENSOR_RC_RECEIVER' = 65536,
/**
* 0x20000 2nd 3D gyro
*/
'SENSOR_3D_GYRO2' = 131072,
/**
* 0x40000 2nd 3D accelerometer
*/
'SENSOR_3D_ACCEL2' = 262144,
/**
* 0x80000 2nd 3D magnetometer
*/
'SENSOR_3D_MAG2' = 524288,
/**
* 0x100000 geofence
*/
'GEOFENCE' = 1048576,
/**
* 0x200000 AHRS subsystem health
*/
'AHRS' = 2097152,
/**
* 0x400000 Terrain subsystem health
*/
'TERRAIN' = 4194304,
/**
* 0x800000 Motors are reversed
*/
'REVERSE_MOTOR' = 8388608,
/**
* 0x1000000 Logging
*/
'LOGGING' = 16777216,
/**
* 0x2000000 Battery
*/
'SENSOR_BATTERY' = 33554432,
/**
* 0x4000000 Proximity
*/
'SENSOR_PROXIMITY' = 67108864,
/**
* 0x8000000 Satellite Communication
*/
'SENSOR_SATCOM' = 134217728,
/**
* 0x10000000 pre-arm check status. Always healthy when armed
*/
'PREARM_CHECK' = 268435456,
/**
* 0x20000000 Avoidance/collision prevention
*/
'OBSTACLE_AVOIDANCE' = 536870912,
/**
* 0x40000000 propulsion (actuator, esc, motor or propellor)
*/
'SENSOR_PROPULSION' = 1073741824,
/**
* 0x80000000 Extended bit-field are used for further sensor status bits (needs to be set in
* onboard_control_sensors_present only)
*/
'EXTENSION_USED' = 2147483648
}
/**
* These encode the sensors whose status is sent as part of the SYS_STATUS message in the extended
* fields.
*/
export declare enum MavSysStatusSensorExtended {
/**
* 0x01 Recovery system (parachute, balloon, retracts etc)
*/
'SYSTEM' = 1
}
/**
* Coordinate frames used by MAVLink. Not all frames are supported by all commands, messages, or
* vehicles. Global frames use the following naming conventions: - "GLOBAL": Global coordinate frame
* with WGS84 latitude/longitude and altitude positive over mean sea level (MSL) by default. The
* following modifiers may be used with "GLOBAL": - "RELATIVE_ALT": Altitude is relative to the vehicle
* home position rather than MSL. - "TERRAIN_ALT": Altitude is relative to ground level rather than
* MSL. - "INT": Latitude/longitude (in degrees) are scaled by multiplying by 1E7. Local frames use the
* following naming conventions: - "LOCAL": Origin of local frame is fixed relative to earth. Unless
* otherwise specified this origin is the origin of the vehicle position-estimator ("EKF"). - "BODY":
* Origin of local frame travels with the vehicle. NOTE, "BODY" does NOT indicate alignment of frame
* axis with vehicle attitude. - "OFFSET": Deprecated synonym for "BODY" (origin travels with the
* vehicle). Not to be used for new frames. Some deprecated frames do not follow these conventions
* (e.g. MAV_FRAME_BODY_NED and MAV_FRAME_BODY_OFFSET_NED).
*/
export declare enum MavFrame {
/**
* Global (WGS84) coordinate frame + MSL altitude. First value / x: latitude, second value / y:
* longitude, third value / z: positive altitude over mean sea level (MSL).
*/
'GLOBAL' = 0,
/**
* NED local tangent frame (x: North, y: East, z: Down) with origin fixed relative to earth.
*/
'LOCAL_NED' = 1,
/**
* NOT a coordinate frame, indicates a mission command.
*/
'MISSION' = 2,
/**
* Global (WGS84) coordinate frame + altitude relative to the home position. First value / x: latitude,
* second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the
* home position.
*/
'GLOBAL_RELATIVE_ALT' = 3,
/**
* ENU local tangent frame (x: East, y: North, z: Up) with origin fixed relative to earth.
*/
'LOCAL_ENU' = 4,
/**
* Global (WGS84) coordinate frame (scaled) + MSL altitude. First value / x: latitude in degrees*1E7,
* second value / y: longitude in degrees*1E7, third value / z: positive altitude over mean sea level
* (MSL).
*/
'GLOBAL_INT' = 5,
/**
* Global (WGS84) coordinate frame (scaled) + altitude relative to the home position. First value / x:
* latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive
* altitude with 0 being at the altitude of the home position.
*/
'GLOBAL_RELATIVE_ALT_INT' = 6,
/**
* NED local tangent frame (x: North, y: East, z: Down) with origin that travels with the vehicle.
*/
'LOCAL_OFFSET_NED' = 7,
/**
* Same as MAV_FRAME_LOCAL_NED when used to represent position values. Same as MAV_FRAME_BODY_FRD when
* used with velocity/acceleration values.
*/
'BODY_NED' = 8,
/**
* This is the same as MAV_FRAME_BODY_FRD.
*/
'BODY_OFFSET_NED' = 9,
/**
* Global (WGS84) coordinate frame with AGL altitude (at the waypoint coordinate). First value / x:
* latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in
* meters with 0 being at ground level in terrain model.
*/
'GLOBAL_TERRAIN_ALT' = 10,
/**
* Global (WGS84) coordinate frame (scaled) with AGL altitude (at the waypoint coordinate). First value
* / x: latitude in degrees*1E7, second value / y: longitude in degrees*1E7, third value / z: positive
* altitude in meters with 0 being at ground level in terrain model.
*/
'GLOBAL_TERRAIN_ALT_INT' = 11,
/**
* FRD local frame aligned to the vehicle's attitude (x: Forward, y: Right, z: Down) with an origin
* that travels with vehicle.
*/
'BODY_FRD' = 12,
/**
* MAV_FRAME_BODY_FLU - Body fixed frame of reference, Z-up (x: Forward, y: Left, z: Up).
*/
'RESERVED_13' = 13,
/**
* MAV_FRAME_MOCAP_NED - Odometry local coordinate frame of data given by a motion capture system,
* Z-down (x: North, y: East, z: Down).
*/
'RESERVED_14' = 14,
/**
* MAV_FRAME_MOCAP_ENU - Odometry local coordinate frame of data given by a motion capture system, Z-up
* (x: East, y: North, z: Up).
*/
'RESERVED_15' = 15,
/**
* MAV_FRAME_VISION_NED - Odometry local coordinate frame of data given by a vision estimation system,
* Z-down (x: North, y: East, z: Down).
*/
'RESERVED_16' = 16,
/**
* MAV_FRAME_VISION_ENU - Odometry local coordinate frame of data given by a vision estimation system,
* Z-up (x: East, y: North, z: Up).
*/
'RESERVED_17' = 17,
/**
* MAV_FRAME_ESTIM_NED - Odometry local coordinate frame of data given by an estimator running onboard
* the vehicle, Z-down (x: North, y: East, z: Down).
*/
'RESERVED_18' = 18,
/**
* MAV_FRAME_ESTIM_ENU - Odometry local coordinate frame of data given by an estimator running onboard
* the vehicle, Z-up (x: East, y: North, z: Up).
*/
'RESERVED_19' = 19,
/**
* FRD local tangent frame (x: Forward, y: Right, z: Down) with origin fixed relative to earth. The
* forward axis is aligned to the front of the vehicle in the horizontal plane.
*/
'LOCAL_FRD' = 20,
/**
* FLU local tangent frame (x: Forward, y: Left, z: Up) with origin fixed relative to earth. The
* forward axis is aligned to the front of the vehicle in the horizontal plane.
*/
'LOCAL_FLU' = 21
}
/**
* MAVLINK_DATA_STREAM_TYPE
*/
export declare enum MavlinkDataStreamType {
'JPEG' = 0,
'BMP' = 1,
'RAW8U' = 2,
'RAW32U' = 3,
'PGM' = 4,
'PNG' = 5
}
/**
* Actions following geofence breach.
*/
export declare enum FenceAction {
/**
* Disable fenced mode. If used in a plan this would mean the next fence is disabled.
*/
'NONE' = 0,
/**
* Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT in GUIDED mode. Note: This action is only supported
* by ArduPlane, and may not be supported in all versions.
*/
'GUIDED' = 1,
/**
* Report fence breach, but don't take action
*/
'REPORT' = 2,
/**
* Fly to geofence MAV_CMD_NAV_FENCE_RETURN_POINT with manual throttle control in GUIDED mode. Note:
* This action is only supported by ArduPlane, and may not be supported in all versions.
*/
'GUIDED_THR_PASS' = 3,
/**
* Return/RTL mode.
*/
'RTL' = 4,
/**
* Hold at current location.
*/
'HOLD' = 5,
/**
* Termination failsafe. Motors are shut down (some flight stacks may trigger other failsafe actions).
*/
'TERMINATE' = 6,
/**
* Land at current location.
*/
'LAND' = 7
}
/**
* FENCE_BREACH
*/
export declare enum FenceBreach {
/**
* No last fence breach
*/
'NONE' = 0,
/**
* Breached minimum altitude
*/
'MINALT' = 1,
/**
* Breached maximum altitude
*/
'MAXALT' = 2,
/**
* Breached fence boundary
*/
'BOUNDARY' = 3
}
/**
* Actions being taken to mitigate/prevent fence breach
*/
export declare enum FenceMitigate {
/**
* Unknown
*/
'UNKNOWN' = 0,
/**
* No actions being taken
*/
'NONE' = 1,
/**
* Velocity limiting active to prevent breach
*/
'VEL_LIMIT' = 2
}
/**
* Enumeration of possible mount operation modes. This message is used by obsolete/deprecated gimbal
* messages.
*/
export declare enum MavMountMode {
/**
* Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization
*/
'RETRACT' = 0,
/**
* Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory.
*/
'NEUTRAL' = 1,
/**
* Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization
*/
'MAVLINK_TARGETING' = 2,
/**
* Load neutral position and start RC Roll,Pitch,Yaw control with stabilization
*/
'RC_TARGETING' = 3,
/**
* Load neutral position and start to point to Lat,Lon,Alt
*/
'GPS_POINT' = 4,
/**
* Gimbal tracks system with specified system ID
*/
'SYSID_TARGET' = 5,
/**
* Gimbal tracks home position
*/
'HOME_LOCATION' = 6
}
/**
* Gimbal device (low level) capability flags (bitmap).
*/
export declare enum GimbalDeviceCapFlags {
/**
* Gimbal device supports a retracted position.
*/
'HAS_RETRACT' = 1,
/**
* Gimbal device supports a horizontal, forward looking position, stabilized.
*/
'HAS_NEUTRAL' = 2,
/**
* Gimbal device supports rotating around roll axis.
*/
'HAS_ROLL_AXIS' = 4,
/**
* Gimbal device supports to follow a roll angle relative to the vehicle.
*/
'HAS_ROLL_FOLLOW' = 8,
/**
* Gimbal device supports locking to a roll angle (generally that's the default with roll stabilized).
*/
'HAS_ROLL_LOCK' = 16,
/**
* Gimbal device supports rotating around pitch axis.
*/
'HAS_PITCH_AXIS' = 32,
/**
* Gimbal device supports to follow a pitch angle relative to the vehicle.
*/
'HAS_PITCH_FOLLOW' = 64,
/**
* Gimbal device supports locking to a pitch angle (generally that's the default with pitch
* stabilized).
*/
'HAS_PITCH_LOCK' = 128,
/**
* Gimbal device supports rotating around yaw axis.
*/
'HAS_YAW_AXIS' = 256,
/**
* Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default).
*/
'HAS_YAW_FOLLOW' = 512,
/**
* Gimbal device supports locking to an absolute heading, i.e., yaw angle relative to North (earth
* frame, often this is an option available).
*/
'HAS_YAW_LOCK' = 1024,
/**
* Gimbal device supports yawing/panning infinitely (e.g. using slip disk).
*/
'SUPPORTS_INFINITE_YAW' = 2048,
/**
* Gimbal device supports yaw angles and angular velocities relative to North (earth frame). This
* usually requires support by an autopilot via AUTOPILOT_STATE_FOR_GIMBAL_DEVICE. Support can go on
* and off during runtime, which is reported by the flag
* GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_IN_EARTH_FRAME.
*/
'SUPPORTS_YAW_IN_EARTH_FRAME' = 4096,
/**
* Gimbal device supports radio control inputs as an alternative input for controlling the gimbal
* orientation.
*/
'HAS_RC_INPUTS' = 8192
}
/**
* Gimbal manager high level capability flags (bitmap). The first 16 bits are identical to the
* GIMBAL_DEVICE_CAP_FLAGS. However, the gimbal manager does not need to copy the flags from the gimbal
* but can also enhance the capabilities and thus add flags.
*/
export declare enum GimbalManagerCapFlags {
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT.
*/
'HAS_RETRACT' = 1,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL.
*/
'HAS_NEUTRAL' = 2,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS.
*/
'HAS_ROLL_AXIS' = 4,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW.
*/
'HAS_ROLL_FOLLOW' = 8,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK.
*/
'HAS_ROLL_LOCK' = 16,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS.
*/
'HAS_PITCH_AXIS' = 32,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW.
*/
'HAS_PITCH_FOLLOW' = 64,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK.
*/
'HAS_PITCH_LOCK' = 128,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS.
*/
'HAS_YAW_AXIS' = 256,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW.
*/
'HAS_YAW_FOLLOW' = 512,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK.
*/
'HAS_YAW_LOCK' = 1024,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_INFINITE_YAW.
*/
'SUPPORTS_INFINITE_YAW' = 2048,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_SUPPORTS_YAW_IN_EARTH_FRAME.
*/
'SUPPORTS_YAW_IN_EARTH_FRAME' = 4096,
/**
* Based on GIMBAL_DEVICE_CAP_FLAGS_HAS_RC_INPUTS.
*/
'HAS_RC_INPUTS' = 8192,
/**
* Gimbal manager supports to point to a local position.
*/
'CAN_POINT_LOCATION_LOCAL' = 65536,
/**
* Gimbal manager supports to point to a global latitude, longitude, altitude position.
*/
'CAN_POINT_LOCATION_GLOBAL' = 131072
}
/**
* Flags for gimbal device (lower level) operation.
*/
export declare enum GimbalDeviceFlags {
/**
* Set to retracted safe position (no stabilization), takes precedence over all other flags.
*/
'RETRACT' = 1,
/**
* Set to neutral/default position, taking precedence over all other flags except RETRACT. Neutral is
* commonly forward-facing and horizontal (roll=pitch=yaw=0) but may be any orientation.
*/
'NEUTRAL' = 2,
/**
* Lock roll angle to absolute angle relative to horizon (not relative to vehicle). This is generally
* the default with a stabilizing gimbal.
*/
'ROLL_LOCK' = 4,
/**
* Lock pitch angle to absolute angle relative to horizon (not relative to vehicle). This is generally
* the default with a stabilizing gimbal.
*/
'PITCH_LOCK' = 8,
/**
* Lock yaw angle to absolute angle relative to North (not relative to vehicle). If this flag is set,
* the yaw angle and z component of angular velocity are relative to North (earth frame, x-axis
* pointing North), else they are relative to the vehicle heading (vehicle frame, earth frame rotated
* so that the x-axis is pointing forward).
*/
'YAW_LOCK' = 16,
/**
* Yaw angle and z component of angular velocity are relative to the vehicle heading (vehicle frame,
* earth frame rotated such that the x-axis is pointing forward).
*/
'YAW_IN_VEHICLE_FRAME' = 32,
/**
* Yaw angle and z component of angular velocity are relative to North (earth frame, x-axis is pointing
* North).
*/
'YAW_IN_EARTH_FRAME' = 64,
/**
* Gimbal device can accept yaw angle inputs relative to North (earth frame). This flag is only for
* reporting (attempts to set this flag are ignored).
*/
'ACCEPTS_YAW_IN_EARTH_FRAME' = 128,
/**
* The gimbal orientation is set exclusively by the RC signals feed to the gimbal's radio control
* inputs. MAVLink messages for setting the gimbal orientation (GIMBAL_DEVICE_SET_ATTITUDE) are
* ignored.
*/
'RC_EXCLUSIVE' = 256,
/**
* The gimbal orientation is determined by combining/mixing the RC signals feed to the gimbal's radio
* control inputs and the MAVLink messages for setting the gimbal orientation
* (GIMBAL_DEVICE_SET_ATTITUDE). How these two controls are combined or mixed is not defined by the
* protocol but is up to the implementation.
*/
'RC_MIXED' = 512
}
/**
* Flags for high level gimbal manager operation The first 16 bits are identical to the
* GIMBAL_DEVICE_FLAGS.
*/
export declare enum GimbalManagerFlags {
/**
* Based on GIMBAL_DEVICE_FLAGS_RETRACT.
*/
'RETRACT' = 1,
/**
* Based on GIMBAL_DEVICE_FLAGS_NEUTRAL.
*/
'NEUTRAL' = 2,
/**
* Based on GIMBAL_DEVICE_FLAGS_ROLL_LOCK.
*/
'ROLL_LOCK' = 4,
/**
* Based on GIMBAL_DEVICE_FLAGS_PITCH_LOCK.
*/
'PITCH_LOCK' = 8,
/**
* Based on GIMBAL_DEVICE_FLAGS_YAW_LOCK.
*/
'YAW_LOCK' = 16,
/**
* Based on GIMBAL_DEVICE_FLAGS_YAW_IN_VEHICLE_FRAME.
*/
'YAW_IN_VEHICLE_FRAME' = 32,
/**
* Based on GIMBAL_DEVICE_FLAGS_YAW_IN_EARTH_FRAME.
*/
'YAW_IN_EARTH_FRAME' = 64,
/**
* Based on GIMBAL_DEVICE_FLAGS_ACCEPTS_YAW_IN_EARTH_FRAME.
*/
'ACCEPTS_YAW_IN_EARTH_FRAME' = 128,
/**
* Based on GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE.
*/
'RC_EXCLUSIVE' = 256,
/**
* Based on GIMBAL_DEVICE_FLAGS_RC_MIXED.
*/
'RC_MIXED' = 512
}
/**
* Gimbal device (low level) error flags (bitmap, 0 means no error)
*/
export declare enum GimbalDeviceErrorFlags {
/**
* Gimbal device is limited by hardware roll limit.
*/
'AT_ROLL_LIMIT' = 1,
/**
* Gimbal device is limited by hardware pitch limit.
*/
'AT_PITCH_LIMIT' = 2,
/**
* Gimbal device is limited by hardware yaw limit.
*/
'AT_YAW_LIMIT' = 4,
/**
* There is an error with the gimbal encoders.
*/
'ENCODER_ERROR' = 8,
/**
* There is an error with the gimbal power source.
*/
'POWER_ERROR' = 16,
/**
* There is an error with the gimbal motors.
*/
'MOTOR_ERROR' = 32,
/**
* There is an error with the gimbal's software.
*/
'SOFTWARE_ERROR' = 64,
/**
* There is an error with the gimbal's communication.
*/
'COMMS_ERROR' = 128,
/**
* Gimbal device is currently calibrating.
*/
'CALIBRATION_RUNNING' = 256,
/**
* Gimbal device is not assigned to a gimbal manager.
*/
'NO_MANAGER' = 512
}
/**
* Gripper actions.
*/
export declare enum GripperActions {
/**
* Gripper release cargo.
*/
'RELEASE' = 0,
/**
* Gripper grab onto cargo.
*/
'GRAB' = 1
}
/**
* Winch actions.
*/
export declare enum WinchActions {
/**
* Allow motor to freewheel.
*/
'RELAXED' = 0,
/**
* Wind or unwind specified length of line, optionally using specified rate.
*/
'RELATIVE_LENGTH_CONTROL' = 1,
/**
* Wind or unwind line at specified rate.
*/
'RATE_CONTROL' = 2,
/**
* Perform the locking sequence to relieve motor while in the fully retracted position. Only action and
* instance command parameters are used, others are ignored.
*/
'LOCK' = 3,
/**
* Sequence of drop, slow down, touch down, reel up, lock. Only action and instance command parameters
* are used, others are ignored.
*/
'DELIVER' = 4,
/**
* Engage motor and hold current position. Only action and instance command parameters are used, others
* are ignored.
*/
'HOLD' = 5,
/**
* Return the reel to the fully retracted position. Only action and instance command parameters are
* used, others are ignored.
*/
'RETRACT' = 6,
/**
* Load the reel with line. The winch will calculate the total loaded length and stop when the tension
* exceeds a threshold. Only action and instance command parameters are used, others are ignored.
*/
'LOAD_LINE' = 7,
/**
* Spool out the entire length of the line. Only action and instance command parameters are used,
* others are ignored.
*/
'ABANDON_LINE' = 8,
/**
* Spools out just enough to present the hook to the user to load the payload. Only action and instance
* command parameters are used, others are ignored
*/
'LOAD_PAYLOAD' = 9
}
/**
* Generalized UAVCAN node health
*/
export declare enum UavcanNodeHealth {
/**
* The node is functioning properly.
*/
'OK' = 0,
/**
* A critical parameter went out of range or the node has encountered a minor failure.
*/
'WARNING' = 1,
/**
* The node has encountered a major failure.
*/
'ERROR' = 2,
/**
* The node has suffered a fatal malfunction.
*/
'CRITICAL' = 3
}
/**
* Generalized UAVCAN node mode
*/
export declare enum UavcanNodeMode {
/**
* The node is performing its primary functions.
*/
'OPERATIONAL' = 0,
/**
* The node is initializing; this mode is entered immediately after startup.
*/
'INITIALIZATION' = 1,
/**
* The node is under maintenance.
*/
'MAINTENANCE' = 2,
/**
* The node is in the process of updating its software.
*/
'SOFTWARE_UPDATE' = 3,
/**
* The node is no longer available online.
*/
'OFFLINE' = 7
}
/**
* Indicates the ESC connection type.
*/
export declare enum EscConnectionType {
/**
* Traditional PPM ESC.
*/
'PPM' = 0,
/**
* Serial Bus connected ESC.
*/
'SERIAL' = 1,
/**
* One Shot PPM ESC.
*/
'ONESHOT' = 2,
/**
* I2C ESC.
*/
'I2C' = 3,
/**
* CAN-Bus ESC.
*/
'CAN' = 4,
/**
* DShot ESC.
*/
'DSHOT' = 5
}
/**
* Flags to report ESC failures.
*/
export declare enum EscFailureFlags {
/**
* No ESC failure.
*/
'NONE' = 0,
/**
* Over current failure.
*/
'OVER_CURRENT' = 1,
/**
* Over voltage failure.
*/
'OVER_VOLTAGE' = 2,
/**
* Over temperature failure.
*/
'OVER_TEMPERATURE' = 4,
/**
* Over RPM failure.
*/
'OVER_RPM' = 8,
/**
* Inconsistent command failure i.e. out of bounds.
*/
'INCONSISTENT_CMD' = 16,
/**
* Motor stuck failure.
*/
'MOTOR_STUCK' = 32,
/**
* Generic ESC failure.
*/
'GENERIC' = 64
}
/**
* Flags to indicate the status of camera storage.
*/
export declare enum StorageStatus {
/**
* Storage is missing (no microSD card loaded for example.)
*/
'EMPTY' = 0,
/**
* Storage present but unformatted.
*/
'UNFORMATTED' = 1,
/**
* Storage present and ready.
*/
'READY' = 2,
/**
* Camera does not supply storage status information. Capacity information in STORAGE_INFORMATION
* fields will be ignored.
*/
'NOT_SUPPORTED' = 3
}
/**
* Flags to indicate the type of storage.
*/
export declare enum StorageType {
/**
* Storage type is not known.
*/
'UNKNOWN' = 0,
/**
* Storage type is USB device.
*/
'USB_STICK' = 1,
/**
* Storage type is SD card.
*/
'SD' = 2,
/**
* Storage type is microSD card.
*/
'MICROSD' = 3,
/**
* Storage type is CFast.
*/
'CF' = 4,
/**
* Storage type is CFexpress.
*/
'CFE' = 5,
/**
* Storage type is XQD.
*/
'XQD' = 6,
/**
* Storage type is HD mass storage type.
*/
'HD' = 7,
/**
* Storage type is other, not listed type.
*/
'OTHER' = 254
}
/**
* Flags to indicate usage for a particular storage (see STORAGE_INFORMATION.storage_usage and
* MAV_CMD_SET_STORAGE_USAGE).
*/
export declare enum StorageUsageFlag {
/**
* Always set to 1 (indicates STORAGE_INFORMATION.storage_usage is supported).
*/
'SET' = 1,
/**
* Storage for saving photos.
*/
'PHOTO' = 2,
/**
* Storage for saving videos.
*/
'VIDEO' = 4,
/**
* Storage for saving logs.
*/
'LOGS' = 8
}
/**
* Yaw behaviour during orbit flight.
*/
export declare enum OrbitYawBehaviour {
/**
* Vehicle front points to the center (default).
*/
'HOLD_FRONT_TO_CIRCLE_CENTER' = 0,
/**
* Vehicle front holds heading when message received.
*/
'HOLD_INITIAL_HEADING' = 1,
/**
* Yaw uncontrolled.
*/
'UNCONTROLLED' = 2,
/**
* Vehicle front follows flight path (tangential to circle).
*/
'HOLD_FRONT_TANGENT_TO_CIRCLE' = 3,
/**
* Yaw controlled by RC input.
*/
'RC_CONTROLLED' = 4
}
/**
* Possible responses from a WIFI_CONFIG_AP message.
*/
export declare enum WifiConfigApResponse {
/**
* Undefined response. Likely an indicative of a system that doesn't support this request.
*/
'UNDEFINED' = 0,
/**
* Changes accepted.
*/
'ACCEPTED' = 1,
/**
* Changes rejected.
*/
'REJECTED' = 2,
/**
* Invalid Mode.
*/
'MODE_ERROR' = 3,
/**
* Invalid SSID.
*/
'SSID_ERROR' = 4,
/**
* Invalid Password.
*/
'PASSWORD_ERROR' = 5
}
/**
* Possible responses from a CELLULAR_CONFIG message.
*/
export declare enum CellularConfigResponse {
/**
* Changes accepted.
*/
'RESPONSE_ACCEPTED' = 0,
/**
* Invalid APN.
*/
'RESPONSE_APN_ERROR' = 1,
/**
* Invalid PIN.
*/
'RESPONSE_PIN_ERROR' = 2,
/**
* Changes rejected.
*/
'RESPONSE_REJECTED' = 3,
/**
* PUK is required to unblock SIM card.
*/
'BLOCKED_PUK_REQUIRED' = 4
}
/**
* WiFi Mode.
*/
export declare enum WifiConfigApMode {
/**
* WiFi mode is undefined.
*/
'UNDEFINED' = 0,
/**
* WiFi configured as an access point.
*/
'AP' = 1,
/**
* WiFi configured as a station connected to an existing local WiFi network.
*/
'STATION' = 2,
/**
* WiFi disabled.
*/
'DISABLED' = 3
}
/**
* Supported component metadata types. These are used in the "general" metadata file returned by
* COMPONENT_METADATA to provide information about supported metadata types. The types are not used
* directly in MAVLink messages.
*/
export declare enum CompMetadataType {
/**
* General information about the component. General metadata includes information about other metadata
* types supported by the component. Files of this type must be supported, and must be downloadable
* from vehicle using a MAVLink FTP URI.
*/
'GENERAL' = 0,
/**
* Parameter meta data.
*/
'PARAMETER' = 1,
/**
* Meta data that specifies which commands and command parameters the vehicle supports. (WIP)
*/
'COMMANDS' = 2,
/**
* Meta data that specifies external non-MAVLink peripherals.
*/
'PERIPHERALS' = 3,
/**
* Meta data for the events interface.
*/
'EVENTS' = 4,
/**
* Meta data for actuator configuration (motors, servos and vehicle geometry) and testing.
*/
'ACTUATORS' = 5
}
/**
* Actuator configuration, used to change a setting on an actuator. Component information metadata can
* be used to know which outputs support which commands.
*/
export declare enum ActuatorConfiguration {
/**
* Do nothing.
*/
'NONE' = 0,
/**
* Command the actuator to beep now.
*/
'BEEP' = 1,
/**
* Permanently set the actuator (ESC) to 3D mode (reversible thrust).
*/
'ACTUATOR_CONFIGURATION_3D_MODE_ON' = 2,
/**
* Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust).
*/
'ACTUATOR_CONFIGURATION_3D_MODE_OFF' = 3,
/**
* Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or
* counter-clockwise).
*/
'SPIN_DIRECTION1' = 4,
/**
* Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1).
*/
'SPIN_DIRECTION2' = 5
}
/**
* Actuator output function. Values greater or equal to 1000 are autopilot-specific.
*/
export declare enum ActuatorOutputFunction {
/**
* No function (disabled).
*/
'NONE' = 0,
/**
* Motor 1
*/
'MOTOR1' = 1,
/**
* Motor 2
*/
'MOTOR2' = 2,
/**
* Motor 3
*/
'MOTOR3' = 3,
/**
* Motor 4
*/
'MOTOR4' = 4,
/**
* Motor 5
*/
'MOTOR5' = 5,
/**
* Motor 6
*/
'MOTOR6' = 6,
/**
* Motor 7
*/
'MOTOR7' = 7,
/**
* Motor 8
*/
'MOTOR8' = 8,
/**
* Motor 9
*/
'MOTOR9' = 9,
/**
* Motor 10
*/
'MOTOR10' = 10,
/**
* Motor 11
*/
'MOTOR11' = 11,
/**
* Motor 12
*/
'MOTOR12' = 12,
/**
* Motor 13
*/
'MOTOR13' = 13,
/**
* Motor 14
*/
'MOTOR14' = 14,
/**
* Motor 15
*/
'MOTOR15' = 15,
/**
* Motor 16
*/
'MOTOR16' = 16,
/**
* Servo 1
*/
'SERVO1' = 33,
/**
* Servo 2
*/
'SERVO2' = 34,
/**
* Servo 3
*/
'SERVO3' = 35,
/**
* Servo 4
*/
'SERVO4' = 36,
/**
* Servo 5
*/
'SERVO5' = 37,
/**
* Servo 6
*/
'SERVO6' = 38,
/**
* Servo 7
*/
'SERVO7' = 39,
/**
* Servo 8
*/
'SERVO8' = 40,
/**
* Servo 9
*/
'SERVO9' = 41,
/**
* Servo 10
*/
'SERVO10' = 42,
/**
* Servo 11
*/
'SERVO11' = 43,
/**
* Servo 12
*/
'SERVO12' = 44,
/**
* Servo 13
*/
'SERVO13' = 45,
/**
* Servo 14
*/
'SERVO14' = 46,
/**
* Servo 15
*/
'SERVO15' = 47,
/**
* Servo 16
*/
'SERVO16' = 48
}
/**
* Enable axes that will be tuned via autotuning. Used in MAV_CMD_DO_AUTOTUNE_ENABLE.
*/
export declare enum AutotuneAxis {
/**
* Flight stack tunes axis according to its default settings.
*/
'DEFAULT' = 0,
/**
* Autotune roll axis.
*/
'ROLL' = 1,
/**
* Autotune pitch axis.
*/
'PITCH' = 2,
/**
* Autotune yaw axis.
*/
'YAW' = 4
}
/**
* Actions for reading/writing parameters between persistent and volatile storage when using
* MAV_CMD_PREFLIGHT_STORAGE. (Commonly parameters are loaded from persistent storage (flash/EEPROM)
* into volatile storage (RAM) on startup and written back when they are changed.)
*/
export declare enum PreflightStorageParameterAction {
/**
* Read all parameters from persistent storage. Replaces values in volatile storage.
*/
'READ_PERSISTENT' = 0,
/**
* Write all parameter values to persistent storage (flash/EEPROM)
*/
'WRITE_PERSISTENT' = 1,
/**
* Reset all user configurable parameters to their default value (including airframe selection, sensor
* calibration data, safety settings, and so on). Does not reset values that contain operation counters
* and vehicle computed statistics.
*/
'RESET_CONFIG_DEFAULT' = 2,
/**
* Reset only sensor calibration parameters to factory defaults (or firmware default if not available)
*/
'RESET_SENSOR_DEFAULT' = 3,
/**
* Reset all parameters, including operation counters, to default values
*/
'RESET_ALL_DEFAULT' = 4
}
/**
* Actions for reading and writing plan information (mission, rally points, geofence) between
* persistent and volatile storage when using MAV_CMD_PREFLIGHT_STORAGE. (Commonly missions are loaded
* from persistent storage (flash/EEPROM) into volatile storage (RAM) on startup and written back when
* they are changed.)
*/
export declare enum PreflightStorageMissionAction {
/**
* Read current mission data from persistent storage
*/
'READ_PERSISTENT' = 0,
/**
* Write current mission data to persistent storage
*/
'WRITE_PERSISTENT' = 1,
/**
* Erase all mission data stored on the vehicle (both persistent and volatile storage)
*/
'RESET_DEFAULT' = 2
}
/**
* Commands to be executed by the MAV. They can be executed on user request, or as part of a mission
* script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is
* as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list
* is similar what ARINC 424 is for commercial aircraft: A data format how to interpret
* waypoint/mission data. NaN and INT32_MAX may be used in float/integer params (respectively) to
* indicate optional/default values (e.g. to use the component's current yaw or latitude rather than a
* specific value). See https://mavlink.io/en/guide/xml_schema.html#MAV_CMD for information about the
* structure of the MAV_CMD entries
*/
export declare enum MavCmd {
/**
* Navigate to waypoint. This is intended for use in missions (for guided commands outside of missions
* use MAV_CMD_DO_REPOSITION).
*
* @note has location and is destination
*
* @param1 Hold[s] (min: 0) Hold time. (ignored by fixed wing, time to stay at waypoint for rotary wing)
* @param2 Accept Radius[m] (min: 0) Acceptance radius (if the sphere with this radius is hit, the waypoint counts as reached)
* @param3 Pass Radius[m] 0 to pass through the WP, if > 0 radius to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control.
* @param4 Yaw[deg] Desired yaw angle at waypoint (rotary wing). NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.).
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_WAYPOINT' = 16,
/**
* Loiter around this waypoint an unlimited amount of time
*
* @note has location and is destination
*
* @param1 Empty
* @param2 Empty
* @param3 Radius[m] Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise
* @param4 Yaw[deg] Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.).
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_LOITER_UNLIM' = 17,
/**
* Loiter around this waypoint for X turns
*
* @note has location and is destination
*
* @param1 Turns (min: 0) Number of turns.
* @param2 Heading Required (min: 0, max: 1, increment: 1) Leave loiter circle only once heading towards the next waypoint (0 = False)
* @param3 Radius[m] Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise
* @param4 Xtrack Location Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. Otherwise the angle (in degrees) between the tangent of the loiter circle and the center xtrack at which the vehicle must leave the loiter (and converge to the center xtrack). NaN to use the current system default xtrack behaviour.
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_LOITER_TURNS' = 18,
/**
* Loiter at the specified latitude, longitude and altitude for a certain amount of time. Multicopter
* vehicles stop at the point (within a vehicle-specific acceptance radius). Forward-only moving
* vehicles (e.g. fixed-wing) circle the point with the specified radius/direction. If the Heading
* Required parameter (2) is non-zero forward moving aircraft will only leave the loiter circle once
* heading towards the next waypoint.
*
* @note has location and is destination
*
* @param1 Time[s] (min: 0) Loiter time (only starts once Lat, Lon and Alt is reached).
* @param2 Heading Required (min: 0, max: 1, increment: 1) Leave loiter circle only once heading towards the next waypoint (0 = False)
* @param3 Radius[m] Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, else counter-clockwise.
* @param4 Xtrack Location Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. Otherwise the angle (in degrees) between the tangent of the loiter circle and the center xtrack at which the vehicle must leave the loiter (and converge to the center xtrack). NaN to use the current system default xtrack behaviour.
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_LOITER_TIME' = 19,
/**
* Return to launch location
* @param1 Empty
* @param2 Empty
* @param3 Empty
* @param4 Empty
* @param5 Empty
* @param6 Empty
* @param7 Empty
*/
'NAV_RETURN_TO_LAUNCH' = 20,
/**
* Land at location.
*
* @note has location and is destination
*
* @param1 Abort Alt[m] Minimum target altitude if landing is aborted (0 = undefined/use system default).
* @param2 Land Mode Precision land mode.
* @param3 Empty.
* @param4 Yaw Angle[deg] Desired yaw angle. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.).
* @param5 Latitude Latitude.
* @param6 Longitude Longitude.
* @param7 Altitude[m] Landing altitude (ground level in current frame).
*/
'NAV_LAND' = 21,
/**
* Takeoff from ground / hand. Vehicles that support multiple takeoff modes (e.g. VTOL quadplane)
* should take off using the currently configured mode.
*
* @note has location and is destination
*
* @param1 Pitch[deg] Minimum pitch (if airspeed sensor present), desired pitch without sensor
* @param2 Empty
* @param3 Empty
* @param4 Yaw[deg] Yaw angle (if magnetometer present), ignored without magnetometer. NaN to use the current system yaw heading mode (e.g. yaw towards next waypoint, yaw to home, etc.).
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_TAKEOFF' = 22,
/**
* Land at local position (local frame only)
*
* @note has location and is destination
*
* @param1 Target (min: 0, increment: 1) Landing target number (if available)
* @param2 Offset[m] (min: 0) Maximum accepted offset from desired landing position - computed magnitude from spherical coordinates: d = sqrt(x^2 + y^2 + z^2), which gives the maximum accepted distance between the desired landing position and the position where the vehicle is about to land
* @param3 Descend Rate[m/s] Landing descend rate
* @param4 Yaw[rad] Desired yaw angle
* @param5 Y Position[m] Y-axis position
* @param6 X Position[m] X-axis position
* @param7 Z Position[m] Z-axis / ground level position
*/
'NAV_LAND_LOCAL' = 23,
/**
* Takeoff from local position (local frame only)
*
* @note has location and is destination
*
* @param1 Pitch[rad] Minimum pitch (if airspeed sensor present), desired pitch without sensor
* @param2 Empty
* @param3 Ascend Rate[m/s] Takeoff ascend rate
* @param4 Yaw[rad] Yaw angle (if magnetometer or another yaw estimation source present), ignored without one of these
* @param5 Y Position[m] Y-axis position
* @param6 X Position[m] X-axis position
* @param7 Z Position[m] Z-axis position
*/
'NAV_TAKEOFF_LOCAL' = 24,
/**
* Vehicle following, i.e. this waypoint represents the position of a moving vehicle
*
* @note has location
*
* @param1 Following (increment: 1) Following logic to use (e.g. loitering or sinusoidal following) - depends on specific autopilot implementation
* @param2 Ground Speed[m/s] Ground speed of vehicle to be followed
* @param3 Radius[m] Radius around waypoint. If positive loiter clockwise, else counter-clockwise
* @param4 Yaw[deg] Desired yaw angle.
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_FOLLOW' = 25,
/**
* Continue on the current course and climb/descend to specified altitude. When the altitude is reached
* continue to the next command (i.e., don't proceed to the next command until the desired altitude is
* reached.
*
* @note is destination
*
* @param1 Action (min: 0, max: 2, increment: 1) Climb or Descend (0 = Neutral, command completes when within 5m of this command's altitude, 1 = Climbing, command completes when at or above this command's altitude, 2 = Descending, command completes when at or below this command's altitude.
* @param2 Empty
* @param3 Empty
* @param4 Empty
* @param5 Empty
* @param6 Empty
* @param7 Altitude[m] Desired altitude
*/
'NAV_CONTINUE_AND_CHANGE_ALT' = 30,
/**
* Begin loiter at the specified Latitude and Longitude. If Lat=Lon=0, then loiter at the current
* position. Don't consider the navigation command complete (don't leave loiter) until the altitude has
* been reached. Additionally, if the Heading Required parameter is non-zero the aircraft will not
* leave the loiter until heading toward the next waypoint.
*
* @note has location and is destination
*
* @param1 Heading Required (min: 0, max: 1, increment: 1) Leave loiter circle only once heading towards the next waypoint (0 = False)
* @param2 Radius[m] Loiter radius around waypoint for forward-only moving vehicles (not multicopters). If positive loiter clockwise, negative counter-clockwise, 0 means no change to standard loiter.
* @param3 Empty
* @param4 Xtrack Location (min: 0, max: 1, increment: 1) Loiter circle exit location and/or path to next waypoint ("xtrack") for forward-only moving vehicles (not multicopters). 0 for the vehicle to converge towards the center xtrack when it leaves the loiter (the line between the centers of the current and next waypoint), 1 to converge to the direct line between the location that the vehicle exits the loiter radius and the next waypoint. Otherwise the angle (in degrees) between the tangent of the loiter circle and the center xtrack at which the vehicle must leave the loiter (and converge to the center xtrack). NaN to use the current system default xtrack behaviour.
* @param5 Latitude Latitude
* @param6 Longitude Longitude
* @param7 Altitude[m] Altitude
*/
'NAV_LOITER_TO_ALT' = 31,
/**
* Begin following a target
* @param1 System ID (min: 0, max: 255, increment: 1) System ID (of the FOLLOW