Jun 10, 2019

Four Drone Manufacturers Providing SDKs

Four Drone Manufacturers Providing SDKs

In the last few years, the drone industry has really evolved. In the last few months, we have seen significant changes in both DJI and Parrot's SDKs. So we decided to update a previous blog post about the most common drone SDKs.

DJI Mobile SDK

DJI has been a major market player for many years, and this year is no different. While we have seen DJI’s market share shrinking in the US, we are still finding that DJI is the most common drone platform for most commercial and industrial drone service providers. That means that most drone related ground control apps use the DJI Mobile SDK for Android and iOS.

DJI Mobile SDK allows you to harness the full potential of any supported DJI drone, including flight telemetry data, payload control, and other configurable settings. DJI also has a UI/UX SDK so you don't have to reinvent your own icons for all things drone related. Late last year DJI opened up access to the DJI Payload SDK for creating your own payloads - think searchlight, methane sensor - for the M300. The new Payload SDK has now merged with the old DJI Onboard SDK which was for linux machines running on the drone.

Earlier this month (July '22) DJI released the Mobile SDK 5.0 for the M30 and M300. This is only being made available for the Android platform. Although DJI have said they will continue to update the earlier DJI 4.x iOS SDK for any needed bug fixes, this is a significant move away from the iOS platform. Do not expect iOS support for the Mavic 3 or M30.

In the past the DJI SDK's were relatively easy to use and understand. However, early indications are that the new Android SDK 5.0 is much more of a low level adventure in programming. See https://developer.dji.com for more information.

To see an example of our DJI work, check out this app for counting cars that uses the DJI Mobile and UI/UX SDK and TensorFlow Lite.

Autel Robotics SDK

While DJI has a large share of the market, Autel Robotics has been growing it’s market share since the release of the Autel Evo II. The Autel SDK provides developers with the tools necessary to make mobile development a reality. The Autel SDK supports both Android and iOS but only on the EVO II platform and not the newer Nano and Lite series. While DJI has multiple SDKs to support different functions of the system, Autel only has just the one. Currently Autel does not have third party payload support on their drones, so the user will be limited to what comes with their specific system. See https://pro.autelrobotics.com for more info.

Click here to see an example of the counting cars app from an Evo II.

MavSDK

MavSDK is unique in that it is not drone or manufacturer specific, rather it is based on the Pixhawk standard. MavSDK is used with drones that are using Ardupilot, PX4, or ROS (With Mavlink) as their firmware. Mavlink based drones are becoming the go-to solution for customers that want to have modularity as well as information security. Because of this, many worldwide governments are turning to Mavlink based drones for their operations.

Many of the Blue UAS drones used by US Government entities use QGroundControl as their GCS of choice which is built on the Mavlink platform. If you don't feel like creating your own mobile app, then it might make sense for you to use a customized version of QGroundControl for your needs.

MavSDK was created by the Dronecode foundation to provide an open source library for supporting one or more Mavlink based drones. MavSDK is cross-platform, and works on Linux Windows macOS, Android, and iOS. See https://github.com/mavlink/mavsdk

To see an example of our MavSDK work, download our RCS (RIIS Control System) app on the Apple App Store.

Parrot SDK

French drone manufacturer Parrot has been in the market for quite some time now, originating in the indoor toy drone market, and evolving into a more industrial solution with the Parrot Anafi AI. The Parrot Ground SDK is based on MavSDK with some manufacturer specific capabilities. This is because the original Parrot Anafi uses a slightly modified version of Mavlink for its communications.

The Anafi AI also has the AirSDK which is similar to the DJI Onboard SDK and allows you to run code directly on the drone. Parrot also has a simulation platform called Sphinx, which is ideal for prototyping and testing out software using the unreal engine.

The Parrot Ground SDK Mobile is available with frameworks for iOS (CocoaPods) and Android (AAR) to build mobile apps. The iOS version of the Parrot Freeflight app has been open sourced. See https://developer.parrot.com

To see an example of our Parrot work, check out this app for counting cattle. You can find it on Google Play https://play.google.com/store/apps/details?id=com.riis.parrot.cattlecounter.

Summary

The four SDKs mentioned above are the most common drone SDKs in the industry right now. For more information, please contact us. Whether you want an Android version of a DJI iOS app that needs M30 support or an updated version of a Parrot Anafi app to run on the AI or a customized version of our White Label GCS for a Mavlink drone or a brand new app to help with your drone workflow we are always ready to assist.