MAVLink Include Files: ardupilotmega.xml

## MAVLink Protocol Version

The current MAVLink version is 2.1. The minor version numbers (after the dot) range from 1-255.

This file has protocol dialect: 0.

## MAVLink Type Enumerations

### MAV_STORM32_TUNNEL_PAYLOAD_TYPE

[Enum]

Value | Field Name | Description
--- | --- | ---
200 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_IN | Registered for STorM32 gimbal controller.
201 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH1_OUT | Registered for STorM32 gimbal controller.
202 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_IN | Registered for STorM32 gimbal controller.
203 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH2_OUT | Registered for STorM32 gimbal controller.
204 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_IN | Registered for STorM32 gimbal controller.
205 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_CH3_OUT | Registered for STorM32 gimbal controller.
206 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED6 | Registered for STorM32 gimbal controller.
207 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED7 | Registered for STorM32 gimbal controller.
208 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED8 | Registered for STorM32 gimbal controller.
209 | MAV_STORM32_TUNNEL_PAYLOAD_TYPE_STORM32_RESERVED9 | Registered for STorM32 gimbal controller.

### MAV_STORM32_GIMBAL_PREARM_FLAGS

[Enum] STorM32 gimbal prearm check flags.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_PREARM_FLAGS_IS_NORMAL | STorM32 gimbal is in normal state.
2 | MAV_STORM32_GIMBAL_PREARM_FLAGS_IMUS_WORKING | The IMUs are healthy and working normally.
4 | MAV_STORM32_GIMBAL_PREARM_FLAGS_MOTORS_WORKING | The motors are active and working normally.
8 | MAV_STORM32_GIMBAL_PREARM_FLAGS_ENCODERS_WORKING | The encoders are healthy and working normally.
16 | MAV_STORM32_GIMBAL_PREARM_FLAGS_VOLTAGE_OK | A battery voltage is applied and is in range.
32 | MAV_STORM32_GIMBAL_PREARM_FLAGS_VIRTUALCHANNELS_RECEIVING | ???.
64 | MAV_STORM32_GIMBAL_PREARM_FLAGS_MAVLINK_RECEIVING | Mavlink messages are being received.
128 | MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_QFIX | The STorM32Link data indicates QFix.
256 | MAV_STORM32_GIMBAL_PREARM_FLAGS_STORM32LINK_WORKING | The STorM32Link is working.
512 | MAV_STORM32_GIMBAL_PREARM_FLAGS_CAMERA_CONNECTED | The camera has been found and is connected.
1024 | MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX0_LOW | The signal on the AUX0 input pin is low.
2048 | MAV_STORM32_GIMBAL_PREARM_FLAGS_AUX1_LOW | The signal on the AUX1 input pin is low.
4096 | MAV_STORM32_GIMBAL_PREARM_FLAGS_NTLOGGER_WORKING | The NTLogger is working normally.

### MAV_STORM32_CAMERA_PREARM_FLAGS

[Enum] STorM32 camera prearm check flags.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_CAMERA_PREARM_FLAGS_CONNECTED | The camera has been found and is connected.

### MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS

