DJI Windows SDK Documentation

class FlightControllerHandler

sealed class FlightControllerHandler
Declaration:DJI.WindowsSDK.Components
Description:

This class contains components of the flight controller and provides methods to send different commands to the flight controller.

Class Members:
struct IMUMultipleOrientationCalibrationHint
struct IMUMultipleOrientationCalibrationHint
Declaration:DJI.WindowsSDK
Description:

A class is used to lead the user through an IMU calibration for products that require calibration at multiple orientations.

Struct Members:
IMUOrientationCalibrationState stateCalibration status of the current orientation.
struct
struct IMUState
struct IMUState
Declaration:DJI.WindowsSDK
Description:

Provides the Inertial Measurement Unit's (IMU) state information.

Struct Members:
int indexThe IMU's ID. Starts at 0
IMUSensorState gyroscopicGyroscopic sensor's state value.
IMUSensorState accelerometersAccelerometers sensor's state value.
int calibrationProgressThe IMU's calibration progress, its range being [1, 100]. If the IMU is not calibrating, the value of the calibration progress will be -1.
IMUCalibrationState calibrationStateThe status of the IMU's calibration.
IMUMultipleOrientationCalibrationHint multipleOrientationCalibrationHintFor products that require the user to orient the aircraft during the IMU calibration, this method can be used to inform the user when each orientation is done
struct GoHomeAssessmentValue
struct GoHomeAssessmentValue
Declaration:DJI.WindowsSDK
Description:

A class that containes the gohome assessment.

Struct Members:
int batteryPercentNeededToGoHomeThe battery percent that aircraft needs to go home.
int batteryPercentNeededToLandThe battery percent that aircraft needs to land.
double maxRadiusCanFlyAndGoHomeThe max radius the aircraft could fly or go home.
int smartRTHCountdownThe countdown of smart RTH. The aircraft would start gohome action when this value become 0.
int remainingFlightTimeRemaining time the aircraft could fly.
int timeNeededToGoHomeTime which the aircraft needed to go home.
int timeNeededToLandTime which the aircraft needed to land.
struct LandingProtectionStateMsg
struct LandingProtectionStateMsg
Declaration:DJI.WindowsSDK
Description:

A class containes the landing protection state.

Struct Members:
LandingProtectionState valueThe actual value of the class.
struct FCGPSSignalLevelMsg
struct FCGPSSignalLevelMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a GPS level of flight controllers.

Struct Members:
FCGPSSignalLevel valueThe actual value of the class.
struct FCMotorStartFailureErrorMsg
struct FCMotorStartFailureErrorMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains an error explaining the failure when the flight controller starts the motors.

Struct Members:
FCMotorStartFailureError valueThe actual value of the class.
struct FCFlightModeMsg
struct FCFlightModeMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a flight mode of flight controllers.

Struct Members:
FCFlightMode valueThe actual value of the class.
struct FCRemoteControllerSwitchModeMsg
struct FCRemoteControllerSwitchModeMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a mapped switch mode of the remote controller.

Struct Members:
FCRemoteControllerSwitchMode valueThe actual value of the class.
struct FCAutoRTHReasonMsg
struct FCAutoRTHReasonMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains the reason explaining why the flight controller starts RTH (Return-To-Home) automatically.

Struct Members:
FCAutoRTHReason valueThe actual value of the class.
struct FCGoHomeStateMsg
struct FCGoHomeStateMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a go-home state of flight controllers.

Struct Members:
FCGoHomeState valueThe actual value of the class.
struct FCGPSModeFailureReasonMsg
struct FCGPSModeFailureReasonMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a reason explaining the failure when the flight controller tries to enter GPS mode.

Struct Members:
FCGPSModeFailureReason valueThe actual value of the class.
struct FCWindWarningMsg
struct FCWindWarningMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a gale warning enum of flight controllers.

Struct Members:
FCWindWarning valueThe actual value of the class.
struct FCCompassCalibrationStateMsg
struct FCCompassCalibrationStateMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a compass calibration state of flight controllers.

Struct Members:
FCCompassCalibrationState valueThe actual value of the class.
struct FCFailsafeActionMsg
struct FCFailsafeActionMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a Failsafe action of flight controllers.

Struct Members:
FCFailsafeAction valueThe actual value of the class.
struct SimulatorInitializationSettings
struct SimulatorInitializationSettings
Declaration:DJI.WindowsSDK
Description:

Settings used to configure the simulated environment when starting the simulator.

Struct Members:
double latitudeSimulator coordinate latitude in degrees.
double longitudeSimulator coordinate longitude in degrees.
int satelliteCountThe initial number of GPS satellites with range [0, 20].
struct FCBatteryThresholdBehaviorMsg
struct FCBatteryThresholdBehaviorMsg
Declaration:DJI.WindowsSDK
Description:

A class that contains a battery threshold behavior of flight controllers.

Struct Members:
FCBatteryThresholdBehavior valueThe actual value of the class.
enum IMUSensorState
enum IMUSensorState
Declaration:DJI.WindowsSDK
Description:

IMU sensor state values.

Enum Members:
DISCONNECTEDThe IMU sensor is disconnected from the flight controller.
CALIBRATINGThe IMU sensor is calibrating
CALIBRATION_FAILEDCalibrate of the IMU sensor failed.
DATA_EXCEPTIONThe IMU sensor has a data exception. Calibrate the IMU and restart the aircraft. If afterwards the status still exists, you may need to contact DJI for further assistance.
WARMING_UPThe IMU sensor is warming up.
IN_MOTIONThe IMU sensor is not static; the aircraft may not be stable enough to calculate sensor data correctly.
NORMAL_BIASThe IMU's bias value is normal; the aircraft can safely take off.
MEDIUM_BIASThe IMU's bias value is medium; the aircraft can safely take off.
LARGE_BIASThe IMU's bias value is large; the aircraft cannot take off. IMU calibration is needed.
UNKNOWNUnknown.
enum IMUCalibrationState
enum IMUCalibrationState
Declaration:DJI.WindowsSDK
Description:

IMU calibration state values.

Enum Members:
NONEIMU is not calibrating.
CALIBRATINGIMU calibration is in progress.
SUCCESSFULIMU calibration successed.
FAILEDIMU calibration failed.
UNKNOWNUnknown.
enum IMUCalibrationOrientation
enum IMUCalibrationOrientation
Declaration:DJI.WindowsSDK
Description:

The values of different orientations which the aircraft needs for a multi-orientation IMU calibration.

Enum Members:
NOSE_DOWNThe front/nose of the aircraft should be pointed down.
TAIL_DOWNThe back/tail of the aircraft should be pointed down.
RIGHT_DOWNThe right/starboard side of the aircraft should be pointed down.
LEFT_DOWNThe left/port side of the aircraft should be pointed down.
BOTTOM_DOWNThe bottom/underbelly of the aircraft should be pointed down.
TOP_DOWNThe top of the aircraft should be pointed down.
UNKNOWNUnknown.
enum IMUOrientationCalibrationState
enum IMUOrientationCalibrationState
Declaration:DJI.WindowsSDK
Description:

IMU calibration status for the current aircraft orientation.

Enum Members:
CALIBRATINGCalibration of current aircraft orientation is in progress.
COMPLETEDCalibration of current aircraft orientation is done.
UNKNOWNUnknown.
enum FCGPSSignalLevel
enum FCGPSSignalLevel
Declaration:DJI.WindowsSDK
Description:

GPS signal levels, which are used to measure the signal quality.

