Not too long ago, harnessing drone technology was a complicated process. The only viable solutions were custom built from a collection of disparate parts. You needed to be much more than a developer to get reliable flight from a quadcopter. Luckily, manufacturers around the world have done a lot to simplify the process of putting drones to work.
The hardware available today is reliable, accessible and highly capable. Image stabilization, battery technology, computer vision and autonomous flight now come together in complete packages sold by manufacturers from China to France to the USA.
And with those advances has come demand. It seems as though everyone now sees and wants to tap into the potential of drone technology.
Many conventional tasks can be done with off the shelf hardware and software. But for those looking to innovate and develop new solutions, the major drone manufacturers have released software development kits in an effort to create ecosystems around their technology.
Here are some of the drone industry’s most popular SDKs.
DJI started as a consumer company but has quickly become the go-to choice for commercial operators. The industry’s leading manufacturer has no less than five separate SDKs for developers ready to tap into drone technology.
DJI’s Mobile SDK allows you to create a customized Android or IOS mobile app that unlocks the full potential of your DJI drone. It features everything you need to get your drone off the ground, including full flight control, access to telemetry data, camera and gimbal control, obstacle avoidance and more.
If you want to build web applications, a recent partnership with Microsoft means that DJI’s Windows SDK offers all the same tools and more.
You can read about our experience with the DJI Mobile SDK here.
Then there’s the DJI Onboard SDK. The open source software library enables computers to communicate directly with DJI aircraft and flight controllers over a serial interface. With access to telemetry, flight control and other aircraft functions, developers can attach their own computing device onboard an aircraft and use it to control flight.
The Onboard SDK works seamlessly with another DJI product, the recently launched Manifold 2. The tiny supercomputer is designed for DJI drones to enable complex computing tasks and advanced image processing on the fly – literally.
DJI’s UX SDK aims to reduce development time by providing UI elements for your application’s core functionalities. The idea is to allow developers to build without additional lines of code. It’s flexible, so you can pick and choose the elements you want to use.
Many researchers and organizations want to experiment and build original uses for drone technology. To assist in that process, last year DJI launched a Payload SDK. It’s essentially a framework for the easy integration of external devices and sensors.
The SDK works in conjunction with Skyport, a gimbal port adapter that enables an external sensor or payload to be installed and controlled. The Payload SDK connects new payloads to the drone’s internal systems through communications APIs, providing operators with the ability to communicate directly with the sensor and receive data in real time.
French manufacturer Parrot is the drone industry’s second major player. Parrot’s latest drone platform, the ANAFI, is adaptable and highly-capable, making it an ideal model for developers to build upon.
The Parrot Ground SDK Mobile is now available with frameworks for iOS (CocoaPods) and Android (AAR) to build mobile apps.
With it, developers can create custom applications for the ANAFI and access all the drone’s features – including controls, video and settings – through a fully documented API set.
The code is released under BSD-3 license, includes a quick start guide, a ready-to-use demo application implementing all the available APIs, video libraries and image processing tools, a Python library to build desktop apps and educational projects and a full simulation environment.
Parrot’s simulation environment, Sphinx, is ideal for prototyping and testing new software.
California startup Skydio came to prominence in 2018 with the launch of the R1 drone, a platform that far exceeds the capability of its competitors when it comes to computer vision and obstacle avoidance.
To begin with, the R1 was purely a consumer drone: an autonomous, flying cameraman on hand to film your adventures.
But a flying machine that can sense and avoid to that degree was going to have a lot of commercial interest.
Towards the end of 2018, Skydio announced the availability of its Autonomy Platform for developers.
The aim was to open up the company’s core technology to third-parties, who can build an infinite number of additional ‘Skills’ – the R1’s one-touch manoeuvres – for any number of use cases.
The Skydio Autonomy Platform puts state-of-the-art AI and robotics at the fingertips of organizations and research teams. The platform includes a Skills SDK, which includes everything developers need to devise Skills for the Skydio R1 in a few lines of Python.
These include APIs covering waypoints and movement commands, all while still relying on the drone’s 360-degree obstacle avoidance. Skydio has also launched a Mobile SDK, for developers keen to design apps to deliver their custom skills.
Just like Parrot, Skydio’s Autonomy Platform includes a simulator, giving developers the freedom to iterate and put concepts to the test in the virtual world.
Yuneec launched the H520 to the commercial market in 2017 and a follow up Real Time Kinematic (RTK) version in 2019. The six-rotor drone is designed to work with a variety of payload option for all sorts of professional applications.
The SDK takes care of the complex flight functions, including stabilization, telemetry data, sensor management and camera control.
Apps can be developed to let the H520 take on specific use cases with a library that can be imported into iOS or Android projects. Just like Skydio and Parrot, Yuneec offers a software simulator tool to virtually test concepts before putting them into action.
All of these SDKs put the power of drone technology into the hands of developers. It’s up to researchers and organizations to explore the potential and see how far it can go. Take these four projects for example, which are combining drone technology with AI.