ROS2 stack to control Staubli robots using ros2_control.
Current developments are based on the jazzy ROS 2 distribution (Ubuntu 24.04 LTS). The driver is designed for Staubli robot with CS9 controllers, older versions are not supported. To date, only position control is supported. More control modes (velocity and hand-guiding) as well as diagnostics support will be included in subsequent releases.
Note
This driver is currently in development. However, due to interrupted funding on this project, active developments have been paused after the initial POC (november 2025). They should resume shortly of 2026. The driver is shared in its current state due to solicitations from the robotics community, but please keep in mind that it is more of an prototype than an industry-ready software.
If your organisation relies on this software or would like to accelerate the implementation of specific features, project-specific funding or a research collaboration agreement can be arranged through the ICube Laboratory. To do so, please contact Laurent Barbé.
See full documentation at https://icube-robotics.github.io/staubli_driver_ros2/.
This software is provided "as is" without any warranties. The authors or distributors are not liable for any damages, including physical harm or financial loss, arising from the use or inability to use this software. Users assume all responsibility and risk associated with its use.
Important
In order to test the driver safely:
- Always test first in
MANUALmode - Once you switch to
AUTOmode, always supervise the robot and keep the E-stop close by to be able to stop the robot in case of emergency - When testing the driver with Moveit, start planning trajectories with a (very) low velocity and acceleration scaling (e.g., 10% max). It is also recommended to check the expected motion in Rviz before executing it.
source /opt/ros/jazzy/setup.bash
mkdir ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/ICube-Robotics/staubli_driver_ros2.git
cd ..
# Install ROS2 dependencies
rosdep install --ignore-src --from-paths . -y -r
# Build packages
colcon build- Follow instructions in staubli_robot_driver/val3/README.md.
- Transfer the VAL3 application:
source install/setup.bash
ros2 run staubli_robot_driver upload_val3_server.pysource install/setup.bash
ros2 launch staubli_bringup launch_robot_control.launch.py \
robot_model:=tx2_60l \
robot_ip:=<ip_of_your_robot> \
use_mock_hardware:=false \
gui:=trueICube Laboratory, University of Strasbourg, France
SATT Conectus, France
Thibault Poignonec: tpoignonec@unistra.fr / thibault.poignonec@gmail.com Laurent Barbé: laurent.barbe@unistra.fr

