tpt-robotics

Rust

Rust robotics math & algorithms vertical for the TPT Solutions ecosystem: kinematic chains/URDF, FK/IK, trajectory generation, sampling-based planning, and state estimation. no_std-friendly, dual-licensed MIT OR Apache-2.0.

0 stars0 forks0 watchersApache License 2.0

Languages

Rust100.0%
README

tpt-robotics

The robotics product vertical for the TPT Solutions ecosystem: the math and algorithms of physical robot software — forward/inverse kinematics, trajectory generation, sampling-based motion planning, and sensor fusion / state estimation — built once, properly, on top of the tpt-math pillar.

Explicitly not a ROS2-equivalent middleware: device drivers, hardware abstraction, and distributed-node transport are out of scope (see spec.txt PROJECT OVERVIEW).

Crates

CrateDomainno_std
tpt-robotics-modeltyped kinematic chains, joints, frames, URDF parsingyes (+alloc)
tpt-robotics-kinematicsforward kinematics, analytic + numerical IKyes (+alloc)
tpt-robotics-trajjoint/Cartesian trajectory interpolation and time-scalingyes (+alloc)
tpt-robotics-planningRRT/RRT*/PRM over a collision-checker interface + internal BVHno (std)
tpt-robotics-stateKF/EKF/UKF/particle filter, IMU/odometry/GPS fusionyes (+alloc)
tpt-roboticsumbrella re-export crate gated by Cargo featuresno

Build order: modelkinematicstraj → (planning, state) → umbrella.

Resolved deviations

  1. Prior-art check is N/Atpt-hiveforge and tpt-selenograph were confirmed absent from the workspace, so there was no code to audit or migrate. If either repo is ever created, re-run that check before assuming no overlap.
  2. Internal collision/BVH module — no tpt-geom pillar exists, so tpt-robotics-planning builds its own AABB/BVH collision module on tpt-math-linalg. If a geometry pillar is ever scoped and built, this module is a migration candidate.

Consuming tpt-robotics

Future consumers (tpt-hiveforge, tpt-selenograph, or anything else) should depend on this repo's crates as path/git dependencies and enable only the umbrella features they need — e.g. kinematics = ["tpt-robotics/kinematics"] pulls in model + kinematics without planning or state estimation. All crates are dual-licensed MIT OR Apache-2.0; Apache-2.0-only wrap targets remain disqualified per spec.txt.

Documentation

  • spec.txt — full design document and ecosystem/license survey
  • registry.toml — per-crate build registry for this repo
  • tpt-vertical-map — the vertical map this repo was seeded from

Every crate is dual-licensed MIT OR Apache-2.0.