Skip to content

Repository files navigation

RIO

RIO: flexible real-time Robot I/O for cross-embodiment robot learning.

This project provides a Python-based interface to use different robot arms (Franka, Kinova, Universal Robots, UFACTORY, SO100, ...), grippers, cameras, and teleop interfaces, with built-in support for data collection, teleoperation, and Vision-Language-Action (VLA) policy deployment.

Setup

Tested on Ubuntu 22.04 LTS with an optional real-time kernel patch. See docs/ubuntu.md for setup instructions.

git clone git@github.com:robot-i-o/rio.git

# install open-pi
cd rio
mkdir third_party && cd third_party
git clone git@github.com:Physical-Intelligence/openpi.git

# install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# create venv and install dependencies
uv venv --python 3.10
source .venv/bin/activate
uv sync --all-extras

Documentation

Build and browse the docs locally at http://localhost:8000:

uv sync --group docs
uv run mkdocs serve

Citation

If you use RIO in your research, please cite our paper:

@inproceedings{ortega-kral_rio_2026,
  author    = {Pablo Ortega-Kral and Eliot Xing and Arthur Bucker and Vernon Luk and
               Junseo Kim and Owen Kwon and Angchen Xie and Nikhil Sobanbabu and
               Yifu Yuan and Megan Lee and Deepam Ameria and Bhaswanth Ayapilla and
               Jaycie Bussell and Guanya Shi and Jonathan Francis and Jean Oh},
  title     = {RIO: Flexible Real-Time Robot I/O for Cross-Embodiment Robot Learning},
  booktitle = {Robotics: Science and Systems (RSS)},
  year      = {2026},
  eprint    = {arXiv:2605.11564},
}

Releases

Packages

Contributors

Languages