Enum Members:
LEVEL_0The GPS has almost no signal, which is very bad.
LEVEL_1The GPS signal is very weak.
LEVEL_2The GPS signal is weak. At this level, the aircraft's go home functionality will still work.
LEVEL_3The GPS signal is good. At this level, the aircraft can hover in the air.
LEVEL_4The GPS signal is very good. At this level, the aircraft can record the home point.
LEVEL_5The GPS signal is very strong.
LEVEL_NoneThere is no GPS signal.
UNKNOWNUnknown.
enum FCMotorStartFailureError
enum FCMotorStartFailureError
Declaration:DJI.WindowsSDK
Description:

Errors that describe reasons of failure when starting motors.

Enum Members:
NONENone. There is no error.
COMPASS_ERRORThe aircraft cannot start motors because of compass error.
ASSISTANT_PROTECTEDThe aircraft cannot start motors because the aircraft is connected to a PC.
DEVICE_LOCKEDThe aircraft cannot start motors because it is locked.
DISTANCE_LIMITThe aircraft cannot start motors because the aircraft's distance from the home point exceeds the pre-set max distance.
IMU_NEED_CALIBRATIONThe aircraft cannot start motors. Calibrate IMUs to resolve the issue.
IMU_WARMING_UPThe aircraft cannot start motors because the IMUs are warming up.
COMPASS_CALIBRATINGThe aircraft cannot start motors. Calibrate the compass to resolve the issue.
ATTI_ERRORThe aircraft cannot start motors because of attitude error.
NOVICE_PROTECTEDThe aircraft cannot start motors because the novice mode is enabled and GPS level is low.
BATTERY_CELL_ERRORThe aircraft cannot start motors because of battery cell error.
BATTERY_COMMUNICATION_ERRORThe aircraft cannot start motors because of communication error between the battery and the flight controller.
SERIOU_LOW_VOLTAGEThe aircraft cannot start motors because the voltage is seriously low.
SERIOU_LOW_POWERThe aircraft cannot start motors because the charge remaining is seriously low.
LOW_VOLTAGEThe aircraft cannot start motors because the voltage is low.
TEMPERATURE_TOO_LOWThe aircraft cannot start motors because the temperature is too low.
SMART_LOW_TO_LANDThe aircraft cannot start motors because the charge is lower than the user-defined threshold.
BATTERY_NOT_READYThe aircraft cannot start motors because the battery's initialization is not complete.
SIMULATOR_MODEThe aircraft cannot start motors because the simulator has been started once. Re-boot the aircraft to resolve the issue.
IN_TRANSPORT_MODEThe aircraft cannot start motors because it is in transport mode.
ATTITUDE_ABNORMALThe aircraft cannot start motors because it is tilted. Place the aircraft on a flat surface and restart.
NOT_ACTIVATEDThe aircraft cannot start motors because it is not activated.
IN_NO_FLY_ZONEThe aircraft cannot start motors because it is in a no fly-zone.
BIAS_ERRORThe aircraft cannot start motors because sensor's bias is too large.
ESC_ERRORThe aircraft cannot start motors because ESC error.
IMU_INIT_ERRORThe aircraft cannot start motors because the IMU is initializing. Don't move the aircraft until the initialization is done.
SYSTEM_UPGRADEThe aircraft cannot start motors because it is upgrading.
SIMULATOR_STARTEDThe aircraft cannot start motors because the simulator has been started once. Re-boot the aircraft to resolve the issue.
IMUING_ERRORThe aircraft cannot start motors because the IMU is calibrating.
ATTI_ANGLE_OVERThe aircraft cannot start motors because the aircraft is tilted.
GYROSCOPE_NOT_WORKINGThe aircraft cannot start motors because the gyroscope is not working.
ACCELERATOR_NOT_WORKINGThe aircraft cannot start motors because the accelerator is not working.
COMPASS_NOT_WORKINGThe aircraft cannot start motors because the compass is not working.
BAROMETER_NOT_WORKINGThe aircraft cannot start motors because the barometer is not working.
BAROMETER_NEGATIVEThe aircraft cannot start motors because the barometer's value is negative. Restart the aircraft.
COMPASS_LARGE_MODThe aircraft cannot start motors because the compass mod is too large.
GYROSCOPE_LARGE_BIASThe aircraft cannot start motors because the gyroscope bias is too large.
ACCELERATOR_LARGE_BIASThe aircraft cannot start motors because the accelerator bias is too large.
COMPASS_LARGE_NOISEThe aircraft cannot start motors because the compass noise is too large.
BAROMETER_LARGE_NOISEThe aircraft cannot start motors because the barometer noise is too large.
INVALID_SNThe aircraft cannot start motors because of invalid serial number.
FLASH_OPERATINGThe aircraft cannot start motors because FLASH is operating.
GPS_DISCONNECTThe aircraft cannot start motors because GPS is disconnected.
SDCARD_EXCEPTIONThe aircraft cannot start motors because of data logger error.
IMU_DISCONNECTThe aircraft cannot start motors because IMU is disconnected.
RC_CALIBRATIONThe aircraft cannot start motors because the remote controller is calibrating.
RC_CALIBRATION_EXCEPTIONThe aircraft cannot start motors because the remote controller calibration has error.
RC_CALIBRATION_UNFINISHEDThe aircraft cannot start motors because the remote controller calibration is interrupted.
RC_STICK_CENTER_ERRORThe aircraft cannot start motors because the center position of remote controller's stick has invalid value.
RC_MAPPING_ERRORThe aircraft cannot start motors because of remote controller mapping error.
AIRCRAFT_TYPE_MISMATCHThe aircraft cannot start motors because of aircraft type error.
NOT_CONFIGURED_MODULESThe aircraft cannot start motors because at least one module is not configured.
GRYO_ACC_ABNORMALThe aircraft cannot start motors because both the gyroscope and the accelerometer have error.
BARO_ABNORMALThe aircraft cannot start motors because of barometer error.
COMPASS_ABNORMALThe aircraft cannot start motors because of compass error.
GPS_ABNORMALThe aircraft cannot start motors because of GPS error.
NAV_SYS_EXCEPTIONThe aircraft cannot start motors because of navigation system exception.
TOPOLOGY_ABNORMALThe aircraft cannot start motors because of topology error.
RC_NEED_CALIThe aircraft cannot start motors because the remote controller has to be calibrated.
INVALID_FLOATThe aircraft cannot start motors because float data error.
MISSING_BATTERIESThe aircraft cannot start motors because not all batteries are inserted.
BATTERY_AUTH_ERRORThe aircraft cannot start motors because battery authentication error.
MULT_BATTERIES_COMM_ERRThe aircraft cannot start motors because of battery communication error.
BATTERIES_VOLT_DIFF_LARGEThe aircraft cannot start motors because the voltage difference between batteries is large.
BATTERIES_VOLT_DIFF_VERY_LARGEThe aircraft cannot start motors because the voltage difference between batteries is too large.
BATTERIES_VERSION_MISMATCHThe aircraft cannot start motors because batteries' firmware versions mismatch.
GIMBAL_GYRO_ABNORMALThe gimbal's gyroscope is abnormal.
GIMBAL_ESC_PITCH_NON_DATAGimbal pitch motor error.
GIMBAL_ESC_ROLL_NON_DATAGimbal roll motor error.
GIMBAL_ESC_YAW_NON_DATAGimbal yaw motor error.
GIMBAL_FIRM_IS_UPDATINGGimbal's firmware is upgrading.
GIMBAL_DISORDERGimbal error.
GIMBAL_PITCH_VIBRATEVibration is detected in gimbal's pitch axis.
GIMBAL_ROLL_VIBRATEVibration is detected in gimbal's roll axis.
GIMBAL_YAW_VIBRATEVibration is detected in gimbal's yaw axis.
IMU_CALIBRATION_FINISHEDThe aircraft cannot start motors. IMU calibration is done and the aircraft has to reboot.
TAKEOFF_ROLLOVERTilting after takeoff.
MOTOR_STUCKThe aircraft cannot start motors because at least one of the motors got stuck.
MOTOR_UNBALANCEDThe aircraft cannot start motors because motors are not balanced.
MISSING_PROPELLERThe aircraft cannot start motors because motors are running idle. Install the paddles.
MOTOR_START_ERRORThe aircraft cannot start motors because motor error.
MOTOR_AUTO_TAKEOFF_FAILAuto takeoff failed.
BAT_VERSION_ERRORThe aircraft cannot start motors because battery version error.
RTK_BAD_SIGNALThe aircraft cannot start motors because of weak RTK signal.
RTK_DEVIATION_ERRORThe aircraft cannot start motors because the angle bias between RTK and compass is too large.
ESC_CALIBRATINGThe aircraft cannot start motors because ESCs are calibrating.
GPS_SIGN_INVALIDThe aircraft cannot start motors because of invlid GPS signature.
GIMBAL_IS_CALIBRATINGThe aircraft cannot start motors because the gimbal is calibrating.
LOCK_BY_APPThe aircraft cannot start motors because aircraft is locked. Update the firmware to the latest version.
START_FLY_HEIGHT_ERRORThe aircraft cannot start motors because of takeoff attitude error.
ESC_VERSION_NOT_MATCHThe aircraft cannot start motors because of inconsistent ESC firmware versions.
IMU_ORI_NOT_MATCHThe aircraft cannot start motors because of inconsistent IMU orientations.
STOP_BY_APPInternal error.
COMPASS_IMU_ORI_NOT_MATCHThe aircraft cannot start motors because of compass installation error.
ESC_BEEPINGThe aircraft cannot start motors because ESCs are beeping.
ESC_OVER_HEATThe aircraft cannot start motors because ESCs are overheated.
BATTERY_INSTALL_ERRORThe aircraft cannot start motors because batteries are installed with wrong position.
BE_IMPACTThe aircraft cannot start motors because collision is detected.
CRASHTakeoff error has occured recently.
LOW_VERSION_OF_BATTERYThe aircraft cannot start motors because the battery firmware version is too old.
VOLTAGE_OF_BATTERY_IS_TOO_HIGHThe aircraft cannot start motors because of battery cell voltage error.
BATTERY_NOT_PRESENTThe aircraft cannot start motors because battery is not install properly.
COOLING_FAN_EXCEPTIONThe aircraft cannot start motors because processor chip overheated.
RC_THROTTLE_IS_NOT_IN_MIDDLEThe aircraft cannot start motors. Confirm that the throttle stick is centered.
REMOTE_USB_CONNECTEDThe aircraft cannot start motors because the aircraft's USB port is connected to some devices.
UNKNOWNUnknown.
enum FCFlightMode
enum FCFlightMode
Declaration:DJI.WindowsSDK
Description:

