Cargo Features
Mavio has no features set by default.
[dependencies]
mavio = { version = "0.5.0-rc.1", features = ["unstable", "extras", "unsafe", "alloc", "std", "sha2", "serde", "specta", "futures", "tokio", "embedded-io", "embedded-io-async", "dlct-ardupilotmega", "dlct-asluav", "dlct-avssuas", "dlct-common", "dlct-cs_air_link", "dlct-cubepilot", "dlct-development", "dlct-icarous", "dlct-matrixpilot", "dlct-minimal", "dlct-paparazzi", "dlct-standard", "dlct-ualberta", "dlct-uavionix", "all", "msrv-all", "msrv-heartbeat", "msrv-mission", "msrv-parameter", "msrv-parameter-ext", "msrv-command", "msrv-manual-control", "msrv-camera", "msrv-gimbal-v1", "msrv-gimbal-v2", "msrv-arm-auth", "msrv-image-transmission", "msrv-ftp", "msrv-landing-target", "msrv-ping", "msrv-path-planning", "msrv-battery", "msrv-terrain", "msrv-tunnel", "msrv-open-drone-id", "msrv-high-latency", "msrv-component-metadata", "msrv-payload", "msrv-traffic-management", "msrv-events-interface", "msrv-time-sync", "msrv-utils-all", "msrv-utils-mission", "definitions", "msrv", "msrv-utils"] }
Features
- default
-
==========================================================
Generic features
==========================================================
Default features (nothing is enabled).
- unstable
-
Enable unstable API features.
- extras
-
Additional auxilary tools.
- unsafe
-
Unsafe features, that allow access to internal state of the entities.
- alloc std?
-
Enable memory allocation support.
Enables alloc of embedded-io, embedded-io-async, mavspec, serde, and tbytes
serde:
Serde
- std tokio? = alloc
-
Enable Rust std library.
Enables thiserror, std of embedded-io, embedded-io-async, mavspec, serde, sha2, and tbytes and document-features
Documentation
GEneral dependencies
- sha2 std?
-
Enable sha2 backend for message signing
Enables sha2
- serde alloc? std?
-
==========================================================
Serialization and reflection
========================================================== These features enable serde and specta support.
Enable serde support.
Enables serde and serde_arrays, serde of bitflags and mavspec
- specta
-
Enable specta support.
Enables specta of mavspec and specta and specta-util
specta:
Specta
- futures
-
==========================================================
I/O providers
========================================================== These features enable I/O providers such as Tokio or embedded-io
Enable async support via futures-rs
Enables futures
- tokio = std
-
Enable async support via Tokio
Enables tokio
I/O providers
- embedded-io alloc? std?
-
Enable synchronous I/O support from embedded HAL
Enables embedded-io
- embedded-io-async alloc? std?
-
Enable asynchronous I/O support from embedded HAL
Enables embedded-io and embedded-io-async
- dlct-ardupilotmega all? = dlct-common
-
==========================================================
Dialects
========================================================== Bundle standard MAVLink dialects as defined in XML message definitions generated by MAVSpec.
Include
ardupilotmega
dialectEnables dlct-ardupilotmega of mavspec
- dlct-asluav all? = dlct-common
-
Include
ASLUAV
dialectEnables dlct-asluav of mavspec
- dlct-avssuas all? = dlct-common
-
Include
AVSSUAS
dialectEnables dlct-avssuas of mavspec
- dlct-common all? dlct-ardupilotmega? dlct-asluav? dlct-avssuas? dlct-cubepilot? dlct-development? dlct-matrixpilot? dlct-paparazzi? dlct-ualberta? dlct-uavionix? msrv-utils-mission? = dlct-minimal
-
Include
common
dialectEnables dlct-common of mavspec
- dlct-cs_air_link all?
-
Include
csAirLink
dialectEnables dlct-cs_air_link of mavspec
- dlct-cubepilot all? = dlct-common
-
Include
cubepilot
dialectEnables dlct-cubepilot of mavspec
- dlct-development all? = dlct-common
-
Include
development
dialectEnables dlct-development of mavspec
- dlct-icarous all?
-
Include
icarous
dialectEnables dlct-icarous of mavspec
- dlct-matrixpilot all? = dlct-common
-
Include
matrixpilot
dialectEnables dlct-matrixpilot of mavspec
- dlct-minimal all? dlct-common? dlct-standard?
-
Include
minimal
dialectEnables dlct-minimal of mavspec
- dlct-paparazzi all? = dlct-common
-
Include
paparazzi
dialectEnables dlct-paparazzi of mavspec
- dlct-standard all? = dlct-minimal
-
Include
standard
dialectEnables dlct-standard of mavspec
- dlct-ualberta all? = dlct-common
-
Include
ualberta
dialectEnables dlct-ualberta of mavspec
- dlct-uavionix all? = dlct-common
-
Include
uAvionix
dialectEnables dlct-uavionix of mavspec
- all = dlct-ardupilotmega, dlct-asluav, dlct-avssuas, dlct-common, dlct-cs_air_link, dlct-cubepilot, dlct-development, dlct-icarous, dlct-matrixpilot, dlct-minimal, dlct-paparazzi, dlct-standard, dlct-ualberta, dlct-uavionix
-
Include
all
meta-dialect - msrv-all = msrv-arm-auth, msrv-battery, msrv-camera, msrv-command, msrv-component-metadata, msrv-events-interface, msrv-ftp, msrv-gimbal-v1, msrv-gimbal-v2, msrv-heartbeat, msrv-high-latency, msrv-image-transmission, msrv-landing-target, msrv-manual-control, msrv-mission, msrv-open-drone-id, msrv-parameter, msrv-parameter-ext, msrv-path-planning, msrv-payload, msrv-ping, msrv-terrain, msrv-time-sync, msrv-traffic-management, msrv-tunnel
-
==========================================================
MAVLink microservices
========================================================== These features will control generation of MAVLink microservice-specific bindings.
Support for all MavLink microservices
- msrv-heartbeat msrv-all? = msrv
-
Heartbeat protocol support
Enables msrv-heartbeat of mavspec
- msrv-mission msrv-all? msrv-utils-mission? = msrv
-
Mission protocol support
Enables msrv-mission of mavspec
- msrv-parameter msrv-all? = msrv
-
Parameter protocol support
Enables msrv-parameter of mavspec
- msrv-parameter-ext msrv-all? = msrv
-
Extended parameter protocol support
Enables msrv-parameter-ext of mavspec
- msrv-command msrv-all? = msrv
-
Command protocol support
Enables msrv-command of mavspec
- msrv-manual-control msrv-all? = msrv
-
Manual control protocol support
Enables msrv-manual-control of mavspec
- msrv-camera msrv-all? = msrv
-
Camera protocol v2 support
Enables msrv-camera of mavspec
- msrv-gimbal-v1 msrv-all? = msrv
-
Gimbal protocol v1 support
Enables msrv-gimbal-v1 of mavspec
- msrv-gimbal-v2 msrv-all? = msrv
-
Gimbal protocol v2 support
Enables msrv-gimbal-v2 of mavspec
- msrv-arm-auth msrv-all? = msrv
-
Arm authorization protocol support
Enables msrv-arm-auth of mavspec
- msrv-image-transmission msrv-all? = msrv
-
Image transmission protocol support
Enables msrv-image-transmission of mavspec
- msrv-ftp msrv-all? = msrv
-
File transfer protocol support
- msrv-landing-target msrv-all? = msrv
-
Landing target protocol support
Enables msrv-landing-target of mavspec
- msrv-ping msrv-all? = msrv
-
Ping protocol support
- msrv-path-planning msrv-all? = msrv
-
Path planning protocol support
Enables msrv-path-planning of mavspec
- msrv-battery msrv-all? = msrv
-
Battery protocol support
Enables msrv-battery of mavspec
- msrv-terrain msrv-all? = msrv
-
Terrain protocol support
Enables msrv-terrain of mavspec
- msrv-tunnel msrv-all? = msrv
-
Tunnel protocol support
Enables msrv-tunnel of mavspec
- msrv-open-drone-id msrv-all? = msrv
-
Open Drone ID protocol support
Enables msrv-open-drone-id of mavspec
- msrv-high-latency msrv-all? = msrv
-
High latency protocol support
Enables msrv-high-latency of mavspec
- msrv-component-metadata msrv-all? = msrv
-
Component metadata protocol support
Enables msrv-component-metadata of mavspec
- msrv-payload msrv-all? = msrv
-
Payload protocol support
Enables msrv-payload of mavspec
- msrv-traffic-management msrv-all? = msrv
-
Traffic management protocol support
Enables msrv-traffic-management of mavspec
- msrv-events-interface msrv-all? = msrv
-
Events interface protocol support
Enables msrv-events-interface of mavspec
- msrv-time-sync msrv-all? = msrv
-
Time synchronization protocol support
Enables msrv-time-sync of mavspec
- msrv-utils-all = msrv-utils-mission
-
==========================================================
Additional MAVLink tools
========================================================== These features will enable additional MAVLink utilities such as
*.waypoints
files support, mission planninc, etc.⚠️ All such features require
unstable
feature to be enabled in order to take effect.All MAVLink microservices utils
⚠️ Requires
unstable
feature to take effect.Enables msrv-utils-all of mavspec
- msrv-utils-mission msrv-utils-all? = dlct-common, msrv-mission, msrv-utils
-
Mission protocol utils
⚠️ Requires
unstable
feature to take effect.Enables msrv-utils-mission of mavspec
- definitions
-
==========================================================
MAVLink message definitions
========================================================== These features control whether and how MAVLink message definitions generated by MAVInspect will be bundled.
⚠️ While being useful for ground control stations, the generated definitions is quite large and may bloat the size of the binary.
Bundles MAVLink message definitions.
Message definitions will be generated only for bundled MAVLink dialects. Microservices will be ignored as they are just subsets of existing dialects.
⚠️ This feature won't compile without
std
feature enabled.Enables definitions of mavspec
- msrv msrv-arm-auth? msrv-battery? msrv-camera? msrv-command? msrv-component-metadata? msrv-events-interface? msrv-ftp? msrv-gimbal-v1? msrv-gimbal-v2? msrv-heartbeat? msrv-high-latency? msrv-image-transmission? msrv-landing-target? msrv-manual-control? msrv-mission? msrv-open-drone-id? msrv-parameter? msrv-parameter-ext? msrv-path-planning? msrv-payload? msrv-ping? msrv-terrain? msrv-time-sync? msrv-traffic-management? msrv-tunnel? msrv-utils?
-
==========================================================
Technical features
========================================================== These features should not be used directly.
⊛ Enable MAVLink microservices support
Do not use directly as this feature does not give access to any specific functionality by itself. Instead, use one of
msrv-*
features. - msrv-utils msrv-utils-mission? = msrv
-
⊛️ Enables MAVLink microservices extra utils
Do not use directly as this feature does not give access to any specific functionality by itself. Instead, use one of
msrv-utils-*
features.Enables msrv-utils of mavspec
Features from optional dependencies
Dependencies