Skip to content

Welcome to FIGAROH's documentation!

FIGAROH (Free dynamics Identification and Geometrical cAlibration of RObot and Human) is a comprehensive Python toolbox for robot calibration and identification.

Key Features

  • Dynamic parameter identification for rigid multi-body systems
  • Geometric calibration for serial and tree-structure robots
  • Reporting & verification (V&V) suite — terminal and self-contained HTML diagnostic reports, a machine-readable pass/fail verdict (verify()), and a static two-run compare page. See Reporting & Verification.
  • Advanced linear solver with 10 methods (lstsq, QR, SVD, Ridge, Lasso, Elastic Net, Tikhonov, constrained, robust, weighted)
  • Regularization and constraint optimization (L1/L2 regularization, box constraints, linear equality/inequality)
  • Unified configuration system with template inheritance
  • Advanced regressor computation with object-oriented design
  • Support for URDF modeling convention
  • Pluggable dynamics backends (Pinocchio, MuJoCo, Genesis, Isaac Sim)
  • Optional physical-consistency projection and base→full parameter reconstruction for identification
  • Extensive examples and tutorials covering UR10, TIAGo, TALOS, and Staubli TX40

Where to start

I want to... Go to
Install FIGAROH and run my first calibration/identification Getting Started
Understand the theory behind calibration/identification/optimal design Tutorials
Understand how the library is structured, or how backends/config work Concepts
Generate quality reports and CI-gateable pass/fail verdicts Reporting & Verification
See a complete, runnable example for my robot (or a similar one) Examples Gallery
Look up a specific class or function API Reference
Check what's planned, what changed, or troubleshoot an issue Further Reading