mavlink/mavros

MAVLink to ROS gateway with proxy for Ground Control Station

What it solves

MAVROS provides a bridge between MAVLink-based flight controllers (such as PX4 and ArduPilot) and the ROS 2 robotics framework. This eliminates the need for developers to program directly in MAVLink, allowing them to use familiar ROS 2 topics, services, and parameters to control drones.

How it works

It acts as a translation layer (the "glue") that converts MAVLink messages—sent via UDP, TCP, or serial connections—into standard ROS 2 messages. It uses a plugin architecture to translate specific messages, making it easy to extend the system without modifying the core code. It can also proxy messages between a ground station, the flight controller, and multiple ROS processes.

Who it’s for

Drone developers and robotics engineers who want to integrate flight controllers with the ROS 2 ecosystem for telemetry, task control, and waypoint missions.

Highlights

  • Broad Compatibility: Tested against PX4 and ArduPilot, including SITL simulation.
  • ROS 2 Native: Supports Humble and newer releases.
  • Extensible Architecture: Uses plugins to translate MAVLink messages.
  • Flexible Transport: Supports USB/serial, UDP, and TCP connections.

Related

  • Project
  • Project
  • Project
  • Project
  • Project