Robotics 路 Free

ROS 2 Robot Programming with Python

The step from a control panel to robot software: nodes, topics, services and messages; installing ROS 2 on Ubuntu, WSL2 or a Raspberry Pi; workspaces, Python packages and launch files; the encoders, lidar, motors and drive geometry underneath; a wall-following control loop you write yourself; SLAM, costmaps and autonomous navigation; arm kinematics and motion planning; and where C++, a ROS 1 bridge and a language model actually belong.

13 modules 7h 7m of video English 路 self-paced

Inside the course

ROS 2 Robot Programming with Python: Syllabus at a glanceROS 2 Robot Programming with Python: What you will be able to doROS 2 Robot Programming with Python: Tools and credits

From the lessons

  • Chapter 01 Robot Software Platform

    What ROS 2 is and the problem it solves

    ROBOTIS OpenSourceTeam

  • Chapter 04 Important Concepts of ROS

    Nodes, topics and the ROS graph

    ROBOTIS OpenSourceTeam

  • ROS2 Tutorials #2: How to Publish & Subscribe to a ROS2 Topic [UPDATED]

    Publishers, subscribers and messages in Python

    The Construct Robotics Institute

  • Combine Publisher, Subscriber & Service in ROS2 Single Node | ROS2 Tutorial

    Services: request and reply in one node

    The Construct Robotics Institute

  • Chapter 07 Basic ROS Programming

    Writing a control loop: the wall follower

    ROBOTIS OpenSourceTeam

  • Chapter 13 Manipulator

    Manipulators and arm motion

    ROBOTIS OpenSourceTeam

Lesson frames belong to the creators named in the Credits below and are shown from YouTube.

What you will learn

Install ROS 2 on Ubuntu or a Raspberry Pi and prove the graph is running; create a workspace and a Python package that builds with colcon; write publisher, subscriber and service nodes and define your own message; bring a whole system up with one launch file and inspect it with ros2 topic, rqt_graph and RViz; read a LaserScan and drive a base with Twist to follow a wall; explain how SLAM, costmaps and the global and local planners produce autonomous navigation; describe forward and inverse kinematics and why an arm still needs a motion planner; and read a C++ node, plan a ROS 1 to ROS 2 migration, and place a language model above the navigation stack rather than inside the control loop.

  • Install ROS 2 on Ubuntu, WSL2 or a Raspberry Pi and prove the graph is running
  • Create a workspace, build a Python package with colcon and run a node you wrote
  • Write publisher, subscriber and service nodes, and define your own message type
  • Bring a whole robot up with one launch file and inspect it with ros2 topic, rqt_graph and RViz
  • Read a LaserScan and drive a base with Twist to follow a wall under proportional control
  • Explain how SLAM, costmaps and the global and local planners produce autonomous navigation

For you

Taking ROS 2 Robot Programming with Python from the United States

The course project 路 about 16 hours

Tote-transport AMR on ROS 2: Nav2 on a TurtleBot 3 class base between stores and two assembly lines

Design, build, test and document a ROS 2 mobile robot that carries kitting totes from the stores counter to two pump-assembly lines and back, on a TurtleBot 3 Waffle Pi class base with Nav2, called by a button on a tablet, over the plant's Wi-Fi. You deliver the Python package with its mission, safety-stop and button nodes, one launch file, your own waypoint register and navigation test report, and the deploy procedure. The sample pack shows what a small-robot integrator hands over.

Sample document pack, 8 documents, filled in for the scenario

  • URSUser Requirements: Tote Transport Robot AMR-1, Stores to Assembly Lines A and B
  • SDSSoftware Design Specification: AMR-1 ROS 2 System
  • RegisterMap and Waypoint Register: Floor 1, Stores to Lines A and B
  • IP planIP Plan and Device List: AMR-1 on the Plant Wi-Fi, VLAN 40
  • Test reportNavigation Test Report: Twenty Runs per Route, Obstacles, Wi-Fi Roaming and Battery
  • Risk registerRisk Assessment Register: AMR-1 Among People (ISO 12100, task-based, with ISO 3691-4 in view)
  • ProcedureProcedure: Deploying and Updating the AMR-1 Software, with Rollback
  • O&M manualOperation and Maintenance Manual: AMR-1 (Operation section, the laminated note)

Read inside the course and download as a workbook. The project is optional practice, marked when you submit it; the certificate needs only the modules and the final assessment.

Course content

13 modules 路 35 lessons 路 7h 7m

In order, at whatever pace suits you. Each module ends with a practice task that builds on the last.

  1. 01What ROS 2 is and the problem it solves30m
  2. 02Installing ROS 2 and setting up the machine29m
  3. 03Nodes, topics and the ROS graph29m
  4. 04Workspaces and Python packages34m
  5. 05Publishers, subscribers and messages in Python27m
  6. 06Launch files and the inspection tools29m
  7. 07Services: request and reply in one node44m
  8. 08Sensors, motors and the mobile base38m

Requirements

