Classes | Typedefs | Enumerations | Functions | Variables
DJI::onboardSDK Namespace Reference

Classes

struct  __ActivationGetProtocolVersionAck
struct  __ActivationGetProtocolVersionCommand
struct  __Command
struct  Ack
struct  ACKSession
struct  ActivateData
struct  BroadcastData
struct  CallBackHandler
 The CallBackHandler struct allows users to encapsulate callbacks and data in one struct. More...
class  Camera
 Camera class for controlling camera and gimbal-related functions available through open protocol. More...
struct  CMDSession
struct  Command
struct  CommonData
class  CoreAPI
 CoreAPI implements core Open Protocol communication between M100/M600/A3 and your onboard embedded platform. More...
struct  CtrlInfoData
struct  DroneVersionACK
class  Flight
 Flight class encapsulates all flight control related functions provided by the DJI OnboardSDK. More...
struct  FlightData
class  Follow
 Follow class encapsulates all follow control related functions provided by the DJI OnboardSDK. More...
struct  FollowData
struct  FollowTarget
struct  GimbalAngleData
struct  GimbalData
struct  GimbalSpeedData
struct  GPSData
struct  GPSPositionData
struct  GSPushData
class  HardDriver
struct  Header
 The Header struct is meant to handle the open protocol header. More...
class  HotPoint
struct  HotPointACKData
struct  HotPointData
struct  HotPointReadACK
struct  HotPointStartACK
struct  MagData
struct  MagnetData
struct  MissionACKMap
union  MissionACKUnion
struct  MMU_Tab
struct  PositionData
struct  QuaternionData
struct  RadioData
struct  RCData
struct  RTKData
struct  SDKFilter
struct  TaskData
struct  TimeStampData
struct  Vector3fData
struct  VelocityData
struct  VersionData
class  VirtualRC
 VirtualRC class has all the methods to mimic the RC functionality via OnboardSDK. More...
struct  VirtualRCData
struct  VirtualRCSetting
class  WayPoint
struct  WayPointData
struct  WayPointDataACK
struct  WayPointInitACK
struct  WayPointInitData
struct  WayPointVelocityACK

Typedefs

typedef struct
DJI::onboardSDK::__ActivationGetProtocolVersionAck 
__ActivationGetProtocolVersionAck
typedef struct
DJI::onboardSDK::__ActivationGetProtocolVersionCommand 
__ActivationGetProtocolVersionCommand
typedef struct
DJI::onboardSDK::__Command 
__Command
typedef struct DJI::onboardSDK::Ack Ack
typedef struct
DJI::onboardSDK::ACKSession 
ACKSession
typedef struct
DJI::onboardSDK::ActivateData 
ActivateData
typedef uint8_t BatteryData
typedef struct
DJI::onboardSDK::BroadcastData 
BroadcastData
typedef void(* CallBack )(DJI::onboardSDK::CoreAPI *, Header *, UserData)
 The CallBack function pointer is used as an argument in api->send calls.
typedef struct
DJI::onboardSDK::CallBackHandler 
CallBackHandler
 The CallBackHandler struct allows users to encapsulate callbacks and data in one struct.
typedef struct
DJI::onboardSDK::CMDSession 
CMDSession
typedef struct
DJI::onboardSDK::Command 
Command
typedef struct
DJI::onboardSDK::CommonData 
CommonData
typedef struct
DJI::onboardSDK::CtrlInfoData 
CtrlInfoData
typedef struct
DJI::onboardSDK::FlightData 
FlightData
typedef uint8_t FlightStatus
typedef float float32_t
typedef double float64_t
typedef struct
DJI::onboardSDK::FollowData 
FollowData
typedef struct
DJI::onboardSDK::FollowTarget 
FollowTarget
typedef struct
DJI::onboardSDK::GimbalAngleData 
GimbalAngleData
typedef struct
DJI::onboardSDK::GimbalData 
GimbalData
typedef struct
DJI::onboardSDK::GimbalSpeedData 
GimbalSpeedData
typedef struct
DJI::onboardSDK::GPSData 
GPSData
typedef struct
DJI::onboardSDK::GPSPositionData 
GPSPositionData
typedef struct
DJI::onboardSDK::GSPushData 
GSPushData
typedef struct
DJI::onboardSDK::Header 
Header
 The Header struct is meant to handle the open protocol header.
