Differential Robot Wrist
Differential Robot Wrist A 2-DOF differential bevel-gear wrist mechanism from Source Robotics, open-sourced as a test fixture for their future humanoid/arm robots. Two BLDC motors drive a pair of bevel gears — moving them in the same direction yields pitch, opposing direction yields yaw/roll. The differential layout keeps both motors at the joint base (not the moving end), which lowers inertia and increases payload capacity compared to a stacked serial-motor wrist. This Program is a learning entry point for the mechanism. Print the STLs, source the BLDC motors and Spectral driver, and use the Python example to spin both motors in opposite directions to test the differential motion. What you get
11 printable STLs (housing, bevels, motor holders, pulleys, shafts)
BOM with motor + driver references
Python example using Source Robotics' library over slcan / CAN Hardware
2× BLDC motors (gimbal/medium-sized) with hall sensors or magnetic encoders
2× Spectral micro BLDC driver boards (CAN, from Source Robotics)
CAN-USB adapter (slcan compatible, e.g. CANable)
M3 fasteners, GT2 belts, magnets for the magnetic encoders
3D printer (PLA or PETG fine for the test fixture) Source
Original design: Source-Robotics/Differential-robot-wrist by PCrnjak (Petar Crnjak). MIT licensed. Driver calibration: Spectral BLDC docs > ⚠️ This is the upstream author's own caveat: the mechanism is a test fixture, not a finished product. Expect to tune motor parameters and re-print parts as you iterate.