Install Turtlebot3 on ROS 2 Foxy

(Your system must already have Ubuntu 20.04 LTS and ROS 2 Foxy Fitzroy installed.) As of July 2020, a pre-built binary of the Turtlebot3 package is still not available for ROS 2 Foxy so I had to install it from source. I followed the Robotis ROS 2 setup as a guide, but updated some commands for Foxy. Install ROS 2 Dependency Packages Install Colcon Install Gazebo 11 These steps are from the Gazebo tutorial but updated for Foxy. Try launching…

Rebooting the Mio Robot project

I revived the Mio home robot project after shelving it over 2 years ago. When I stopped, the robot can be wirelessly controlled (via ROS teleop_twist_joy) and I had SLAM navigation running on Gazebo simulator, but did not implement it on the robot itself. I recently came across Philip Schmidt’s “Visual navigation for wheeled autonomous robots” talk and was impressed by Intel’s achievement to cram a robust SLAM solution into a pair of low-power sensors: the RealSense T265 tracking camera…

Using a PlayStation DS4 with ROS Kinetic on Ubuntu 16.04

For certain tasks, driving a mobile robot with a joystick is easier than using keyboard controls. I realized this while creating maps of simulated environments for my autonomous navigation experiments. The joystick I used is a PlayStation DualShock 4 (DS4) controller. It took me a few tries to get a working setup even after following these tutorials: 1, 2. This was partly because the first was written for an older version of ROS, and none discussed the nuances between connecting…

Installing ROS Melodic (Bare Bones) on MacOS Mojave

Getting ROS to compile on MacOS (OS X) is an experience guaranteed to test your patience creativity in fixing build and runtime errors. After all, ROS does not officially support MacOS and its install guide is broken and outdated. With a few days of tinkering, I managed to build ROS Melodic and want to share the information. Here is my setup: MacOS Mojave (v10.14.6) running on Macbook Pro native Python 2.7.10 interpreter bundled with Mojave (Homebrew Python 2.7.13 + pyenv…