Degrees of freedom (DoF)

  • DoF
  • DOF
  • degrees of freedom
  • 5 DoF robot arm
  • 6 axis arm
Definition

Degrees of freedom counts the independently controllable joints of a robot. The SO-100, SO-101 and Koch v1.1 each have five joints plus a gripper, six actuators in total, which is one short of what an arm needs to place its tool at an arbitrary position and an arbitrary orientation at the same time.

Last updated 2026-08-09

What five joints can and cannot reach

With six joints, position and orientation are independent inside the workspace: you can hold the tool at a chosen point and still choose how it is angled. With five they are coupled. At most points there is a family of orientations you cannot have, and which ones are missing depends on where in the workspace you are. That is a constraint on how you lay out the task, not a wall.

Straightforward to demonstrateAwkward or impossible
Top-down and angled picks from a tableHolding one fixed tool angle while sweeping across the workspace
Placing into an open container or onto a marked areaReorienting an object in the gripper without letting go
Pushing, sliding and stackingApproaching a target from a direction the wrist cannot reach at that point
Opening a lid or a drawer within reachKeeping the tool square to a surface anywhere on the table

The way around a five joint limit is almost always the fixture rather than the model. Rotate the workpiece so that the reachable approach is also the correct one, and the arm does the task a six joint arm would have done. No amount of training data buys a joint that does not exist.

Degrees of freedom in the recorded data

ArmActuatorsWhat the action vector looks like
SO-1005 joints plus gripper, 6Six values per frame
SO-1015 joints plus gripper, 6Six values per frame, identical to the SO-100
Koch v1.15 joints plus gripper, 6Six values per frame, Dynamixel servos instead of Feetech
LeKiwi5 joints plus gripper on a three-wheel holonomic baseThe base adds dimensions on top of the six
Action vector widths have to match

A policy trained on six dimensions has no outputs for the LeKiwi base, and a policy trained with the base produces commands a fixed arm cannot use. Datasets from a fixed arm and from a mobile base do not pool, however much arm hardware they share.

/so-100/imitation-learning goes into which tasks suit this class of arm at all, and the arm-specific training runs live under /train. The hardware differences themselves are listed on /robots.