DJI Onboard SDK Documentation

This section provides API Reference for the DJI Onboard SDK (OSDK). The OSDK provides a set of APIs for implementing the various functionality available through the DJI Open Protocol on compatible products from the Matrice series and stand-alone flight controllers.

feature_list_page

Introduction

Click on the Files/Classes/Modules tabs above to see more information about the API within the OSDK. To get started, follow the Getting Started section below.
The complete documentation for the SDK can be found on the DJI Developer Website.

Getting Started

To get started, click on the various links here to go to the API reference of the main features of the SDK

Vehicle Class

This is your most important resource for any SDK application - an object of type Vehicle instantiates a serial driver, threads, a protocol parser and objects for all the features described below.

Features

Developers can gain an end-to-end understanding of each feature, from the high-level ideas all the way to the API documentation, using this table:

Feature List

Component Feature Documentation Related API Groups Description
Data Telemetry Guide and Sample Telemetry Namespace encapsulating all telemetry topics and data structures
Broadcast Class providing old broadcast-style push data telemetry (APIs and data structures)
Subscription Class providing new subscription-style telemetry (APIs and data structures)
Flight Control Guide and Sample Control Class with APIs & data structures for low-level control modes and high-level flight actions, this class will be replaced by FlightController step by step
FlightController Class with APIs & data structures for flight assistant and flight actions.
GPS Missions Guide and Sample MissionManager Manager class that handles waypoint and hotpoint mission instantiations.
HotpointMission Class exposing APIs for GPS hotpoint (Point of Interest) missions
WaypointMission Class exposing APIs for GPS waypoint missions (supported by M210 V2 and M210 RTK V2)
WaypointV2MissionOperator Class exposing APIs for waypoint V2 missions (supported by M300 RTK)
Camera/Gimbal Guide and Sample Camera(Deprecated) Class exposing camera action APIs & data structures
Gimbal(Deprecated) Class exposing gimbal motion control APIs & data structures
Sample CameraManager Class exposing APIs & data structures for camera actions, parameters setting and getting
GimbalManager Class exposing APIs & data structures for gimbal actions
Multi-Function IO Guide and Sample MFIO Class with APIs & data structures for configuring, reading from and writing to MFIO channels
Hardware Synchronization Guide HardwareSync Class for configuring a hardware sync pulse from a physical port
Mobile SDK Communication Guide and Sample MobileDevice Class providing APIs & data structures for upstream and downstream communication with the DJI Mobile SDK
Payload SDK Communication Guide and Sample PayloadDevice Class providing APIs & data structures for upstream and downstream communication with the DJI Payload SDK
PSDKManager Class providing APIs & data structures for upstream and downstream data and widgets values communication with the DJI Payload SDK
MOP Guide MopServer Class providing APIs & data structures for acting as a MOP server
MopClient Class providing APIs & data structures for acting as a MOP client(in PSDKManager)
Advanced Sensing Guide and Sample AdvancedSensing Class providing access to stereo camera, FPV camera and main camera from M210 and M210-RTK
Status, Error and ACKs Each API in this API reference documentation has corresponding ACKs & errors. Statuses are obtained from telemetry. VehicleStatus Enums for the flight mode, landing gear and API control mode
ErrorCode Sub-Classes that group API return values by command set (equivalent to a component)
ACK Class containing data structures for non-standard ACKs that a few APIs receive from the aircraft/FC
dji_mission_type.hpp File containing data structures shared between GPS Mission commands (OSDK --> FC) and ACKs (FC --> OSDK)