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

Introduction to WiringPi (for Raspberry Pi)

WiringPi is a Cpp library for Raspberry Pi. With this library you can use many of the functionalities provided by the GPIO header: digital pins, SPI, I2C, UART, etc. Although there are many Python libraries for Raspberry Pi GPIOs, Cpp is quite a bit behind. Fortunately, there is WiringPi. In this post you’ll install WiringPi, … Read more

WiringPi I2C tutorial with Rasperry Pi (using ADXL345)

In this tutorial I’ll show you how to write a Cpp program with WiringPi on your Raspberry Pi board, to communicate with a sensor through I2C protocol. Make sure to read this introduction to WiringPi before if you don’t know the library well. We’ll just use the basic functionalities of the ADXL345 here: read acceleration … 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