This class provides multiple methods to control the gimbal. These include setting the gimbal work mode, rotating the gimbal with angle, starting the gimbal auto calibration, etc. This object is available from the DJIAircraft or DJIHandheld object which is a subclass of DJIBaseProduct.
Returns the gimbal's features and possible range of settings. Each dictionary key is a possible gimbal feature and uses the DJIGimbalParam prefix. The value for each key is an instance of DJIParamCapability or its sub-classes. The isSupported property can be used to query if a feature is supported by the gimbal and the min and max properties of DJIParamCapabilityMinMax can be used to query the valid range for the setting. When a feature is not supported, the values for min and max are undefined.
Resets the gimbal. The behaviors are product-dependent. Osmo series (e.g. Osmo, Osmo Pro): The gimbal's pitch and yaw will be set to the origin, which is the standard position for the gimbal. Phantom series (e.g. Phantom 3 Professional, Phantom 4 series): The first call sets gimbal to point down vertically to the earth. The second call sets gimbal to the standard position. Other products (e.g. Inspire 1): Only the gimbal's pitch will the set to the origin.
Resets the gimbal. The behaviors are dependent on the selected axis and reset direction. Only supported by: Zenmuse H20 and Zenmuse H20T (firmware version v01.00.06.98 and above) DJI X-port (firmware version v02.00.07.60 and above) Zenmuse Z30 (firmware version v01.01.03.00 and above) Zenmuse X5S (firmware version v01.01.03.00 and above) Zenmuse X7 (firmware version v00.02.05.68 and above) Zenmuse XT2 (firmware version v00.02.06.46 and above) Zenmuse XT S (firmware version v00.02.32.82 and above)
Starts calibrating the gimbal. The product should be stationary (not flying, or being held) and horizontal during calibration. For gimbal's with adjustable payloads, the payload should be present and balanced before doing a calibration. For Osmo Mobile series, user should double-click the trigger (or mode button on Osmo Mobile 2) or restart the device to re-center the gimbal after the calibration.
The gimbal roll can be fine tuned with a custom offset. The range for the custom offset is [-2.0, 2.0] degrees. If the offset is negative, the gimbal will be fine tuned the specified number of degrees in the counterclockwise direction.
The gimbal pitch can be fine tuned with a custom offset. The range for the custom offset is [-2.0, 2.0] degrees. If the offset is negative, the gimbal will be fine tuned the specified number of degrees in the counterclockwise direction. It is only supported by Spark, Mavic 2 Series and Mavic Air 2, DJI Air 2S.
The gimbal yaw can be fine tuned with a custom offset. The range for the custom offset is [-2.0, 2.0] degrees. If the offset is negative, the gimbal will be fine tuned the specified number of degrees in the counterclockwise direction. It is only supported by Mavic Air and Mavic 2 Series.
Starts testing the balance of the gimbal payload. For gimbals that allow payloads to be changed, a balance test should be performed to ensure the camera is mounted correctly. The product should be stationary (not flying, or being held) and horizontal during testing. See DJIGimbalState for the test result.
Sets the movement settings profile. The movement settings profile has options for both preset and custom profiles for SmoothTrack and Controller settings. Settings for SmoothTrack and Controller can only be set manually when using a custom profile.
Configures gimbal's motor control with a preset configuration applicable for most popular cameras. In order to the optimize the performance, motor control tuning is still required.
Sets physical controller (e.g. the joystick on Osmo or the remote controller of the aircraft) deadband on an axis. A larger deadband requires more controller movement to start gimbal motion. Use DJIGimbalParamYawControllerDeadband and DJIGimbalParamPitchControllerDeadband with capabilities to check if the gimbal supports this feature and the range of possible values (unitless).
Sets physical controller (e.g. the joystick on Osmo or the remote controller of the aircraft) speed on an axis. Speed setting controls the mapping between the movement of the controller and the gimbal speed. Use DJIGimbalParamYawControllerSpeedCoefficient and DJIGimbalParamPitchControllerSpeedCoefficient with capabilities to check if the gimbal supports this feature and the range of possible values (unitless).
Sets physical controller (e.g. the joystick on Osmo or the remote controller of the aircraft) smoothing on an axis. Smoothing controls the deceleration of the gimbal. Use DJIGimbalParamYawControllerSmoothingFactor and DJIGimbalParamPitchControllerSmoothingFactor with capabilities to check if the gimbal supports this feature and the range of possible values (unitless). Only supported by Mavic Air 2, DJI Air 2S.
Sets physical controller max speed value on an axis. It controls the mapping between the movement of the controller and the gimbal speed. Use DJIGimbalParamPitchControllerMaxSpeed and DJIGimbalParamYawControllerMaxSpeed with "capabilities" to check if the gimbal supports this feature and the range of possible values (unitless).
Sets physical controller max speed value on an axis. It controls the mapping between the movement of the controller and the gimbal speed. Use DJIGimbalParamPitchControllerMaxSpeed and DJIGimbalParamYawControllerMaxSpeed with "capabilities" to check if the gimbal supports this feature and the range of possible values (unitless). Only supported by Mavic Air 2, DJI Air 2S.
Gets physical controller max speed value on an axis. It controls the mapping between the movement of the controller and the gimbal speed. Use DJIGimbalParamPitchControllerMaxSpeed and DJIGimbalParamYawControllerMaxSpeed with "capabilities" to check if the gimbal supports this feature and the range of possible values (unitless).
Gets physical controller max speed value on an axis. It controls the mapping between the movement of the controller and the gimbal speed. Use DJIGimbalParamPitchControllerMaxSpeed and DJIGimbalParamYawControllerMaxSpeed with "capabilities" to check if the gimbal supports this feature and the range of possible values (unitless). Only supported by Mavic Air 2, DJI Air 2S.
Sets gimbal SmoothTrack catch up speed on an axis. SmoothTrack speed determines how fast the gimbal will catch up with a large, translated handle movement. Use DJIGimbalParamPitchSmoothTrackSpeed and DJIGimbalParamYawSmoothTrackSpeed with capabilities to check if the gimbal supports this feature and the range of possible values (unitless).
Gets gimbal SmoothTrack speed on an axis. SmoothTrack speed determines how fast the gimbal will catch up with a large, translated handle movement. Use DJIGimbalParamPitchSmoothTrackSpeed and DJIGimbalParamYawSmoothTrackSpeed with capabilities to check if the gimbal supports this feature and the range of possible values (unitless).
Resets gimbal position to selfie setup. If the gimbal yaw is not at 180 degrees, then calling this method will rotate the gimbal yaw to 180 degrees (effectively pointing the camera to the person holding the gimbal). If the gimbal yaw is at 180 degrees, then the gimbal will rotate in yaw to 0 degrees. It's only supported by DJI OSMO, OSMO Pro and OSMO Raw.
Sets the gimbal's controller mode. The control mode for the gimbal controller (joystick for Osmo). The total controller deflection is a combination of horizontal and vertical deflection. This translates to gimbal movement around the yaw and pitch axes. The gimbal can be set to either move in both yaw and pitch simultaneously based on horizontal and vertical deflection of the controller, or move in only yaw or pitch exclusively based on whether horizontal or vertical deflection is larger.
Synchronizes the attitude of port (left) gimbal and starboard (right) gimbal. It is only valid when both gimbals are connected. If only 1 gimbal is connected, this setting will be reset to NO. Enables this setting will reset getControllingGimbalIndexWithCompletion to index 0. It is only supported by M210 and M210 RTK, not supported by DJI X-Port.
Determines whether both gimbals' attitudes are synchronized. If only 1 gimbal is connected, this setting will be reset to NO. It is only supported by M210 and M210 RTK.
Selects two to three gimbals to run with Multi-Gimbal Connection, which can be controlled by a single user. Please check if payloads have been connected with gimbal. The left gimbal, the right gimbal and the upper gimbal can be chosen. You should call setControllingGimbalIndex:withCompletion to set the control of the remote controller to the gimbal you want to synchronize. It is only supported by Matrice 300 RTK.
Input Parameters:
NSArray * _Nullable param
Array of gimbal indexes, in which 0 represents the left gimbal, 1 represents the right gimbal and 2 stands for the upper one. nil if this function is disabled.
Stops the gimbals to run with Multi-Gimbal Connection. Please check if payloads have been connected with gimbal. It is only supported by Matrice 300 RTK.
Enables this to make the gimbal respond to the controller command to rotate aircraft's heading. Enabling this setting makes gimbal rotate simultaneously with aircraft's heading when the user is controlling the aircraft's heading with the remote controller.
Determines whether yaw simultaneous follow is enabled. Enabling this setting makes gimbal rotate simultaneously with aircraft's heading when the user is controlling the aircraft's heading with the remote controller.
Starts the coaxiality detection. Note: Please DO NOT turn on the motors. The tilt angle of the pitch and roll axis cannot be greater than 5 degrees. Please start coaxiality detection after gimbal's balance detection and fitting the screw on the auxiliary arm. This can only be invoked during DJIPayloadProductPhaseDevelopment phase.
Starts the control parameters auto tuning. Note: Please DO NOT turn on the motors. The tilt angle of the pitch and roll axis cannot be greater than 5 degrees. This can only be invoked during DJIPayloadProductPhaseDevelopment phase.
Restores gimbal's control parameters coefficient. Note: Please DO NOT turn on the motors. This can only be invoked during DJIPayloadProductPhaseDevelopment phase.
The gimbal can move independently of the aircraft's yaw. In this mode, even if the aircraft yaw changes, the camera will continue pointing in the same world direction. This mode is only available for the Ronin-MX when the M600 or M600 Pro landing gear is retracted.
DJIGimbalModeFPV
The gimbal's work mode is FPV mode. In this mode, the gimbal yaw will follow the aircraft's heading, and the gimbal roll will follow the RC's roll channel value. The pitch will be available to move. This mode is only available for the Ronin-MX when the M600 landing gear is retracted.
DJIGimbalModeYawFollow
The gimbal's work mode is such that it will follow the yaw. In this mode, the gimbal yaw will be fixed, while pitch and roll will be available to move.
For gimbals that allow payloads to be changed, a balance test should be performed to ensure the camera is mounted correctly.
Enum Members:
DJIGimbalBalanceTestResultPass
The balance test result is great.
DJIGimbalBalanceTestResultMarginal
The balance test result is good. When this result is returned, it is possible there was some noise in the balance measurement. For best results, it is recommended to run the balance test again and adjust the payload position until the result becomes great.
DJIGimbalBalanceTestResultFail
The balance test result is bad. The payload should be adjusted when this result is returned.
The Movement Settings Profile contains presets for SmoothTrack and the Physical Controller sensitivity. SmoothTrack and Controller settings can only be manually changed if Custom1 or Custom2 profiles are selected.
Enum Members:
DJIGimbalMovementSettingsProfileFast
The gimbal's SmoothTrack and Controller sensitivity is high. When the gimbal is using this profile, user cannot change the Movement Settings manually.
DJIGimbalMovementSettingsProfileMedium
The gimbal's SmoothTrack and Controller sensitivity is medium. When the gimbal is using this profile, user cannot change the Movement Settings manually.
DJIGimbalMovementSettingsProfileSlow
The gimbal's SmoothTrack and Controller sensitivity is slow. When the gimbal is using this profile, user cannot change the Movement Settings manually.
DJIGimbalMovementSettingsProfileCustom1
The gimbal uses a custom configuration in memory slot 1 where the yaw and pitch speed, deadband, and acceleration can be defined.
DJIGimbalMovementSettingsProfileCustom2
The gimbal uses a custom configuration in memory slot 2 where the yaw and pitch speed, deadband, and acceleration can be defined.
The loading balance status of the gimbal. The gimbal loading is changeable for Osmo Mobile. When the mounted mobile device is changed, in order to optimize the gimbal performance, user can adjust the gimbal physically based on the status.
Enum Members:
DJIGimbalBalanceStateBalanced
The gimbal is balanced.
DJIGimbalBalanceStateTiltingLeft
The gimbal is tilting left. Adjust the photo to the right hand side to balance the gimbal.
DJIGimbalBalanceStateTiltingRight
The gimbal is tilting right. Adjust the photo to the left hand side to balance the gimbal.
The standard position for the upper gimbal is pointing up vertically to the sky. The standard position for the downward gimbal is pointing down vertically to the earth.
DJIGimbalResetDirectionCenter
Applies only to the yaw. The standard position is points to the center.
Key string in the capabilities dictionary that holds the complete capability of the gimbal. The value is capability range of the gimbal is placed downwards, A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in the capabilities dictionary that holds the complete capability of the gimbal. The value is capability range of the gimbal is placed upwards, A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in capabilities associated with whether the gimbal supports yaw axis adjustment. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned. A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation. For Gimbal's that allow a pitch range extension (see DJIGimbalParamPitchRangeExtensionEnabled, the range will be representative of the extended range whether it is enabled or not.
Key string in capabilities associated with whether the gimbal supports roll axis adjustment. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned. A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in capabilities associated with whether the gimbal supports pitch axis controllable euler angle adjustment. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned. A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in capabilities associated with whether the gimbal supports roll axis controllable euler angle adjustment. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned. A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in capabilities associated with whether the gimbal supports pitch axis controllable extension euler angle adjustment. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned. A negative value in the valid range represents counter-clockwise rotation. A positive value in the valid range represents clockwise rotation.
Key string in capabilities associated with whether the gimbal supports Advanced Settings Profiles. The corresponding value in capabilities is an instance of DJIParamCapability.
Key string in capabilities associated with whether the gimbal supports a range extension in pitch. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range in degrees is returned.
Key string in capabilities associated with whether the gimbal's pitch axis response speed to manual control can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis response speed to manual control can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis smoothing can be adjusted when using manual control. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis smoothing can be adjusted when using manual control. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's manual control pitch axis deadband can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's manual control yaw axis deadband can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's manual control pitch axis max speed can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's manual control yaw axis max speed can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis SmoothTrack can be toggled. The corresponding value in capabilities is an instance of DJIParamCapability. Ronin-MX cannot toggle the SmoothTrack functionality and it is always enabled.
Key string in capabilities associated with whether the gimbal's yaw axis SmoothTrack can be toggled. The corresponding value in capabilities is an instance of DJIParamCapability. Ronin-MX cannot toggle the SmoothTrack functionality and it is always enabled.
Key string in capabilities associated with whether the gimbal's pitch axis SmoothTrack acceleration can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis SmoothTrack acceleration can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis SmoothTrack speed can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis SmoothTrack speed can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis SmoothTrack deadband can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis SmoothTrack deadband can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch up endpoint can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch down endpoint can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw left endpoint can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw right endpoint can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis motor control stiffness can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis motor control stiffness can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's roll axis motor control stiffness can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis motor control strength can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis motor control strength can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's roll axis motor control strength can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis motor control gyro filtering can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis motor control gyro filtering can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's roll axis motor control gyro filtering can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's pitch axis motor control "precontrol" can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's yaw axis motor control "precontrol" can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.
Key string in capabilities associated with whether the gimbal's roll axis motor control "precontrol" can be adjusted. The corresponding value in capabilities is an instance of DJIParamCapabilityMinMax meaning both the feature's existence as well as its possible range (unitless) is returned.