Auto-assembled, not yet reviewed

RUKA Hand

Open-source 15-DoF tendon-driven humanoid hand learned from data, from NYU.

  • No license stated for the printable parts
  • robot hand11 DoF
  • $519.94source total
RUKA Hand 11-DoF robot hand, 3D render from hand_assembly.xml
main assembly 3D · hand_assembly.xml

About RUKA Hand

RUKA is an open-source, tendon-driven humanoid hand with 15 underactuated hand joints across five fingers, from NYU (Zorin, Guzey, Yan, Iyer, Kondrich, Bhattasali, Pinto; arXiv 2504.13165). The source code initializes 11 Dynamixel-compatible motors that drive the hand through tendon couplings, and the repository includes motor calibration, teleoperation, controller training, MuJoCo XML and STL meshes. The 3D view comes from the MuJoCo hand_assembly.xml model. The BOM lists the parts without a complete costed total.

Licenses

Hardware
No license stated for the printable partsMIT covers the software repo; the STLs on GitBook and Onshape state none
Software
MIT
Docs
CC-BY-SA-4.0project website only

Degrees of freedom

11 DoF ring 2index 2pinky 2thumb 3middle 2

Breakdown source

Dexterous handTendon-drivenUnderactuatedsource

How to build RUKA Hand

5 steps

Steps marked Motari summary condense the linked source; follow the source for exact instructions. Upstream step marks a step taken from the linked guide.

  1. Print the structural parts

    Print the plate STL files from the GitBook 3D print parts page with the settings listed per plate: 100% infill for the pulleys and finger parts, 35% infill for the other plates, 0.12 mm layers (0.2 mm for the motorbase top, front and bottom plate) and supports on the build plate only. The MuJoCo files in the repo's assets folder are for simulation.

    Motari summaryruka.gitbook.io/instructions
  2. Source the BOM and assemble

    Source the parts in the GitBook BOM sheet (11 DYNAMIXEL XL330-M288-T, U2D2, 5V power supply, braided fishing line, PTFE tubing, dowel pins, springs, brass inserts), then follow the GitBook assembly pages.

    Motari summaryruka.gitbook.io/instructions
  3. Connect and find the port

    Plug each hand in over USB, identify its /dev/ttyUSB port, and set USB_PORTS in ruka_hand/utils/constants.py. Add your user to the dialout group.

    Upstream stepgithub.com/ruka-hand/RUKA/blob/fe4f60805e7415bbeda8e7d49ef6f...
  4. Calibrate motor ranges

    Run calibrate_motors.py to find the curled and in-tension bounds for each tendon, saved to motor_limits/. Tension varies per build, so calibration is required.

    Upstream stepgithub.com/ruka-hand/RUKA/blob/fe4f60805e7415bbeda8e7d49ef6f...
  5. Run the learned controllers

    Download checkpoints from OSF, then drive the hand with RUKAOperator using the learned LSTM/MLP encoder-decoder controllers, MANUS, or Oculus teleop.

    Motari summaryruka.gitbook.io/instructions
Print timenot published
Assembly time7 h

Wiring, power and firmware are safety-relevant and shown for reference only. Check them against the source before building.

RUKA Hand bill of materials

7 rows

Cost to build

$519.94USDsource total
  • one hand, XL330-M288-T version, without tools, BOM as of 2024-12-19$519.94source total
  • one hand with tools, including a printer, BOM as of 2024-12-19$762.76source total

In the source currency, as read on 2026-09-30. Not converted, and not checked against current vendor prices: none of these is a Motari-verified checkout total.

RUKA Hand parts, as the source lists them (read 2026-06-07). Prices are the source's, not checked against vendors.