[Enum] Gimbal device capability flags.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RETRACT | Gimbal device supports a retracted position.
2 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_NEUTRAL | Gimbal device supports a horizontal, forward looking position, stabilized. Can also be used to reset the gimbal's orientation.
4 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_AXIS | Gimbal device supports rotating around roll axis.
8 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_FOLLOW | Gimbal device supports to follow a roll angle relative to the vehicle.
16 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ROLL_LOCK | Gimbal device supports locking to an roll angle (generally that's the default).
32 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_AXIS | Gimbal device supports rotating around pitch axis.
64 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_FOLLOW | Gimbal device supports to follow a pitch angle relative to the vehicle.
128 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_PITCH_LOCK | Gimbal device supports locking to an pitch angle (generally that's the default).
256 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_AXIS | Gimbal device supports rotating around yaw axis.
512 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_FOLLOW | Gimbal device supports to follow a yaw angle relative to the vehicle (generally that's the default).
1024 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_YAW_LOCK | Gimbal device supports locking to a heading angle.
2048 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_INFINITE_YAW | Gimbal device supports yawing/panning infinitely (e.g. using a slip ring).
65536 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_ABSOLUTE_YAW | Gimbal device supports absolute yaw angles (this usually requires support by an autopilot, and can be dynamic, i.e., go on and off during runtime).
131072 | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS_HAS_RC | Gimbal device supports control via an RC input signal.

### MAV_STORM32_GIMBAL_DEVICE_FLAGS

[Enum] Flags for gimbal device operation. Used for setting and reporting, unless specified otherwise. Settings which are in violation of the capability flags are ignored by the gimbal device.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_RETRACT | Retracted safe position (no stabilization), takes presedence over NEUTRAL flag. If supported by the gimbal, the angles in the retracted position can be set in addition.
2 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_NEUTRAL | Neutral position (horizontal, forward looking, with stabiliziation).
4 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_ROLL_LOCK | Lock roll angle to absolute angle relative to horizon (not relative to drone). This is generally the default.
8 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_PITCH_LOCK | Lock pitch angle to absolute angle relative to horizon (not relative to drone). This is generally the default.
16 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_LOCK | Lock yaw angle to absolute angle relative to earth (not relative to drone). When the YAW_ABSOLUTE flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle).
256 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_CAN_ACCEPT_YAW_ABSOLUTE | Gimbal device can accept absolute yaw angle input. This flag cannot be set, is only for reporting (attempts to set it are rejected by the gimbal device).
512 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE | Yaw angle is absolute (is only accepted if CAN_ACCEPT_YAW_ABSOLUTE is set). If this flag is set, the quaternion is in the Earth frame with the x-axis pointing North (yaw absolute), else it is in the Earth frame rotated so that the x-axis is pointing forward (yaw relative to vehicle).
1024 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_EXCLUSIVE | RC control. The RC input signal fed to the gimbal device exclusively controls the gimbal's orientation. Overrides RC_MIXED flag if that is also set.
2048 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_RC_MIXED | RC control. The RC input signal fed to the gimbal device is mixed into the gimbal's orientation. Is overriden by RC_EXCLUSIVE flag if that is also set.
65535 | MAV_STORM32_GIMBAL_DEVICE_FLAGS_NONE | UINT16_MAX = ignore.

### MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS

[Enum] Gimbal device error and condition flags (0 means no error or other condition).

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_ROLL_LIMIT | Gimbal device is limited by hardware roll limit.
2 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_PITCH_LIMIT | Gimbal device is limited by hardware pitch limit.
4 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_AT_YAW_LIMIT | Gimbal device is limited by hardware yaw limit.
8 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_ENCODER_ERROR | There is an error with the gimbal device's encoders.
16 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_POWER_ERROR | There is an error with the gimbal device's power source.
32 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_MOTOR_ERROR | There is an error with the gimbal device's motors.
64 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_SOFTWARE_ERROR | There is an error with the gimbal device's software.
128 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_COMMS_ERROR | There is an error with the gimbal device's communication.
256 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_CALIBRATION_RUNNING | Gimbal device is currently calibrating (not an error).
32768 | MAV_STORM32_GIMBAL_DEVICE_ERROR_FLAGS_NO_MANAGER | Gimbal device is not assigned to a gimbal manager (not an error).

### MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS

[Enum] Gimbal manager capability flags.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_HAS_PROFILES | The gimbal manager supports several profiles.
2 | MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS_SUPPORTS_CHANGE | The gimbal manager supports changing the gimbal manager during run time, i.e. can be enabled/disabled.

### MAV_STORM32_GIMBAL_MANAGER_FLAGS

[Enum] Flags for gimbal manager operation. Used for setting and reporting, unless specified otherwise. If a setting is accepted by the gimbal manger, is reported in the STORM32_GIMBAL_MANAGER_STATUS message.

Value | Field Name | Description
--- | --- | ---
0 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_NONE | 0 = ignore.
1 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_RC_ACTIVE | Request to set RC input to active, or report RC input is active. Implies RC mixed. RC exclusive is achieved by setting all clients to inactive.
2 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_ONBOARD_ACTIVE | Request to set onboard/companion computer client to active, or report this client is active.
4 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_AUTOPILOT_ACTIVE | Request to set autopliot client to active, or report this client is active.
8 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS_ACTIVE | Request to set GCS client to active, or report this client is active.
16 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA_ACTIVE | Request to set camera client to active, or report this client is active.
32 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_GCS2_ACTIVE | Request to set GCS2 client to active, or report this client is active.
64 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CAMERA2_ACTIVE | Request to set camera2 client to active, or report this client is active.
128 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM_ACTIVE | Request to set custom client to active, or report this client is active.
256 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_CLIENT_CUSTOM2_ACTIVE | Request to set custom2 client to active, or report this client is active.
512 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_SUPERVISON | Request supervision. This flag is only for setting, it is not reported.
1024 | MAV_STORM32_GIMBAL_MANAGER_FLAGS_SET_RELEASE | Release supervision. This flag is only for setting, it is not reported.

### MAV_STORM32_GIMBAL_MANAGER_CLIENT

[Enum] Gimbal manager client ID. In a prioritizing profile, the priorities are determined by the implementation; they could e.g. be custom1 > onboard > GCS > autopilot/camera > GCS2 > custom2.

Value | Field Name | Description
--- | --- | ---
0 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_NONE | For convenience.
1 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_ONBOARD | This is the onboard/companion computer client.
2 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_AUTOPILOT | This is the autopilot client.
3 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS | This is the GCS client.
4 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA | This is the camera client.
5 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_GCS2 | This is the GCS2 client.
6 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_CAMERA2 | This is the camera2 client.
7 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM | This is the custom client.
8 | MAV_STORM32_GIMBAL_MANAGER_CLIENT_CUSTOM2 | This is the custom2 client.

### MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS

[Enum] Flags for gimbal manager set up. Used for setting and reporting, unless specified otherwise.

Value | Field Name | Description
--- | --- | ---
16384 | MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_ENABLE | Enable gimbal manager. This flag is only for setting, is not reported.
32768 | MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS_DISABLE | Disable gimbal manager. This flag is only for setting, is not reported.

### MAV_STORM32_GIMBAL_MANAGER_PROFILE

[Enum] Gimbal manager profiles. Only standard profiles are defined. Any implementation can define it's own profile in addition, and should use enum values > 16.

Value | Field Name | Description
--- | --- | ---
0 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_DEFAULT | Default profile. Implementation specific.
1 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_CUSTOM | Custom profile. Configurable profile according to the STorM32 definition. Is configured with STORM32_GIMBAL_MANAGER_PROFIL.
2 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_COOPERATIVE | Default cooperative profile. Uses STorM32 custom profile with default settings to achieve cooperative behavior.
3 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_EXCLUSIVE | Default exclusive profile. Uses STorM32 custom profile with default settings to achieve exclusive behavior.
4 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_COOPERATIVE | Default priority profile with cooperative behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior.
5 | MAV_STORM32_GIMBAL_MANAGER_PROFILE_PRIORITY_EXCLUSIVE | Default priority profile with exclusive behavior for equal priority. Uses STorM32 custom profile with default settings to achieve priority-based behavior.

### MAV_STORM32_GIMBAL_ACTION

[Enum] Gimbal actions.

Value | Field Name | Description
--- | --- | ---
1 | MAV_STORM32_GIMBAL_ACTION_RECENTER | Trigger the gimbal device to recenter the gimbal.
2 | MAV_STORM32_GIMBAL_ACTION_CALIBRATION | Trigger the gimbal device to run a calibration.
3 | MAV_STORM32_GIMBAL_ACTION_DISCOVER_MANAGER | Trigger gimbal device to (re)discover the gimbal manager during run time.

### MAV_QSHOT_MODE

[Enum] Enumeration of possible shot modes.

Value | Field Name | Description
--- | --- | ---
0 | MAV_QSHOT_MODE_UNDEFINED | Undefined shot mode. Can be used to determine if qshots should be used or not.
1 | MAV_QSHOT_MODE_DEFAULT | Start normal gimbal operation. Is usally used to return back from a shot.
2 | MAV_QSHOT_MODE_GIMBAL_RETRACT | Load and keep safe gimbal position and stop stabilization.
3 | MAV_QSHOT_MODE_GIMBAL_NEUTRAL | Load neutral gimbal position and keep it while stabilizing.
4 | MAV_QSHOT_MODE_GIMBAL_MISSION | Start mission with gimbal control.
5 | MAV_QSHOT_MODE_GIMBAL_RC_CONTROL | Start RC gimbal control.
6 | MAV_QSHOT_MODE_POI_TARGETING | Start gimbal tracking the point specified by Lat, Lon, Alt.
7 | MAV_QSHOT_MODE_SYSID_TARGETING | Start gimbal tracking the system with specified system ID.
8 | MAV_QSHOT_MODE_CABLECAM_2POINT | Start 2-point cable cam quick shot.
9 | MAV_QSHOT_MODE_HOME_TARGETING | Start gimbal tracking the home location.

## MAVLink Commands (MAV_CMD)

> MAVLink commands (MAV_CMD) and messages are different! These commands define the values of up to 7 parameters that are packaged INSIDE specific messages used in the Mission Protocol and Command Protocol. Use commands for actions in missions or if you need acknowledgment and/or retry logic from a request. Otherwise use messages.

### MAV_CMD_STORM32_DO_GIMBAL_MANAGER_CONTROL_PITCHYAW (60002 )

[Command] Command to a gimbal manager to control the gimbal tilt and pan angles. It is possible to set combinations of the values below. E.g. an angle as well as a desired angular rate can be used to get to this angle at a certain angular rate, or an angular rate only will result in continuous turning. NaN is to be used to signal unset. A gimbal device is never to react to this command.

Param (:Label) | Description | Values | Units
--- | --- | --- | ---
1: Pitch angle | Pitch/tilt angle (positive: tilt up, NaN to be ignored). | min: -180 max:180 | deg
2: Yaw angle | Yaw/pan angle (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). | min: -180 max:180 | deg
3: Pitch rate | Pitch/tilt rate (positive: tilt up, NaN to be ignored). |  | deg/s
4: Yaw rate | Yaw/pan rate (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored). |  | deg/s
5: Gimbal device flags | Gimbal device flags. | MAV_STORM32_GIMBAL_DEVICE_FLAGS |
6: Gimbal manager flags | Gimbal manager flags. | MAV_STORM32_GIMBAL_MANAGER_FLAGS |
7: Gimbal ID and client ID | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals). The client is copied into bits 8-15. |  |

### MAV_CMD_STORM32_DO_GIMBAL_MANAGER_SETUP (60010 )

WORK IN PROGRESS: Do not use in stable production environments (it may change).

[Command] Command to configure a gimbal manager. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message.

Param (:Label) | Description | Values
--- | --- | ---
1: Profile | Gimbal manager profile (0 = default). | MAV_STORM32_GIMBAL_MANAGER_PROFILE
2: Setup flags | Gimbal manager setup flags (0 = none). | MAV_STORM32_GIMBAL_MANAGER_SETUP_FLAGS
7: Gimbal ID | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. |

### MAV_CMD_STORM32_DO_GIMBAL_ACTION (60011 )

WORK IN PROGRESS: Do not use in stable production environments (it may change).

[Command] Command to initiate gimbal actions. Usually performed by the gimbal device, but some can also be done by the gimbal manager. It is hence best to broadcast this command.

Param (:Label) | Description | Values
--- | --- | ---
1: Action | Gimbal action to initiate (0 = none). | MAV_STORM32_GIMBAL_ACTION
7: Gimbal ID | Gimbal ID of the gimbal to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals). Send command multiple times for more than one but not all gimbals. |

