Skip to content

Photo and 3D model

BiDexHand, photo from its repository
Photo@wengmister (opens in a new tab)MITsource file (opens in a new tab)
Try it in the browser

3D preview converted from github.com/wengmister/BiDexHand at 6cd2c75, under MIT. View the original files from GitHub (5.9 MB) (opens in a new tab)

Open source · free files

BiDexHand

Robot arm

An open-source 16-degree-of-freedom biomimetic dexterous robotic hand driven by a cable-and-pulley system with servos.

Project information

Buildability
84/100Well documented, cost unknown
Estimated cost
Not stated
Level
Advanced
Parts
55 lines
Tools
3D printer
Licenses
MIT (opens in a new tab), hardware and software
Commercial use
Allowed
Works with
ROS 2
Degrees of freedom
16

Suggested by Robotheca, created by @wengmister (opens in a new tab), from github.com/wengmister/BiDexHand (opens in a new tab), pinned to commit 6cd2c75 (opens in a new tab). You buy the parts yourself; Robotheca doesn't sell robots.

What to buy

55 lines, read from BOM.md at 6cd2c75
Export CSV (parts list)

55 of 55 parts shown

  • Bill of Material
  • 11 palm, base 3D printed part––
  • 42 plx, base 3D printed part––
  • 43 plx, knuckle 3D printed part––
  • 44 plx, proximal 3D printed part––
  • 55 plx, support 3D printed part––
  • 56 plx, middle 3D printed part––
  • 57 plx, distal 3D printed part––
  • 48 plx, cover 3D printed part––
  • 159 pulley, scs0009 3D printed part––
  • 110 thumb, base 3D printed part––
  • 111 thumb, arm 3D printed part––
  • 112 thumb, cmc 3D printed part––
  • 113 thumb, bridge 3D printed part––
  • 114 thumb, proximal 3D printed part––
  • 115 thumb, mcp 3D printed part––
  • 116 thumb, cover 3D printed part––
  • 117 palm, coupler 3D printed part––
  • 218 sleeve, servo rack top 3D printed part––
  • 219 sleeve, servo rack back 3D printed part––
  • 1020 sleeve, servo carriage 3D printed part––
  • 121 sleeve, servo rack 3D printed part––
  • 122 sleeve, servo single rack 3D printed part––
  • 223 sleeve, servo single rack top 3D printed part––
  • 124 sleeve, servo single rack back 3D printed part––
  • 125 sleeve, base 3D printed part––
  • 226 palm, guard 3D printed part––
  • 527 90323A605 18-8 Stainless Steel Low-Profile Precision Shoulder Screw––
  • 1528 90323A608 18-8 Stainless Steel Low-Profile Precision Shoulder Screw––
  • 1029 97307A111 Slotted 18-8 Stainless Steel Precision Shoulder Screw––
  • 6130 91290A021 Alloy Steel Socket Head Screw––
  • 2631 2705T112 Light Duty Dry-Running Flanged Sleeve Bearing––
  • 1632 98089A201 18-8 Stainless Steel Round Shim––
  • 2833 92010A778 Passivated 18-8 Stainless Steel Phillips Flat Head Screw––
  • 334 90323A604 18-8 Stainless Steel Low-Profile Precision Shoulder Screw––
  • 135 90323A612 18-8 Stainless Steel Low-Profile Precision Shoulder Screw––
  • 136 7119N113 Ultra-Low-Friction Oil-Embedded Sleeve Bearing––
  • 237 6658K412 Oil-Embedded 841 Bronze Sleeve Bearing––
  • 3938 91290A015 Alloy Steel Socket Head Screw––
  • 1039 91292A028 18-8 Stainless Steel Socket Head Screw––
  • 1040 2006N111 302 Stainless Steel Corrosion-Resistant Compression Springs––
  • 1041 94510A370 Brass Screw-to-Expand Inserts––
  • 1442 91290A019 Alloy Steel Socket Head Screw––
  • 243 91502A109 Blue-Dyed Zinc-Plated Alloy Steel Socket Head Screw––
  • 444 91502A107 Blue-Dyed Zinc-Plated Alloy Steel Socket Head Screw––
  • 1645 FeeTech FT90M Servo* 9G servo motor, PWM–Alibaba: buy 45 FeeTech FT90M Servo* 9G servo motor, PWM, opens in a new tab
  • 146 Pimoroni Servo2040* RP2040 Servo Shell–Adafruit: buy 46 Pimoroni Servo2040* RP2040 Servo Shell, opens in a new tab
  • 147 6V 5A Power Supply Alternatively use adjustable bench power supply––
  • –48 DuraBraid fishing wire 40lb–Amazon: buy 48 DuraBraid fishing wire 40lb, opens in a new tab
  • –49 2mm zipties Cable management––
  • –50 3mm OD PTFE Tube–Amazon: buy 50 3mm OD PTFE Tube, opens in a new tab
  • 151 D405_Solid Intel Realsense wrist camera––
  • 1652 SCS009 Feetech Servo Motor––
  • 553 scs_board Signal distribute board––
  • 154 FE-URT-1 USB to TTL level shifter––
  • 155 ESP32 MCU––

55 of 55 needed parts have no price in the source, so there is no parts total.

Why it scores 84

It measures the published files, not the robot · How we score

84/100

Well documented, cost unknown

