Robohub.org
 

Book Review: Mastering ROS for Robotics Programming, by Lentin Joseph


by
21 March 2016



share this:

Lentin_Joseph_Mastering_ROS_for_Robotics_ProgrammingMastering ROS for Robotics Programming is a good book that will help you learn ROS and take advantage of some of the powerful nodes (programs) that are out there. The book covers both a 7 DOF robot arm and a differential drive robot throughout the different chapters. That should really help you out no matter which type of robot you have (hmmm… what about quadcopters?).

The book starts with an introduction to ROS. The introduction does a good job describing the basic ROS constructs such as the directory structure, nodes, services, etc. and goes into detail to describe those constructs. The book continuous to show how to create ROS packages, add custom messages (topics), and creating launch files. The first chapter has everything you need to get a basic ROS system up and running. One thing missing is how to have your launch file start on computer boot up (using the “ROS way” as opposed to just adding it to rclocal).

The book can use more information on using the catkin build system and CMake. I am not sure if that is fair to expect in this book, but it is an essential skill to develop with ROS, and is not listed as a skill that people using this book are expected to have.

ROS only supports versions of Ubuntu that are around when that version of ROS was released. In general, ROS is not upgraded when a new version of Ubuntu is released (this is one of the things that I dislike about ROS). To deal with this, the examples in the book are given for both ROS Indigo (the prior version) and ROS Jade (the current version). Good job to the author for that!

After you are given the basics of ROS, the rest of the book is roughly split into three sections: ‘Modeling, Simulating & Autonomy’, ‘Working with Hardware’, and an example.

For Modeling, Simulating & Autonomy, the book starts with a chapter on how to model your robot with URDF. Afterwards you use the model created to simulate it using Gazebo and learn how to add planning and autonomy to arms and mobile robots. There is an extra chapter dealing with advanced usage of MoveIt for robotic arms, I would have liked to see an advanced chapter for the Navigation Stack. I also would have liked more information on using the transforms within the Navigation Stack. With that said, I am happy the book addresses these items as many other authors do not.

After getting the high-level tour of ROS and making an autonomous robot with existing nodes, the book steps back to teach the reader how to build controllers, work with hardware, (controllers, motors, sensors, cameras, etc.) and visualizations. The book has many examples of working with specific hardware items such as Arduino, Raspberry Pi, Kinect, webcams, Hokuyo, & the Velodyne. Adding a joystick to that list might have been nice. Working with OpenCV and PCL within ROS has a dedicated chapter.

At first I was skeptical of having an example section since I have seen many books do this poorly, however, this book does a good job describing in detail how to configure an example robot without making you feel like they are just regurgitating what they built. It also has more details about the Navigation Stack, which partially makes up for not having an advanced chapter on it.

The best practices section at the end of the book could have had more ROS specific practices, instead of just generic C++ practices. I like the fact that the book uses c++ as that is how most robots are built. It would have been nice to have a chapter with basic discussions on python and java usage. The author briefly mentions setting up ROS on distributed systems, this could be expanded a little (such as in the roswtf section for looking at timing).

Overall, I give this book 4.5 out of 5 stars. By going into detail for both robotic arms and mobile robots, this book is sure to help both a novice or experienced programmer enter the world of ROS and get their robots up and moving.

Note: The paperback book has black and white images. I think the e-book has color images.


I would like to thank the Publisher PACKT for providing me with a copy of this book for review.

Some words of disclaimer:
I have never met the author of this book and the opinions above are mine.


If you enjoyed this post, you might also like:

See all the latest robotics news on Robohub, or sign up for our weekly newsletter.



tags: ,


Robots for Roboticists David Kohanbash is a Robotics Engineer in Pittsburgh, PA in the United States. He loves building, playing and working with Robots.
Robots for Roboticists David Kohanbash is a Robotics Engineer in Pittsburgh, PA in the United States. He loves building, playing and working with Robots.

            AUAI is supported by:



Subscribe to Robohub newsletter on substack



Related posts :

Gradient-based planning for world models at longer horizons

  28 Apr 2026
What were the problems that motivated this project and what was the approach to address them?

Robot Talk Episode 153 – Origami-inspired robots, with Chenying Liu

  24 Apr 2026
In the latest episode of the Robot Talk podcast, Claire chatted to Chenying Liu from University of Oxford about how a robot's physical form can actively contribute to sensing, processing, decision-making, and movement.

Sony AI table tennis robot outplays elite human players

  22 Apr 2026
New robot and AI system has beaten professional and elite table tennis players.

AI system learns to keep warehouse robot traffic running smoothly

  20 Apr 2026
This new approach adapts to decide which robots should get the right of way at every moment, avoiding congestion and increasing throughput.

Robot Talk Episode 152 – Dexterous robot hands, with Rich Walker

  17 Apr 2026
In the latest episode of the Robot Talk podcast, Claire chatted to Rich Walker from Shadow Robot Company about their advanced robotic hands for research and industry.

What I’ve learned from 25 years of automated science, and what the future holds: an interview with Ross King

and   14 Apr 2026
Ross King created the first robot scientist back in 2009. He spoke to us about the nature of scientific discovery, the role AI has to play, and his recent work in DNA computing.

Robot Talk Episode 151 – Robots to study the ocean, with Simona Aracri

  10 Apr 2026
In the latest episode of the Robot Talk podcast, Claire chatted to Simona Aracri from National Research Council of Italy about innovative robot designs for oceanography and environmental monitoring.

Generative AI improves a wireless vision system that sees through obstructions

  08 Apr 2026
With this new technique, a robot could more accurately detect hidden objects or understand an indoor scene using reflected Wi-Fi signals.



AUAI is supported by:







Subscribe to Robohub newsletter on substack




 















©2026.02 - Association for the Understanding of Artificial Intelligence