typedef struct
DJI::onboardSDK::HotPointACKData 
HotPointADKData
typedef struct
DJI::onboardSDK::HotPointData 
HotPointData
typedef struct
DJI::onboardSDK::HotPointReadACK 
HotpointReadACK
typedef struct
DJI::onboardSDK::HotPointStartACK 
HotpointStartACK
typedef struct
DJI::onboardSDK::MagData 
MagData
typedef struct
DJI::onboardSDK::MagnetData 
MagnetData
typedef uint8_t MissionACK
typedef struct
DJI::onboardSDK::MissionACKMap 
MissionACKMap
typedef union
DJI::onboardSDK::MissionACKUnion 
MissionACKUnion
typedef struct
DJI::onboardSDK::MMU_Tab 
MMU_Tab
typedef struct
DJI::onboardSDK::PositionData 
PositionData
typedef struct
DJI::onboardSDK::QuaternionData 
QuaternionData
typedef struct
DJI::onboardSDK::RadioData 
RadioData
typedef struct
DJI::onboardSDK::RCData 
RCData
typedef struct
DJI::onboardSDK::RTKData 
RTKData
typedef struct
DJI::onboardSDK::SDKFilter 
SDKFilter
typedef uint16_t SimpleACK
typedef struct
DJI::onboardSDK::TaskData 
TaskData
typedef struct
DJI::onboardSDK::TimeStampData 
TimeStampData
typedef struct
DJI::onboardSDK::Vector3fData 
Vector3fData
typedef struct
DJI::onboardSDK::VelocityData 
VelocityData
typedef uint32_t Version
 Different version strings define SDK/Drone combination. Only the ones listed below are available.
typedef struct
DJI::onboardSDK::VersionData 
VersionData
typedef struct
DJI::onboardSDK::VirtualRCData 
VirtualRCData
typedef struct
DJI::onboardSDK::VirtualRCSetting 
VirtualRCSetting
typedef struct
DJI::onboardSDK::WayPointData 
WayPointData
typedef struct
DJI::onboardSDK::WayPointDataACK 
WayPointDataACK
typedef struct
DJI::onboardSDK::WayPointInitACK 
WayPointInitACK
typedef struct
DJI::onboardSDK::WayPointInitData 
WayPointInitData
typedef struct
DJI::onboardSDK::WayPointVelocityACK 
WayPointVelocityACK

Enumerations