How complete the published files are for rebuilding this robot, measured by Robotheca at commit 6cd2c75. It isn't a rating of the robot. Counted out of 95 points and scaled to 100: the parts that don't apply to this robot are left out.

  1. 13D and CAD files26 printable parts (STL, 3MF), 1 CAD source file.20/20
  2. 2Robot descriptionA URDF with all its mesh files.15/15
  3. 3Parts list55 lines: 0 with a price, 4 with a shop link.Most points to gain: Add prices to 55 lines. Add shop links to 51 lines.5/20
  4. 4SoftwareCode in this repository, instructions to install or run it, built on ros2.15/15
  5. 5DocumentationREADME of 3,745 characters with 2 pictures; 4 build steps.15/15
  6. –SimulationNo simulation files. Not counted: the score is made of the parts that apply.Optional: add a simulation model (MuJoCo, Gazebo, Webots or Isaac).Not counted
  7. 6LicensesHardware: MIT; software: MIT.10/10

Build it

The creator's 4 steps, each linked to its instructions
  1. Clone the repository and install ROS2 dependencies with rosdep
  2. Build the workspace with colcon and source the setup script
  3. Build and flash the servo2040 controller for the PWM version
  4. Launch motion shadowing or direct servo control

The guide appears here as you scroll.

Guide by @wengmister (README.md), under MIT.

More guides

Wiring and electronics

Notes written by Robotheca from the project's documents, not by its creator

Main parts: Robotheca's summary

  • FeeTech FT90M 9G PWM servo motors or FeeTech SCS009 bus servos, depending on build variant
  • Pimoroni Servo2040 (RP2040) controller board for PWM builds
  • ESP32 microcontroller and scs_board signal distribution board for SCS bus builds
  • FE-URT-1 USB to TTL level shifter for SCS bus builds
  • Intel RealSense D405 wrist camera
  • 6V 5A power supply, or an adjustable bench power supply

Connections: Robotheca's summary

  • Servos are driven by the Servo2040 PWM outputs in PWM builds
  • SCS bus builds connect servos through the scs_board signal distribution board to the ESP32 and a USB-to-TTL level shifter to the host PC
  • The controller connects to the host computer over USB, with a port such as /dev/ttyACM0 in the launch commands

Cables and connectors

From the parts list.

  • 48 DuraBraid fishing wire 40lb
  • 49 2mm zipties Cable management

What it can do: Robotheca's summary

Written by Robotheca from the project's documents, not by its creator
  • Robotic hand with 16 degrees of freedom: 15 servo-driven joints via cable-and-pulley tendons plus a 4-bar linkage driven 16th joint
  • Each finger has three degrees of freedom: MCP adduction/abduction, MCP flexion/extension, and PIP flexion/extension
  • Thumb has four degrees of freedom, including CMC and MCP adduction/abduction and flexion/extension
  • Four-bar linkage at each distal phalanx couples PIP motion into DIP motion
  • Controlled through ROS2 packages in /src, offering motion shadowing, servo input streaming over ROS2 topics, and direct servo control via CLI
  • Supports Franka arm integration with MoveIT and VR teleoperation

Works with AI

Found by Robotheca in the project's files at commit 6cd2c75, its robot.yaml and Robotheca's notes on its documents. Never guessed; Robotheca doesn't run the code.

Software

Framework
ROS 2
Languages
Python, Arduino, C++
License
MIT

Robotheca doesn't review code. Read it before running it.

How to run it: Robotheca's summary

Written by Robotheca from the project's documents, not by its creator.

  1. 1Build, flash and deploy the Servo2040 controller firmware in /scripts/Servo2040/servo2040_controller to the controller for the PWM version, using pico-sdk and pimoroni-pico
  2. 2For SCS bus builds, use the controller script from the V3 fork instead
  3. 3Clone the repository, install ROS2 dependencies with rosdep, then run colcon build and source install/setup.bash
  4. 4Launch motion shadowing with the hand_motion_shadowing shadowing.launch.xml file, or direct servo control with the hand_servo_control multi_servo_control.launch.xml file, passing the USB port

Software that runs on this robot

No software from Robotheca's catalogue found in this robot's files yet. Links come from its robot.yaml, its dependency files read as text, or Robotheca's editors.

The code

Free files

Every file of the project, at commit 6cd2c75.

Community

Questions and improvements go to the creator's repository.

Add a badge to your README

For the creator: two badges that link back here. The second always shows this page's current label and score.

Listed on RobothecaRobotheca buildability

Markdown (one click selects it)

[![Listed on Robotheca](https://robotheca.org/robots/bidexhand/badge.svg)](https://robotheca.org/robots/bidexhand)
[![Robotheca buildability](https://robotheca.org/robots/bidexhand/score.svg)](https://robotheca.org/robots/bidexhand)

Other robot arms

All 83 robot arms
  • Ready to build

    Open source · free files

    Giraffe

    Robot arm · Intermediate

    Score
    Buildability 100 out of 100
    Cost
    ₹14,585.71≈ €138
  • Ready to build

    Open source · free files

    Hand Exoskeleton

    Robot arm · Intermediate

    Score
    Buildability 100 out of 100
    Cost
    ¥500≈ €67
  • Ready to build

    Open source · free files

    SO-101

    Robot arm · Beginner

    Score
    Buildability 98 out of 100
    Cost
    €226.30
  • Ready to build

    Open source · free files

    Koch v1.1

    Robot arm · Beginner

    Score
    Buildability 91 out of 100
    Cost
    €673

≈ € values are approximate, converted at the ECB euro reference rate of 5 Nov 2026. The creator's original price always comes first.