The Raspberry Pi & Arduino Bootcamp Bundle
What's Included

ROS2 for Beginners

- Experience level required: Intermediate
- Access 100 lectures & 10 hours of content 24/7
- Length of time users can access this course: Lifetime
Course Curriculum
100 Lessons (10h)
- Your First Program
- 1. Intro1.1 Welcome!3:111.2 What is ROS2, When to use it, and Why?6:471.3 How to get the most out of this course
- 2. Install ROS2 and Setup Your Environment2.1 Intro2.2 Which ROS2 Distribution to Use4:532.3 Install Ubuntu 20.04 on a Virtual Machine (VirtualBox)16:092.4 Programming Tools I Will Use During This Course3:442.5 Install ROS2 Foxy Fitzroy on Ubuntu 20.043:412.6 Setup Your Environment For ROS22:162.7 Launch a ROS2 Program!2:482.8 Section Conclusion
- 3. Write your First ROS2 Program3.1 Intro3.2 Install the ROS2 build tool - Colcon2:183.3 Create a ROS2 Workspace4:083.4 Create a Python Package5:573.5 Create a C++ Package4:083.6 What is a ROS2 Node?7:353.7 Write a Python Node - Minimal Code14:573.8 Write a Python Node - With OOP7:463.9 Write a C++ Node - Minimal Code13:363.10 Write a C++ Node - With OOP9:443.11 OOP Template For Your Nodes3.12 More about the ROS2 Client Libraries for Different Languages2:313.13 Section Conclusion
- 4. Introduction to ROS2 tools4.1 Intro4.2 Debug and Monitor Your Nodes With ros2 cli9:574.3 Rename a Node at Runtime6:024.4 Colcon5:004.5 rqt and rqt_graph3:484.6 Discover Turtlesim4:534.7 Activity 001 - ROS2 Nodes and Tools4.8 Activity 001 - Solution4:254.9 Section Conclusion
- 5. ROS2 Topics - Make Your Nodes Communicate Between Each Other5.1 Intro5.2 What is a ROS2 Topic?9:005.3 Write a Python Publisher18:205.4 Write a Python Subscriber9:365.5 Write a C++ Publisher17:115.6 Write a C++ Subscriber10:015.7 Debug ROS2 Topics with Command Line Tools7:075.8 Remap a Topic at Runtime3:385.9 Monitor Topics with rqt and rqt_graph6:185.10 Experiment on Topics with Turtlesim4:525.11 Activity 002 - ROS2 Topics5.12 Activity 002 - Solution [1/2]8:475.13 Activity 002 - Solution [2/2]11:095.14 Section Conclusion
- 6. ROS2 Services - Client/Server Communication Between Nodes6.1 Intro6.2 What is a Service?7:006.3 Write a Python Service Server13:396.4 Write a Python Service Client - no OOP13:446.5 Write a Python Service Client - OOP12:136.6 Write a C++ Service Server14:426.7 Write a C++ Service Client - no OOP14:236.8 Write a C++ Service Client - OOP17:136.9 Debug Services with ROS2 Tools4:506.10 Remap a Service at Runtime3:096.11 Experiment on Services with Turtlesim7:486.12 Activity 003 - ROS2 Services6.13 Activity 003 - Solution11:566.14 Section Conclusion
- 7. Create Custom ROS2 Interfaces (Msg and Srv)7.1 Intro7.2 What are ROS2 Interfaces?11:347.3 Create and Build Your First Custom Msg13:507.4 Use Your Custom Msg in a Python Node10:277.5 Use Your Custom Msg in a C++ Node4:277.6 Create and Build Your First Custom Srv4:327.7 Debug Msg and Srv with ROS2 Tools7:067.8 Activity 004 - ROS2 Custom Interfaces7.9 Activity 004 - Solution [1/3]10:547.10 Activity 004 - Solution [2/3]13:317.11 Activity 004 - Solution [3/3]19:317.12 Section Conclusion
- 8. Change Node Settings at Runtime with ROS2 Parameters8.1 Intro8.2 What is a ROS2 Parameter?3:188.3 Declare Your Parameters12:168.4 Get Parameters From a Python Node11:328.5 Get Parameters From a C++ Node9:388.6 Activity 005 - ROS2 Parameters8.7 Activity 005 - Solution [1/2]5:588.8 Activity 005 - Solution [2/2]4:208.9 Section Conclusion
- 9. Scale Your Application With ROS2 Launch Files9.1 Intro9.2 What is a ROS2 Launch File?2:319.3 Create and Install a Launch File14:199.4 Configure Your Nodes in a Launch File6:419.5 Activity 006 - ROS2 Launch Files9.6 Activity 006 - Solution11:179.7 Section Conclusion
- 10. Complete Project With Turtlesim10.1 Intro - Your Challenge0:5010.2 Some Tips to Get Started10.3 Project - Step 1/628:2910.4 Project - Step 2/615:4010.5 Project - Step 3/617:0910.6 Project - Step 4/619:0910.7 Project - Step 5/67:2610.8 Project - Step 6/612:2410.9 Project Conclusion
- 11. Conclusion11.1 What You've Learned1:5211.2 What to do next
ROS2 for Beginners
Edouard Renard | Software Engineer & Entrepreneur
Edouard Renard is a software engineer and entrepreneur. He enjoys teaching new technologies to people, and making complex stuff easy to understand. His method is simple and contains only 3 words: Step-By-Step. He knows how hard it can be to learn a new topic and just be lost in an ocean of information, without knowing what to do. In his courses, he makes sure that you learn one step at a time, through practice, and that you also learn the best practices.
Edouard also co-founded a robotics startup in 2016, building a complete robotic arm, from scratch, with Arduino, Raspberry Pi, Ubuntu, and ROS. Thus, he is aware of things that work and things that don’t work, thanks to a lot of practice. This will save you precious time and make you progress faster.
Description
This course aims to remove the big learning curve that you face when you start to learn ROS by yourself. It will show you, step by step, what you need to know to get started and master ROS basics. For each section, the instructor will explain one concept that is easy to understand, and then you will practice with me by writing, building, and running some code. This course will show you what you need to pay attention to, what you need to focus on, and how to avoid common mistakes. And, more importantly, you will get some activities and challenges to make you practice the concepts you’ve just seen.
- Access 100 lectures & 10 hours of content 24/7
- Master ROS basics
- Create, build, run, & debug your ROS program
- Learn ROS best practices to make your application readable & scalable
- Create reusable code for any robot powered by ROS
- Write ROS code with both Python and C++
Specs
Important Details
- Length of time users can access this course: lifetime
- Access options: desktop & mobile
- Redemption deadline: redeem your code within 30 days of purchase
- Experience level required: intermediate
- Have questions on how digital purchases work? Learn more here
Requirements
- Basic programming knowledge (Python or C++)
- Familiarity with Linux and how to use a terminal

Learn ROS2 as a ROS1 Developer & Migrate Your ROS Projects

Raspberry Pi For Beginners: Complete Course

Arduino for Beginners: Complete Course

Arduino OOP (Object Oriented Programming)
Terms
- Unredeemed licenses can be returned for store credit within 30 days of purchase. Once your license is redeemed, all sales are final.