RUKA Hand bill of materials
PartQtySpecSourceConfidence
DYNAMIXEL XL330-M288-T11 actuators drive 15 tendon-coupled hand joints
11DYNAMIXEL XL330-M288-T serial servo
ROBOTIS / compatible Dynamixel hardware$23.90 each (GitBook BOM sheet, Dec 2024)RUKA GitBook single-hand BOM sheet; hand.py motor IDs
high
3D-printed RUKA hand mesh setPalm plus MCP/DIP/PIP parts for thumb, index, middle, ring, and pinky fingers
1MuJoCo hand_assembly.xml references 16 source STL visual meshes
3D print yourself from RUKA assets/xml/meshesprice not listedRUKA hand_assembly.xml lines 13-30
high
USB serial / Dynamixel interfaceUSB connection from workstation to hand motor bus
1ROBOTIS U2D2
ROBOTIS / compatible USB serial interface$32.10 (GitBook BOM sheet)RUKA README.md lines 63-65, constants.py line 14, dynamixel_util.py lines 51-75
high
Tendon cable and tensioning hardwareTendon-driven hand hardware requiring per-build motor-range calibration
1Cable/tendon and mechanical tensioning components; tensions vary between builds
hardware retail / self-assembleprice not listedRUKA README.md lines 84-90 and 98-107
med
Controller workstation / host computerRuns installation, calibration, learned controllers, and teleoperation scripts
1Conda/Python environment with RUKA package, checkpoints, and serial access
user-provided computerprice not listedRUKA README.md lines 23-32, 34-40 and 109-158
high
Optional MANUS glove teleoperation deviceOptional teleoperation input path
0MANUS glove and Linux SDK stream client
MANUSoptional; price not listedRUKA README.md lines 177-203
high
Optional Oculus / Quest teleoperation deviceOptional teleoperation input path using OpenTeach Oculus app
0Oculus/Quest headset with OpenTeach app
Meta / OpenTeach setupoptional; price not listedRUKA README.md lines 204-210
high

Rows from the source's own parts list 7

ruka_hand/control/hand.py@fe4f608python

Source rowQtyPrice and vendorLine
RUKA motor count and Dynamixel client setup
11 motor IDs
RUKA source repositoryno price listed
L31

ruka_hand/utils/dynamixel_util.py@fe4f608python

Source rowQtyPrice and vendorLine
RUKA Dynamixel protocol evidence
source-described Dynamixel-compatible actuator bus
RUKA source repositoryno price listed
L9

ruka_hand/utils/constants.py@fe4f608python

Source rowQtyPrice and vendorLine
RUKA finger motor map and USB ports
source-listed motor mappings and USB ports
RUKA source repositoryno price listed
L4

assets/xml/hand_assembly.xml@fe4f608xml

Source rowQtyPrice and vendorLine
RUKA printable hand mesh set
16 source STL mesh assets
RUKA source repositoryno price listed
L13

1 more source files with parts rows are listed under Files.

RUKA Hand source files

8 files

Files stay in the upstream repository under their own licenses; these links open them there. The 3D model on this page is Motari's conversion of the file named under Simulation.

RUKA Hand in simulation

Robot description files a simulator or CAD tool can load, linked at the commit they were found.

The 3D specimen on this page is converted from assets/xml/hand_assembly.xml at fe4f608.

Builds of RUKA Hand

0 reviewed

No reviewed builds of RUKA Hand yet.

A build log records the evidence (photos, a video, your repository), what the build cost, how long it took and what you changed. Each one is checked by Motari (until a maintainer claims this page) before it shows here, and reviewed builds count toward the reproducibility score.

Sources and provenance

Sources

Last push to ruka-hand/RUKA: 2025-08-11 (checked 2026-10-01)

Related links

How this page was made

Assembled from public sources on 2026-06-04, not yet reviewed by the maintainer. Each figure links to where it is stated; a value the sources do not state reads "not published". Last source review: source-reviewed 2026-06-07.

Original files stay intact and separately licensed; Motari adds only the summary on this page. Maintainer? Request a correction or removal.

Badge for the README

Maintain RUKA Hand? Show its reproducibility score in the project's README. The badge links back to this page and updates with the score.

Badge: reproducibility 63/100

Markdown
[![Motari reproducibility score for RUKA Hand](https://motari.io/api/v1/badge/ruka-hand)](https://motari.io/r/ruka-hand)
HTML
<a href="https://motari.io/r/ruka-hand"><img src="https://motari.io/api/v1/badge/ruka-hand" alt="Motari reproducibility score for RUKA Hand" height="20"></a>

Not fully met yet: bom evidence (partial), wiring diagram (partial), oshw-compatible license. The score is read from the project's own sources, so publishing what is missing is what raises it. A score of 90 or more needs a reviewed build. How the score is computed