
In this introduction, you’ll see the final result of the course: a PX4-controlled quadcopter flying in Gazebo, controlled from QGroundControl with a live camera feed. I explain who this course is for, the tools we’ll use (Ubuntu 24.04, ROS 2 Jazzy, Gazebo, PX4 SITL, QGroundControl, and ROS 2 tools), and how the step-by-step recipe is structured so you can follow along even as a complete beginner.
music credited to :
"Spy Glass" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 4.0 License
http://creativecommons.org/licenses/by/4.0/
In this lecture, you’ll install ROS 2 Jazzy and the Gazebo simulator on Ubuntu 24.04 step by step.
⚠️ Download the “Tutorial Notes – Install ROS 2 + Gazebo” file from the Resources section
to copy all commands easily.
In this lecture, you’ll install the PX4 flight controller stack, run the official Ubuntu setup script, and launch the x500 quadcopter in Gazebo for the first time. By the end, you’ll have a working PX4 + Gazebo simulation with your drone visible and ready to fly in later lectures.
In this lecture, you’ll turn the static x500 model into a flying drone. We first adjust a few PX4 parameters so the vehicle can arm safely in simulation, then use console commands to arm, take off, hover, and land. After that, you’ll install and launch QGroundControl, connect it to PX4 SITL, and use the built-in virtual joystick and simple mission commands to fly the drone both manually and in basic autonomous modes.
In this lecture, you’ll connect the simulated x500 camera to ROS 2 and actually see what your drone sees. We create a small bridge configuration file, run the ros_gz_bridge so Gazebo camera topics appear as standard ROS 2 image topics, and then use rqt_image_view to display the live video feed while flying the drone from QGroundControl. By the end, you’ll have a working vision pipeline you can reuse for perception and AI experiments.
In this final lecture, we recap the full pipeline you built: installing ROS 2 and Gazebo, setting up PX4 SITL, flying the x500 with QGroundControl, and streaming the drone camera into ROS 2. You’ll review how all the pieces fit together and get concrete ideas for next steps, such as adding offboard control, autonomous missions, or AI-based perception on top of this simulation setup.
This course is a practical, beginner-friendly introduction to drone simulation using ROS 2 and Gazebo. Starting from a clean Ubuntu 24.04 system, you will set up a full stack with ROS 2 Jazzy, Gazebo, PX4 SITL, QGroundControl, and a camera bridge into ROS 2.
The focus is on getting a working simulation as quickly and reliably as possible, without long theoretical detours. Each step is shown on screen and documented in the included “Tutorial Notes” so you can simply copy, paste, and follow along. No prior experience with ROS 2, Gazebo, or PX4 is required.
By the end of this course, you will be able to:
Install and configure ROS 2 Jazzy and the Gazebo simulator on Ubuntu 24.04
Install PX4-Autopilot, run the x500 quadcopter in software-in-the-loop (SITL), and understand the basic console workflow
Adjust key PX4 parameters, arm the drone, take off, hover, and land
Connect QGroundControl, use the virtual joystick, and send simple autonomous commands
Bridge the simulated camera into ROS 2 using ros_gz_bridge and visualize the live video stream with rqt_image_view
The resulting project is a solid base you can reuse for your own research or hobby work: offboard control, AI-based navigation, mapping, or even later connecting similar PX4 configurations to real drones. The course is intentionally short and focused, so you can complete it in an evening and come away with a concrete, repeatable setup for drone robotics experiments.