Frameworks & Manipulation
MuJoCo, Gazebo, MoveIt and training arms
The tools and simulators the field is built on, MuJoCo and Gazebo among them, and what you do with them: gripping, moving an arm, programming and training one or two arms, worked case studies, and what changed at the frontier in 2026.
- 01
Tools and Libraries
A robot arm bolted to a table, or to any platform that does not move, is the most common kind of arm there is. Factory arms, lab arms and most hobby arms all work this way.
- 02
Gripping
Perception has finished. You know where the object is, roughly how big it is, and which way it is turned. The arm has not moved yet. Between those two facts sits a question with its own hardware, its own arithmetic and its own…
- 2.1Gripping: holding an object so that it can be moved20 min
- 2.2Grippers and the hardware around them51 min
- 2.3Choosing a grip: the methods you write yourself42 min
- 2.4Models that grasp: the ones you download19 min
- 2.5Holding on: force, slip, compliance and letting go46 min
- 2.6The two-finger gripper, end to end13 min
- 2.7Licences, platforms and the comparison grids16 min
- 2.8Checking an implementation5 min
- 2.9Pushing and sliding: moving an object without gripping it45 min
- 2.10Singulation and pre-grasp manipulation42 min
- 03
Arm Movement
The arm is here and the thing it has to touch is there. This area is about the gap between those two sentences.
- 3.1Arm movement: getting there, safely and the same way every time18 min
- 3.2Reaching and reachability: can the arm get there at all34 min
- 3.3Planning a path19 min
- 3.4Controlling the move17 min
- 3.5Learned motion15 min
- 3.6Licences, platforms and the comparison grids16 min
- 3.7Ordering and rearrangement: which object to move first36 min
- 3.8Frames, conventions, and the bug class that comes from mixing them35 min
- 3.9The cost of a move29 min
- 3.10Working without an NVIDIA graphics card37 min
- 04
Programming and Training One Arm
There are perhaps a dozen genuinely different ways to make a robot arm do something useful, and the first thing to understand is that they are not alternatives to one another in the way that a list of them suggests. Some of these…
- 4.1Ways to programme or train one robot arm49 min
- 4.2Programmed methods for one arm20 min
- 4.3Learned methods for one arm24 min
- 4.4A learning path for robot arms, in simulation30 min
- 4.5What is changing in robot manipulation, and why21 min
- 4.6Glossary18 min
- Case study4.7Case study: standing an empty glass upside down on a drying rack25 min
- 4.8Version 1: pick up a glass and stand it upside down40 min
- 05
Two-Arm Training
One arm picks things up and puts them down. Two arms cooperating can do the things that actually fill a working day: hold a garment open and fold it, steady a housing while driving a screw into it, pass a part from one hand to…
- 06
Two-Arm Manipulation
Most of this repo is about one arm. Two arms are not twice as much work: they are a different problem, because the arms share a workspace, share an object, and have to agree about time. This doc is a route through that problem in…
- 07
Case Study: Stone Stacking
Balancing rough stones on top of each other is one of the best teaching tasks in robotics. It is easy to describe, impossible to fake, and it fails honestly: at the end of every attempt the tower either stands or it does not.
- 08
The Frontier
This folder is a record of what actually happened to robot arm manipulation in 2026, written in September of that year. It is deliberately a different kind of document from the rest of the repository. Everything else here…
- 8.1The frontier: what changed in 20268 min
- 8.2Foundation models and generalist policies for robot arms in 202644 min
- 8.3Where manipulation data comes from, and what changed in 202660 min
- 8.4Simulation, world models and evaluation: what happened in 202645 min
- 8.5What changed in robot arm hardware, and when75 min
- 8.6What is coming to robot arms, and what is only being promised32 min