Online Course

Intermediate ROS2 

Take your ROS2 knowledge to the next level

Course overview

In this course, take a deep dive into more advanced ROS2 learning topics.


What You Will Learn


How to create different types of launch files in ROS2


How to work with parameters in ROS2


Threading in ROS2


How to manage callbacks in ROS2


Understand Quality of Service (QoS) in ROS2


Understand DDS in ROS2


Work with Managed Nodes in ROS2

100% Online

No ROS setup is required. Everything is online.

Intermediate Level


Approx. 12 hours to complete

Simulated Robot Used

Neobotix MP-400 Simulation

The MP-400 can be used in more ambitious applications as an autonomous carrier of special equipment or as an experimental system in robotics research, the MP-400 masters almost all tasks, also with full ROS support.


Unit 1: Understanding Launch Files in ROS2

Understand launch files in ROS2 and explore different methods of creating launch files

What will you learn in this unit:

  • Call other launches inside the main launch
  • How to create more complex launch files
  • Different languages that are supported
  • launch_ros Actions
  • Parameter passing


Unit 2: ROS2 Parameters

Learn how to work with Parameters in ROS2.

Topics covered in this unit:

  • Create a demo code
  • Interact with parameters from the command line tools
  • Examine the code
  • Load parameters on launch file
  • Parameter Calbacks
Unit 3: Managing Complex Nodes

Learn about multithreading with ROS2 and callback management

What will you learn in this unit?

  • How to manage more complex Nodes
  • Executors
  • Callback Groups

Unit 4: Quality of Services (QoS) in ROS2

Understand how QoS is used in ROS2 with simple examples. You will learn:

  • How to change them and QoS Compatibility
  • QoS in ROS2 Bags

Unit 5: Understanding DDS in ROS2

Understand DDS in ROS2 , how to modify it, and how to work with QoS. 

What will you learn in this unit?

  • Understanding DDS in ROS2
  • Basic use of RVIZ2 debugging tools
  • view_frames tool
  • ROS2 Doctor
Unit 6: Lifecycle Nodes

In ROS2, there are two types of nodes:

  • Nodes that inherit from ‘Node()’
    Nodes that inherit from ‘LifecycleNode()’

This unit is about the last one: why you need them and how to use them.

What our students think

I am wholeheartedly grateful for this outstanding opportunity. I wouldn’t have found a better ROS beginner-friendly course elsewhere. Thanks, ConstructSim !

Francois Gonothi Toure

I have tried to start learning ROS before and that was so difficult because I didn’t understand how to start, now with these introductory courses I am very excited because I can finally start to enter this world.

Daniel Martínez

“I really enjoy the practical aspect and learning by doing. I feel like I learn way faster and with a rich understanding.”

Jose Dos Santos

Course creators

Miguel Angel

Miguel Angel

Head of Research @ The Construct | Creator of over 10 ROS AI courses | Author of ROS IN 5 DAYS book collection

Alberto Ezquerro

Alberto Ezquerro

Head of Education @ The Construct | Creator of over 30 ROS courses | Author of ROS IN 5 DAYS book collection

Ricardo Téllez

Ricardo Téllez

CEO @ The Construct | Teacher of Robotics at La Salle University and Universitat Politècnica de Catalunya

Related courses

Discover more Robotics Courses

Top universities choose The Construct for Campus to teach ROS & Robotics.

Start Learning Now.


Pin It on Pinterest