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

# IsaacBimanual

## IsaacBimanual

Inherits from: [`ZenohAgent`](/robot-api/reference/sim/zenoh/agent/ZenohAgent)

Isaac Sim bimanual arm implementation backed by Zenoh.

This class provides an interface to control left and right arms in Isaac Sim
through Zenoh clients configured for side-specific topics.

### Inherited methods

* From [`ZenohAgent`](/robot-api/reference/sim/zenoh/agent/ZenohAgent): `create_clients`, `getForce`, `getTorque`, `getImage`, `getPosition`, `getOrientation`, `sendVelocity`, `sendPose`, `publishMsg`, `getMsg`, `getJointAngles`, `setJointAngles`, `getJointVelocities`, `getJointStates`, `getObjectPose`, `setObjectPose`, `run`, `stop`, `prompt`, `reset`
* From [`Robot`](/robot-api/reference/base/robot/robot/Robot): `addSensor`, `cleanup`

### **init**

```python theme={null}
IsaacBimanual.__init__(config = default_isaac_config)
```

Initialize an IsaacBimanual robot instance.

This initializes a bimanual robot in Isaac Sim through zenoh.
For arm control, it sets up left and right arms with appropriate zenoh topics.

<ResponseField name="Arguments">
  <ParamField query="config (dict)" type="dict">
    Configuration dictionary containing Zenoh topics and settings. (default: default\_isaac\_config)
  </ParamField>
</ResponseField>

### getState

```python theme={null}
IsaacBimanual.getState()
```

Get the current state of the bimanual arms.

<ResponseField name="Returns">
  <ResponseField name="dict" type="">
    Current state including left and right arm states.
  </ResponseField>
</ResponseField>

### moveByVelocity

```python theme={null}
IsaacBimanual.moveByVelocity(linear_velocity: Velocity, angular_velocity: Velocity, frame: str = 'body') -> None
```

Move the robot base by specifying linear and angular velocities.

<ResponseField name="Arguments">
  <ParamField query="linear_velocity (Velocity)" type="Velocity" required>
    Linear velocity components.
  </ParamField>

  <ParamField query="angular_velocity (Velocity)" type="Velocity" required>
    Angular velocity components.
  </ParamField>

  <ParamField query="frame (str)" type="str">
    Reference frame for the velocity command. (default: "body")
  </ParamField>
</ResponseField>

<ResponseField name="Returns">
  <ResponseField name="returns" type="None" />
</ResponseField>

<ResponseField name="Raises">
  <ParamField query="NotImplementedError" type="">
    This robot does not support base velocity control.
  </ParamField>
</ResponseField>
