Maviola
A high-level MAVLink communication library written in Rust. Maviola provides abstractions like communication nodes and namespaces and takes care of stateful features of the MAVLink protocol, such as sequencing, message time-stamping, automatic heartbeats, simplifies message signing, and so on.
πΊπ¦
repository
crates.io
API docs
issues
Maviola is based on Mavio, a low-level library with no-std support. If you are
looking for a solution for embedded devices, then Mavio would be a better option.
β WIP
Maviola is still under heavy development. The aim is to provide API similar to
gomavlibwith additional support for essential MAVLink "microservices" such as heartbeat, parameter protocol and commands.We intentionally do not publish early versions of API to avoid confusion and massive breaking changes.
License
Here we simply comply with the suggested dual licensing according to Rust API Guidelines (C-PERMISSIVE).
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.