MAVSDK is a collection of libraries for various programming languages to interface with MAVLink systems such as drones, cameras or ground systems.
The libraries provides a simple API for managing one or more vehicles, providing programmatic access to vehicle information and telemetry, and control over missions, movement and other operations.
The libraries can be used onboard a drone on a companion computer or on the ground for a ground station or mobile device.
MAVSDK is cross-platform: Linux, macOS, Windows, Android and iOS.
MAVSDK is primarily written in C++ with wrappers available for several programming languages:
- MAVSDK-C++ (2016): Used in production.
- MAVSDK-Swift (2018): Used in production.
- MAVSDK-Python (2019): Used in production.
- MAVSDK-Java (2019): Used in production.
- MAVSDK-Go (2020): Proof of concept.
- MAVSDK-JavaScript (2019): Proof of concept.
- MAVSDK-CSharp (2019). Proof of concept.
- MAVSDK-Rust (2019): Proof of concept.
Check out the quickstart guide for C++ and Python. And no matter which language you are using, use the C++ Guide to learn how to perform common tasks and use the library in general.
This guide contains information and examples showing how to use MAVSDK. If you have specific questions that are not answered by the documentation, these can be raised on:
Use Github for bug reports/enhancement requests:
We welcome contributions! If you want to help or have suggestions/bug reports please get in touch with the development team.
The Contributing (C++) section contains more information on how and what to contribute, including topics about building MAVSDK from source code, running our integration and unit tests, and all other aspects of core development.
This project is maintained by volunteers:
Maintenance is not sponsored by any company, however, hosting of the docs and the forum is provided by the Dronecode Foundation.
If you just have a question, consider asking in the forum.
If you have run into an issue, discovered a bug, or want to request a feature, create an issue. If it is important or urgent to you, consider sponsoring any of the maintainers to move the issue up on their todo list.
If you need private support, consider paid consulting:
(Create a pull request if you wish to be listed here.)
- The MAVSDK is licensed under the permissive [BSD 3-clause](https://github.com/mavlink/MAVSDK/blob/{{ book.github_branch }}/LICENSE.md).
- This documentation is licensed under CC BY 4.0 license.
The MAVSDK project is hosted under the governance of the Dronecode Foundation.