Who it is for
Intermediate. Assumes basic Python and comfort with a Linux terminal. No robotics background needed, and no prior ROS.
Software
Ubuntu 22.04 or 24.04, natively or through WSL2 or Docker. ROS 2 Humble or Jazzy, Python 3, colcon, rqt, RViz and Gazebo. Every tool is free and open source. What to download, and how
Hardware
A laptop with about 8 GB RAM and 30 GB free disk, because ROS 2 and a simulator have to be installed. The notes, practice questions and study plan read on a phone; the practicals do not. A Raspberry Pi, a 2D lidar and a small differential-drive base appear in the lessons and are optional.

Software you need

What to download, where from, what it costs and how to install it. Every link goes to the maker's own site, never a mirror.

ROS 2 wants Ubuntu 22.04 (Humble) or 24.04 (Jazzy), natively or through WSL2 or Docker.

Required

  1. 01

    Ubuntu Desktop

    Canonical

    Free
    Runs on
    64-bit PC (Intel or AMD) or ARM 64-bit. Recommended: 2 GHz dual-core processor, 6 GB RAM, 25 GB free disk space.
    Account
    None needed
    Size
    About 5.9 GB ISO (Intel or AMD 64-bit, current LTS)

    Free to download and use. LTS releases get five years of free security updates, which Ubuntu Pro can extend.

    Alternatives

  2. 02

    ROS 2 (Robot Operating System 2)

    Open Robotics (ROS project)

    Free
    Runs on
    Jazzy: Ubuntu 24.04 (Noble). Humble: Ubuntu 22.04 (Jammy). amd64 and arm64.
    Account
    None needed

    ROS 2 is free and open source. Jazzy Jalisco is supported until May 2029 and Humble Hawksbill until May 2027.

    Alternatives

Optional

Useful, not needed to finish the course.

  1. 03

    Windows Subsystem for Linux (WSL)

    Microsoft

    Free
    Runs on
    Windows 10 version 2004 and higher (Build 19041 and higher) or Windows 11
    Account
    None needed

    WSL is part of Windows and costs nothing. The Linux distribution you install (Ubuntu by default) has its own free licence.

    Official download pagelearn.microsoft.com
  2. 04

    Docker Desktop

    Docker, Inc.

    Free for personal use, education and small businesses
    Runs on
    Windows 10 64-bit version 22H2 (build 19045) or Windows 11 64-bit version 23H2 (build 22631) or later, with WSL 2 and hardware virtualisation on, 8 GB RAM. Also macOS and Linux.
    Account
    None needed

    Free for personal use, education, non-commercial open source projects, and businesses with fewer than 250 employees and less than 10 million US dollars in annual revenue. Larger businesses need a paid subscription. Docker Engine on Linux is open source and is not covered by these terms.

    Alternatives

    • Docker Engine (Linux): Free, open source engine for Linux. Not covered by the Docker Desktop subscription terms.
  3. 05

    Visual Studio Code

    Microsoft

    Free
    Runs on
    Windows 64-bit (supported Windows client versions), macOS (latest and two previous releases), Linux (Ubuntu 20.04, Debian 10, RHEL 8, Fedora 36 or later)
    Account
    None needed
    Size
    Less than 200 MB download, under 500 MB installed

    Free to download and use. Extensions from the Marketplace each have their own licence.

    Official download pagecode.visualstudio.com

Checked against each maker's own page on 27 September 2026. Trial lengths and editions change; the maker's page is the final word.

ROS 2 Robot Programming with Python at a glance

ROS 2 Robot Programming with Python is a free, self-paced online course from EDWartens for engineering students, ITI and diploma holders, and working engineers in manufacturing and robotics. It has 13 modules and 7h 7m of video lessons by The Construct Robotics Institute, ROBOTIS OpenSourceTeam, with written notes and worked problems, a practical project with a document pack and a 15-question final assessment (pass mark 60%). Learning is free with an account; an optional certificate with a public verification code is issued when you pass. Last updated 27 September 2026.

All course facts
Price
Free, for good. No trial, no card. The only paid item is the optional certificate, a small one-off fee.
Who it is for
Engineering students, ITI and diploma holders, and working engineers in manufacturing and robotics
Format
13 self-paced modules, 7h 7m of video, written notes, a practice task per module and one final assessment.
Level
Intermediate. Intermediate. Assumes basic Python and comfort with a Linux terminal. No robotics background needed, and no prior ROS.
Brand
Vendor-neutral
Software
Ubuntu 22.04 or 24.04, natively or through WSL2 or Docker. ROS 2 Humble or Jazzy, Python 3, colcon, rqt, RViz and Gazebo. Every tool is free and open source.
Hardware
A laptop with about 8 GB RAM and 30 GB free disk, because ROS 2 and a simulator have to be installed. The notes, practice questions and study plan read on a phone; the practicals do not. A Raspberry Pi, a 2D lidar and a small differential-drive base appear in the lessons and are optional.
Certificate
Optional EDWartens Certificate of Completion, verifiable by code. Not a vendor credential.
Video lessons by
The Construct Robotics Institute, ROBOTIS OpenSourceTeam (independent creators, credited below)
Language
English
Last updated
27 September 2026

