GitHub
OpenManipulator-X (official image)
Photo: ROBOTIS — the OpenManipulator-X on the official e-Manual
#011

OpenManipulator-X

Stationary · Robotic arm
Stationary robotic arm
Not gatedHarness checks: 3 clean · 0 warn · 0 err · 6 not checked

A tabletop robot arm from ROBOTIS: five Dynamixel servos — four arm joints and a gripper — on a TTL multidrop bus, with 380 mm of reach and a 500 g payload. It never moves from its base plate, and it has no battery at all: a 12 V supply plugs into the wall.

Spec

Actuators5× XM430-W350-T Dynamixel servos, TTL multidrop bus
Dof5 (4 arm joints + gripper)
Gripper stroke20–75 mm (e-Manual specification)
Payload500 g (e-Manual specification)
Power12 V DC supply — no onboard battery
Reach380 mm (e-Manual specification)
Weight0.70 kg — the e-Manual figure excludes the base plate; the URDF's link masses sum to 0.594 kg
Source: ROBOTIS e-Manual — OpenManipulator-X specification + ROBOTIS-GIT/open_manipulator URDF · linkLicense: Apache-2.0 (ROBOTIS-GIT/open_manipulator)Spec file: examples/openmanipulator-x.jsonActuators, input voltage, DOF, payload, weight, reach and gripper stroke all from the ROBOTIS e-Manual's OpenManipulator-X specification page. The e-Manual states the 0.70 kg weight excludes the base plate; the official URDF's seven link masses sum to 0.594 kg, recorded in the spec's component masses. The spec's width is the gripper's maximum stroke (75 mm) and its height the radial reach — an arm has no body box; both are labeled with what they mean. Power is a 12 V DC supply, modeled in the spec's battery slot with chemistry 'dc_supply' and zero capacity, because the arm carries no battery.

Imported specimen

Imported specimen — source: robot_descriptions (upstream: ROBOTIS-GIT/open_manipulator), license: Apache-2.0, imported 2026-10-29.

Links9 (7 with inertial data)
Joints8 (2 fixed, 2 prismatic, 4 revolute)
Degrees of freedom5
Actuated joints4 revolute: joint1, joint2, joint3, joint4; 2 prismatic: gripper_left_joint, gripper_right_joint
Total mass (description inertials)0.594057 kg

Parsed from the URDF at the pinned upstream commit: link/joint elements, inertial masses, joint types and mimic tags (the gripper's right finger joint mimics the left, so the two prismatic joints count as one gripper degree of freedom). Full record: catalog/specimens/openmanipulator-x.json (upstream URDF open_manipulator_description/urdf/open_manipulator_x/open_manipulator_x.urdf at commit bc555a9c, via robot_descriptions 3.3.0 (Python package), module robot_descriptions.open_manipulator_x_description).

An import is provenance, not a verdict: this entry stays Not gated, and no parts kit is defined for it.

GateA pass/fail test in the Gazebo simulator: the twin drives 1 m, turns 90° and stops, and the result is measured against where it really went. runs

The motion gate covers ground robots today. This class has no gate yet, so there is no verdict to show — the note below says why, in the entry's own words.

No recorded gate runs yet. This robot has no verdict until one is measured.

Not gated. The motion gate drives ground robots and grades drive/turn error; there is no manipulation gate yet, so this entry carries no verdict — its spec is validated, and that is all that is claimed.

HarnessThe robot’s wiring. The harness check adds up current on each power rail and flags wires that are too thin or rails that are overloaded. checks

Electrical checks over this robot's documented wiring. Not a simulation; the headline is counts, never a blanket pass.

Harness checks: 3 clean · 0 warn · 0 err · 6 not checked

3 checked clean · 0 with warnings · 0 with errors · 1 partial · 6 not checked · missing data: current_a for motors ×5, cable.gauge_awg ×4, cable.length_mm ×2

Check-by-check counts and missing data
CheckCheckedPartialNot checked
voltage drop002
ampacity002
logic levels100
rail budget011
connector match201

Findings: none — the inputs that could be checked raised nothing. That is not the same as everything being checked; the counts above say how much was.

Missing data — the datasheets still to hunt. A check that could not run says what it needs:

Missing inputBlocksNeeded by
current_a for motors5battery -> opencr, opencr -> motors, opencr rail
cable.gauge_awg4battery -> opencr, opencr -> motors
cable.length_mm2battery -> opencr, opencr -> motors
connector at both ends (connector_from / connector_to)1battery -> opencr
current_a for opencr1battery rail
rated output current for battery1battery rail

Report: catalog/harness-reports/openmanipulator-x.json · checked 2026-10-27 · reproduce with robotforge harness examples/openmanipulator-x.json

Take it apart

This viewer derives a schematic take-apart straight from the spec's numbers — the same one-derivation rule as the ground kits — flat views, or in 3D with the toggle. It is a schematic of the real robot's layout, not a printable kit: robotforge cad kits cover ground robots only today. Click any part.

Loading examples/openmanipulator-x.json…

Parts kit

The take-apart kit robotforge cad generates from this robot's spec: every part the generator defines, what it does, and the parameters worth tweaking with the values this robot's kit ships with. Each parameter carries the generator's own source label — from spec numbers come out of the spec, derived numbers are computed from them, and assumption numbers are typical values the spec does not carry.

No take-apart kit is defined for this robot yet — the kit generator builds kits for wheeled ground robots from the spec's wheel block, and this spec has no wheels.

Reproduce it

Run these from a clone of the repository. The twin, CAD kit and motion gate (urdf / cad / run-gate) cover ground robots today, so they are not listed here.

robotforge validate examples/openmanipulator-x.json
robotforge catalog robot 11
robotforge harness examples/openmanipulator-x.json