OpenArm is an open-source 7DOF humanoid arm designed for physical AI research and deployment in contact-rich environments. With high backdrivability and compliance, it is built with safe human-robot interaction in mind while delivering practical payload capabilities for real-world applications.
OpenArm Cell (on the right) is a standardized environment with unified background, lighting, and camera placement. Research performed using OpenArm can be reproduced around the world in consistent evaluation conditions, facilitating the global discussion on state of the art physical AI research.
OpenArm features human-scale proportions, safety and compliance, and practical payloads. At $6,500 USD for a complete bimanual system, it provides a flexible platform for teleoperation, imitation learning, simulation, and real-world data collection in contact-rich tasks.
We're in continuous development and actively seeking contributors, research partners, and company collaborators to shape the next generation of practical humanoid systems. Ready to join the future of open-source robotics?
Get your OpenArm, assembled or DIY, and join the global community!
Browse verified and certified manufacturers worldwide.
| Platform | Description | Link |
|---|---|---|
| Website | Project homepage and media | openarm.dev |
| Documentation | Complete technical guides | docs.openarm.dev |
| Discord | Community discussions | Join Discord |
| Contact | Direct communication | openarm@enactic.ai |
Arm support: ◯ supported · △ adaptation and test needed · ◌ work in progress - incompatible
| Repository | Documentation | License | 1.0 | 2.0 | Description |
|---|---|---|---|---|---|
| openarm_hardware | Docs | CERN-OHL-S-2.0 | ◯ | ◯ | CAD, STL and BOM for OpenArm, Cell and KER |
| openarm_description | Docs | Apache-2.0 | ◯ | ◯ | URDF/xacro robot description |
| openarm_can | Docs | Apache-2.0 | ◯ | ◯ | CAN motor control library and CLI |
| openarm_ros2 | Docs | Apache-2.0 | ◯ | ◯ | ros2_control and MoveIt packages |
| openarm_mujoco | Docs | Apache-2.0 | ◯ | ◯ | MuJoCo models, including the Cell scene |
| openarm_isaac_lab | Docs | Apache-2.0 | ◯ | ◌ | Isaac Lab environments and RL tasks |
| openarm_dataset | Docs | Apache-2.0 | ◯ | ◯ | Dataset format, Python API, LeRobot conversion |
| openarm_teleop | Docs | Apache-2.0 | ◯ | △ | Leader-follower teleoperation (1.0); for 2.0 see dora-rs below |
The tutorial runs on dora-rs. Each dora-openarm-* repository is one node; a dataflow YAML wires nodes together and dora run starts the application. Swap nodes to go between real arms and MuJoCo, or between KER and VR. openarm_ros2 is an independent stack on openarm_can; dora-openarm-ros2 bridges the two.
| Repository | Documentation | License | 1.0 | 2.0 | Description |
|---|---|---|---|---|---|
| dora-openarm-data-collection | Tutorial | Apache-2.0 | △ | ◯ | Dataflows: KER / VR / WebXR, real or MuJoCo |
| dora-openarm-evaluation | Tutorial | Apache-2.0 | △ | ◯ | Dataflows: policy inference and evaluation |
| dora-openarm-* | Docs | Apache-2.0 | △ | ◯ | Nodes: arm, KER, VR, WebXR, kinematics, MuJoCo, observer, ROS 2, ... |
A motorless leader arm with the same kinematics as OpenArm 2.0, used in the KER tutorial. CAD is in openarm_hardware.
| Repository | Documentation | License | 1.0 | 2.0 | Description |
|---|---|---|---|---|---|
| openarm_ker | Docs | Apache-2.0 | – | ◯ | PC-side library and CLI |
| openarm_ker_firmware | Docs | Apache-2.0 | – | ◯ | Encoder and M5 display firmware |
All participation in the OpenArm project is governed by our Code of Conduct.
