Build

Build guide

An overview of building the Tendra Hand thumb and index prototype, from printed parts and tendons to motors, electronics and the safety rules.

On this page

This guide gives you the big picture of building the current prototype: a thumb and index finger with 8 joints. It explains what each part does and the rules that keep the hand (and you) safe. The detailed, photo-by-photo steps are in Assembly.

How the hand works#

Each finger is a chain of 3D-printed bones connected by hinge joints. A tendon (a thin, strong cord) runs along each joint. When a motor pulls the tendon, the joint bends, the same way muscles in your forearm pull tendons to bend your fingers.

Tendra Hand drives every joint on its own, with one motor per joint. The tendon runs in a loop around the motor's spool: turning the motor one way closes the joint, turning it the other way opens it. This is called an antagonistic loop, because the two halves of the tendon work against each other, like the muscles on the two sides of your arm.

The prototype's 8 joints:

FingerJoints
Indexknuckle sideways (index_mcp_abd), knuckle bend (index_mcp_flex), middle joint (index_pip), tip joint (index_dip)
Thumbbase rotation (thumb_cmc_rot), base bend (thumb_cmc_flex), middle joint (thumb_mcp), tip joint (thumb_ip)

Parts#

The main parts of the current prototype:

  • Printed skeleton: the palm and finger bones.
  • Tendons: one loop per joint.
  • 8 × 28BYJ-48 stepper motors (5 V) with 8 × ULN2003 driver boards.
  • ESP32-S3-N16R8 microcontroller board, connected to your PC over USB-C.
  • A separate 5 V / 2 A power supply for the motors.

The full bill of materials (with quantities and links) lives on the Hardware page.

Printing#

  • Material: PLA or PETG for the rigid skeleton. PETG is a little tougher and handles warmth better; PLA is easier to print.
  • Fingertip pads: TPU (a flexible filament) is planned, for grip.
  • Settings: layer height, infill, walls, orientation and supports will be listed next to each file in hardware/print/.

Tendons#

Each joint has one tendon loop wrapped around its motor's spool. The spool has a radius of 1 cm, so one full turn of the motor pulls about 62.8 mm of tendon.

How far a joint bends for a given length of tendon depends on how far the tendon sits from the joint's hinge (its moment arm). That distance hasn't been measured yet, so the number of motor steps per radian is calibrated by hand for each joint (see Electronics).

Motors#

The prototype uses 28BYJ-48 stepper motors. They're cheap, easy to find and geared down about 64:1 inside, so they're slow but hold their position well.

  • About 2038 full steps (or 4076 half-steps) per turn of the output shaft.
  • Top speed around 15 rpm.
  • Open loop: the motors don't report where they are. The firmware counts the steps it has sent, so it only knows the position if it knew the starting point.

A planned upgrade replaces them with Feetech SCS0009 smart servos. Those report their own position, share one data cable (so they need far fewer pins) and remove the need for manual homing.

Electronics#

The ESP32-S3 board receives joint angles from your PC over USB and turns them into motor steps. Each motor has its own ULN2003 driver board, which switches the motor's coils. See Electronics for the full pin map and the flashing steps.

Safety rules#

What's next#