Getting Started

Install ROS and Catkin

Install ROS Melodic. It is easy to miss steps when going through the ROS installation tutorial. If you run into errors in the next few steps, a good place to start is to go back and make sure you have installed ROS correctly.

Once you have ROS installed, make sure you have the most up to date packages:

rosdep update
sudo apt-get update
sudo apt-get dist-upgrade

Install catkin the ROS build system:

sudo apt-get install ros-melodic-catkin python-catkin-tools

Install MoveIt

The simplest way to install MoveIt is from pre-built binaries (Debian):

sudo apt install ros-melodic-moveit

Advanced users might want to install MoveIt from source. If you want to build your own MoveIt fork, replace the repository uri in the .rosinstall file with your own.

Create A Catkin Workspace

You will need to have a catkin workspace setup:

mkdir -p ~/ws_moveit/src

Download Example Code

To easily follow along with these tutorials, you will need a ROBOT_moveit_config package. The default demo robot is the Panda arm from Franka Emika. To get a working panda_moveit_config package, we recommend you install from source.

Within your catkin workspace, download the tutorials as well as the panda_moveit_config package:

cd ~/ws_moveit/src
git clone -b melodic-devel
git clone -b melodic-devel


For now we will use a pre-generated panda_moveit_config package but later we will learn how to make our own in the MoveIt Setup Assistant tutorial.

Build your Catkin Workspace

The following will install from Debian any package dependencies not already in your workspace:

cd ~/ws_moveit/src
rosdep install -y --from-paths . --ignore-src --rosdistro melodic

The next command will configure your catkin workspace:

cd ~/ws_moveit
catkin config --extend /opt/ros/${ROS_DISTRO} --cmake-args -DCMAKE_BUILD_TYPE=Release
catkin build

Source the catkin workspace:

source ~/ws_moveit/devel/setup.bash

Optional: add the previous command to your .bashrc:

echo 'source ~/ws_moveit/devel/setup.bash' >> ~/.bashrc


Sourcing the setup.bash automatically in your ~/.bashrc is not required and often skipped by advanced users who use more than one catkin workspace at a time, but we recommend it for simplicity.

Open Source Feedback

See something that needs improvement? Please open a pull request on this GitHub page