Install
openclaw skills install soarm-controlControl the robotic arm through the OpenClaw SOARM API. Use this skill when reading current joint state, moving by joint angles, moving by XYZ coordinates, o...
openclaw skills install soarm-controlUse the existing SOARM API to control the robotic arm directly.
Default Local Setup (when on same machine):
http://127.0.0.1:8000curl -sS http://127.0.0.1:8000/joints
Returns current joint values and XYZ end-effector position.
curl -sS -X POST http://127.0.0.1:8000/move/joints \
-H 'Content-Type: application/json' \
-d '{"angles":[0,0,0,0,0,0]}'
Parameter Notes:
shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripperFixed Positions:
| Name | shoulder_pan | shoulder_lift | elbow_flex | wrist_flex | wrist_roll | gripper |
|---|---|---|---|---|---|---|
initial | 0 | -104 | 95 | 65 | -95 | 10 |
top_down | 0 | -50 | 30 | 90 | -95 | 70 |
Examples:
Return to initial:
curl -sS -X POST http://127.0.0.1:8000/move/joints \
-H 'Content-Type: application/json' \
-d '{"angles":[0,-104,95,65,-95,10]}'
Return to top_down:
curl -sS -X POST http://127.0.0.1:8000/move/joints \
-H 'Content-Type: application/json' \
-d '{"angles":[0,-50,30,90,-95,70]}'
curl -sS -X POST http://127.0.0.1:8000/move/xyz \
-H 'Content-Type: application/json' \
-d '{"x":0.2,"y":0.0,"z":0.2}'
Parameter Notes:
x: forward/backward (positive = forward)y: left/right (positive = left)z: up/down (positive = up)curl -sS -X POST http://127.0.0.1:8000/pick
Returns:
ok: true if the task was acceptedmessage: 抓取任务已启动409 if another pick task is already runningcurl -sS -X POST http://localhost:8000/move/joints \
-H 'Content-Type: application/json' \
-d '{"angles":[0,-104,95,65,-95,10]}'
curl -sS -X POST http://localhost:8000/move/joints \
-H 'Content-Type: application/json' \
-d '{"angles":[0,-50,30,90,-95,70]}'
curl -sS http://localhost:8000/joints
When pairing your SOARM device with OpenClaw:
Organize the skill directory
├── references
│ └── so101_new_calib.urdf # download from TheRobotStudio
├── scripts
│ ├── best.pt # yolo11n model
│ ├── control_soarm_joints.py
│ ├── move_soarm_to_xyz_pinocchio.py
│ ├── read_soarm_joints.py
│ ├── soarm_api.py
│ └── start_server.sh
└── SKILL.md
Perpare lerobot env
Launch the server
~/.openclaw/workspace/skills/soarm-control
bash scripts/start_server.sh