> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zeroruntime.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Ways to connect your machine, and how to tell which one is yours.

Pick the path that matches what you already run.

## How it fits together

Whichever you pick, it becomes the same two classes, so safety, recording and
video sync work the same way on each.

```mermaid theme={null}
flowchart LR
    A[Your LeRobot robot] --> D[LeRobot adapters]
    B[Your ROS 2 drivers] --> E[zrt-teleops-ros2 bridge]
    C[Your own hardware] --> F[Your subclass]
    D --> G[Follower and Leader]
    E --> G
    F --> G
    G --> H[Safety, video sync, recording]
```

## What you write

| Path | What you use | What you write |
| - | - | - |
| [LeRobot](/robotics/integrations/lerobot) | `SO101FollowerAdapter`, `SO101LeaderAdapter` | a short script handing each one your LeRobot object |
| [ROS 2](/robotics/integrations/ros2) | `zrt-teleops-ros2-leader`, `zrt-teleops-ros2-follower` | a params file, and one command on each machine |
| [Custom](/robotics/integrations/custom) | `Follower`, `Leader` | `descriptor()`, `read_joints()` and `write_joints()` |

## Choosing a path

<CardGroup cols={3}>
  <Card title="LeRobot" icon="box" href="/robotics/integrations/lerobot">
    You already drive an SO-101 with LeRobot.
  </Card>

  <Card title="ROS 2" icon="diagram-project" href="/robotics/integrations/ros2">
    You already have ROS 2 drivers and topics.
  </Card>

  <Card title="Custom" icon="puzzle-piece" href="/robotics/integrations/custom">
    Anything else, including your own hardware.
  </Card>
</CardGroup>

<Warning>
  Both ends must use the same joint names, in the same order, with the same
  units. The leader checks this when control is granted and declines if they do
  not match, so `claim_control()` returns `False`.
</Warning>

<Note>
  Using a framework we do not ship an adapter for yet? Tell us at
  [the community](https://community.zeroruntime.ai/) and we are happy to
  build one for it. In the meantime,
  [a subclass of your own](/robotics/integrations/custom) works with any hardware today.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.