Install Turtle Rover ROS packages

Here is a tutorial on how to build ROS packages in your ROS environment on Turtle Rover

Prepare your Turtle Rover

First, connect your device to Turtle Rover's console via SSH
Next step is to establish Internet connection
This tutorial assumes you already have base ROS packages installed. If not, head back to this tutorial

Packages installation


First, make sure you have installed the prerequisites
$ sudo apt update
$ sudo apt install git python-rosdep python-catkin-tools python-wstool
We want to install packages inside a workspace that will extend /opt/ros/kinetic workspace. So lets initialize and configure a new catkin workspace
mkdir -p ~/turtle_ws/src
cd ~/turtle_ws
catkin init
catkin config --extend /opt/ros/kinetic -j 2
Now, we can download Turtle Rover's packages
git clone src/tr_ros

Installing dependencies

"source" kinetic workspace so the rosdep tool will see the installed ROS packages
source /opt/ros/kinetic/setup.bash
Install system dependencies of downloaded packages with rosdep
$ rosdep install --from-paths src --ignore-src -r
If rosdep fails to resolve some of the dependencies, that probably means that they are ROS packages that you don't have in your kinetic workspace. We can add and build them together with Turtle Rover's packages
Create rosinstall file for missing packages (exclude already installed)
rosinstall_generator [packages] --deps --wet-only --tar --exclude RPP > package.rosinstall
Add them to workspace
wstool init src
wstool merge package.rosinstall -t src
wstool update -t src
Install system dependencies of newly downloaded packages
rosdep install --from-paths src --ignore-src -r


If everything is prepared, build the workspace by typing
catkin build
After a successful build, we can "source" the workspace to overlay it on top of our environment
source ~/turtle_ws/devel/setup.bash
Our workspace extends the /opt/ros/kinetic one, so all installed tools and packages from kinetic are also available
By default, catkin does not install packages but creates a devel space. If you want to install workspace in a specific location, type
catkin config --install -i [install_location]
You can learn more about catkin workspaces here
Your Turtle Rover's environment is ready for development ;-)