Free Self-Paced Course

ROS 2 Foundations

Learn how real robots are programmed. ROS 2 — the Robot Operating System — is the open-source framework behind research labs, warehouse robots, drones, and humanoids. This course takes you from zero to writing your own robot software in Python, one hands-on lesson at a time.

100% Free 6 Lessons Beginner Python · ROS 2 Humble / Jazzy No account required

What you'll learn

ROS 2 is not a programming language — it's a toolkit for connecting the many small programs that make a robot work: one program reads a camera, another plans a path, another drives the motors. This course teaches you how those programs talk to each other and how to write your own.

Who it's for

Curious teens and adult beginners. If you can follow basic Python — variables, functions, and classes — you're ready. No robotics or Linux experience required; every command is spelled out.

What you'll need

A note on cost

This course is free and always will be. Voyager Lab is a California nonprofit — we sell nothing and charge nothing. If it helps you, you can support our work with a donation, but it is never required to learn.

Lessons

  1. 01

    What Is ROS 2?

    The big picture — nodes, topics, and the robot software graph.

  2. 02

    Install ROS 2 & Build a Workspace

    Get ROS 2 running and create your first colcon workspace and package.

  3. 03

    Nodes & the ROS 2 Graph

    Run nodes, inspect the live graph, and use the ros2 command-line tools.

  4. 04

    Topics: Publisher & Subscriber

    Write two Python nodes that send and receive messages — the heart of ROS 2.

  5. 05

    Services & Parameters

    Request/response calls and configurable values that change how a node behaves.

  6. 06

    Launch Files & Where to Go Next

    Start a whole robot system with one command, plus your roadmap beyond this course.

Start Lesson 1 →