java.lang.Object | ||
↳ | dji.sdk.base.DJIBaseComponent | |
↳ | dji.sdk.RemoteController.DJIRemoteController |
This class represents the remote controller of the aircraft. It provides methods to change the settings of the physical remote controller. For some products (e.g. Inspire 1 and Matrice 100), the class provides methods to manage the slave/master mode of the remote controllers. A remote controller is a device that can have a GPS, battery, radio, buttons, sticks, wheels, and output ports for video. The mobile device is connected to the remote controller, which is always sending out information about what everything is doing. The normal remote controller is called the master. A slave wirelessly connects to the master remote controller at 5 GHz, and the aircraft can also download information to the slave. The slave can send gimbal control commands to the master. This configuration allows one person to fly the aircraft while another person controls the gimbal.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
class | DJIRemoteController.DJIRCBatteryInfo | Remote Controller's battery information. | |||||||||
class | DJIRemoteController.DJIRCControlChannel | Remote controller's channel. | |||||||||
enum | DJIRemoteController.DJIRCControlChannelName | Remote Controller control channels. | |||||||||
class | DJIRemoteController.DJIRCControlMode | The control mode of a Remote Controller, it can be a Chinese, or Japanese, or American style. | |||||||||
class | DJIRemoteController.DJIRCControlPermission | Class for RC control permission. | |||||||||
enum | DJIRemoteController.DJIRCControlStyle | Remote controller's control style. | |||||||||
class | DJIRemoteController.DJIRCGPSData | Remote Controller's GPS data. | |||||||||
enum | DJIRemoteController.DJIRCGimbalControlDirection | Defines what the Gimbal Dial (upper left wheel on the Remote Controller) will control. | |||||||||
class | DJIRemoteController.DJIRCGimbalControlSpeed | DJI RC gimbal control speed | |||||||||
class | DJIRemoteController.DJIRCGpsTime | Remote Controller's GPS time. | |||||||||
class | DJIRemoteController.DJIRCHardwareButton | Remote Controller has numerous momentary push buttons, which will use this state. | |||||||||
class | DJIRemoteController.DJIRCHardwareFlightModeSwitch | The value of the Remote Controller's flight mode switch. | |||||||||
enum | DJIRemoteController.DJIRCHardwareFlightModeSwitchState | The state of flight mode switch button on the upper left of a Remote Controller. | |||||||||
class | DJIRemoteController.DJIRCHardwareJoystick | Remote Controller's hardware joystick | |||||||||
class | DJIRemoteController.DJIRCHardwareLeftWheel | the hardware left wheel of the Remote Controller | |||||||||
class | DJIRemoteController.DJIRCHardwareRightWheel | Current state of the Camera Settings Dial (upper right wheel on the Remote Controller). | |||||||||
class | DJIRemoteController.DJIRCHardwareState | Remote Controller's current state. | |||||||||
class | DJIRemoteController.DJIRCHardwareTransformationSwitch | Transformation Switch position. | |||||||||
enum | DJIRemoteController.DJIRCHardwareTransformationSwitchState | Transformation Switch position states. | |||||||||
class | DJIRemoteController.DJIRCInfo | This class contains the information of a remote controller. | |||||||||
enum | DJIRemoteController.DJIRCJoinMasterResult | Results when a slave Remote Controller tries to join a master Remote Controller. | |||||||||
enum | DJIRemoteController.DJIRCRemoteFocusControlDirection | Remote Focus Control Direction. | |||||||||
enum | DJIRemoteController.DJIRCRemoteFocusControlType | Remote Focus Control Type. | |||||||||
class | DJIRemoteController.DJIRCRemoteFocusState | Remote Controller's Remote Focus State The focus product has one dial (focus control) that controls two separate parts of the camera: focal length and aperture. | |||||||||
enum | DJIRemoteController.DJIRCRequestGimbalControlResult | Result when a slave requests permission to control the gimbal. | |||||||||
enum | DJIRemoteController.DJIRCToAircraftPairingState | Remote controller pairing state. | |||||||||
enum | DJIRemoteController.DJIRemoteControllerMode | Remote Controller mode of operation can be normal (single RC connected to aircraft), master, slave, or unknown | |||||||||
interface | DJIRemoteController.RCBatteryStateUpdateCallback | Callback function that updates the Remote Controller's current battery state. | |||||||||
interface | DJIRemoteController.RCGpsDataUpdateCallback | Callback function that updates the Remote Controller's current GPS data. | |||||||||
interface | DJIRemoteController.RCHardwareStateUpdateCallback | Callback function that updates the Remote Controller's current hardware state. | |||||||||
interface | DJIRemoteController.RCReceiveGimbalControlRequestFromSlaveCallback | The callback will handle the gimbal control request. | |||||||||
interface | DJIRemoteController.RCRemoteFocusStateUpdateCallback | Callback function that updates the Remote Focus State. |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
DJIRemoteController() |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
abstract void | enterRCPairingMode(DJIBaseComponent.DJICompletionCallback callback) Enters pairing mode, where the Remote Controller starts pairing with the aircraft. | ||||||||||
abstract void | exitRCPairingMode(DJIBaseComponent.DJICompletionCallback callback) Exits pairing mode. | ||||||||||
abstract void | getAvailableMasters(DJICompletionCallbackWith<List<DJIRemoteController.DJIRCInfo>> callback) Starts search by slave Remote Controller for nearby master Remote Controllers. | ||||||||||
DJIRemoteController.RCBatteryStateUpdateCallback | getBatteryStateUpdateCallback() Gets the BatteryStateUpdateCallback | ||||||||||
DJIRemoteController.RCReceiveGimbalControlRequestFromSlaveCallback | getGimbalControlRequestFromSlaveReceivedCallback() Gets the GimbalControlRequestFromSlaveReceivedCallback | ||||||||||
DJIRemoteController.RCGpsDataUpdateCallback | getGpsDataUpdateCallback() Get the GPSDataUpdateCallback | ||||||||||
DJIRemoteController.RCHardwareStateUpdateCallback | getHardwareStateUpdateCallback() Get the getHardwareStateUpdateCallback | ||||||||||
abstract void | getJoinedMasterNameAndPassword(DJICompletionCallbackWithThreeParam<Integer, String, String> callback) Returns the master's information, which includes the ID, name, and password. | ||||||||||
abstract void | getMasterRCSearchState(DJICompletionCallbackWith<Boolean> callback) Returns the state of the master Remote Controller search. | ||||||||||
abstract void | getRCControlGimbalDirection(DJICompletionCallbackWith<DJIRemoteController.DJIRCGimbalControlDirection> callback) Gets which of the gimbal directions the top left wheel on the Remote Controller will control. | ||||||||||
abstract void | getRCControlMode(DJICompletionCallbackWith<DJIRemoteController.DJIRCControlMode> callback) Gets the master Remote Controller's control mode. | ||||||||||
abstract void | getRCCustomButtonTag(DJICompletionCallbackWithTwoParam<Short, Short> callback) Gets the custom buttons' tags. | ||||||||||
abstract void | getRCName(DJICompletionCallbackWith<String> callback) Gets the Remote Controller's name. | ||||||||||
abstract void | getRCPassword(DJICompletionCallbackWith<String> callback) Gets the Remote Controller's password. | ||||||||||
DJIRemoteController.RCRemoteFocusStateUpdateCallback | getRCRemoteFocusStateUpdateCallback() Gets the GimbalControlRequestFromSlaveReceivedCallback | ||||||||||
abstract void | getRCToAircraftPairingState(DJICompletionCallbackWith<DJIRemoteController.DJIRCToAircraftPairingState> callback) Gets the pairing status as the Remote Controller is pairing with the aircraft. | ||||||||||
abstract void | getRCWheelControlGimbalSpeed(DJICompletionCallbackWith<Short> callback) Gets the gimbal's pitch speed for the Remote Controller's upper left wheel. | ||||||||||
abstract void | getRemoteControllerMode(DJICompletionCallbackWithTwoParam<DJIRemoteController.DJIRemoteControllerMode, Boolean> callback) Gets the Remote Controller's work mode. | ||||||||||
void | getSerialNumber(DJICompletionCallbackWith<String> callback) Get serial number of the component. | ||||||||||
abstract void | getSlaveControlMode(DJICompletionCallbackWith<DJIRemoteController.DJIRCControlMode> callback) Gets the current slave's control mode. | ||||||||||
abstract void | getSlaveJoystickControlGimbalSpeed(DJICompletionCallbackWith<DJIRemoteController.DJIRCGimbalControlSpeed> callback) Gets the current slave's gimbal's pitch, roll, and yaw speed. | ||||||||||
abstract void | getSlaveList(DJICompletionCallbackWith<List<DJIRemoteController.DJIRCInfo>> callback) Used by the current master Remote Controller to get all the slaves connected to it. | ||||||||||
abstract void | getVersion(DJICompletionCallbackWith<String> callback) Get Remote Controller's firmware version. | ||||||||||
boolean | isConnected() This method is designed to provide the connection status of the RC | ||||||||||
abstract boolean | isMasterSlaveModeSupported() Query method to check if the RC supports master/slave mode. | ||||||||||
abstract boolean | isRCRemoteFocusCheckingSupported() Query method to check if the Remote Controller supports Remote Focus State Checking. | ||||||||||
abstract void | joinMaster(int hostId, String masterName, String masterPassword, DJICompletionCallbackWith<DJIRemoteController.DJIRCJoinMasterResult> callback) Used by a slave Remote Controller to request to join a master Remote Controller and be able to control the gimbal. | ||||||||||
abstract void | removeMaster(int masterId, DJIBaseComponent.DJICompletionCallback callback) Removes a master Remote Controller from the current slave Remote Controller. | ||||||||||
abstract void | removeSlave(int slaveId, DJIBaseComponent.DJICompletionCallback callback) Returns the state of the master Remote Controller search. | ||||||||||
abstract void | requestGimbalControlRight(DJICompletionCallbackWith<DJIRemoteController.DJIRCRequestGimbalControlResult> callback) Even after a Remote Controller becomes a slave Remote Controller, this method must be called by the slave Remote Controller to request the master Remote Controller to control the gimbal. | ||||||||||
abstract void | responseRequesterForGimbalControlRight(int requesterId, boolean isAgree) When a slave Remote Controller requests a master Remote Controller to control the gimbal, this method is used by a master Remote Controller to respond to the slave Remote Controller's request. | ||||||||||
void | setBatteryStateUpdateCallback(DJIRemoteController.RCBatteryStateUpdateCallback batteryStateUpdateCallback) Sets the BatteryStateUpdateCallback | ||||||||||
void | setGimbalControlRequestFromSlaveReceivedCallback(DJIRemoteController.RCReceiveGimbalControlRequestFromSlaveCallback gimbalControlRequestFromSlaveReceivedCallback) Sets gimbalControlRequestFromSlaveReceivedCallback | ||||||||||
void | setGpsDataUpdateCallback(DJIRemoteController.RCGpsDataUpdateCallback gpsDataUpdateCallback) Set the GPSDataUpdateCallback | ||||||||||
void | setHardwareStateUpdateCallback(DJIRemoteController.RCHardwareStateUpdateCallback hardwareStateUpdateCallback) Set the HardwareStateUpdateCallback | ||||||||||
abstract void | setRCControlGimbalDirection(DJIRemoteController.DJIRCGimbalControlDirection direction, DJIBaseComponent.DJICompletionCallback callback) Sets which of the gimbal directions the top left wheel on the Remote Controller will control. | ||||||||||
abstract void | setRCControlMode(DJIRemoteController.DJIRCControlMode mode, DJIBaseComponent.DJICompletionCallback callback) Sets the Remote Controller's control mode. | ||||||||||
abstract void | setRCCustomButtonTag(short tag1, short tag2, DJIBaseComponent.DJICompletionCallback callback) Sets custom button tags, which can be used by the user to record user settings. | ||||||||||
abstract void | setRCName(String name, DJIBaseComponent.DJICompletionCallback callback) Sets the Remote Controller's name. | ||||||||||
abstract void | setRCPassword(String password, DJIBaseComponent.DJICompletionCallback callback) Sets the Remote Controller's password. | ||||||||||
void | setRCRemoteFocusStateUpdateCallback(DJIRemoteController.RCRemoteFocusStateUpdateCallback rcRemoteFocusStateUpdateCallback) Sets gimbalControlRequestFromSlaveReceivedCallback | ||||||||||
abstract void | setRCWheelControlGimbalSpeed(short speed, DJIBaseComponent.DJICompletionCallback callback) Sets the gimbal's pitch speed for the Remote Controller's upper left wheel. | ||||||||||
abstract void | setRemoteControllerMode(DJIRemoteController.DJIRemoteControllerMode workMode, DJIBaseComponent.DJICompletionCallback callback) Sets the Remote Controller's work mode. | ||||||||||
abstract void | setSlaveControlMode(DJIRemoteController.DJIRCControlMode mode, DJIBaseComponent.DJICompletionCallback callback) Sets the current slave's control mode. | ||||||||||
abstract void | setSlaveJoystickControlGimbalSpeed(DJIRemoteController.DJIRCGimbalControlSpeed speed, DJIBaseComponent.DJICompletionCallback callback) Sets the current slave's gimbal's pitch, roll, and yaw speed. | ||||||||||
abstract void | startSearchMaster(DJIBaseComponent.DJICompletionCallback callback) Returns all available master Remote Controllers nearby. | ||||||||||
abstract void | stopSearchMaster(DJIBaseComponent.DJICompletionCallback callback) Used by a slave Remote Controller to stop the search for nearby master Remote Controllers. |
[Expand] Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class dji.sdk.base.DJIBaseComponent | |||||||||||
From class java.lang.Object |
Enters pairing mode, where the Remote Controller starts pairing with the aircraft. This method is used when the Remote Controller no longer recognizes which aircraft it is paired with.
callback | The execution callback with the execution result returned. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Exits pairing mode.
callback | The execution callback with the execution result returned. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Starts search by slave Remote Controller for nearby master Remote Controllers. To get the list of master Remote Controllers use getAvailableMastersWithCallbackBlock then call stopMasterRCSearch to end th search.
callback | The execution callback with the value(s) returned. The array of masters contains objects of type DJIRCInfo. |
---|
Gets the BatteryStateUpdateCallback
Gets the GimbalControlRequestFromSlaveReceivedCallback
Get the GPSDataUpdateCallback
Get the getHardwareStateUpdateCallback
Returns the master's information, which includes the ID, name, and password.
callback | The execution callback with the value(s) returned. |
---|
Returns the state of the master Remote Controller search. The search is initiated by the Mobile Device, but performed by the Remote Controller. Therefore, if the Mobile Device's application crashes while a search is ongoing, this method can be used to let the new instance of the application understand the Remote Controller state.
callback | Please refer to DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Gets which of the gimbal directions the top left wheel on the Remote Controller will control.
callback | The execution callback with the value(s) returned. |
---|
Gets the master Remote Controller's control mode.
callback | The execution callback with the value(s) returned. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Gets the custom buttons' tags.
callback | The execution callback with the value(s) returned. |
---|
Gets the Remote Controller's name.
callback | The execution callback with the value(s) returned. See DJIBaseComponent for more information about the callback and what is recommended to be done with it. |
---|
Gets the Remote Controller's password.
callback | The execution callback with the value(s) returned. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Gets the GimbalControlRequestFromSlaveReceivedCallback
Gets the pairing status as the Remote Controller is pairing with the aircraft.
callback | The execution callback with the value(s) returned. |
---|
Gets the gimbal's pitch speed for the Remote Controller's upper left wheel.
callback | The execution callback with the value(s) returned. |
---|
Gets the Remote Controller's work mode.
callback | The execution callback with the value(s) returned. |
---|
Get serial number of the component. Please note this serial number does not match with the serial number found in the physical component.
callback | The execution callback with the value(s) returned. |
---|
Gets the current slave's control mode.
callback | The execution callback with the value(s) returned. |
---|
Gets the current slave's gimbal's pitch, roll, and yaw speed.
callback | Remote execution result callback. |
---|
Used by the current master Remote Controller to get all the slaves connected to it.
callback | The execution callback with the value(s) returned. The array of slaves contains objects of type DJIRCInfo. |
---|
Get Remote Controller's firmware version.
callback | The execution callback with the value(s) returned. |
---|
This method is designed to provide the connection status of the RC
Query method to check if the RC supports master/slave mode.
Query method to check if the Remote Controller supports Remote Focus State Checking.
Used by a slave Remote Controller to request to join a master Remote Controller and be able to control the gimbal. If the master Remote Controller accepts the request, the master Remote Controller will control the aircraft and the slave Remote Controller will control the gimbal.
hostId | Master's identifier |
---|---|
masterName | Master's name |
masterPassword | Master's password |
callback | The execution callback with the value(s) returned. |
Removes a master Remote Controller from the current slave Remote Controller.
masterId | The connected master's identifier |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Returns the state of the master Remote Controller search. The search is initiated by the Mobile Device, but performed by the Remote Controller. Therefore, if the Mobile Device's application crashes while a search is ongoing, this method can be used to let the new instance of the application understand the Remote Controller state.
callback | See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Even after a Remote Controller becomes a slave Remote Controller, this method must be called by the slave Remote Controller to request the master Remote Controller to control the gimbal.
callback | Remote execution result callback. |
---|
When a slave Remote Controller requests a master Remote Controller to control the gimbal, this method is used by a master Remote Controller to respond to the slave Remote Controller's request.
requesterId | The slave Remote Controller's identifier. |
---|---|
isAgree | true if the master Remote Controller agrees or disagrees to give the slave Remote Controller the right to control the gimbal. |
Sets the BatteryStateUpdateCallback
Sets gimbalControlRequestFromSlaveReceivedCallback
Set the GPSDataUpdateCallback
Set the HardwareStateUpdateCallback
Sets which of the gimbal directions the top left wheel on the Remote Controller will control. The three options (pitch, roll, and yaw) are outlined in the enum named DJIRCGimbalControlDirection in DJIRemoteControllerDef.
direction | Gimbal direction to be set that the top left wheel on the Remote Controller will control. |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets the Remote Controller's control mode.
mode | Remote controller control mode to be set. |
---|---|
callback | The execution callback with the execution result returned. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets custom button tags, which can be used by the user to record user settings. Moreover, this method will make it easier for developers to set custom tags for buttons in the user interface, will make it easier to use the C1 and C2 buttons on the Remote Controller.
tag1 | Button 1's custom tag,which should in the range of [0, 255]. |
---|---|
tag2 | Button 2's custom tag,which should in the range of [0, 255]. |
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets the Remote Controller's name.
name | Remote controller name to be set. Six characters at most. |
---|---|
callback | The execution callback with the execution result returned. See DJIBaseComponent for more information about the callback and what is recommended to be done with it. |
Sets the Remote Controller's password.
password | Remote controller password to be set, using a string consisted by 4 digits. |
---|---|
callback | The execution callback with the execution result returned. See DJIBaseComponent for more information about the callback and what is recommended to be done with it. |
Sets gimbalControlRequestFromSlaveReceivedCallback
Sets the gimbal's pitch speed for the Remote Controller's upper left wheel.
speed | Speed to be set for the gimbal's pitch, which should in the range of [0, 100], where 0 represents very slow and 100 represents very fast. |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets the Remote Controller's work mode. See DJIRCWorkMode for all possible Remote Controller work modes. The master and slave modes are only supported for the Inspire 1.
workMode | Work mode of type DJIRCWorkMode to be set for the Remote Controller. |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets the current slave's control mode.
mode | Control mode to be set. |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Sets the current slave's gimbal's pitch, roll, and yaw speed. The pitch, roll, and yaw speed's value will be in the range of [0, 100].
speed | Speed to be set for gimal's pitch, roll, and yaw, which should be in the range of [0, 100]. |
---|---|
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
Returns all available master Remote Controllers nearby. Before this method can be used, the method startMasterRCSearch needs to be called to start the search for master Remote Controllers. Once the list of masters is received, call stopMasterRCSearch to end the search.
callback | Remote execution result error callback. Please refer to DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|
Used by a slave Remote Controller to stop the search for nearby master Remote Controllers.
callback | Remote execution result error callback. See DJIBaseComponent for more information about the callback and what is recommended be done with it. |
---|