A shareable EDWartens certificate

Finish every module and pass the final assessment, and the optional EDWartens certificate is yours. It carries a unique verification code on a public page anyone can check, so it stands up when a recruiter looks it up. See it below.

The course itself stays free whether or not you ever buy one.

Stuck? Ask a practising engineer

A free course usually means a comment section and hope. This one does not. Every module has an Ask-your-trainer panel that reaches the same engineers who teach our paid programme: people who commission panels for a living, not moderators.

Pairs well with

More free courses: Free industrial robot programming courses

Learner reviews

No reviews yet

Reviews here are written only by learners who have finished every module of ROS 2 Robot Programming with Python, and they are published exactly as written. Finish the course and yours will be the first.

Common questions

Is the ROS 2 Robot Programming with Python course really free?

Yes. Every module, every practice task and every assessment costs nothing, and there is no card on file. You create an account so your progress is saved and the assessments can be marked. The certificate is the only paid item, and only if you want it.

What certificate does the ROS 2 Robot Programming with Python course give?

An EDWartens Certificate of Completion, issued when you have finished every module and passed the final at 60%, with a verification code anyone can check. It is not a vendor credential and is never described as one.

Who made the video lessons in the ROS 2 Robot Programming with Python course?

The Construct Robotics Institute and ROBOTIS OpenSourceTeam, on their own YouTube channels, and they are credited at the foot of this page. EDWartens did not make the videos and neither creator is affiliated with EDWartens. What EDWartens wrote is the study plan, the notes, the practice tasks and the assessments.

What computer do I need for the ROS 2 Robot Programming with Python course?

A laptop that can run Ubuntu 22.04 or 24.04, with roughly 8 GB of RAM and 30 GB of free disk. Windows is fine through WSL2 or Docker. This is the one course in the free catalogue you cannot do on a phone alone: the notes and practice questions read on a phone, but ROS 2 and the simulator need a real machine.

Do I need to know Python first?

Basic Python is assumed: functions, classes, lists and dictionaries. You also need to be comfortable in a Linux terminal, since almost everything is run from one. No C++ is required; the last module only asks you to read a C++ node, not write one.

Some lessons were recorded on ROS 1. Does that matter?

The concept chapters from ROBOTIS were recorded for ROS 1, and each module says so. Nodes, topics, services, sensors, drive geometry, SLAM and kinematics are unchanged. Where the commands differ, the module notes give the ROS 2 form, and every hands-on lesson you follow at the keyboard is ROS 2.

Is this the same as an official ROS certification?

No. There is no single accrediting body for ROS, and this course is not endorsed by Open Robotics, ROBOTIS, The Construct or any vendor. It is preparation and practice. What you get from EDWartens is a Certificate of Completion for the work you did here.

Will this help me get a robotics job?

It gets you past the first filter. ROS or ROS 2 is a named requirement in warehouse robotics, AMR and factory-robotics roles in robotics hubs worldwide, and most applicants from a maintenance or PLC background have never installed it. A course alone is not a hire. A simulated robot running on your own laptop that you can explain in an interview is what makes the difference.

What you walk away with

Your certificate for ROS 2 Robot Programming with Python

Finish the course, pass the final, and this is the document with your name on it.

Sample EDWartens Certificate of Completion for ROS 2 Robot Programming with Python
Sample. The issued certificate carries your name, admission number, a unique certificate number and its own QR code.
  • Verifiable by anyone

  • Adds to LinkedIn in one click

  • QR code on the certificate

  • Names what you can do

  • A permanent link

  • Earned, not attended

Learning is free. The certificate is optional.

Add it now and pay only when you have finished the course, or come back for it later. One-off, US$28.99, with a receipt.

Issued by EDWartens, the training division of Wartens, as a Certificate of Completion for this self-paced course. Sold by Wartens Ltd (England and Wales). It is not a vendor certification, a university award or a CPD-accredited activity, and it does not certify competence on live equipment. Delivered electronically; see the refund policy.

Credits

Who made the video lessons

The video lessons in this course were created by the people below, not by EDWartens. Every lesson streams from its creator's own YouTube channel; EDWartens neither hosts nor sells that footage, and the creators are not affiliated with EDWartens and do not endorse this course. What EDWartens wrote is the study plan, the notes, the practice tasks and the assessments.

  • The Construct Robotics Institutethe ROS 2 tutorial lessons: installing Jazzy and installing on a Raspberry Pi, nodes and topics from the command line, workspaces, Python and C++ packages, publishers and subscribers, custom messages, launch files, services combined in one node, the wall follower, the ros1_bridge lesson and the language-model robot
  • ROBOTIS OpenSourceTeamthe ROS Robot Programming chapters used for the concepts underneath: robot software platforms, the development environment, the core concepts and tools, sensors and motors, the embedded layer, mobile robots, SLAM and navigation, and manipulators

If you are one of these creators and would like a lesson removed or credited differently, write to info@wartens.com.