Unit 07 · overview

Unit 7 — Packages and Python Nodes

Until now, you have mostly operated other people's ROS 2 nodes.

Now you build your own.

The course stays Python-first:

ROS WORKSPACE
└── src/
    └── robotnix_pubsub/
        ├── package.xml
        ├── setup.py
        ├── setup.cfg
        ├── resource/robotnix_pubsub
        └── robotnix_pubsub/
            ├── __init__.py
            ├── talker.py
            └── listener.py

Lessons

  1. A ROS Package Is a Deployable Unit
  2. Create an ament_python Package
  3. Read the Generated Package Tree
  4. package.xml: Declare What the Package Is
  5. setup.py, setup.cfg, and Entry Points
  6. Write the First rclpy Node
  7. Build a Publisher Node
  8. Build a Subscriber Node
  9. Declare Dependencies and Executables
  10. Build, Source, Run, and Inspect
  11. Diagnose Python Package Failures
  12. Unit Mission: Modify and Defend Your System

Artifact

A learner-built Python ROS 2 package containing two nodes that exchange messages over a topic, plus build/graph evidence and one meaningful modification.

Source attribution: adapted from ROS 2 Jazzy beginner package and Python pub/sub tutorials in Gh0stlyKn1ght/ros2_documentation, CC BY 4.0.