ROS-based Robot


BB-8 is a droid character in the Star Wars franchise. And the BB-8 robot simulation is the robot that you can program, control, navigate, and add sensors to in real life.

Works with



About TurtleBot 3

BB-8 is a droid character in the Star Wars franchise. Spherical with a free-moving domed head, BB-8 is portrayed by both a rod puppet and a remote-controlled robotic unit.

And the BB-8 robot simulation is the robot that you can program, control, navigate, and add sensors to in real life.

The BB-8 robot simulation is modeled as a spherical body with an hemispherical head attached to it. The base is a big tub sitting on the floor, with two wheels. You can use it to apply any ROS knowledge you have learned.


Related resources

Course - Linux for Robotics

In the Linux for Robotics course, you will master essential Linux knowledge in order to get started with ROS.

Robot Used: BB-8

What You will learn

  • How to navigate through a Linux filesystem
  • How to interact with a Linux filesystem
  • How to edit files using the Shell (vi editor)
  • Manage access to files (Permissions)
  • Create simple Linux programs (Bash Scripts)
  • Manage execution of Linux programs (Processes)
  • How to connect to the remote computer of a robot (ssh)
Course - ROS Basics in 5 Days


The ROS BASICS IN 5 DAYS course will take you quickly and smoothly into ROS. You will learn the essential concepts and tools to be able to understand and create any basic ROS related projects.

Robot Used: BB-8

What You will learn:

  • Understand key ROS concepts
  • Understand and create your own ROS programs
  • How to debug your ROS programs
  • How to apply theory into real Robotics Challenge and Projects.

Course - ROS2 Basics for C++ in 5 days

 This course will give you the basics for starting ROS2, more than the bells and whistles of ROS2 that are much more advanced topics and will be addressed in their respective specialized courses.

Robot Used: BB-8

What you will learn

  • Creation of ROS2 packages
  • Management of the new Colcon universal building system.
  • Topic Publishers and Subscribers in ROS2 C++.
  • New Launch system based on python
  • Service servers and client generation for ROS2.
  • Basic use of ROS1-Bridge to communicate ROS2 systems with ROS1 systems.
  • Use of Debugging tools in ROS2.
Tutorial - How to create a custom ROS service message. BB-8 Gazebo Simulator

This video shows step by step how to build your own custom ROS service message, and how to use it in your own service.

For this example, we will create a service that measures the amount of distance that the BB8 robot has moved. The service that we will provide is able to measure the amount of distance moved and provide that data either in meters or in miles, depending on how the request is done.

Tutorial - Measure distance traveled with Odometry with BB-8

In this video, you will learn how to measure the distance traveled by the BB-8 robot using the odometry topic. You will move it by sending cmd_vel Twist commands.

LIVE Class - How to Control a BB-8 with ROS2 Dashing

In this class, you will learn how to control a robot with ROS2 in order to follow a person.

** Why is so important to learn this topic? **

We also know that the migration to ROS2 is already happening, and it’s so important to get on it. Controlling a robot is the most important part of robotics, and using a ROS2 could be an interesting way to do it. If you know a little of ROS1 Basics, you’ll find many similarities, and working with topics, publishers, and subscribers is the main part of this.

Robot Used: BB-8

ROSject link:

Pin It on Pinterest