### MAV_CMD_QSHOT_DO_CONFIGURE (60020 )

WORK IN PROGRESS: Do not use in stable production environments (it may change).

[Command] Command to set the shot manager mode.

Param (:Label) | Description | Values
--- | --- | ---
1: Mode | Set shot mode. | MAV_QSHOT_MODE
2: Shot state or command | Set shot state or command. The allowed values are specific to the selected shot mode. |

## MAVLink Messages

### STORM32_GIMBAL_DEVICE_STATUS ( #60001 )

[Message] (MAVLink 2) Message reporting the current status of a gimbal device. This message should be broadcasted by a gimbal device component at a low regular rate (e.g. 4 Hz). For higher rates it should be emitted with a target.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
target_system | uint8_t |  |  | System ID
target_component | uint8_t |  |  | Component ID
time_boot_ms | uint32_t | ms |  | Timestamp (time since system boot).
flags | uint16_t |  | MAV_STORM32_GIMBAL_DEVICE_FLAGS | Gimbal device flags currently applied.
q | float[4] |  |  | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation). The frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag.
angular_velocity_x | float | rad/s |  | X component of angular velocity (NaN if unknown).
angular_velocity_y | float | rad/s |  | Y component of angular velocity (NaN if unknown).
angular_velocity_z | float | rad/s |  | Z component of angular velocity (the frame depends on the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN if unknown).
yaw_absolute | float | deg |  | Yaw in absolute frame relative to Earth's North, north is 0 (NaN if unknown).
failure_flags | uint16_t |  | GIMBAL_DEVICE_ERROR_FLAGS | Failure flags (0 for no failure).

