There is a special moment in every robotics project when a collection of printed parts stops looking like a collection of printed parts and begins to look suspiciously like a robot.
For my SO-ARM101 build, that moment began on a white IKEA VIHALS table with a pile of bright PETG components, several small screwdrivers, many tiny screws, and a set of servos that looked almost—but crucially not quite—the same.
Suggested caption: The opening scene: printed parts, STS3215 servos, fasteners, and the deceptively calm workbench before assembly began.
Two arms, one deliberately mismatched wardrobe
The SO-ARM101 system uses two arms. The leader is the arm a human moves by hand, while the follower reproduces that motion. I wanted the pair to be visually related without being identical, so I gave them complementary color schemes: the follower is mostly orange with black details, while the leader reverses that balance and uses more black than orange.
The structural parts were printed on a Prusa MINI+ using PETG from Prusament and ROSA3D. PETG made sense for a working prototype: these were not display pieces but brackets, housings, links, and joints that would be handled, screwed together, taken apart, and—although I did not know it yet—occasionally printed again.
That last part matters. A dimension can be correct in a CAD model and still become an argument once it meets a real printer, a real filament, and a real servo casing. The tightest components needed several attempts before they fitted the servos properly. Reprinting them was mildly annoying, but forcing a motor into an undersized part would have been worse. A fit that is merely “tight” on the workbench can become a damaged print, a distorted bracket, or a future maintenance problem.
The servo-shaped lesson hidden inside the assembly guide
My servos came in the SO-ARM101 Low-Cost AI Arm Servo Motor Kit Pro from Kamami. The kit is not simply a box of twelve interchangeable black rectangles. It contains STS3215 servos with different voltages and gear ratios: the product listing specifies a mixture of 7.4 V units for the leader and 12 V units for the follower, with several gearing variants among the leader motors.
That variation is essential to how the two arms behave. The follower needs motors suited to moving and holding the working arm. The leader, meanwhile, uses different ratios across its joints so it can support itself while remaining comfortable to manipulate by hand. The official Hugging Face SO-101 assembly guide gives each leader joint a specific motor assignment and recommends labeling every servo with its arm—L or F—and its ID from 1 to 6 before assembly.
I learned why.
During my first pass, I installed the wrong servos in some follower joints. The arm looked increasingly complete, the screws were in, and progress felt excellent—until I realized the motor assignments were wrong. The only honest solution was to disassemble the follower and correct them. I could remove the misplaced servo and put the correct motor where it belonged.
This is the part of the story where I offer the advice I wish had been printed in enormous letters above the workbench:
Before putting any servo into any printed part, check the arm, joint number, gear ratio, voltage, and configured motor ID. Then check them again.
Pay particular attention to power. Hugging Face’s guide distinguishes the supply for 7.4 V and 12 V STS3215 motors and explicitly warns that using the wrong one can burn out a motor. The Kamami kit likewise includes separate 5 V and 12 V power arrangements. Similar-looking housings do not make the electronics interchangeable.
A simple preparation ritual would have saved me a teardown:
- Separate leader and follower servos into two physical groups.
- Label each motor with
L1–L6orF1–F6. - Record its voltage and gear ratio next to the label.
- Configure the ID before enclosing the servo in the arm.
- Place each motor on top of its corresponding printed joint before installing anything.
- Keep the two power supplies visibly separated and labeled.
This may feel slow for ten minutes. It is much faster than rebuilding an arm.
Assembly is really a conversation about tolerances
The photographs make the process look linear: base, shoulder, upper arm, forearm, wrist, gripper. In reality, assembly was a conversation between three systems—the digital model, the printed PETG, and the manufactured servo.
The official guide provides the mechanical order and fastener sizes, including the sequence for the six joints, motor horns, wrist, gripper, controller, and cable guides. But every home-built machine adds another layer: printer calibration, filament behavior, support removal, hole finish, screw access, and the precise dimensions of the hardware actually delivered.
The tight parts taught me not to treat reprinting as failure. A corrected print is simply a physical design revision. The useful question is not “Did the first print work?” but “Did the next version fit cleanly, hold the servo securely, and remain serviceable?”
That last word—serviceable—became especially important after the servo mix-up. A robot arm should not only go together; it should be possible to inspect and take apart without turning every correction into an archaeological excavation.
When the pile finally became an arm
Piece by piece, the orange structure rose from the base. The black servo bodies appeared between the printed shells like punctuation marks. The arm links folded over one another, the wrist and gripper took shape, and the complementary color idea stopped being an abstract plan.
It was not yet the end of the project. Wiring, motor configuration, calibration, cameras, fault-finding, and actual robot learning were still waiting. Hugging Face’s workflow continues from assembly into calibration so that matching physical positions on the leader and follower correspond to matching position values—a necessary bridge between a hand-built mechanism and useful training data.
But this was the first major transformation: filament became structure, servos became joints, and a set of parts became a machine with a recognizable purpose.
The build also produced its first durable rule: in robotics, components that look alike often have very different jobs. Color-coding the arms was the fun part. Correctly identifying every black servo inside them was the important part.
Practical references
- Hugging Face: Assemble SO-101 — motor labeling, joint assignments, step-by-step assembly, wiring, and calibration.
- Kamami: SO-ARM101 Servo Motor Kit Pro — the supplied 7.4 V and 12 V STS3215 variants, gear ratios, adapters, and cables.
- Prusament PETG and ROSA3D PET-G — the materials used for the printed structure.
- IKEA VIHALS table — the wonderfully ordinary white table promoted, temporarily, to robotics laboratory.