/DroneCore

API and library for PX4 Autopilot using MAVLink written in C++11

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

DroneCore

travis-ci build status appveyor build status Coverage Status

Description

DroneCore is an API and library for the PX4 flight stack using Mavlink.

It is written in C++ and aiming to be:

  • Easy to use with a simple API.
  • Fast and lightweight.
  • Cross-platform (Linux, Mac, Windows, iOS, Android).
  • Extensible (using compile-time plugins).

Roadmap

The next steps will be:

  • Add Camera settings and actions interface.
  • Add language bindings for Android, iOS, and Python

Interfacing

DroneCore currently takes care of the mavlink messaging using a UDP network connection to the drone. Connecting via TCP, or serial is planned but not implemeted yet.

The library provides both synchronous (blocking) API calls, as well as asynchronous API calls using callbacks.

API Overview

API consumers use the DroneCore class to discover and manage vehicles (Device objects), which in turn provide access to all other drone information and control objects (e.g. Telemetry, Mission etc.).

The links below take you to the respective header files:

For more information see the API Overview in the DroneCore Guide.

Guide Docs (Build instructions etc.)

Instructions for how to use the library can be found in the DroneCore Guide.

Quick Links:

License

The DroneCore project is licensed under the permissive BSD 3-clause, see LICENSE.md.

Authors

See AUTHORS.md.