Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/MRRP-lab/arm-demos/llms.txt

Use this file to discover all available pages before exploring further.

The arm-demos project uses Pixi to manage the entire dependency tree, including ROS 2 Jazzy, MoveIt 2, and Python packages. You do not need to install ROS 2 separately or source any system-level ROS setup files; Pixi resolves and installs everything into an isolated, reproducible environment tied to the workspace. The only requirement is a Linux x86_64 machine, as declared by platforms = ["linux-64"] in pixi.toml.

Prerequisites

  • Linux x86_64 host (native or WSL2)
  • Git
  • Internet access for the first pixi install

Key dependencies

Pixi installs the following packages automatically when you run pixi install:
PackageVersionPurpose
python3.12Runtime for all demo scripts
ros-jazzy-desktop0.11Full ROS 2 Jazzy desktop stack
ros-jazzy-moveit2.12MoveIt 2 motion planning framework
ros-jazzy-moveit-py2.12Python bindings for MoveIt 2
ros-jazzy-ur3.7Universal Robots ROS 2 driver
opencv-pythonlatestComputer vision (PyPI)
depthailatestOAK-D camera SDK (PyPI)
mediapipelatestHand landmark detection (PyPI)
opencv-python, depthai, and mediapipe are declared under [pypi-dependencies] and installed via pip inside the Pixi environment. No system-level pip or virtualenv setup is required.

IDE support

The environment includes debugpy for VS Code’s Python debugger, isort for import sorting, and uv for the ms-python.vscode-python-envs extension. Point your VS Code Python interpreter to the Pixi environment (pixi shell --print-activate-command can help locate the prefix).

Shell activation

When you open a pixi shell, Pixi automatically sources install/setup.sh, which overlays the built ROS 2 workspace on top of the base Pixi environment. This means all ros2 commands and custom packages are available immediately after the shell starts.
# Interactive shell with full environment
pixi shell

# Or prefix individual commands without entering the shell
pixi run ros2 topic list

OAK-D viewer environment

The oak-viewer Pixi environment is a separate, self-contained environment for running the Luxonis OAK Viewer GUI. It does not activate the default feature set and instead sets up its own library paths. On WSL2, it also includes a PowerShell helper to forward the USB device from Windows.
# Install the oak-viewer environment (downloads and unpacks the Luxonis viewer deb)
pixi run --environment oak-viewer install-oak

# Launch the viewer
pixi run --environment oak-viewer oak-viewer

Setup steps

1

Install Pixi

Follow the Pixi installation guide for your platform. The recommended method is:
curl -fsSL https://pixi.sh/install.sh | sh
Restart your shell after installation so the pixi binary is on your PATH.
2

Clone the repository

git clone https://github.com/MRRP-lab/arm-demos.git
cd arm-demos
3

Install all dependencies

pixi install
Pixi reads pixi.toml, resolves the full dependency graph (conda + PyPI), and downloads packages. This may take several minutes on first run.
4

Build the ROS 2 workspace

pixi run build
This runs colcon build --symlink-install over the src/ directory and produces the install/ tree. The install/setup.sh sourced on activation comes from this step, so you must build before launching any node.

Build docs developers (and LLMs) love