Bimanual SO-100/SO-101
Two SO-100 or SO-101 follower arms driven as one robot by LeRobot. Each arm's observation and action keys get a left_ or right_ prefix. It is a software configuration of two standard SO arms, not a separate hardware product.
open hardware · Apache-2.0LeRobot native since 0.3.2verified 2026-10-24aka bi_so_follower, bi_so100_follower, Bimanual SO-100, Bimanual SO-101, bi-SO100, bi-SO101
Policies on Bimanual SO-100/SO-101 10 with evidence · 2 unknown
| Policy | State | Tier | Verified | Detail |
|---|---|---|---|---|
| ACT Imitation | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| Diffusion Policy Imitation | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| GR00T N1.7 VLA | partial | T3 · community reported | 2026-10-25 today | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| MolmoAct2 VLA | partial | T3 · community reported | 2026-10-25 today | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| Multitask DiT Imitation | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| π0-FAST VLA | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| π0 VLA | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| π0.5 VLA | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| SmolVLA VLA | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| X-VLA VLA | partial | T1 · upstream documented | 2026-10-24 1d ago | Fine-tuning on bimanual SO data is documented upstream (so101_bimanual action mode); on-robot inference on a bimanual SO is not documented by a primary source. |
No verified evidence, but both are available in LeRobot (ecosystem context): EO-1, Evo-1, Fast-WAM, HIL-SERL, LingBot-VA, TD-MPC, VLA-JEPA, VQ-BeT, WALL-OSS.
Not yet verified: OpenVLA-OFT, OpenVLA. Have evidence?
Specifications
- Degrees of freedom
- 5 (Per arm: five joints + gripper (six STS3215 servos); 2 arms.)src
- Arms
- 2
- Actuators
- Feetech STS3215 serial bus servos (6 per arm)src
- Homepage
- github.com/TheRobotStudio/SO-ARM100
- Supported sensors
- RGB, single camera, RGB, two cameras (wrist + overview), RGB, three or more cameras, Intel RealSense depth
- Teleoperation
- Two SO-100/SO-101 leader arms (bimanual leader)
Cameras can be declared at top level or per arm. Per-arm cameras get the left_/right_ prefix, and top-level cameras keep their names.
Framework support
| Framework | Support | Since | Type string | Docs |
|---|---|---|---|---|
| LeRobot | nativesrc | 0.3.2 | bi_so_follower | — |
| LeRobot: 0.3.2 to 0.4.2 used the type bi_so100_follower (added in PR #1509, merged 2025-07-16). v0.4.3 renamed it to bi_so_follower when the bimanual SO setups were consolidated (PR #2780). Each side takes an SOFollowerConfig, so SO-100 and SO-101 arms both work. There is no dedicated docs page in v0.6.1. | ||||
Sources
- T1 · upstream documentedsource-codesource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
bi_so_follower composes two SOFollowerConfig arms (left/right).
“@RobotConfig.register_subclass("bi_so_follower") @dataclass class BiSOFollowerConfig(RobotConfig): """Configuration class for Bi SO Follower robots.""" left_arm_config: SOFollowerConfig right_arm_config: SOFollowerConfig”
https://github.com/huggingface/lerobot/blob/v0.6.1/src/lerobot/robots/bi_so_follower/config_bi_so_follower.py - T1 · upstream documentedsource-codesource 2025-11-27verified 2026-10-24 (1d ago)lerobot 0.4.2
Before 0.4.3 the type was bi_so100_follower.
“@RobotConfig.register_subclass("bi_so100_follower")”
https://github.com/huggingface/lerobot/blob/v0.4.2/src/lerobot/robots/bi_so100_follower/config_bi_so100_follower.py - T1 · upstream documentedrelease-notessource 2025-08-01verified 2026-10-24 (1d ago)lerobot 0.3.2
Bimanual SO-100 was added before the first tagged release.
“Feat/add bimanual so100 robot by @pkooij in https://github.com/huggingface/lerobot/pull/1509”
https://github.com/huggingface/lerobot/releases/tag/v0.3.2 - T1 · upstream documentedrelease-notessource 2026-01-22verified 2026-10-24 (1d ago)lerobot 0.4.3
v0.4.3 consolidated the bimanual SO setups into bi_so_follower.
“feat(robots): consolidates bi SO setups by @imstevenpmwork in https://github.com/huggingface/lerobot/pull/2780”
https://github.com/huggingface/lerobot/releases/tag/v0.4.3 - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
LeRobot camera classes: OpenCV (USB webcams etc.) and RealSense (with depth).
“| `RealSenseCamera` | Intel RealSense (with depth) |”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/cameras.mdx