### STORM32_GIMBAL_DEVICE_CONTROL ( #60002 )

[Message] (MAVLink 2) Message to a gimbal device to control its attitude. This message is to be sent from the gimbal manager to the gimbal device. Angles and rates can be set to NaN according to use case.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
target_system | uint8_t |  |  | System ID
target_component | uint8_t |  |  | Component ID
flags | uint16_t |  | MAV_STORM32_GIMBAL_DEVICE_FLAGS | Gimbal device flags (UINT16_MAX to be ignored).
q | float[4] |  |  | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, set first element to NaN to be ignored).
angular_velocity_x | float | rad/s |  | X component of angular velocity (positive: roll to the right, NaN to be ignored).
angular_velocity_y | float | rad/s |  | Y component of angular velocity (positive: tilt up, NaN to be ignored).
angular_velocity_z | float | rad/s |  | Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored).

### STORM32_GIMBAL_MANAGER_INFORMATION ( #60010 )

[Message] (MAVLink 2) Information about a gimbal manager. This message should be requested by a ground station using MAV_CMD_REQUEST_MESSAGE. It mirrors some fields of the STORM32_GIMBAL_DEVICE_INFORMATION message, but not all. If the additional information is desired, also STORM32_GIMBAL_DEVICE_INFORMATION should be requested.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
gimbal_id | uint8_t |  |  | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
device_cap_flags | uint32_t |  | MAV_STORM32_GIMBAL_DEVICE_CAP_FLAGS | Gimbal device capability flags.
manager_cap_flags | uint32_t |  | MAV_STORM32_GIMBAL_MANAGER_CAP_FLAGS | Gimbal manager capability flags.
roll_min | float | rad |  | Hardware minimum roll angle (positive: roll to the right, NaN if unknown).
roll_max | float | rad |  | Hardware maximum roll angle (positive: roll to the right, NaN if unknown).
pitch_min | float | rad |  | Hardware minimum pitch/tilt angle (positive: tilt up, NaN if unknown).
pitch_max | float | rad |  | Hardware maximum pitch/tilt angle (positive: tilt up, NaN if unknown).
yaw_min | float | rad |  | Hardware minimum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown).
yaw_max | float | rad |  | Hardware maximum yaw/pan angle (positive: pan to the right, relative to the vehicle/gimbal base, NaN if unknown).

