MAVLink Module
The MAVLink Module (de_mavlink, binary de_ardupilot) is the bridge between your flight controller and the rest of the DroneEngage system. It runs on the companion computer (for example, a Raspberry Pi) and talks to ArduPilot or PX4 over MAVLink.
What it does
Reads telemetry from the flight controller (GPS, attitude, battery, modes, etc.).
Forwards telemetry to the Communication Module over UDP.
Receives commands from the WebClient (via the Communication Module) and translates them into MAVLink messages.
Supports advanced features such as follow-me, swarm, geo-fencing, RC override, and UDP telemetry proxy.
Runs as a C++ plugin to the Communication broker.
Supported vehicles and firmware
Firmware: ArduPilot, PX4.
Vehicle types: quadcopter, plane, rover, boat, helicopter, submarine, VTOL, and more.
Quick links
For developers
Repository:
droneengage_mavlinkLanguage: C++17
Build: CMake 3.1+,
build.sh/build_release.sh.Key components:
fcb_facade.cpp/hpp— high-level FCB API.fcb_main.cpp/hpp— main logic, RC, modes.fcb_andruav_message_parser.cpp/hpp— parses commands from DE Comm.mavlink_sdk/— reusable MAVLink SDK with serial, UDP, and TCP ports.
Configuration file:
de_mavlink.config.module.json.Package output:
build/packages/de-mavlink-plugin-*.deb, installs to/home/$USER/drone_engage/de_mavlink/.
See MAVLink technicals for architecture, configuration internals, and message handling.