Note: This tutorial assumes that you have completed the previous tutorials: Assembling the TurtleBot Arm.
(!) Please ask about problems and questions regarding this tutorial on Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Installation Instructions for TurtleBot Arm

Description: Installing the software for the TurtleBot Arm, both from sources or debian packages.

Tutorial Level: INTERMEDIATE

Next Tutorial: turtlebot_arm/Tutorials/indigo/SettingUpServos


We explain here how to install the required software to use your turtlebot_arm and run the next tutorials. Follow the software installation instructions if you plan to hack on the turtlebot_arm sources and contribute, or debs installation for just using your arm.

Please note that this tutorial applies only for indigo and subsequent version. For using the turtelbot_arm with previous versions, take a look at this installation tutorial.


We need the arbotix stack to interface with the ArbotiX board you will install in the next tutorial.

sudo apt-get update
sudo apt-get install ros-indigo-arbotix

Software installation

Install some workspace management tools

> sudo apt-get install python-rosdep python-wstool
> sudo rosdep init
> rosdep update

Now create your turtlebot_arm development workspace:

> mkdir ~/turtlebot_arm
> cd ~/turtlebot_arm
> wstool init src
> cd src
> wstool set turtlebot_arm --git --version=indigo-devel
> wstool update turtlebot_arm
> cd ..
> source /opt/ros/indigo/setup.bash
> rosdep install --from-paths src -i -y
> catkin_make

Deb packages installation

sudo apt-get install ros-indigo-turtlebot_arm

Add your arm to your turtlebot

Next, we have to set up the TurtleBot's hardware description file (URDF) to include the arm. Open your robot description xacro file, and add something like:

   <include filename="$(find turtlebot_arm_description)/urdf/arm.xacro" />
   <turtlebot_arm parent="base_link" color="white" gripper_color="green"
             joints_vlimit="1.571" pan_llimit="-2.617" pan_ulimit="2.617">
      <origin xyz="0 0 1"/>

This will attach a turtlebot arm to your robot. Replace base_link with whatever link you want to attach to, and change the origin as needed. Apart from color, we can configure joints velocity limit and lower/upper limits for the first joint (arm_shoulder_pan) to allow accessing to different operational areas, e.g. left handed vs. right handed robot

And probably you will want to launch the turtlebot_arm controller within your robot top-level launch file. To do so, just add your arm launch file:

  <include file="$(find turtlebot_arm_bringup)/launch/arm.launch"/>

Next Tutorial

The next tutorial, Setting up the Dynamixel Servos, will walk you through programming the firmware on the ArbotiX and setting up the servo IDs.

Wiki: turtlebot_arm/Tutorials/indigo/Installation (last edited 2014-08-26 10:53:19 by Jorge Santos)