Documentation
Crate map
Eleven crates in the repose workspace, plus bridges in repose-bridges. Depend on the repose umbrella for everything, or on single crates — both are normal.
The crates
reposeumbrella | Re-exports every crate below as modules (repose::kinematics, repose::collision, …) and hosts the planner registry, repose::planners. Feature mujoco-sim adds the MuJoCo bridge. Integration → |
repose-kinematicslib / task | CuKinematicChain<N>: FK, space/body Jacobians, DLS and differential IK, servoing; FK/IK/servo tasks; CuJointStatePayload<N>. Ships the igus ReBeL chain preset. Kinematics → |
repose-collisionlib / task | Sphere/capsule models, exact signed distances, CuPlanningScene, self- and environment-collision checks, collision-check task. Collision → |
repose-robot-descriptionstartup lib | URDF serial-chain extraction + SRDF groups, exclusions and named states → fixed-size chain and collision model. std-only parsing, at startup. Robot description → |
repose-robot-interfacelib | The bridge contract: standard channels, CuSessionCommand/CuSessionState, and the shared CuSessionTracker session rules. No tasks. Robot interface → |
repose-trajectorylib / task | Fixed-capacity trajectories, timing profiles, interpolation, TCP-zone Cartesian blending, and the follower task. Trajectory → |
repose-motion-planninglib / task | The CuJointPlanner trait, request/path payloads, the generic anytime planner task, goal and plan-to-trajectory tasks, and six built-in planners. Motion planning → |
repose-joint-rrt-startask | Informed RRT* implementing CuJointPlanner, with rewiring and shortcutting; separate crate so its tree storage only ships when used. Motion planning → |
repose-controllertask | CuControllerTask: position/velocity/effort commands, tracking watchdog, stale-state watchdog, command rate limiting. Emits CuJointCommandPayload<N>. Controller & IO → |
repose-iotask | Digital input/output payloads and CuGripperTask: a gripper as RON config over a bridge's IO channels. Controller & IO → |
repose-mujoco-simbridge | CuMujocoSimBridge to an external MuJoCo sidecar over TCP. std-only, fixed 6-DOF in v1, behind the umbrella's mujoco-sim feature. Simulation → |
Bridges (separate repository)
repose-igus-cri | igus ReBeL over CRI/TCP. Session and motion are behind the control feature plus allow_control/allow_motion config gates; check the crate README for the supported command modes before wiring motion. |
repose-ur | Universal Robots e-Series and URSim over RTDE + dashboard + secondary interfaces. Same feature/config gating. Verified on URSim; physical UR hardware not yet verified. |
| robot-app template | Not a crate: the cargo generate template that produces the quickstart project, with the generic step runner both bridges share. |
How they compose
Dependencies point one way: kinematics ← collision ← planning ← trajectory timing, with the controller and IO at the execution edge and the robot interface underneath every bridge. You can take any prefix of that stack — FK alone, FK + collision for a checker, or the whole loop — and the RON type names stay the component crates' own, umbrella or not.