← ALL WORK

CASE STUDY · ROBOTICS COURSE · 2025

Robotic Hand Gripper

A 3D-printed gripper driven by Python hand tracking through an Arduino, built as a group project. Raise fingers and the gripper opens to match.

The finished gripper responding to a tracked hand. About one minute; does not autoplay.

DEMO DAY

Teammate holding up a hand while the printed gripper mirrors itAdjusting the gripper's wiring on the breadboardHand held in front of the laptop camera with tracking running

WHO DID WHAT

My contribution

  • Created the hand-tracking component
  • Helped with the Arduino programming
  • Adapted an online gripper design to our build
  • Did all 3D printing and print cleanup
  • Did the breadboard wiring

Teammates

  • Assembly
  • Documentation
  • Presentation
  • Arduino programming, shared with me

TECHNICAL DECISIONS

Hand tracking in Python

OpenCV reads the webcam and MediaPipe Hands finds 21 points on one hand, at a 70% confidence threshold. The code counts raised fingers by checking whether each fingertip sits above the joint below it, then maps the count (0 to 5) to a servo angle from 0° to 180°.

A control app, not just a script

A customtkinter desktop window shows the annotated camera feed and a 0–180° slider for manual control. Tracking runs on a background thread so the window stays responsive.

From computer to Arduino

Python sends each new angle over USB serial at 115,200 baud as text ending in a semicolon, and only when the angle changes. The Arduino collects characters into a buffer, and on the semicolon converts the number and moves the servo. I wrote the hand-tracking code and helped with the Arduino side.

Designing and printing the hand

The gripper started from a design found online for a 9g micro servo. I adapted it to our build, then printed every part and cleaned up the prints.

Wiring

One servo on the Arduino, signal on pin A2, wired through a breadboard.

The live demo on this site is a browser re-creation: it tracks each finger separately, while the original gripper turns the finger count into one servo angle.

Try the hand tracking yourself →