enum  __ActivationGetProtocolVersionAckCodes { AUTOPILOT_ACTIVATED = 0x0000, AUTOPILOT_NOT_ACTIVATED = 0xFF01 }
enum  ACK_ACTIVE_CODE {
  ACK_ACTIVE_SUCCESS = 0x0000, ACK_ACTIVE_PARAMETER_ERROR = 0x0001, ACK_ACTIVE_ENCODE_ERROR = 0x0002, ACK_ACTIVE_NEW_DEVICE = 0x0003,
  ACK_ACTIVE_APP_NOT_CONNECTED = 0x0004, ACK_ACTIVE_NO_INTERNET = 0x0005, ACK_ACTIVE_SERVER_REFUSED = 0x0006, ACK_ACTIVE_ACCESS_LEVEL_ERROR = 0x0007,
  ACK_ACTIVE_VERSION_ERROR = 0x0008
}
enum  ACK_ARM_CODE { ACK_ARM_SUCCESS = 0x0000, ACK_ARM_NEED_CONTROL = 0x0001, ACK_ARM_ALREADY_ARMED = 0x0002, ACK_ARM_IN_AIR = 0x0003 }
enum  ACK_COMMON_CODE {
  ACK_COMMON_SUCCESS = 0x0000, ACK_COMMON_KEYERROR = 0xFF00, ACK_COMMON_NO_AUTHORIZATION = 0xFF01, ACK_COMMON_NO_RIGHTS = 0xFF02,
  ACK_COMMON_NO_RESPONSE = 0xFFFF
}
enum  ACK_ERROR_CODE { ACK_SUCCESS = 0x0000, ACK_PARAM_ERROR = 0x0001 }
enum  ACK_SETCONTROL_CODE {
  ACK_SETCONTROL_ERROR_MODE = 0x0000, ACK_SETCONTROL_RELEASE_SUCCESS = 0x0001, ACK_SETCONTROL_OBTAIN_SUCCESS = 0x0002, ACK_SETCONTROL_OBTAIN_RUNNING = 0x0003,
  ACK_SETCONTROL_RELEASE_RUNNING = 0x0004, ACK_SETCONTROL_NEED_MODE_F = 0x0006, ACK_SETCONTROL_NEED_MODE_P = 0x0005, ACK_SETCONTROL_IOC = 0x00C9
}
enum  ACTIVATION_CODE { CODE_GETVERSION = 0, CODE_ACTIVATE = 1, CODE_FREQUENCY = 0x10, CODE_TOMOBILE = 0xFE }
enum  BROADCAST_CODE {
  CODE_BROADCAST = 0x00, CODE_LOSTCTRL = 0x01, CODE_FROMMOBILE = 0x02, CODE_MISSION = 0x03,
  CODE_WAYPOINT = 0x04
}
enum  BROADCAST_FREQ {
  BROADCAST_FREQ_0HZ = 0, BROADCAST_FREQ_1HZ = 1, BROADCAST_FREQ_10HZ = 2, BROADCAST_FREQ_50HZ = 3,
  BROADCAST_FREQ_100HZ = 4, BROADCAST_FREQ_HOLD = 5
}
enum  CMD_SET {
  SET_ACTIVATION = 0x00, SET_CONTROL = 0x01, SET_BROADCAST = 0x02, SET_MISSION = 0x03,
  SET_SYNC = 0x04, SET_VIRTUALRC = 0x05
}
enum  CONTROL_CODE {
  CODE_SETCONTROL = 0, CODE_TASK = 1, CODE_STATUS = 2, CODE_CONTROL = 3,
  CODE_SETARM = 5
}
enum  FOLLOW_CODE { CODE_FOLLOW_START = 0x30, CODE_FOLLOW_STOP = 0x31, CODE_FOLLOW_SETPAUSE = 0X32, CODE_FOLLOW_TARGET = 0X33 }
enum  HOTPOINT_CODE {
  CODE_HOTPOINT_START = 0x20, CODE_HOTPOINT_STOP = 0x21, CODE_HOTPOINT_SETPAUSE = 0x22, CODE_HOTPOINT_YAWRATE = 0x23,
  CODE_HOTPOINT_RADIUS = 0x24, CODE_HOTPOINT_SETYAW = 0x25, CODE_HOTPOINT_LOAD = 0x26
}
enum  MISSION_TYPE {
  MISSION_MODE_A, MISSION_WAYPOINT, MISSION_HOTPOINT, MISSION_FOLLOW,
  MISSION_IOC
}
enum  SYNC_CODE { CODE_SYNC_BROADCAST = 0x00 }
enum  TASK_ACK_CODE { TASK_FAILURE = 0x01, TASK_SUCCESS = 0x02 }
enum  VIRTUALRC_CODE { CODE_VIRTUALRC_SETTINGS, CODE_VIRTUALRC_DATA }
enum  WAYPOINT_CODE {
  CODE_WAYPOINT_INIT = 0x10, CODE_WAYPOINT_ADDPOINT = 0x11, CODE_WAYPOINT_SETSTART = 0x12, CODE_WAYPOINT_SETPAUSE = 0x13,
  CODE_WAYPOINT_DOWNLOAD = 0x14, CODE_WAYPOINT_INDEX = 0x15, CODE_WAYPOINT_SETVELOCITY = 0x16, CODE_WAYPOINT_GETVELOCITY = 0x17
}

Functions

void missionCallback (CoreAPI *api, Header *protocolHeader, UserData userdata=0)
void printFrame (HardDriver *hardDriver, Header *header, bool toAircraft)

Variables

pthread_mutex_t _logging_lock = PTHREAD_MUTEX_INITIALIZER
const size_t A3_MAX_ACK_SIZE = 63
char buffer []
const size_t bufsize = 1024
const size_t CALLBACK_LIST_NUM = 10
uint8_t encrypt = 0
const size_t M100_MAX_ACK_SIZE = 64
const size_t MAX_ACK_SIZE = 64
MissionACKMap missionACKMAP []
const size_t SESSION_TABLE_NUM = 32
const Version versionA3_31 = (MAKE_VERSION(3, 1, 100, 0))
const Version versionA3_32 = (MAKE_VERSION(3, 2, 0, 0))
const Version versionM100_23 = (MAKE_VERSION(2, 3, 10, 0))
const Version versionM100_31 = (MAKE_VERSION(3, 1, 10, 0))