### STORM32_GIMBAL_MANAGER_STATUS ( #60011 )

[Message] (MAVLink 2) Message reporting the current status of a gimbal manager. This message should be broadcast at a low regular rate (e.g. 1 Hz, may be increase momentarily to e.g. 5 Hz for a period of 1 sec after a change).

Field Name | Type | Values | Description
--- | --- | --- | ---
gimbal_id | uint8_t |  | Gimbal ID (component ID or 1-6 for non-MAVLink gimbal) that this gimbal manager is responsible for.
supervisor | uint8_t | MAV_STORM32_GIMBAL_MANAGER_CLIENT | Client who is currently supervisor (0 = none).
device_flags | uint16_t | MAV_STORM32_GIMBAL_DEVICE_FLAGS | Gimbal device flags currently applied.
manager_flags | uint16_t | MAV_STORM32_GIMBAL_MANAGER_FLAGS | Gimbal manager flags currently applied.
profile | uint8_t | MAV_STORM32_GIMBAL_MANAGER_PROFILE | Profile currently applied (0 = default).

### STORM32_GIMBAL_MANAGER_CONTROL ( #60012 )

[Message] (MAVLink 2) Message to a gimbal manager to control the gimbal attitude. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
target_system | uint8_t |  |  | System ID
target_component | uint8_t |  |  | Component ID
gimbal_id | uint8_t |  |  | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals).
client | uint8_t |  | MAV_STORM32_GIMBAL_MANAGER_CLIENT | Client which is contacting the gimbal manager (must be set).
device_flags | uint16_t |  | MAV_STORM32_GIMBAL_DEVICE_FLAGS | Gimbal device flags (UINT16_MAX to be ignored).
manager_flags | uint16_t |  | MAV_STORM32_GIMBAL_MANAGER_FLAGS | Gimbal manager flags (0 to be ignored).
q | float[4] |  |  | Quaternion components, w, x, y, z (1 0 0 0 is the null-rotation, the frame is determined by the GIMBAL_MANAGER_FLAGS_ABSOLUTE_YAW flag, set first element to NaN to be ignored).
angular_velocity_x | float | rad/s |  | X component of angular velocity (positive: roll to the right, NaN to be ignored).
angular_velocity_y | float | rad/s |  | Y component of angular velocity (positive: tilt up, NaN to be ignored).
angular_velocity_z | float | rad/s |  | Z component of angular velocity (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored).

