Build so101_ros2
Bootstrap the workspace
Create or reuse a ROS 2 workspace and clone the repository into the
srcdirectory:mkdir -p ~/ros2_ws/src cd ~/ros2_ws/src git clone --recurse-submodules https://github.com/nimiCurtis/so101_ros2.git cd so101_ros2
Run the helper script once to install system dependencies and append the ROS 2 sourcing statements to your shell configuration:
./build.sh
The script can be safely rerun if you need to refresh dependencies.
Source your shell configuration or open a new terminal to load the ROS2 environment.
Expose Lerobot to ROS 2
Export the Conda site-packages directory so the bridge nodes can import
Lerobot modules at runtime:
export LECONDA_SITE_PACKAGES=<conda_root>/envs/lerobot_ros2/lib/python3.10/site-packages
For persistent setups create a symbolic link from the Lerobot sources into the bridge install path inside the workspace:
export LEROBOT_SRC=<path to lerobot>/src/lerobot
export SO101BRIDGE_INSTALL_SITE_PACKAGES=<ros2_ws>/install/so101_ros2_bridge/lib/python3.10/site-packages/lerobot
ln -s $LEROBOT_SRC $SO101BRIDGE_INSTALL_SITE_PACKAGES
Recreate the link after rebuilding to ensure it points to the latest install folder.
Camera support
Two camera backends are supported out of the box:
USB cameras – installed automatically through
rosdepin the initial build. Install manually if required:sudo apt install ros-humble-usb-cam
- Intel RealSense cameras
Install the librealsense SDK from the official repo.
The ROS2 RealSense lib is installed automatically through
rosdepin the initial build.Install manually if required:
sudo apt install ros-humble-realsense2-*
Adjust the camera parameter files in so101_bringup/config to select the
correct device paths and settings before launching.