Keaghan Paterson · Mechanical design
rough formatting, to update post completion
- Started April 2026. Work in progress.
- Done: scanner, solver, all parts printed. In sim the hand reorients the cube and turns faces on command.
- Next: servos arrive → assemble → sim-to-real → juggle.
- Juggle (definitely)
- Solve (definitely)
- Juggle-solve (????)
Physical build
Open-Source DexHand V2.0


Solver
Photograph the cube → read the state → solve it. Works on different cubes and in different lighting.
- Photograph the six faces on a phone.
- The scanner finds all 54 stickers and reads their colours.
- The solver returns the solve move list in milliseconds.

- Solve rate: 100%
- Time to solve: 21 ms average
- Moves: 20.8 average
- 100 scrambles of 25 moves, the same set for every version.
Control system
Teaching a simulated hand to turn the cube, against physics measured off the real one.
- Turning one face is the hard half of a robot solve. The grip has to hold the cube still and leave one face free at the same time, and breaking a face out of its magnets takes more than twice the torque of keeping it turning.
- Measured that torque on the real cube with golf balls, built it into the simulation, then trained the hand against it: rewards for turning toward the target angle, penalties for drops, for drifting out of the grip, and for stalling.
- Reached 3.5 solved moves per 10-second attempt at 76% success, with no assisting torque. Time per move fell from 3.8 seconds to 2.0.
- A solver names a face to turn, so the hand first has to present that face to the fingers. Every reorientation risks dropping the cube off an open palm.
- Adapted NVIDIA's cube-reorientation rewards to this 18-servo hand, then added a penalty for resting the cube on the palm. That forced the fingers to do the rolling instead of letting the hand lean on gravity.
- Reached about 11 commanded poses per 10-second attempt at 90% success. These weights seeded the face-turning work above, so it did not start from scratch.

- Every gain here came from reward design. The cube's measured friction and magnet strength stayed fixed throughout, so the policy had to improve rather than the task getting easier.
- Two failures came out of watching playback: the hand freezing in a crossed-finger grip to farm holding points, and fast flicks that swept past the target between control steps and scored nothing. Added a time cost, a fingertip clearance penalty, and crossing detection.
- The curve resumed climbing after each fix and has not flattened yet: 0.4 to 3.5 solved moves per attempt over 21 hours.
Work in progress
- Six-face cube: carry the one-face skills to all six faces, then chain real solver moves.
- Fingertip force sensing: custom PCBA, schematic and layout in progress.
- Sim → real: move the trained policies onto the real hand.
- Two hands, three cubes: second hand, then juggling.