Skip to content

About

Teleoperate SO-ARM101 in Issac sim

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

22 Commits

Folders and files

Repository files navigation

SO-ARM101 Teleop (Isaac Sim + Isaac Lab)

Minimal, self-contained teleoperation stack for SO-ARM101 using Isaac Sim 5.1.0 and Isaac Lab 2.3.0. This repo vendors only the SO-ARM101 URDF + meshes and provides a simple joint-space teleop script.

Layout

  • src/soarm_sim/robots/so_arm101/urdf includes the SO-ARM101 URDF and meshes.
  • src/soarm_sim/robots/so_arm101/so_arm101_cfg.py defines the robot articulation.
  • src/soarm_sim/tasks/teleop/teleop_env_cfg.py defines a minimal scene (table + robot + light).
  • src/soarm_sim/scripts/teleop.py provides keyboard teleop in joint space.

Docker (Vast.ai / GPU)

We build on top of the working Isaac Sim 5.1.0 image, then install Isaac Lab 2.3.0 + our code using uv.

  1. Choose the base image tag that works on your Vast.ai machine:
export ISAACSIM_BASE_IMAGE=nvcr.io/nvidia/isaac-sim:5.1.0
  1. Build and run:
docker compose build
docker compose up -d
  1. Enter the container:
docker compose exec soarm-sim bash
  1. Run teleop:
uv run teleop --mode joint --device keyboard
uv run teleop --device keyboard

X11 (recommended for you)

Make sure X11 forwarding is allowed on the host. Example:

xhost +local:root

The compose file mounts /tmp/.X11-unix and passes DISPLAY.

Teleop Controls

Joint mode

Keys set joint velocity commands; release stops movement.

  • W/S: shoulder_pan +/-
  • E/D: shoulder_lift +/-
  • R/F: elbow_flex +/-
  • T/G: wrist_flex +/-
  • Y/H: wrist_roll +/-
  • O: toggle gripper open/close

Notes

  • Isaac Lab runs inside Isaac Sim's Python environment. That is why the runtime image must be based on an Isaac Sim image.
  • The dev container is intentionally minimal and does not include Isaac Lab or Isaac Sim.

About

Teleoperate SO-ARM101 in Issac sim

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages