flowrs-engine/crates/flowrs-connect/dialects/mavlink
Repository files (latest commit first)
Filename Latest commit message Latest commit date
flowRS fd958c0547 flowRS engine, cut from flowRS 3451b065
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-02 19:04:39 -05:00
..
ardupilotmega.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
common.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
csAirLink.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
cubepilot.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
icarous.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
LICENSE flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
loweheiser.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
MANIFEST.tsv flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
minimal.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
README.md flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
standard.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00
uAvionix.xml flowRS engine, cut from flowRS 3451b065 2026-11-02 19:04:39 -05:00

MAVLink dialects the bridge reads

The MAVLink bridge (src/mavlink, feature mavlink) decodes frames with the mavlink crate 0.21.0 and reads what each field means (its unit, its fixed-point scale, its range) from these XML files through flowrs-iface's own reader. The two must describe the same messages, so these are the files the crate's build script compiles, unchanged: the mavlink/mavlink repository at 44a1229ece43cfc3ce1640451ad5aaba52a28459, the commit the crate's mavlink submodule names at its 0.21.0 tag. Every file was compared byte for byte with the copy inside the published crate. tests/mavlink.rs checks that flowrs-iface's CRC_EXTRA equals the crate's for every message of ardupilotmega and common; a crate upgrade that moves the XML fails it until these files follow.

File Includes What
minimal.xml — HEARTBEAT, PROTOCOL_VERSION and the core enums
standard.xml minimal.xml the standard set
common.xml standard.xml the common set, PX4's and ArduPilot's base (1,152-odd units= attributes)
ardupilotmega.xml common.xml, uAvionix.xml, icarous.xml, loweheiser.xml, cubepilot.xml, csAirLink.xml ArduPilot's dialect
uAvionix.xml, icarous.xml, loweheiser.xml, cubepilot.xml, csAirLink.xml — or common.xml / minimal.xml ardupilotmega's includes

This is a newer commit than the projection corpus pins (crates/flowrs-iface/tests/corpus/pins/mavlink.json, 2e2b6af…): common.xml, minimal.xml and standard.xml differ between the two. The bridge follows the crate it links; the corpus measures the projections.

Licence

The message definition XML is MIT-licensed (https://mavlink.io/en/#license); LICENSE reproduces the permission notice from the repository's COPYING. The generator, mavgen and pymavlink, is LGPLv3 and is neither vendored nor linked. MANIFEST.tsv gives each file's SHA-256 and source.