Boxer ROS Packages


Boxer’s Noetic packages are split into 5 repositories on Github:

  • Boxer – the core description and control packages, needed for physical and simulated robots

  • Boxer Robot – core launch files and services needed for operating a physical Boxer

  • Boxer Simulation – Gazebo simulation packages for Boxer

  • Boxer Desktop – desktop visualization packages for Boxer

  • Boxer Manipulation – optional support for robotic arms and grippers, including Kinova, Kuka, Robotiq, and UR

Installation from Debian Packages


At the time of writing, not all of the Boxer packages have been released as .deb packages yet. These are queued, and will be released ASAP. In the meantime, all the packages can be installed from source using the method outlined below.

The preferred way to install Boxer’s ROS packages is using precompiled Debian packages. These packages are available for Ubuntu 20.04.

To install these packages on your computer, ensure that you have added the ROS1 Noetic and ROS2 Foxy sources to your apt configuration, as well as Clearpath’s package server:

Note that Foxy is only needed if you plan on installing the boxer_robot packages; because of the Otto 100’s ROS2 API the Foxy version of ros_bridge is required to operate the physical robot.

Once you have added all of the new apt sources, simply run

sudo apt-get update
sudo apt-get install ros-noetic-boxer-description ros-noetic-boxer-desktop ros-noetic-boxer-simulation ros-noetic-boxer-robot

Note that the boxer_manipulation packages are not available as .deb packages, because they have additional dependencies that can only be installed from source. See below for details on building packages from source, and refer to boxer_manipulation on Github for more details on using these packages.

Installation from Source

Boxer packages can be compiled and installed from source if desired. Boxer uses the normal catkin build tools.

To compile the Boxer packages, first create a catkin workspace if you do not already have one:

source /opt/ros/noetic/setup.bash
mkdir -p $HOME/catkin_ws/src
cd $HOME/catkin_ws
catkin_init_workspace src

Then clone the necessary packages from Github. Depending on your needs, not all packages will be necessary.

cd $HOME/catkin_ws/src
# you'll likely always need the core boxer description and msg packages:
git clone

# desktop packages are only needed if you'll be using Rviz to monitor or
# control a real or simulated robot
git clone

# simulation packages are only needed if you'll be using the Gazebo simulations
git clone

# robot packages are only needed on the backpack PC connected to the base platform
git clone

# manipulation packages are only needed if your robot is equipped with a robotic arm or gripper
git clone

Install the necessary dependencies using rosdep

cd $HOME/catkin_ws
rosdep install --from-paths src --ignore-src --rosdistro=noetic -r


If you included the boxer_manipulation repository you will need to install additional dependencies from source, e.g. the ros_kortex driver for Kinova arms, or the universal_robots_ros_driver for UR arms. Refer to the boxer_manipulation github page for more information.

Finally, build the workspace:

cd $HOME/catkin_ws

If you are setting up a Boxer backpack PC, see Configuring the Backpack for additional steps needed.

Boxer Environment Variables

Like all Clearpath robots, Boxer supports additional customization through the use of environment variables.

The following table lists the available environment variables and their effect on the robot.






The Boxer's serial number. This should be of the form A31_0123456789 and must match the serial number stamped on the robot



The version of the Otto SDK running on the base platform.



Optional path to an additional URDF file to be added to the robot's description. Commonly used to add additional joints and links to add additional payloads, e.g. arms, additional sensors



Optional path to a configuration file to override any of the Boxer's control parameters. Commonly used to change controller button mappings, EKF parameters, etc...



If 1 the URDF will include a model of the backpack PC. If t the backpack PC is omitted from the URDF. The shape of the mode is determined by the BOXER_PC_MODEL variable



Customizes the shape of the backpack PC added to the URDF. Must be one of the following:

  • evs-2000 (default): the Vecow EVS-2000 series computer (or equivalent case)
  • ecx-2000: the Vecow ECX-2000 series computer (or equivalent case)
  • mini-itx: a common mini-ITX mini desktop enclosure


0 0 0

Defines the position of the backpack computer in the URDF relative to the Boxer's top_plate_link


0 0 0

Defines the orientation of the backpack computer in the URDF relative to the Boxer's top_plate_link



If 1 the GPIO pins on the PC can be controlled via a ROS node. Not yet supported