Flight controller flight modes.

Enum Members:
MANUALManual mode.
ATTIAttitude mode.
ATTI_CLAttitude course-lock mode.
ATTI_HOVERAttitude hover mode.
HOVERHover mode.
GPS_BRAKEBrake mode.
GPS_ATTIGPS Attidue mode.
GPS_CLGPS course-lock mode.
GPS_HOMELOCKGPS home-lock mode.
GPS_HOTPOINTGPS hotpoint mode.
ASSISTED_TAKE_OFFAssisted takeoff mode.
AUTO_TAKE_OFFAuto takeoff mode.
AUTO_LANDINGAuto landing mode.
ATTI_LANDINGAttidue landing mode.
NAVI_GOGPS waypoint mode.
GO_HOMEGo home mode.
JOYSTICKJoystick mode.
CINEMATICCinematic mode.
ATTI_LIMITEDAttitude fly limit mode.
DRAWDraw mode.
FOLLOW_MEFollow-me mode.
ACTIVE_TRACKActiveTrack mode.
TAP_FLYTapFly mode.
PANOPano mode.
FARMINGFarming mode.
FPVFPV mode.
GPS_SPORTSport mode.
GPS_NOVICENovice mode.
CONFIRM_LANDINGConfirm landing mode.
NOENOE mode.
GESTURE_CONTROLGesture control mode.
TRIPOD_GPSTripod mode.
ACTIVE_TRACK_COURSE_LOCKActiveTrack course-lock mode.
MOTOR_STARTMotors just started.
FIXED_WINGFixed wing mode.
APASAPAS mode.
PALM_LAUNCHPalm launch mode.
TIME_LAPSETime-Lapse.
UNKNOWNUnknown.
enum FCRemoteControllerSwitchMode
enum FCRemoteControllerSwitchMode
Declaration:DJI.WindowsSDK
Description:

The RC switch modes mapped to the flight controller configuration.

Enum Members:
ATTITUDEAttitude mode.
SPORTSport mode.
GPSGPS mode.
NO_SIGNALNo signal.
UNKNOWNUnknown.
enum FCGPSModeFailureReason
enum FCGPSModeFailureReason
Declaration:DJI.WindowsSDK
Description:

Reasons that explain why the flight controller cannot enter GPS mode.

Enum Members:
NONENone. The flight controller is already in GPS mode.
DISABLEDGPS mode is disabled.
NOT_ENOUGH_SATELLITE_COUNTThe GPS satellite count is not enough.
GPS_HDOP_TOO_HIGHGPS HDOP is too high.
GPS_VELOCITY_NOT_MATCHGPS's velocity mismatches.
GPS_VELOCITY_ERRORGPS velocity error.
GPS_YAW_ERRORGPS yaw error is too large.
COMPASS_ERRORCompass error.
UNKNOWNUnknown.
enum FCAutoRTHReason
enum FCAutoRTHReason
Declaration:DJI.WindowsSDK
Description:

Reasons that explain why the flight controller triggers Auto RTH (Return-To-Home).

Enum Members:
NONENone. The flight controller does not RTH.
WARNING_POWER_GOHOMELow battery. Aircraft is returning home.
WARNING_POWER_LANDINGCritical low battery. Aircraft is landing.
SMART_POWER_GOHOMELow battery. Aircraft is returning home.
SMART_POWER_LANDINGCritical low battery. Aircraft is landing.
LOW_VOLTAGE_GOHOMELow voltage. Aircraft is landing.
LOW_VOLTAGE_LANDINGLow voltage. Aircraft is landing.
SERIOUS_LOW_VOLTAGE_LANDINGCritical low voltage. The aircraft is landing.
RC_ONEKEY_GOHOMEThe RTH is triggered by pressing the RTH button on the remote controller.
RC_ASSISTANT_TAKEOFFRC-triggerd assisted takeoff.
RC_AUTO_TAKEOFFRC-triggered auto-takeoff.
RC_AUTO_LANDINGRC-triggered auto landing.
APP_AUTO_GOHOMERC-triggered auto go home.
APP_AUTO_LANDINGAPP-triggered auto landing.
APP_AUTO_TAKEOFFAPP-triggered auto takeoff.
OUTOF_CONTROL_GOHOMELost RC signal.
API_AUTO_TAKEOFFOnboard-triggered auto takeoff.
API_AUTO_LANDINGOnboard-triggered auto landing.
API_AUTO_GOHOMEOnboard-triggered auto go home.
AVOID_GROUND_LANDINGConfirmation required to land.
NO_FLY_ZONE_LANDINGThe aircraft entered a no fly-zone.
TOO_CLOSE_GOHOME_LANDINGAircraft is close to home point. The RTH command is transformed to landing.
TOO_FAR_GOHOME_LANDINGAircraft is too far from the home point.
APP_WP_MISSIONThe RTH is triggered by waypoint mission.
WP_AUTO_TAKEOFFWaypoint-triggered takeoff.
GOHOME_AVOIDTrying to avoid obstacle during go home.
GOHOME_FINISHGo home is complete.
VERT_LOW_LIMIT_LANDINGLanding because of height limitation.
BATTERY_FORCE_LANDINGLanding because of low battery.
MC_PROTECT_GOHOMEFlight controller protected go home.
MOTOR_STUCK_LANDINGMotors get stuck.
APP_REQUEST_FORCE_LANDINGApplication has confirmed landing.
UNAUTH_BATTERY_LANDINGUnofficial Battery Detected. Aircraft is landing.
RTH_COMING_OBSTACLE_LANDINGObstacle Detected. Aircraft is landing.
IMU_ERROR_RTHIMU Error. Aircraft returning home.
PALM_LANDStart PalmLand.
UNKNOWNUnknown.
enum FCGoHomeState
enum FCGoHomeState
Declaration:DJI.WindowsSDK
Description:

Flight controller's go-home state.

Enum Members:
IDLEThe aircraft is not executing a Go-Home command.
PREASCENDINGThe aircraft is going up to the height for go-home command.
ALIGNThe aircraft is turning the heading direction to the home point.
ASCENDINGThe aircraft is going up to the height for go-home command.
CRUISEThe aircraft is flying horizontally to home point.
BRAKINGThe aircraft is braking to avoid collision.
AVOID_ASCENDINGThe aircraft is bypassing over the obstacle.
COMPLETEDThe go home execution is completed.
UNKNOWNUnknown.
enum FCWindWarning
enum FCWindWarning
Declaration:DJI.WindowsSDK
Description:

Warning caused by the strong wind.

Enum Members:
LEVEL_0No wind warning.
LEVEL_1The wind speed is high. Fly with caution and ensure the aircraft remains within the line of sight.
LEVEL_2Strong Wind. Fly with caution and ensure the aircraft remains within line of sight. It is more serious than LEVEL_1.
UNKNOWNUnknown.
enum FCCompassCalibrationState
enum FCCompassCalibrationState
Declaration:DJI.WindowsSDK
Description:

Compass Calibration State.

Enum Members:
IDLEIdle. Compass not in calibration.
HORIZONTALCompass horizontal calibration. The user should hold the aircraft horizontally and rotate it 360 degrees.
VERTICALCompass vertical calibration. The user should hold the aircraft vertically, with the nose pointed towards the ground, and rotate the aircraft 360 degrees.
SUCCEEDEDCompass calibration succeeded.
FAILEDCompass calibration failed. Make sure there are no magnets or metal objects near the compass and retry.
UNKNOWNUnknown.
enum FCFailsafeAction
enum FCFailsafeAction
Declaration:DJI.WindowsSDK
Description:

Defines aircraft failsafe action when signal between the remote controller and the aircraft is lost.

Enum Members:
HOVERHover.
LANDINGLanding.
GOHOMEReturn-to-Home.
UNKNOWNUnknown.
enum FCBatteryThresholdBehavior
enum FCBatteryThresholdBehavior
Declaration:DJI.WindowsSDK
Description:

Remaining battery life state. This state describes the recommended action based on remaining battery life.

Enum Members:
FLY_NORMALLYRemaining battery life sufficient for normal flying.
GO_HOMERemaining battery life sufficient to go home.
LAND_IMMEDIATELYRemaining battery life sufficient to land immediately.
UNKNOWNUnknown.
property
property ProductIndex
uint ProductIndex { get; }
Declaration:DJI.WindowsSDK.Components
Description:

The index of the product to which this component handler belongs. The default product index is 0.

property ComponentIndex
uint ComponentIndex { get; }
Declaration:DJI.WindowsSDK.Components
Description:

The index of the component. It is unique for a type of components inside a product. It is useful when a product has multiple handlers of the same kind. If the product only has one handler of this kind, the index is 0.

method ~FlightControllerHandler
~FlightControllerHandler()
Declaration:DJI.WindowsSDK.Components
Description:

The destructor. It should not be called explicitly.

