[ROS] How To Import a Python Module From Another Package

In this tutorial I’ll show you how to import a Python module from another package. ROS allows you to do that, and as you’ll see it’s quite simple. If you have a package which contains some common tools, helper functions, utils, or other stuff like that, you may want to be able to write the … Read more

Package Organization For a ROS Stack [Best Practices]

What is the best package organization for your ROS stack? How can your better separate your code into different packages? Although there is no right answer to this question, and everyone is free to do what they think is best, I’ll try to give here some feedback from my own experience. I have analyzed what … Read more

ROS Param Command Line Tool – Practical Example (rosparam)

This tutorial is a practical guide on how to use rosparam command line tool to debug ROS Params. ROS params are really useful to launch your ROS application with different setup settings, without having to re-write and re-compile any part of your code. With the rosparam command line tool, you’ll be able to test your … Read more

Create a ROS Node Outside a Catkin Workspace

In this tutorial I’ll show you how to create a ROS node outside a catkin workspace – both for Python and Cpp. Most of the post is dedicated to linking ROS libraries to a Cpp file, because as you’ll see it’s quite simple for Python. Why would you want to create a node outside of … Read more

When to use Python vs Cpp with ROS

You’re programming with ROS, or are just getting started, and you wonder: should you use Python vs Cpp with ROS? Of course… It depends. But in this post I’ll try to go beyond this “it depends” answer, to give you some points on when to you use one language or the other. To this question, … Read more

ROS Duration (roscpy and roscpp)

In this tutorial I’ll show you how to use ROS Duration in your ROS code – for roscpp and rospy. Through several examples you’ll see some of the most common use cases where ROS Duration is useful. Also, for each example you’ll learn about the differences between the Python and Cpp implementation, which is sometimes … Read more