MAVInspect
MAVLink Inspector is a CLI tool and a library to parse MAVLink protocol XML definitions.
WARNING!!!
This project is intended to be used with other Mavka tools. For now its API will be extremely unstable. Once the library will be successfully consumed by these projects, API will be stabilised.
Examples
use MAVInspector;
Docs
Documentation can be found here.
CLI Interface
List dialects:
mavinspect [--src <PATH TO MESSAGE DEINITIONS>] ls
Parse dialects:
mavinspect [--src <PATH TO MESSAGE DEINITIONS>] parse [--dst <PATH TO DESTINATION DIRECTORY>]
Start gRPC server to serve MAVLink definitions:
mavinspect [--src <PATH TO MESSAGE DEINITIONS>] serve
Roadmap
Basics (required before publishing non-alpha version)
- Load and deserialize from
JSONfor server. - Add examples to docs.
DevOps
- Release
mavinspectbinary. - Release
mavinspectfor ARM64 and other architectures.
Next release (for v0.2.0)
- Multiple folders for XML definitions.
Planned improvements
- Watch message definitions and reload server on changes.
- Add standalone examples.
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.