delegate FCGoHomeStateMsgChangedEventHandler
delegate void FCGoHomeStateMsgChangedEventHandler(object sender, FCGoHomeStateMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCGoHomeStateMsg.

delegate FCGPSModeFailureReasonMsgChangedEventHandler
delegate void FCGPSModeFailureReasonMsgChangedEventHandler(object sender, FCGPSModeFailureReasonMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCGPSModeFailureReasonMsg.

delegate FCGPSSignalLevelMsgChangedEventHandler
delegate void FCGPSSignalLevelMsgChangedEventHandler(object sender, FCGPSSignalLevelMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCGPSSignalLevelMsg.

delegate FCFlightModeMsgChangedEventHandler
delegate void FCFlightModeMsgChangedEventHandler(object sender, FCFlightModeMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCFlightModeMsg.

delegate FCRemoteControllerSwitchModeMsgChangedEventHandler
delegate void FCRemoteControllerSwitchModeMsgChangedEventHandler(object sender, FCRemoteControllerSwitchModeMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCRemoteControllerSwitchModeMsg.

delegate FCBatteryThresholdBehaviorMsgChangedEventHandler
delegate void FCBatteryThresholdBehaviorMsgChangedEventHandler(object sender, FCBatteryThresholdBehaviorMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCBatteryThresholdBehaviorMsg.

delegate FCWindWarningMsgChangedEventHandler
delegate void FCWindWarningMsgChangedEventHandler(object sender, FCWindWarningMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCWindWarningMsg.

delegate FCAutoRTHReasonMsgChangedEventHandler
delegate void FCAutoRTHReasonMsgChangedEventHandler(object sender, FCAutoRTHReasonMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCAutoRTHReasonMsg.

delegate FCFailsafeActionMsgChangedEventHandler
delegate void FCFailsafeActionMsgChangedEventHandler(object sender, FCFailsafeActionMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCFailsafeActionMsg.

delegate FCCompassCalibrationStateMsgChangedEventHandler
delegate void FCCompassCalibrationStateMsgChangedEventHandler(object sender, FCCompassCalibrationStateMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCCompassCalibrationStateMsg.

delegate FCMotorStartFailureErrorMsgChangedEventHandler
delegate void FCMotorStartFailureErrorMsgChangedEventHandler(object sender, FCMotorStartFailureErrorMsg? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type FCMotorStartFailureErrorMsg.

delegate IMUStateChangedEventHandler
delegate void IMUStateChangedEventHandler(object sender, IMUState? value)
Declaration:DJI.WindowsSDK
Description:

A delegate type used to subscribe the updated values in type IMUState.

Methods
method
method StartTakeoffAsync
async Task<SDKError> StartTakeoffAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Starts aircraft takeoff. Takeoff is considered complete when the aircraft is hovering 1.2 meters (4 feet) above the ground. The Task value is returned when aircraft crosses 0.5 meters (1.6 feet). If the motors are already on, this command cannot be executed.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StopTakeoffAsync
async Task<SDKError> StopTakeoffAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Stops aircraft takeoff. If called before StartTakeoffAsync is complete, the aircraft will cancel takeoff (StartTakeoffAsync task will return an error) and hover at the current height.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StartAutoLandingAsync
async Task<SDKError> StartAutoLandingAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Starts auto-landing of the aircraft. The task value will return once aircraft begins to descend for auto-land.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StopAutoLandingAsync
async Task<SDKError> StopAutoLandingAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Stops auto-landing of the aircraft. If called before StartAutoLandingAsync is complete, then the auto landing will be canceled (StartAutoLandingAsync task will return an error) and the aircraft will hover at its current location.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StartCompasCalibrationAsync
async Task<SDKError> StartCompasCalibrationAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Starts compass calibration. Make sure there are no magnets or metal objects near the compass.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StopCompassCalibrationAsync
async Task<SDKError> StopCompassCalibrationAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Stops compass calibration.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StartGoHomeAsync
async Task<SDKError> StartGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

The aircraft will start to go home. The task will return execution result once this method is invoked.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StopGoHomeAsync
async Task<SDKError> StopGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

The aircraft will stop going home and will hover in place.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method ConfirmLandingAsync
async Task<SDKError> ConfirmLandingAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Confirms continuation of landing action. When the clearance between the aircraft and the ground is less than 0.3m, the aircraft will pause landing and wait for user's confirmation. Can use GetIsLandingConfirmationNeededAsync to check if confirmation is needed. It is supported by flight controller firmware 3.2.0.0 and above.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetAircraftLocationAsync
async Task<ResultValue<LocationCoordinate2D?>> GetAircraftLocationAsync()
Declaration:DJI.WindowsSDK.Components
Description:

The current location of the aircraft as a coordinate.

Return:
async Task<ResultValue<LocationCoordinate2D?>>A Task<ResultValue<LocationCoordinate2D?>> object.
method GetVelocityAsync
async Task<ResultValue<Velocity3D?>> GetVelocityAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller's velocity in meters per second, using the N-E-D (North-East-Down) coordinate system.

Return:
async Task<ResultValue<Velocity3D?>>A Task<ResultValue<Velocity3D?>> object.
method GetSatelliteCountAsync
async Task<ResultValue<IntMsg?>> GetSatelliteCountAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the GPS satellite count.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetAltitudeAsync
async Task<ResultValue<DoubleMsg?>> GetAltitudeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller's relative altitude of the aircraft relative to take off location, measured by the barometer, in meters.

Return:
async Task<ResultValue<DoubleMsg?>>A Task<ResultValue<DoubleMsg?>> object.
method GetAttitudeAsync
async Task<ResultValue<Attitude?>> GetAttitudeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

The attitude of the aircraft, where the pitch, roll, and yaw values will be in the range of [-180, 180] degrees. If its pitch, roll, and yaw values are 0, the aircraft will be hovering level with a True North heading.

Return:
async Task<ResultValue<Attitude?>>A Task<ResultValue<Attitude?>> object.
method GetAreMotorsOnAsync
async Task<ResultValue<BoolMsg?>> GetAreMotorsOnAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets if motors are on.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsFlyingAsync
async Task<ResultValue<BoolMsg?>> GetIsFlyingAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if aircraft is flying.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetFlightTimeInSecondsAsync
async Task<ResultValue<IntMsg?>> GetFlightTimeInSecondsAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the accumulated flight time, in seconds, since the aircraft was powered on.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetGPSSignalLevelAsync
async Task<ResultValue<FCGPSSignalLevelMsg?>> GetGPSSignalLevelAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the aircraft's current GPS signal quality.

Return:
async Task<ResultValue<FCGPSSignalLevelMsg?>>A Task<ResultValue<FCGPSSignalLevelMsg?>> object.
method GetFlightModeAsync
async Task<ResultValue<FCFlightModeMsg?>> GetFlightModeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller's flight mode.

Return:
async Task<ResultValue<FCFlightModeMsg?>>A Task<ResultValue<FCFlightModeMsg?>> object.
method GetIsVisionSensorUsedAsync
async Task<ResultValue<BoolMsg?>> GetIsVisionSensorUsedAsync()
Declaration:DJI.WindowsSDK.Components
Description:

true if the vision positioning sensor is being used. Variables that can impact the quality of the vision measurement, or whether it's being used, are height above ground and the type of ground (if it has sufficiently rich texture). Usually, the vision sensor works when the aircraft is less than 3m above ground.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetFCRemoteControllerSwitchModeAsync
async Task<ResultValue<FCRemoteControllerSwitchModeMsg?>> GetFCRemoteControllerSwitchModeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller mode mapped from the remote controller switch.

Return:
async Task<ResultValue<FCRemoteControllerSwitchModeMsg?>>A Task<ResultValue<FCRemoteControllerSwitchModeMsg?>> object.
method GetCompassHasErrorAsync
async Task<ResultValue<BoolMsg?>> GetCompassHasErrorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

true if the compass has an error. If true, the compass needs calibration.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetESCHasErrorAsync
async Task<ResultValue<BoolMsg?>> GetESCHasErrorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

true if the ESCs have errors.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetAutoRTHReasonAsync
async Task<ResultValue<FCAutoRTHReasonMsg?>> GetAutoRTHReasonAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the reason that explains why the auto RTH is triggered.

Return:
async Task<ResultValue<FCAutoRTHReasonMsg?>>A Task<ResultValue<FCAutoRTHReasonMsg?>> object.
method GetHasNoEnoughForceAsync
async Task<ResultValue<BoolMsg?>> GetHasNoEnoughForceAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft does not have enough force to fly.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsIMUWarmingUpAsync
async Task<ResultValue<BoolMsg?>> GetIsIMUWarmingUpAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the IMU is warming up.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetGPSModeFailureReasonAsync
async Task<ResultValue<FCGPSModeFailureReasonMsg?>> GetGPSModeFailureReasonAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the reason that explains why the flight controller failed to enter GPS mode.

Return:
async Task<ResultValue<FCGPSModeFailureReasonMsg?>>A Task<ResultValue<FCGPSModeFailureReasonMsg?>> object.
method GetNoPropellerInstalledAsync
async Task<ResultValue<BoolMsg?>> GetNoPropellerInstalledAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if there is no propeller installed.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetGoHomeStateAsync
async Task<ResultValue<FCGoHomeStateMsg?>> GetGoHomeStateAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the go home state. The go-home operation consists serveral phases. Use this state to check the current phase.

Return:
async Task<ResultValue<FCGoHomeStateMsg?>>A Task<ResultValue<FCGoHomeStateMsg?>> object.
method GetMotorStartFailureErrorAsync
async Task<ResultValue<FCMotorStartFailureErrorMsg?>> GetMotorStartFailureErrorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the reason that explains why the flight controller failed to start motors.

Return:
async Task<ResultValue<FCMotorStartFailureErrorMsg?>>A Task<ResultValue<FCMotorStartFailureErrorMsg?>> object.
method GetHomeLocationAsync
async Task<ResultValue<LocationCoordinate2D?>> GetHomeLocationAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the home point location coordinate.

Return:
async Task<ResultValue<LocationCoordinate2D?>>A Task<ResultValue<LocationCoordinate2D?>> object.
method GetIsHomeLocationSetAsync
async Task<ResultValue<BoolMsg?>> GetIsHomeLocationSetAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the home point is set.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method SetNoviceModeEnabledAsync
async Task<SDKError> SetNoviceModeEnabledAsync(BoolMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Enables novice mode. When novice mode is enabled, the flight speed will become slower and less responsive handling. For aircrafts that have obstacle sensors on left and right, enabling novice mode will enable those sensors.

Input Parameters:
BoolMsg valueA parameter object of type BoolMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetNoviceModeEnabledAsync
async Task<ResultValue<BoolMsg?>> GetNoviceModeEnabledAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines whether novice mode is enabled or not. If novice mode is enabled, the flight speed is slower and less responsive handling. For aircrafts that have obstacle sensors on left and right, enabling novice mode will enable those sensors.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsNearHeightLimitAsync
async Task<ResultValue<BoolMsg?>> GetIsNearHeightLimitAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is already close to the height limitation.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsNearDistanceLimitAsync
async Task<ResultValue<BoolMsg?>> GetIsNearDistanceLimitAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is already close to the distance limitation.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetCompassInstallErrorAsync
async Task<ResultValue<BoolMsg?>> GetCompassInstallErrorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the compass has installation error.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetHasIceOnPropellersAsync
async Task<ResultValue<BoolMsg?>> GetHasIceOnPropellersAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if there is ice on the propellers.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetTakeoffLocationAltitudeAsync
async Task<ResultValue<DoubleMsg?>> GetTakeoffLocationAltitudeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the altitude of the place from which the aircraft took off.

Return:
async Task<ResultValue<DoubleMsg?>>A Task<ResultValue<DoubleMsg?>> object.
method GetIsSimulatorStartedAsync
async Task<ResultValue<BoolMsg?>> GetIsSimulatorStartedAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the simulator is started.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetWindWarningAsync
async Task<ResultValue<FCWindWarningMsg?>> GetWindWarningAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets Warning related to high winds.

Return:
async Task<ResultValue<FCWindWarningMsg?>>A Task<ResultValue<FCWindWarningMsg?>> object.
method GetIsESCDisconnectedAsync
async Task<ResultValue<BoolMsg?>> GetIsESCDisconnectedAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if there are any ESCs disconnected.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsMotorStuckAsync
async Task<ResultValue<BoolMsg?>> GetIsMotorStuckAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if any motors got stuck.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method StartIMUCalibrationAsync
async Task<SDKError> StartIMUCalibrationAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Starts IMU calibration. For aircraft with multiple IMUs, this method will start the calibration of all IMUs. Keep the aircraft stationary and horizontal during calibration, which will take 5 to 10 minutes. The task result is returned once the calibration is started.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetIsLandingConfirmationNeededAsync
async Task<ResultValue<BoolMsg?>> GetIsLandingConfirmationNeededAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the clearance between the aircraft and the ground is less than 0.3m, and confirmation from the user is needed to continue the landing. When the confirmation is needed, ConfirmLandingAsync can be used to continue landing. It is supported by flight controller firmware 3.2.0.0 or above.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsCompassCalibratingAsync
async Task<ResultValue<BoolMsg?>> GetIsCompassCalibratingAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the compass is calibrating.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetCompassCalibrationStateAsync
async Task<ResultValue<FCCompassCalibrationStateMsg?>> GetCompassCalibrationStateAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the compass calibration state.

Return:
async Task<ResultValue<FCCompassCalibrationStateMsg?>>A Task<ResultValue<FCCompassCalibrationStateMsg?>> object.
method GetFailsafeActionAsync
async Task<ResultValue<FCFailsafeActionMsg?>> GetFailsafeActionAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the FailSafe action for when the connection between remote controller and aircraft is lost.

Return:
async Task<ResultValue<FCFailsafeActionMsg?>>A Task<ResultValue<FCFailsafeActionMsg?>> object.
method SetFailsafeActionAsync
async Task<SDKError> SetFailsafeActionAsync(FCFailsafeActionMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the FailSafe action for when the connection between remote controller and aircraft is lost.

Input Parameters:
FCFailsafeActionMsg valueA parameter object of type FCFailsafeActionMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetGoHomeHeightAsync
async Task<ResultValue<IntMsg?>> GetGoHomeHeightAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the minimum altitude (relative to the take-off location in meters) at which the aircraft must be before going home.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method SetGoHomeHeightAsync
async Task<SDKError> SetGoHomeHeightAsync(IntMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the minimum altitude, relative to where the aircraft took off, at which the aircraft must be before going home. This can be useful when the user foresees obstacles in the aircraft's flight path. If the aircraft's current altitude is higher than the minimum go home altitude, it will go home at its current altitude. The valid range for the altitude is from 20m to 500m.

Input Parameters:
IntMsg valueA parameter object of type IntMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetHeightLimitAsync
async Task<ResultValue<IntMsg?>> GetHeightLimitAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the maximum flight height limitation in meters of the aircraft.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method SetHeightLimitAsync
async Task<SDKError> SetHeightLimitAsync(IntMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the maximum flight height limitation of the aircraft. The maxHeight value must be in the range [20, 500] m.

Input Parameters:
IntMsg valueA parameter object of type IntMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetDistanceLimitAsync
async Task<ResultValue<IntMsg?>> GetDistanceLimitAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the maximum flight radius limitation of the aircraft.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method SetDistanceLimitAsync
async Task<SDKError> SetDistanceLimitAsync(IntMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the maximum flight radius limitation of the aircraft. The radius is calculated from the home point. The maxRadius value must be in the range [15, 500] m.

Input Parameters:
IntMsg valueA parameter object of type IntMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method SetGroundStationModeEnabledAsync
async Task<SDKError> SetGroundStationModeEnabledAsync(BoolMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Enables the ground station mode. It is the pre-condition to start a waypoint mission. Disabling this mode during the waypoint execution will stop the waypoint mission.

Input Parameters:
BoolMsg valueA parameter object of type BoolMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetGroundStationModeEnabledAsync
async Task<ResultValue<BoolMsg?>> GetGroundStationModeEnabledAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the ground station mode is enabled.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method SetAircraftNameAsync
async Task<SDKError> SetAircraftNameAsync(StringMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets a name for the aircraft.

Input Parameters:
StringMsg valueA parameter object of type StringMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetAircraftNameAsync
async Task<ResultValue<StringMsg?>> GetAircraftNameAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the name of the aircraft.

Return:
async Task<ResultValue<StringMsg?>>A Task<ResultValue<StringMsg?>> object.
method GetRemainingFlightTimeAsync
async Task<ResultValue<IntMsg?>> GetRemainingFlightTimeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets The estimated remaining time, in seconds, it will take the aircraft to go home with a 10% battery buffer remaining. This time includes landing the aircraft. If the aircraft is using the simulator, this value will be 0.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetTimeNeededToGoHomeAsync
async Task<ResultValue<IntMsg?>> GetTimeNeededToGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the estimated time, in seconds, needed for the aircraft to go home from its current location.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetTimeNeededToLandAsync
async Task<ResultValue<IntMsg?>> GetTimeNeededToLandAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the estimated time, in seconds, needed for the aircraft to move downward from its current position and land.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetBatteryPercentNeededToGoHomeAsync
async Task<ResultValue<IntMsg?>> GetBatteryPercentNeededToGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the estimated battery percentage, in the range of [0,100], needed for the aircraft to go home and have 10% battery remaining. This includes landing of the aircraft.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetBatteryPercentNeededToLandAsync
async Task<ResultValue<IntMsg?>> GetBatteryPercentNeededToLandAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the battery percentage, in the range of [0,100], needed for the aircraft to move downward from its current position and land.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetMaxRadiusCanFlyAndGoHomeAsync
async Task<ResultValue<DoubleMsg?>> GetMaxRadiusCanFlyAndGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the maximum radius, in meters, an aircraft can fly from its home location and still make it all the way back home, based on altitude, distance, battery, etc. If the aircraft goes out farther than the max radius, it will fly as far back home as it can and land. If the aircraft is using the simulator, this value will be 0.

Return:
async Task<ResultValue<DoubleMsg?>>A Task<ResultValue<DoubleMsg?>> object.
method GetShouldGoHomeAsync
async Task<ResultValue<BoolMsg?>> GetShouldGoHomeAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft should go home now because the battery becomes low.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetSmartRTHCountdownAsync
async Task<ResultValue<IntMsg?>> GetSmartRTHCountdownAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the countdown (in seconds) for the Smart Return-To-Home (RTH). Once the countdown reaches 0, the aircraft will execute an automatic go-home procedure.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method GetRequireGoHomeByLowBatteryVoltageAsync
async Task<ResultValue<BoolMsg?>> GetRequireGoHomeByLowBatteryVoltageAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is required to go home because of the low battery voltage.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetRequireLandingByLowBatteryVoltageAsync
async Task<ResultValue<BoolMsg?>> GetRequireLandingByLowBatteryVoltageAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is required to land because of the low battery voltage.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetRequireGoHomeBySmartBatteryPercentAsync
async Task<ResultValue<BoolMsg?>> GetRequireGoHomeBySmartBatteryPercentAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is required to go home because of low remaining charge in percent.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetRequireLandingBySmartBatteryPercentAsync
async Task<ResultValue<BoolMsg?>> GetRequireLandingBySmartBatteryPercentAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the aircraft is required to land because of low remaining charge in percent.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetLowBatteryWarningThresholdAsync
async Task<ResultValue<IntMsg?>> GetLowBatteryWarningThresholdAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller's low battery threshold as a percent.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method SetLowBatteryWarningThresholdAsync
async Task<SDKError> SetLowBatteryWarningThresholdAsync(IntMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the flight controller's low battery threshold as a percent. The percentage must be in the range of [15, 50].

Input Parameters:
IntMsg valueA parameter object of type IntMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetSeriousLowBatteryWarningThresholdAsync
async Task<ResultValue<IntMsg?>> GetSeriousLowBatteryWarningThresholdAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the flight controller's serious low battery threshold as a percent.

Return:
async Task<ResultValue<IntMsg?>>A Task<ResultValue<IntMsg?>> object.
method SetSeriousLowBatteryWarningThresholdAsync
async Task<SDKError> SetSeriousLowBatteryWarningThresholdAsync(IntMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Sets the flight controller's serious low battery threshold as a percent. The minimum value is 10. The maximum value is value from SetLowBatteryWarningThresholdAsync minus 5.

Input Parameters:
IntMsg valueA parameter object of type IntMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetIsLowBatteryWarningAsync
async Task<ResultValue<BoolMsg?>> GetIsLowBatteryWarningAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the remaining charge is lower than the low threshold.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetIsSeriousLowBatteryWarningAsync
async Task<ResultValue<BoolMsg?>> GetIsSeriousLowBatteryWarningAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if the remaining charge is lower than the serious low threshold.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method SetESCBeepEnabledAsync
async Task<SDKError> SetESCBeepEnabledAsync(BoolMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Enables ESC to beep.

Input Parameters:
BoolMsg valueA parameter object of type BoolMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetESCBeepEnabledAsync
async Task<ResultValue<BoolMsg?>> GetESCBeepEnabledAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets if the ESC is beeping.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method StartSimulatorAsync
async Task<SDKError> StartSimulatorAsync(SimulatorInitializationSettings value)
Declaration:DJI.WindowsSDK.Components
Description:

Starts the simulator.

Input Parameters:
SimulatorInitializationSettings valueA parameter object of type SimulatorInitializationSettings.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method StopSimulatorAsync
async Task<SDKError> StopSimulatorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Stops the simulator.

Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetBatteryThresholdBehaviorAsync
async Task<ResultValue<FCBatteryThresholdBehaviorMsg?>> GetBatteryThresholdBehaviorAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the recommended action based on remaining battery life.

Return:
async Task<ResultValue<FCBatteryThresholdBehaviorMsg?>>A Task<ResultValue<FCBatteryThresholdBehaviorMsg?>> object.
method SetMultipleFlightModeEnabledAsync
async Task<SDKError> SetMultipleFlightModeEnabledAsync(BoolMsg value)
Declaration:DJI.WindowsSDK.Components
Description:

Enables/disables multiple-flight mode. When multiple-flight mode is enabled, user can change the aircraft's mode to P/F/A/S mode by toggling the switch on the remote controller. If it is disabled, the aircraft will be in P mode.

Input Parameters:
BoolMsg valueA parameter object of type BoolMsg.
Return:
async Task<SDKError>A Task<SDKErrorCode> object.
method GetMultipleFlightModeEnabledAsync
async Task<ResultValue<BoolMsg?>> GetMultipleFlightModeEnabledAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines whether multiple-flight mode is enabled. When multiple-flight mode is enabled, user can change the aircraft's mode to P/F/A/S mode by toggling the switch on the remote controller. If it is disabled, the aircraft will be in P mode.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetConnectionAsync
async Task<ResultValue<BoolMsg?>> GetConnectionAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Determines if a component is connected or not.

Return:
async Task<ResultValue<BoolMsg?>>A Task<ResultValue<BoolMsg?>> object.
method GetSerialNumberAsync
async Task<ResultValue<StringMsg?>> GetSerialNumberAsync()
Declaration:DJI.WindowsSDK.Components
Description:

Gets the serial number of the component.

Return:
async Task<ResultValue<StringMsg?>>A Task<ResultValue<StringMsg?>> object.
event AircraftLocationChanged
event LocationCoordinate2DChangedEventHandler AircraftLocationChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the aircraft's location.

event VelocityChanged
event Velocity3DChangedEventHandler VelocityChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's velocity. It is in meters per second, using the N-E-D (North-East-Down) coordinate system.

event SatelliteCountChanged
event IntMsgChangedEventHandler SatelliteCountChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's GPS satellite count.

event AltitudeChanged
event DoubleMsgChangedEventHandler AltitudeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's altitude relative to take off location, measured by the barometer, in meters.

event AttitudeChanged
event AttitudeChangedEventHandler AttitudeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's attitude, where the pitch, roll, and yaw values will be in the range of [-180, 180] degrees. If its pitch, roll, and yaw values are 0, the aircraft will be hovering level with a True North heading.

event AreMotorsOnChanged
event BoolMsgChangedEventHandler AreMotorsOnChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive if the motors are on.

event IsFlyingChanged
event BoolMsgChangedEventHandler IsFlyingChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is flying.

event FlightTimeInSecondsChanged
event IntMsgChangedEventHandler FlightTimeInSecondsChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's flight time.

event GPSSignalLevelChanged
event FCGPSSignalLevelMsgChangedEventHandler GPSSignalLevelChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's GPS signal quality.

event FlightModeChanged
event FCFlightModeMsgChangedEventHandler FlightModeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's flight mode.

event IsVisionSensorUsedChanged
event BoolMsgChangedEventHandler IsVisionSensorUsedChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the vision positioning sensor is being used. Variables that can impact the quality of the vision measurement, or whether it's being used, are height above ground and the type of ground (if it has sufficiently rich texture). Usually, the vision sensor works when the aircraft is less than 3m above ground.

event FCRemoteControllerSwitchModeChanged
event FCRemoteControllerSwitchModeMsgChangedEventHandler FCRemoteControllerSwitchModeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's mode mapped from the remote controller switch.

event CompassHasErrorChanged
event BoolMsgChangedEventHandler CompassHasErrorChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the compass has error. If true, the compass needs calibration.

event ESCHasErrorChanged
event BoolMsgChangedEventHandler ESCHasErrorChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of ESCs' error state.

event AutoRTHReasonChanged
event FCAutoRTHReasonMsgChangedEventHandler AutoRTHReasonChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the reason that explains why the auto RTH is triggered.

event HasNoEnoughForceChanged
event BoolMsgChangedEventHandler HasNoEnoughForceChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft does not have enough force to fly.

event IsIMUWarmingUpChanged
event BoolMsgChangedEventHandler IsIMUWarmingUpChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the IMU is warming up.

event GPSModeFailureReasonChanged
event FCGPSModeFailureReasonMsgChangedEventHandler GPSModeFailureReasonChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the reason that explains why the flight controller failed to enter GPS mode.

event NoPropellerInstalledChanged
event BoolMsgChangedEventHandler NoPropellerInstalledChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether there is no propeller installed.

event GoHomeStateChanged
event FCGoHomeStateMsgChangedEventHandler GoHomeStateChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the go home state. The go-home operation consists serveral phases. Use this state to check the current phase.

event MotorStartFailureErrorChanged
event FCMotorStartFailureErrorMsgChangedEventHandler MotorStartFailureErrorChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the reason that explains why the flight controller failed to start motors.

event HomeLocationChanged
event LocationCoordinate2DChangedEventHandler HomeLocationChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's home point location coordinate.

event IsHomeLocationSetChanged
event BoolMsgChangedEventHandler IsHomeLocationSetChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the home point location has been set.

event NoviceModeEnabledChanged
event BoolMsgChangedEventHandler NoviceModeEnabledChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the novice mode is enabled.

event IsNearHeightLimitChanged
event BoolMsgChangedEventHandler IsNearHeightLimitChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is already close to the height limitation.

event IsNearDistanceLimitChanged
event BoolMsgChangedEventHandler IsNearDistanceLimitChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is already close to the distance limitation.

event CompassInstallErrorChanged
event BoolMsgChangedEventHandler CompassInstallErrorChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the compass has installation error.

event HasIceOnPropellersChanged
event BoolMsgChangedEventHandler HasIceOnPropellersChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether there is ice on the propellers.

event TakeoffLocationAltitudeChanged
event DoubleMsgChangedEventHandler TakeoffLocationAltitudeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the altitude from which the aircraft took off.

event IsSimulatorStartedChanged
event BoolMsgChangedEventHandler IsSimulatorStartedChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the simulator is started.

event WindWarningChanged
event FCWindWarningMsgChangedEventHandler WindWarningChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the high wind warning.

event IsESCDisconnectedChanged
event BoolMsgChangedEventHandler IsESCDisconnectedChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes that .

event IsMotorStuckChanged
event BoolMsgChangedEventHandler IsMotorStuckChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether any motors got stuck.

event IsLandingConfirmationNeededChanged
event BoolMsgChangedEventHandler IsLandingConfirmationNeededChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether confirmation from the user is needed to continue the landing. Confirmation is needed when the clearance between the aircraft and the ground is less than 0.3m, and the flight controller is not sure if it is safe to continue the landing. When the confirmation is needed, ConfirmLandingAsync can be used to continue landing. It is supported by flight controller firmware 3.2.0.0 or above.

event IsCompassCalibratingChanged
event BoolMsgChangedEventHandler IsCompassCalibratingChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the compass is calibrating.

event CompassCalibrationStateChanged
event FCCompassCalibrationStateMsgChangedEventHandler CompassCalibrationStateChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the compass's state.

event FailsafeActionChanged
event FCFailsafeActionMsgChangedEventHandler FailsafeActionChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the FailSafe action for when the connection between remote controller and aircraft is lost.

event GoHomeHeightChanged
event IntMsgChangedEventHandler GoHomeHeightChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's minimum altitude (relative to the take-off location in meters) at which the aircraft must be before going home.

event HeightLimitChanged
event IntMsgChangedEventHandler HeightLimitChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the maximum flight height limitation in meters of the aircraft.

event DistanceLimitChanged
event IntMsgChangedEventHandler DistanceLimitChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the maximum flight radius limitation of the aircraft.

event GroundStationModeEnabledChanged
event BoolMsgChangedEventHandler GroundStationModeEnabledChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the ground station mode is enabled.

event AircraftNameChanged
event StringMsgChangedEventHandler AircraftNameChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the aircraft's name.

event RemainingFlightTimeChanged
event IntMsgChangedEventHandler RemainingFlightTimeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's estimated remaining flight time, in seconds. This is the time it will take the aircraft to go home with a 10% battery buffer remaining. This time includes landing the aircraft. If the aircraft is using the simulator, this value will be 0.

event TimeNeededToGoHomeChanged
event IntMsgChangedEventHandler TimeNeededToGoHomeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's .

event TimeNeededToLandChanged
event IntMsgChangedEventHandler TimeNeededToLandChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the estimated time, in seconds, needed for the aircraft to move downward from its current position and land..

event BatteryPercentNeededToGoHomeChanged
event IntMsgChangedEventHandler BatteryPercentNeededToGoHomeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the estimated battery percentage, in the range of [0,100], needed for the aircraft to go home and have 10% battery remaining. This includes landing of the aircraft..

event BatteryPercentNeededToLandChanged
event IntMsgChangedEventHandler BatteryPercentNeededToLandChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the battery percentage, in the range of [0,100], needed for the aircraft to move downward from its current position and land..

event MaxRadiusCanFlyAndGoHomeChanged
event DoubleMsgChangedEventHandler MaxRadiusCanFlyAndGoHomeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the maximum radius, in meters, an aircraft can fly from its home location and still make it all the way back home, based on altitude, distance, battery, etc. If the aircraft goes out farther than the max radius, it will fly as far back home as it can and land. If the aircraft is using the simulator, this value will be 0..

event ShouldGoHomeChanged
event BoolMsgChangedEventHandler ShouldGoHomeChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft should go home now because the battery becomes low.

event SmartRTHCountdownChanged
event IntMsgChangedEventHandler SmartRTHCountdownChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's countdown (in seconds) for the Smart Return-To-Home (RTH). Once the countdown reaches 0, the aircraft will execute an automatic go-home procedure. .

event RequireGoHomeByLowBatteryVoltageChanged
event BoolMsgChangedEventHandler RequireGoHomeByLowBatteryVoltageChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is required to go home because of the low battery voltage.

event RequireLandingByLowBatteryVoltageChanged
event BoolMsgChangedEventHandler RequireLandingByLowBatteryVoltageChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is required to land because of the low battery voltage.

event RequireGoHomeBySmartBatteryPercentChanged
event BoolMsgChangedEventHandler RequireGoHomeBySmartBatteryPercentChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is required to go home because of low remaining charge in percent.

event RequireLandingBySmartBatteryPercentChanged
event BoolMsgChangedEventHandler RequireLandingBySmartBatteryPercentChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the aircraft is required to land because of low remaining charge in percent.

event LowBatteryWarningThresholdChanged
event IntMsgChangedEventHandler LowBatteryWarningThresholdChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's low battery threshold as a percent.

event SeriousLowBatteryWarningThresholdChanged
event IntMsgChangedEventHandler SeriousLowBatteryWarningThresholdChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the flight controller's serious low battery threshold as a percent.

event IsLowBatteryWarningChanged
event BoolMsgChangedEventHandler IsLowBatteryWarningChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the remaining charge is lower than the low threshold.

event IsSeriousLowBatteryWarningChanged
event BoolMsgChangedEventHandler IsSeriousLowBatteryWarningChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the remaining charge is lower than the serious low threshold.

event ESCBeepEnabledChanged
event BoolMsgChangedEventHandler ESCBeepEnabledChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes about whether the ESC is beeping.

event BatteryThresholdBehaviorChanged
event FCBatteryThresholdBehaviorMsgChangedEventHandler BatteryThresholdBehaviorChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive changes of the recommended action based on remaining battery life..

event ConnectionChanged
event BoolMsgChangedEventHandler ConnectionChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive a component's connection change.

event SerialNumberChanged
event StringMsgChangedEventHandler SerialNumberChanged
Declaration:DJI.WindowsSDK.Components
Description:

Subscribe the event to receive the change of the component's serial number.