What is a Drone SDK?Some form of SDK is available for the majority of tech and gadgets on the market. In basic terms, an SDK will give developers access to various aspects of the product to develop their own software or hardware to control a certain feature. This could be a camera, a transmission unit or any number of components. In terms of the DJI Matrice 200 Series, there are three types of SDK are available; Payload SDK, Mobile SDK and Onboard SDK. Each of the SDKs has different traits and availability, with some Mobile and Payload SDKs being widely available on the commercial market and some Onboard SDKs which are more likely to be used by an individual company for a very specific task. Keep reading to find out how you could use an SDK as part of your business. [caption id="attachment_13115" align="aligncenter" width="600"] DJI Matrice 210 RTK[/caption]
Payload SDKPayload SDK was announced by DJI at the end of Q1 2018 along with the DJI Zenmuse XT2. This system has greatly increased the capabilities of the Matrice 200 Series as it allows third parties to develop and incorporate their own payload on DJI’s drones. Payloads can include sensors, robotic components, lights and many more. This results in an even greater number of potential applications in which the M200 Series can be deployed.
How Do Payload SDKs Work?The Payload SDK works through the DJI SKYPORT, a universal adapter that is used to mount the third-party payload. The SKYPORT allows communication between the drone and the payload as well the drone’s remote controller, transmission system and GPS module. The Payload SDK is also able to utilise the power of the drone, removing the need for external charging or additional cables. There are several options available to control the payload, a custom-made app that acts as a Mobile SDK, the DJI Pilot app, or the DJI Assistant 2 app. Real-time data can be received from the drone and payload, offering instant results no matter the application. [caption id="attachment_13116" align="aligncenter" width="450"] DJI Matrice 200 with SKYPORT[/caption]
Available Payload SDKsOn the release of the Payload SDK, two payloads were also announced. Each payload was primarily designed for agricultural applications, however, they can each be deployed into alternative sectors if required.
SLANTRANGE 3PXThe 3PX is based on the patented SLANTRANGE technology including multispectral imaging, agricultural analytics and all-round data accuracy. The 3PX is used to capture real-time crop insights that can be viewed on the flight controller. The 3PX can also be used in utilities and transport, energy and construction, utilising the payload’s sensor for vital data collection around on-site soil and vegetation conditions. Two methods are available to control the 3PX; DroneDeploy combined with the SLANTRANGE app and through the Flight Plan DJI app. The 3PX is also compatible with SlantView, an offline imaging and analytics platform capable of assessing Plant Stress, Weed Density, Stand Counts, Chlorophyll Index and more. [caption id="attachment_13118" align="aligncenter" width="600"] Matrice 200 Series SLANTRANGE 3PX[/caption]
Sentera AGX710The second Payload SDK that’s currently available is AGX710 sensor from Sentera. The AGX710 is an AG sensor primarily used to provide agriculture professionals with insights into crop health. This payload allows real-time measurements for crop insight with actionable results. The following camera variants adding flexibility to incorporate the AGX710 into a variety of applications:
- RGB and NDVI
- RGB and NDRE
- NDVI and NDRE
- 5-Band Multispectral
Developing a Payload SDKIn order to develop a Payload SDK for your business, you must apply to DJI for a Developer Licence and submit a proposal. DJI will then assess the proposal and offer a licence if considered appropriate. Development is available on a Linux, RTOS or through an embedded system such as UART or CAN. Following the development, to sell a Payload SDK product, you will need to acquire a Commercial Licence from DJI.
Mobile SDKMobile SDKs allow users to create Android and iOS apps to control the Matrice 200 Series drones and their payloads both manually and autonomously. Autonomous and semi-autonomous flight allows the pilot to focus on other aspects of the mission. This includes data capture and the safety of the drone in the air. Another benefit of flight autonomy is the ability to create repeatable flights for data capture. With the Mobile SDK, if an app is designed to control the functionality of a drone, it’s transferable to other drones in the DJI range. This increases the flexibility of incorporating a custom app into a large workflow with several drones.
Please Note - The Windows SDK announced here will also be released shortly. This will operate in a similar way to the Mobile SDK on a Microsoft interface.
UX SDKAs well as a full Mobile SDK option to create an app, a UX SDK is also available. This process simplifies and speeds up app development by providing UI for core functionality which would previously require manual processing. Appropriate parts of the UI can be selected from a library, adding flexibility to create your desired app.
Examples of Mobile SDKThere’s a wide range of publicly available Mobile SDK apps in the App Store and Google Play Store. These include popular options like DroneDeploy and Pix4D, which allow you to use your drone for 3D mapping. As well as public apps, companies have created their own apps using Mobile SDK. This allows different sectors to design industry-specific tools for their applications, no matter how niche. [caption id="attachment_13119" align="aligncenter" width="600"] DroneDeploy[/caption]
DroneDeploy and Pix4D are available from Heliguy today. Speak to one of our team to discuss how they could benefit your business on 0191 296 1024.
Developing a Mobile SDK AppIn order to develop an app using the Mobile and UX SDK, you must register as a developer. Once registered, you’re able to download the DJI Mobile SDK and begin the process of app registration and install the appropriate services. You will also have to generate an App Key through DJI’s Developer site. Once developed, the app must be tested using a simulator to ensure complete functionality. The app can be then be deployed and submitted for approval to go public.
Onboard SDKThe Onboard SDK allows users to expand the software and hardware capabilities of the Matrice 210 and 210 RTK. The SDK works through an open source library enabling computers to communicate with the M210 and 210 RTK as well as remote controller and payloads, for real-time and accurate results. You can also use the Onboard SDK with a Mobile SDK for absolute control and monitoring.
Examples of Onboard SDKThe Onboard SDK can be used for a variety of missions. This includes the following:
- Flights where precise trajectories must be applied such as spirals
- Flights that don’t use a remote controller such as BLOS (Beyond Visual Line of Sight). This may apply to drone delivery etc.
- Include a LiDAR collision system for drone safety
- When using a third-party sensor, communication system or actuator
Developing an Onboard SDKTo develop an Onboard SDK, like with the Mobile and Payload SDK, you must register as a developer through DJI. You will then need to complete a hardware and software setup to develop your Onboard SDK. Once set up, you can start developing your system. You'll then have to run the application to complete thorough testing both using a simulator and in the real world. Development is available through LINUX, ROS, QT and additional embedded systems. [caption id="attachment_13120" align="aligncenter" width="600"] DJI Matrice 210 RTK[/caption]
SummaryThe various SDKs available on the Matrice 200 Series have a huge potential for expanding the DJI range. From apps that are used by thousands of people every month like DroneDeploy through to advanced payloads and controllers that will only be applicable to a small group of enterprise clients, the scope of the possibilities is tremendous. It’s exciting to think of the possibilities that are available through the SDKs and how developers will use these systems in the future. To discuss how you could benefit from an SDK on your drone, give our team a call on 0191 296 1024 or drop us an email at firstname.lastname@example.org.
Keep checking back to Heliguy’s Insider Blog for more announcements, insights into drones and, of course, the latest news from the drone industry.