ROS 2 for Beginners Level 2 - TF | URDF | RViz | Gazebo (Udemy.com)
Understand TFs, Design a custom robot with URDF, Simulate the robot in Gazebo - Your Next Step with ROS2.
Created by: Edouard Renard
Last updated November 2025
What you will learn
- Understand what TF (TransForm) is and why we need it
- Create a URDF for any robot (ex: mobile base, robotic arm)
- Simulate and control your robot in Gazebo
- Add Links, Joints, Collisions, Inertia tags in the URDF file
- Understand how to correctly specify links and joints origin
- Use Gazebo plugins to simulate the hardware control of the robot
- Improve and clean up the URDF with Xacro (properties, macros)
- Learn how to use the Robot State Publisher node to publish TF
- Visualize TFs with RViz
- Create XML and Python launch files
- Save and reuse a RViz config in a launch file
- Create a world in Gazebo
- Add a sensor in Gazebo
- Make your robot spawn in a custom Gazebo world
- Learn best practices right from the start
- Practice with additional activities and projects
Course Description
You have learned ROS2 basics and want to go to the next step?
You want to design a custom application for a robot? And maybe also create a simulation for the robot?
Or, you are already working on this, but you feel lost with TF, URDF and Gazebo?
This course is for you. At the end of the course you will be able to design a custom robot with ROS 2, and run this robot in a simulated world.
– Why this course?
I have designed myself a ROS application for a custom robot, while working on a startup project. And I started like everybody, as a beginner.
Not only learning ROS2 basics was hard, but then when adding TF, URDF, and Gazebo, it seemed impossible. It actually took me a few months/years to really be comfortable with those.
When you look at the existing online resources, it’s very hard to find any process that explains in simple terms how to start from scratch and build a project.
That’s why I’ve created this course, so you can benefit from my years of experience with ROS. I made the course I wish I had when I got started.
My goal is to make you save tons of hours and frustration, by giving you a step by step approach, with a real project that we do together, from beginning to end.
– How do I teach?
If you’ve taken other ROS 2 courses from me you know that I’m not here to waste your time.
My teaching method is quite simple:
Step by step
Going to the point
Learn while doing
Also I strongly focus on the “why” behind what you learn. The goal is not just to make you blindly repeat some steps, but to understand why those steps matter.
And don’t take my word for it - here are some reviews from fellow students/researchers/engineers/teachers who took my ROS 2 courses on Udemy:
“Best course on ROS2 I’ve taken! Other courses (different sites/platforms) made it confusing but this course makes it so clear and easy to understand while letting you try on your own. I am definitely learning a lot in a painless and simple way. I should have gotten this course from the beginning.” - Miguel Martinez G.
“Overall very satisfied. I’ve a strong background in programming, but at a higher level (web mostly) and the elegant, fluent and clean approach of this course has leveraged my introduction to the ROS environment in a short amount of time, without the struggle of going through a lot of documentation” - Devis D.
“I think I learned all that I need to develop a ROS2 project from scratch. I will recommend 100% this course to anyone who wants to learn the fundamentals of ROS2.” - Javier D.
“This course is awesome. I finally get to understand the development of packages/nodes in a simple progressive way, which helps to understand how the framework works and therefore helps to get into it easily.” - Christophe K.
– What will you do and learn in the course?
This course is project based. We will start a project together, from scratch. Then, step by step, you will build the application, while learning new concepts.
Here’s a quick overview of what you’ll do (non exhaustive list):
Understand what TF is (with RViz) and why we need it.
Start the project by writing a URDF file, to describe the physical properties of a robot - we’ll start with a mobile robot.
Generate TF using the robot state publisher and the URDF.
Improve and clean the URDF using the Xacro tool.
Adapt the URDF for Gazebo, spawn the robot in Gazebo.
Control the robot with Gazebo plugins.
Simulate a sensor in Gazebo.
Create ROS2 packages and XML launch files to start the entire application with one command line.
Everything is hands-on, so you’ll practice right from the start, and I will show you every step that I do.
You also get some extra activities during the course, so you can practice even more by being challenged on key points.
And there is a big final project, where we create yet another robot (robotic arm) from scratch, using everything that you’ve learned in the course. You will also learn how to combine 2 robots together.
So, to go further with ROS 2 and design custom robots and simulations, enroll in the course today!
You don’t take any risk here, because you also get a 30-day money back guarantee if you’re not fully satisfied - no questions asked.
See you in the course!
Note - this course is not for you if:
- You know nothing about ROS 2. In this case, I suggest you start with my “ROS 2 for Beginners” course (level 1).
Instructor Details
- 4.8 Rating
1,869 Reviews
Edouard Renard
Hi, I’m Edouard. I am a software engineer and robotics teacher. I'm also the author of the "ROS 2 from Scratch" book.
I really enjoy teaching new technologies to people, and making complex stuff easy to understand. My method is simple, and contains only 3 words : Step By Step. I know 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 my courses, I make sure that you learn one step at a time, through practicing, and that you also learn the best practices.
I am passionate about robotics. I found that it’s amazing how many cool projects you can do with a robot, when you have the required programming knowledge!
I also co-founded a robotics startup in 2016, building a complete robotic arm, from scratch, with Arduino, Raspberry Pi, Ubuntu and ROS. Thus, I am 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.
More courses by Edouard Renard
Raspberry Pi For Beginners - 2026 Complete Course
4.8 (3,105 Reviews)
Provider: Udemy
Time: 10.6h
$89.99
The Complete Coding for Beginners Course (2026)
4.4 (2,525 Reviews)
Provider: Udemy
Time: 16h
$84.99
ROS For Beginners (ROS Noetic, Melodic, Kinetic) (2025)
4.6 (2,462 Reviews)
Provider: Udemy
Time: 5.9h
$10.99
Programming the Arduino - Getting Started (2025)
4.4 (1,150 Reviews)
Provider: Udemy
Time: 6.8h
$15.99
More Engineering courses
Do it Yourself - Automotive Electrical Diagnosis - Beginner (2026)
4.8 (1,897 Reviews)
Provider: Udemy
Time: 2.1h
$12.99
Advanced Kalman Filtering and Sensor Fusion (2021)
4.8 (1,033 Reviews)
Provider: Udemy
Time: 8.3h
$84.99
Digital Electronics: Robotics, learn by building module II (2020)
4.8 (942 Reviews)
Provider: Udemy
Time: 13.1h
$14.99
An Introduction to Profibus DP Networking (2026)
4.8 (735 Reviews)
Provider: Udemy
Time: 2.9h
$13.99
Reviews
By Fathi Harrath on 8/8/2026
Very clear and t the point. Give confidence. Thanks for the book. Hope that you will publish at least another one , project related and with examples, quizzes and exercises just to consolidate what we have learned from you so far. Je vous souhaite une bonne continuations et beaucoup de succes.
By V Ravisankar on 7/29/2026
The Course really helped me to understand the Fundamentals of ROS2.The pace at which the instructor explained the concepts and the structure of the course is excellent ! .
By Arman Khan on 6/22/2026
i like the course so much as i have started to enter robotics field this course was perfect for as i already completed his ros2 beginner level 1 course and now this both courses help me a lot and i highly recommend for a person who is trying to go in robotics field this course will help you from getting beginner to intermediate and i am telling you with my experience
By Luis Gómez on 6/18/2026
I tried learning to use Gazebo with pure documentation. It wasn't long until I felt confused and frustrated. Then I found this course. It's so good! I really appreciate how he stops to explain absolutely everything so you don't get lost.
By Kaan Aslım on 4/17/2026
This is a fantastic course! I highly recommend it if you want to learn ROS2 simulation. Start with the ROS2 for Beginners Level 1 course and continue with this one. The explanations and course content are excellent and very practical. Thank you so much Edouard Renard!
By Rahul Gupta on 4/17/2026
completed course in 2 days, without a course like this, experimenting and figuring out on your own at start could feel daunting, and one might pursue complex topics and make very slow progress. Courses like these help you cut to the relevant portions and I realise later, the number of details that mattered for me to build projects were not much, I feel much more confident now to try things on my own now.
By 고양이 이 on 3/19/2026
자동한국어 자막이 많이....많이 ㅠㅠㅠㅠ 미흡함 ㅠㅠㅠㅠ 그냥 영어로 들어야되는수준 그리고 안나오는 자막도 많고 그냥 거의 지맘대로 번역됨 하지만 그래도 도움이 많이 되는 강의였음 일일히 번역기 돌리며 완강해서 뿌듯... 기억안나는게 많아서 다시 처음부터 한번 복습하며 들을예정입니다 굿 너무 잘가르치시는것 같아요 완벽한 강의력
By Aaron Jerry on 3/16/2026
Very well made course. Enjoying the pace as well as the instructions and activities
By 世坤 陳 on 2/19/2026
I sincerely feel that it suits me very well. I would say the teacher’s teaching approach — learning by doing — is very suitable for a student like me who takes longer to understand things. I can pause anytime and practice hands-on. If I don’t understand something or have questions, I can stop at any time and look up information to solve the problem.
By Valentin-Nicolae Turcu on 1/22/2026
"I wanted to create a similar robot by myself and I found this tutorial. I feel like I'm progressing faster than if I had done it alone. Thank you for the lessons."
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 96 / 100












