Prometheus Adapts to ROS2, Advancing the UAV Development Ecosystem
Prometheus is an open-source autonomous UAV software system platform that provides a complete solution for UAV intelligence and autonomous flight. With the evolution of the Robot Operating System (ROS) from ROS1 to ROS2, and the UAV ecosystem's increasing demand for high-performance, low-latency communication, the Prometheus project team launched the Prometheus_ROS2 version based on the functions inherited from the V2 version. This version achieves compatibility with Ubuntu 22.04 LTS systems, migrates to ROS2 Humble, and introduces XRCE-DDS as an efficient communication middle layer. It also launches a MAVROS2-based version to support different development needs.
Upgrade content
Compatible with ROS2 Humble and supports Ubuntu 22.04 LTS
Prometheus fully supports the ROS2 Humble version and runs on Ubuntu 22.04 LTS system. Compared with ROS1, ROS2 provides stronger cross-platform support (including real-time systems and embedded devices), distributed communication architecture, and higher real-time performance and reliability. By migrating to ROS2, Prometheus V3 can show better performance in scenarios such as multi-UAV collaboration, complex task calculations, and distributed intelligence.
ROS2 advantages:
Distributed architecture: The central node manager is removed and DDS communication middleware is used to realize direct communication between nodes and improve the real-time and reliability of the system.
Advanced communication mechanism: Supports different QoS configurations, optimizes data transmission, reduces delays and packet loss, and adapts to complex network environments.
Cross-platform support: It not only supports Linux, but also extends to Windows, macOS and RTOS, providing a broad development space.Improved real-time performance: Significantly improve real-time performance by optimizing communication mechanisms and reducing system overhead.
Optimize development experience: Supports modular development and testing, provides rich API interfaces, and simplifies development work.
Introducing XRCE-DDS communication middle layer
XRCE-DDS (eXtremely Resource Constrained Environment DDS) is a lightweight implementation of DDS (Data Distribution Service). It is specially designed for resource-constrained embedded systems and can provide efficient point-to-point and distributed communication capabilities.
Advantages:
Extremely low resource usage: XRCE-DDS is optimized for embedded devices, has extremely low resource usage, and is suitable for hardware platforms with limited computing power (such as microcontrollers, UAVflight controller boards, etc.).
Lightweight protocol: Compared with the standard DDS protocol, the message header of XRCE-DDS is shorter, reducing transmission overhead. Efficient point-to-point communication: Fast data exchange between devices is achieved through reliable real-time communication mechanism.
Cross-platform support: Seamlessly integrates with full-featured DDS implementations such as Fast DDS, Connext DDS, and more to support complex distributed system designs.
High scalability: XRCE-DDS supports distributed systems and dynamic node discovery, and can be easily extended to multi-UAV collaboration and distributed task scenarios.
QoS (Quality of Service): Consistent with standard DDS, it supports fine-grained control over communication reliability, latency, bandwidth, etc. to ensure the reliability and real-time Nature of key data.
In Prometheus: XRCE-DDS is used as the communication middle layer to realize high-speed data interaction between Prometheus and PX4 flight controller. Prometheus obtains real-time status information from PX4 through XRCE-DDS, such as attitude, position, speed, sensor data, etc., and supports sending control instructions to PX4 (such as attitude control, speed control, position control, etc.). Compared with the traditional MAVLink protocol, XRCE-DDS significantly reduces communication latency and resource overhead, allowing Prometheus to interconnect with PX4 in a more efficient manner.

MAVROS2 support version launched
In order to meet developers' needs for the MAVLink framework, Prometheus also launched a support version based on MAVROS2. MAVROS2 is an extended implementation of MAVLink in ROS2, inheriting the mature ecosystem of MAVROS in UAV control. Through MAVROS2, developers can quickly access the MAVLink message interface to complete communication configuration with PX4.
Advantages:
Mature ecology: MAVROS2 is an upgraded version of MAVROS, compatible with the full functionality of the MAVLink protocol, and has extensive community support and a rich tool chain.
Ease of use: MAVROS2 provides ready-made topics, services and tools (such as mavlink_console, ROS2 topic, etc.), lowering the threshold for UAV development.
stability: After years of development, the MAVLink protocol has high stability and reliability.
Upgrade communication architecture and modular design
Prometheus has fully optimized the communication module. Through the distributed communication framework of XRCE-DDS and ROS2, Prometheus has dynamic node discovery, reliable data transmission and low-latency communication capabilities. At the same time, the Prometheus_ROS2 version has redesigned the modular architecture to facilitate developers to freely combine functional modules according to actual application needs.
How to choose between DDS and MAVROS2?
If users pursue the latest, then choosing XRCE-DDS can bring significant advantages: real-time performance and high communication efficiency, which means providing more efficient performance and lower latency. But if the user is still accustomed to the MAVLink framework, or still needs the MAVLink framework, choose MAVROS2, which is easier to use, has richer tool support, and the existing information is complete and complete. Users can choose according to their own needs.

Practical results
position control
trajectory control
speed control
In addition to the above examples, there are more control instructions in the Wiki, waiting for everyone to unlock.
As an important upgrade of the UAVopen-source ecosystem, Prometheus fully integrates ROS2 and XRCE-DDS. By supporting Ubuntu 22.04, ROS2 Humble and being compatible with MAVROS2, Prometheus improves communication efficiency and system performance, while retaining support for traditional MAVLink users. It marks a new stage of UAV development and provides better solutions for mission planning, multi-machine collaboration and intelligent sensing. In the future, Prometheus It will continue to be optimized to support more hardware platforms and technology developments to facilitate the rapid evolution of UAV intelligence. At present, Prometheus is transplanting the uav_control part (12232024) first, and other parts will be continuously launched as research and development progresses, so please stay tuned.
Data acquisition

