Module docs

Source
Expand description

ยง๐Ÿ“– Maviola Playbook

Maviola is a high-level MAVLink communication library written in Rust. It provides abstractions such as communication nodes and implements stateful features of MAVLink protocol: sequencing, message signing, automatic heartbeats, and so on.

This library is a part of Mavka toolchain. It is based on Mavio, a low-level MAVLink library, and compatible with MAVSpec MAVLink dialects generator.

This documentation provides in-depth explanation of available features. We suggest to begin from the Quickstart and then move to other sections.

If you are interested in the reasoning behind this library, we have a corresponding Why Maviola?.

ยงContents

  1. Basics
    1. Quickstart
    2. Overview
    3. Synchronous API
    4. Asynchronous API
  2. Advanced Usage
    1. Dialect Constraints
    2. Message Signing
    3. Compatibility Checks
    4. Networks & Routing
  3. Customization
    1. Custom Dialects
    2. Custom Transport
    3. Custom Processing
    4. Ad-hoc Dialects
  4. Developer Notes
    1. Guidelines
    2. Implementation Notes
    3. Testing

Quickstart โ†’

Modulesยง

a1__quickstart
๐Ÿ“– 1.1. Quickstart
a2__overview
๐Ÿ“– 1.2. Overview
a3__sync_api
๐Ÿ“– 1.3. Synchronous API
a4__async_api
๐Ÿ“– 1.4. Asynchronous API
b1__dialect_constraints
๐Ÿ“– 2.1. Dialect Constraints
b2__signing
๐Ÿ“– 2.2. Message Signing
b3__compat_checks
๐Ÿ“– 2.3. Compatibility Checks
b4__networks_and_routing
๐Ÿ“– 2.4. Networks & Routing
c1__custom_dialects
๐Ÿ“– 3.1. Custom Dialects
c2__custom_transport
๐Ÿ“– 3.2. Custom Transport
c3__custom_processing
๐Ÿ“– 3.3. Custom Processing
c4__ad_hoc_dialects
๐Ÿ“– 3.4. Ad-hoc Dialects
e1__guidelines
๐Ÿ“– 4.1. Guidelines
e2__implementation
๐Ÿ“– 4.2. Implementation Notes
e3__testing
๐Ÿ“– 4.3. Testing