Typedef Documentation

Definition at line 233 of file DJI_Type.h.

The CallBack function pointer is used as an argument in api->send calls.

Definition at line 158 of file DJI_Type.h.

The CallBackHandler struct allows users to encapsulate callbacks and data in one struct.

Warning:
this struct will be deprecated in the next release and renamed to Vector3fData. Use Vector3fData instead.

Definition at line 519 of file DJI_Type.h.

Definition at line 255 of file DJI_Type.h.

Definition at line 256 of file DJI_Type.h.

Gimbal Data

Todo:
rename to a final version Detailed GPSData from the A3. This is not available on the M100.
Note:
This struct is provided as a means for users to provide sigle GPS points to the SDK. It does not follow standard SDK GPS datatypes. This may change in a future release.
Todo:
unify the naming style

The Header struct is meant to handle the open protocol header.

HotPoint Data

Note:
This struct will replace MagnetData in the next release.
Warning:
the 'MagnetData' struct will be deprecated in the next release and renamed to MagData. Use MagData instead.
typedef uint8_t DJI::onboardSDK::MissionACK

ACK Data

Definition at line 328 of file DJI_Type.h.

Warning:
this struct will be renamed in a future release.
Warning:
the 'RadioData' struct will be deprecated in the next release and renamed to RCData. Use RCData instead.
Note:
This struct will replace RadioData in the next release.
Todo:
rename to a final version RTKData from the A3. This is not available on the M100.
Warning:
this struct will be renamed in a future release.
typedef uint16_t DJI::onboardSDK::SimpleACK

Definition at line 329 of file DJI_Type.h.

Note:
this struct will replace CommonData in the next release. Eigen-like naming convention
typedef uint32_t DJI::onboardSDK::Version

Different version strings define SDK/Drone combination. Only the ones listed below are available.

Definition at line 33 of file DJI_Version.h.

WayPoint Data


Enumeration Type Documentation

Enumerator:
AUTOPILOT_ACTIVATED 
AUTOPILOT_NOT_ACTIVATED 

Definition at line 32 of file DJI_Logging.h.

Enumerator:
ACK_ACTIVE_SUCCESS 
ACK_ACTIVE_PARAMETER_ERROR 
ACK_ACTIVE_ENCODE_ERROR 
ACK_ACTIVE_NEW_DEVICE 
ACK_ACTIVE_APP_NOT_CONNECTED 
ACK_ACTIVE_NO_INTERNET 
ACK_ACTIVE_SERVER_REFUSED 
ACK_ACTIVE_ACCESS_LEVEL_ERROR 
ACK_ACTIVE_VERSION_ERROR 

Definition at line 60 of file DJI_API.h.

Enumerator:
ACK_ARM_SUCCESS 
ACK_ARM_NEED_CONTROL 
ACK_ARM_ALREADY_ARMED 
ACK_ARM_IN_AIR 

Definition at line 86 of file DJI_API.h.

Enumerator:
ACK_COMMON_SUCCESS 
ACK_COMMON_KEYERROR 
ACK_COMMON_NO_AUTHORIZATION 
ACK_COMMON_NO_RIGHTS 
ACK_COMMON_NO_RESPONSE 

Definition at line 51 of file DJI_API.h.

Todo:
sort enum and move to a new file
Enumerator:
ACK_SUCCESS 
ACK_PARAM_ERROR 

Definition at line 45 of file DJI_API.h.

Enumerator:
ACK_SETCONTROL_ERROR_MODE 
ACK_SETCONTROL_RELEASE_SUCCESS 
ACK_SETCONTROL_OBTAIN_SUCCESS 
ACK_SETCONTROL_OBTAIN_RUNNING 
ACK_SETCONTROL_RELEASE_RUNNING 
ACK_SETCONTROL_NEED_MODE_F 
ACK_SETCONTROL_NEED_MODE_P 
ACK_SETCONTROL_IOC 

Definition at line 73 of file DJI_API.h.

Enumerator:
CODE_GETVERSION 
CODE_ACTIVATE 
CODE_FREQUENCY 
CODE_TOMOBILE 

Definition at line 149 of file DJI_API.h.

