Reference
Configuration & versions
Rules that hold for every Repose component's configuration, and what to depend on.
RON configuration patterns
- Robot selection is explicit.
"chain"and"collision_model"take a preset name ("igus_rebel") or an inline spec. No task defaults to a robot. - Every planner task has the same config:
chain,collision_model,params,base_budget,refine_budget. Switching planners changes the task type and theparamsblock. - Parameter blocks are optional field by field.
"ik": {"damping": 0.1}keeps every other IK default. - Unknown keys are rejected. A typo is a startup error, not a silently ignored setting.
- SI everywhere. Metres, radians, seconds, rad/s. Typed enums are snake_case and keyed by variant:
{"revolute": 0.4}. - Generics are literal. Joint count and capacities appear in the type string:
repose_trajectory::CuFollowTrajectoryTask<6, 1024>. - Generated files. In template projects
copperconfig.ronis generated fromrobot.ronandrobots/<robot>.ronon every build. Edit the profiles.
Validation happens at startup
Every task validates its config in new. Missing robot models, invalid limits, non-positive budgets and malformed shapes stop the graph before the first cycle, with a message naming the field. Runtime code then never has to re-check them.
Versions
Repose 0.7 (repose-*) | Copper cu29 1.3 · Rust 1.95 (MSRV) |
Repose 0.1–0.6 (cu-*) | Copper cu29 1.3 · Rust 1.95 |
One version for the whole workspace, tagged vX.Y.Z, never per crate, and not on crates.io before 1.0: depend on the git tag.
repose = { git = "https://github.com/ReposeRobotics/repose", tag = "v0.7.1" }Pre-1.0, a minor bump may break the Rust API, payload encoding or RON config; patch releases never do. Logs recorded with one minor version may not replay on another. The 0.7 rename (cu-<name> → repose-<name>) is the worked example: Rust paths and RON type names follow the crates, type names keep their Cu prefix.
Features
std | On by default. Runtime crates build without it (default-features = false) for no_std targets. Required by repose-robot-description for XML parsing. |
mujoco-sim | Umbrella crate: includes the MuJoCo bridge. |
control | Hardware bridges: enables session and motion channels. |