This repository documents my journey of learning ROS 2 Foxy from the ground up on Ubuntu 20.04.
As robotics and autonomous driving systems evolve, understanding their software architecture is essential. I'm studying ROS 2 (Foxy) to:
- Build a strong foundation in robot software development
- Understand key ROS 2 concepts like nodes, topics, services, actions, and launch files
- Prepare for working with Autoware, an open-source autonomous driving software stack built on ROS 2
My long-term goal is to gain the skills needed to work on autonomous driving systems by:
- Mastering ROS 2 Foxy concepts and tooling
- Understanding how ROS 2 enables modular, distributed, and real-time behavior in robotic systems
- Transitioning into Autoware.AI and Autoware.Auto development environments
- ๐
tutorials/: Code examples based on ROS 2 official tutorials - ๐งช
experiments/: Custom test nodes and communication patterns - ๐
notes/: Study notes, architecture diagrams, and command references - ๐ง
launch/: Launch files and package setups - ๐ก
communication/: Publisher/Subscriber, Service/Client, Action examples
- Ubuntu 20.04 LTS
- ROS 2 Foxy Fitzroy
- Programming Languages: Python 3, C++ (rclcpp)
- Tools:
colcon,rviz2,ros2bag,ros2 topic,ros2 service,ros2 action
Feel free to fork, clone, or open issues. This is an open learning projectโcontributions and suggestions are always welcome!