# ROS (1) with MAVROS
TIP
The PX4 development team recommend that users migrate to ROS 2 (i.e. skip this section)!
ROS (Robot Operating System) is a general-purpose robotics library that can be used to create powerful drone applications for the PX4 Autopilot.
This section contains topics related to using the "original version of ROS" and the MAVROS package to communicate with PX4 over MAVLink (MAVROS bridges ROS topics to MAVLink and PX4 conventions).
The main topics covered are:
- ROS/MAVROS Installation Guide: Setup a PX4 development environment with ROS (1) and MAVROS.
- Offboard control with MAVROS: Tutorial showing the main concepts related to writing a C++ MAVROS/ROS node.
- ROS MAVROS Sending Custom Messages
- ROS with Gazebo Simulation
- Gazebo OctoMap Models with ROS
- ROS Installation on RPi
- External Position Estimation (Vision/Motion based)
# Other Resources
- PX4 ROS Setups.
- XTDrone (opens new window) - ROS + PX4 simulation environment for computer vision. The XTDrone Manual (opens new window) has everything you need to get started!
- Prometheus Autonomous Drone Project (opens new window) - Prometheus is a ROS 1 based, BSD-3 licensed collection of autonomous drone software packages from AMOVLab (opens new window), which provides a full set of solutions for the intelligent and autonomous flight of drones, such as mapping, localization, planning, control, and target detection, fully integrated with the Gazebo Simulator.