Model or dataset
pollen-robotics/AmazingHand avatar
pollen-robotics/AmazingHand

AmazingHand: a 3D printed 8-DoF hand that fits inside a Reachy2 wrist

Code and model to control the AH!

2,402 stars278 forksPythonApache-2.0

At a glance

What is it?
AmazingHand is an open source, 3D printed four-finger hand with eight servos inside the palm and no cables running to the forearm. It is aimed at builders who want to experiment with humanoid grasping at a hobbyist budget, not at teams that need a validated gripper.
Who is it for?
Adopt AmazingHand if you are building a Reachy2-based research platform, or a standalone arm, and you accept that the hand is a prototyping target rather than a finished end effector: the README itself says the design has not been tested for long or complex prehensile tasks and that safe grasping needs software that does not exist yet. Do not adopt it if you need a certified gripper, a documented payload rating, or a maintenance contract.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 160 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The problem AmazingHand addresses: expressive hands at a price a lab can repeat

The README states the motivation plainly: robotic hands are often very expensive and not so expressive, and the more dexterous ones tend to need cables and actuators relocated into the forearm. That second point is the real constraint. Once tendons and motors move up the arm, the hand stops being a part you can bolt on and becomes a redesign of the whole limb. AmazingHand takes the opposite route. All eight actuators sit inside the hand, there are no cables, and the whole assembly is 3D printable. The published targets are 400 g and under 200 EUR. The wrist interface is designed for Reachy2's wrist, which the README calls Orbita 3D, but the same text says it can be adapted to other wrists. So the audience is narrow on purpose: people already working with Reachy2, plus makers who are comfortable modifying CAD and reprinting a part when the fit is wrong.

How the parallel finger mechanism works

Each of the four fingers carries two phalanxes articulated together, and each finger is driven by a parallel mechanism rather than a tendon. Two small Feetech SCS0009 servos per finger produce flexion and extension on one axis and abduction and adduction on the other, which is where the eight degrees of freedom come from. The shells are described as flexible almost everywhere, so the printed plastic supplies some of the compliance instead of a spring or a linkage. Control is deliberately split: either a serial bus driver such as the Waveshare board plus a Python script, or an Arduino with a Feetech TTL Linker. The repository mirrors that split with a PythonExample directory and an ArduinoExample directory. The README also mentions that SCS0009 servos expose torque enable and disable, torque feedback, a position sensor and a heat reading. That matters more than it looks. Since the design is not rated for safe grasping, those registers are the only feedback a developer has to detect a stalled finger before something breaks.

Installing the Python demo and running a first pattern

There is no pip package and no release archive described in the README. The path is: print the parts, assemble them, then clone the repository and run the demo script from the PythonExample folder. The README names the script AmazingHand_Demo.py and points to the PythonExample directory. Note that the two demo links in the README are swapped: the Python section links to ArduinoExample and the Arduino section links to PythonExample, so check the directory contents rather than trusting the anchor text.

bash
git clone https://github.com/pollen-robotics/AmazingHand.git
cd AmazingHand/PythonExample
python AmazingHand_Demo.py

Before that script will do anything useful you need an external supply, because the README is explicit that the eight actuators inside the hand cannot be powered from the serial adapter alone. It suggests a DC/DC 220V to 5V / 2A adapter with a jack connector and lists alternatives in the BOM spreadsheet. You also need each finger calibrated first; the README directs you to the same PythonExample and ArduinoExample folders for the calibration program. Expect the demo to move the hand through a fixed pattern, not to accept a grasp command from your own code.

Two hands on one bus: the ID problem

If you want a right and a left hand on the same serial bus, the README is blunt: you cannot have the same ID for different servos on one bus. The assembly order stays the same, but the left hand's servos must be given different IDs, and the README includes a diagram of the assignment. The only software it mentions for this case is Python, a script called AmazingHand_Demo_Both, which runs the same pattern on both hands at once. There is no Arduino equivalent described. That is a real gap if your robot controller is an Arduino: you either write the independent control logic yourself or you accept mirrored motion. It is also the point where a build stops being a weekend project, because renumbering sixteen servos and keeping the mapping straight is where mistakes happen.

Where AmazingHand is the wrong tool