Enumerator:
CODE_BROADCAST 
CODE_LOSTCTRL 
CODE_FROMMOBILE 
CODE_MISSION 
CODE_WAYPOINT 

Definition at line 166 of file DJI_API.h.

Enumerator:
BROADCAST_FREQ_0HZ 
BROADCAST_FREQ_1HZ 
BROADCAST_FREQ_10HZ 
BROADCAST_FREQ_50HZ 
BROADCAST_FREQ_100HZ 
BROADCAST_FREQ_HOLD 

Definition at line 190 of file DJI_API.h.

Note:
end of ACKs
Enumerator:
SET_ACTIVATION 
SET_CONTROL 
SET_BROADCAST 
SET_MISSION 
SET_SYNC 
SET_VIRTUALRC 

Definition at line 103 of file DJI_API.h.

Enumerator:
CODE_SETCONTROL 
CODE_TASK 
CODE_STATUS 
CODE_CONTROL 
CODE_SETARM 

Definition at line 157 of file DJI_API.h.

Enumerator:
CODE_FOLLOW_START 
CODE_FOLLOW_STOP 
CODE_FOLLOW_SETPAUSE 
CODE_FOLLOW_TARGET 

Definition at line 129 of file DJI_API.h.

Enumerator:
CODE_HOTPOINT_START 
CODE_HOTPOINT_STOP 
CODE_HOTPOINT_SETPAUSE 
CODE_HOTPOINT_YAWRATE 
CODE_HOTPOINT_RADIUS 
CODE_HOTPOINT_SETYAW 
CODE_HOTPOINT_LOAD 

Definition at line 118 of file DJI_API.h.

Enumerator:
MISSION_MODE_A 
MISSION_WAYPOINT 
MISSION_HOTPOINT 
MISSION_FOLLOW 
MISSION_IOC 

Definition at line 181 of file DJI_API.h.

Enumerator:
CODE_SYNC_BROADCAST 

Definition at line 113 of file DJI_API.h.

Enumerator:
TASK_FAILURE 
TASK_SUCCESS 

Definition at line 94 of file DJI_API.h.

Enumerator:
CODE_VIRTUALRC_SETTINGS 
CODE_VIRTUALRC_DATA 

Definition at line 175 of file DJI_API.h.

Enumerator:
CODE_WAYPOINT_INIT 
CODE_WAYPOINT_ADDPOINT 
CODE_WAYPOINT_SETSTART 
CODE_WAYPOINT_SETPAUSE 
CODE_WAYPOINT_DOWNLOAD 
CODE_WAYPOINT_INDEX 
CODE_WAYPOINT_SETVELOCITY 
CODE_WAYPOINT_GETVELOCITY 

Definition at line 137 of file DJI_API.h.


Function Documentation

void DJI::onboardSDK::missionCallback ( CoreAPI *  api,
Header *  protocolHeader,
UserData userdata  __UNUSED = 0 
)

Definition at line 101 of file DJI_Mission.cpp.

void DJI::onboardSDK::printFrame ( HardDriver *  hardDriver,
Header *  header,
bool  toAircraft 
)

Definition at line 23 of file DJI_Logging.cpp.


Variable Documentation

pthread_mutex_t DJI::onboardSDK::_logging_lock = PTHREAD_MUTEX_INITIALIZER

Definition at line 21 of file DJI_Logging.cpp.

Definition at line 132 of file DJI_Type.h.

Definition at line 16 of file DJI_HardDriver.cpp.

const size_t DJI::onboardSDK::bufsize = 1024

Definition at line 120 of file DJI_Type.h.

Definition at line 125 of file DJI_Type.h.

Definition at line 22 of file DJI_API.cpp.

Definition at line 131 of file DJI_Type.h.

const size_t DJI::onboardSDK::MAX_ACK_SIZE = 64
Note:
size is in Bytes

Definition at line 130 of file DJI_Type.h.

Definition at line 21 of file DJI_Mission.cpp.

Definition at line 124 of file DJI_Type.h.

Definition at line 37 of file DJI_Version.h.

Definition at line 38 of file DJI_Version.h.

Definition at line 35 of file DJI_Version.h.

Definition at line 36 of file DJI_Version.h.



dji_sdk_lib
Author(s):
autogenerated on Thu Jun 6 2019 17:55:25