### STORM32_GIMBAL_MANAGER_CONTROL_PITCHYAW ( #60013 )

[Message] (MAVLink 2) Message to a gimbal manager to control the gimbal tilt and pan angles. Angles and rates can be set to NaN according to use case. A gimbal device is never to react to this message.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
target_system | uint8_t |  |  | System ID
target_component | uint8_t |  |  | Component ID
gimbal_id | uint8_t |  |  | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals).
client | uint8_t |  | MAV_STORM32_GIMBAL_MANAGER_CLIENT | Client which is contacting the gimbal manager (must be set).
device_flags | uint16_t |  | MAV_STORM32_GIMBAL_DEVICE_FLAGS | Gimbal device flags (UINT16_MAX to be ignored).
manager_flags | uint16_t |  | MAV_STORM32_GIMBAL_MANAGER_FLAGS | Gimbal manager flags (0 to be ignored).
pitch | float | rad |  | Pitch/tilt angle (positive: tilt up, NaN to be ignored).
yaw | float | rad |  | Yaw/pan angle (positive: pan the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored).
pitch_rate | float | rad/s |  | Pitch/tilt angular rate (positive: tilt up, NaN to be ignored).
yaw_rate | float | rad/s |  | Yaw/pan angular rate (positive: pan to the right, the frame is determined by the STORM32_GIMBAL_DEVICE_FLAGS_YAW_ABSOLUTE flag, NaN to be ignored).

### STORM32_GIMBAL_MANAGER_CORRECT_ROLL ( #60014 )

[Message] (MAVLink 2) Message to a gimbal manager to correct the gimbal roll angle. This message is typically used to manually correct for a tilted horizon in operation. A gimbal device is never to react to this message.

Field Name | Type | Units | Values | Description
--- | --- | --- | --- | ---
target_system | uint8_t |  |  | System ID
target_component | uint8_t |  |  | Component ID
gimbal_id | uint8_t |  |  | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals).
client | uint8_t |  | MAV_STORM32_GIMBAL_MANAGER_CLIENT | Client which is contacting the gimbal manager (must be set).
roll | float | rad |  | Roll angle (positive to roll to the right).

### STORM32_GIMBAL_MANAGER_PROFILE ( #60015 )

WORK IN PROGRESS: Do not use in stable production environments (it may change).

[Message] (MAVLink 2) Message to set a gimbal manager profile. A gimbal device is never to react to this command. The selected profile is reported in the STORM32_GIMBAL_MANAGER_STATUS message.

Field Name | Type | Values | Description
--- | --- | --- | ---
target_system | uint8_t |  | System ID
target_component | uint8_t |  | Component ID
gimbal_id | uint8_t |  | Gimbal ID of the gimbal manager to address (component ID or 1-6 for non-MAVLink gimbal, 0 for all gimbals, send command multiple times for more than one but not all gimbals).
profile | uint8_t | MAV_STORM32_GIMBAL_MANAGER_PROFILE | Profile to be applied (0 = default).
priorities | uint8_t[8] |  | Priorities for custom profile.
profile_flags | uint8_t |  | Profile flags for custom profile (0 = default).
rc_timeout | uint8_t |  | Rc timeouts for custom profile (0 = infinite, in uints of 100 ms).
timeouts | uint8_t[8] |  | Timeouts for custom profile (0 = infinite, in uints of 100 ms).

### QSHOT_STATUS ( #60020 )

WORK IN PROGRESS: Do not use in stable production environments (it may change).

[Message] (MAVLink 2) Information about the shot operation.

Field Name | Type | Values | Description
--- | --- | --- | ---
mode | uint16_t | MAV_QSHOT_MODE | Current shot mode.
shot_state | uint16_t |  | Current state in the shot. States are specific to the selected shot mode.

### COMPONENT_PREARM_STATUS ( #60025 )

[Message] (MAVLink 2) Message reporting the status of the prearm checks. The flags are component specific.

Field Name | Type | Description
--- | --- | ---
target_system | uint8_t | System ID
target_component | uint8_t | Component ID
enabled_flags | uint32_t | Currently enabled prearm checks. 0 means no checks are being performed, UINT32_MAX means not known.
fail_flags | uint32_t | Currently not passed prearm checks. 0 means all checks have been passed.