The disclaimer is unusually honest and should be read before buying servos. The author reports variation between the theoretical flexion, extension, abduction and adduction angles and what real prototypes achieve, and attributes it to imperfect printed parts, ball joint rods adjusted by hand, reworked servo horns and the flexibility of the plastic. Then the sentence that decides the use case: the design has not yet been tested for long and complex prehensile tasks, and safe grasping, meaning grasping without damaging servos or mechanical parts, needs smart software that has not been built. So if you need a hand that picks up an unknown object reliably, this is not it. If you need a payload figure, a duty cycle or a cycle-life number, the README does not provide one. And if you need a left hand driven from Arduino, the documented software does not cover it.

Alternatives and the branch you should probably look at first

The README itself points readers to an alternative to the main branch: an Amazing Hand Enhanced branch, described as making the hand enhanced, with its own AmazingHand_Enhanced directory. That is the first thing to compare, because it is the project's own successor line rather than a fork by someone else. Beyond that, the honest comparison is between actuator placement strategies. Cable-driven and deported-actuator designs put the motors in the forearm, which buys finger speed and reduces the mass at the wrist, at the cost of routing tendons through a joint that has to survive repeated bending. AmazingHand keeps everything in the palm: simpler to assemble and to swap a servo, but every gram of motor is mass the wrist has to carry and the fingers have to move. The README also names Reachy2, DexHand and ILDA hand only as related terms, not as documented comparisons, so treat any claim about how AmazingHand performs against them as unverified.

Licence, maintenance and what an upgrade costs you

The split licence is the detail most people miss. The project code is Apache-2.0, while the mechanical design carries a Creative Commons Attribution 4.0 International licence. In practice that means you can reuse the Python and Arduino code under Apache-2.0 terms, but if you redistribute or adapt the CAD, the CC BY 4.0 attribution requirement applies to the mechanical design. This is not legal advice; read both licence texts before you ship a derivative. On maintenance, the repository is not archived and the last push was on 2026-04-23, with a v1.0 release tagged on 2026-04-01. The README still carries a to do list and a disclaimer about untested grasping, so the code is a snapshot of a working prototype rather than a finished product. The upgrade cost is mostly physical: a new revision can mean reprinted shells, recalibrated fingers and, if the servo IDs change, a full renumbering pass on both hands.

Editorial conclusion

Adopt AmazingHand if you are building a Reachy2-based research platform, or a standalone arm, and you accept that the hand is a prototyping target rather than a finished end effector: the README itself says the design has not been tested for long or complex prehensile tasks and that safe grasping needs software that does not exist yet. Do not adopt it if you need a certified gripper, a documented payload rating, or a maintenance contract. Before printing anything, verify three things: the current BOM spreadsheet, because the servo count and control electronics drive the cost; whether you want the main branch or the Amazing Hand Enhanced branch, since the README points readers to the latter; and the servo IDs you plan to burn in, because right and left hands cannot share IDs on one serial bus.

Frequently asked questions

What is the AmazingHand cost and what is included?

The README states the hand is low-cost at under 200 EUR and weighs 400 g. That figure covers the hand itself, so you still have to add the control option you choose, either a Waveshare-style serial bus driver with Python or an Arduino with a Feetech TTL Linker, plus an external 5V supply. The BOM spreadsheet linked from the README is the authoritative parts list.

Can I build an AmazingHand left hand as well as a right hand?

Yes. The README says fingers are the same for a left hand but some parts are symmetrical, with right hand parts prefixed R and left hand parts prefixed L in the CAD. For a standalone left hand you keep the same servo location IDs and select right or left in the software.

What is the difference between the main branch and Amazing Hand Enhanced?

The README carries an update pointing readers to a branch called Amazing Hand Enhanced, with its own AmazingHand_Enhanced directory. The README does not document what changed between the two, so compare the branch contents yourself before printing parts.

Does AmazingHand work with Reachy2?

The wrist interface is designed for Reachy2's wrist, which the README calls Orbita 3D, and the README presents Reachy2 as the intended host robot. It also states the interface can be adapted to other robot wrists, though no adapter files are documented.

Can I drive two AmazingHand units, one right and one left, from the same controller?

Yes, but only if you assign different servo IDs to the left hand, because the README states you cannot have the same ID for different servos on one serial bus. The only documented software for this case is the Python script AmazingHand_Demo_Both, which moves both hands through the same pattern.

Official sources

  1. Issues
  2. License: Apache-2.0
  3. pollen-robotics/AmazingHand on GitHub
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/pollen-robotics-amazinghand.svg)](https://hysenlabs.com/projects/pollen-robotics-amazinghand)