Open Source RoboticsRobots, software & learning

Powered caster control reference

Software

Kinematics/dynamics and control calculations for a powered-caster vehicle, with a missing application-specific hardware interface. [1] [2] [5] [4]

Installation & first result →Official websiteGetting started

For
Robotics developers evaluating the selected source workflow [1] [2] [5] [4]
Hardware
Holomni/XR4000-related powered-caster model [1] [4] [5]
Source rights
Named licenses are documented by part. Review licenses
Unknowns
operating system, compute requirements not fully established. Review gaps

Source researched · Not tested by us
Sources checked · Research details

Licenses & related hardware

Requirements · Research details and dates

On this page

Overview

Google's powered-caster vehicle repository contains kinematic/dynamic calculations and control code derived from Holomni/XR4000-related research. The source is useful for studying the vehicle/caster model. It is not a complete robot release, supported Google product or ready-to-run hardware driver. [1] [5]

At reviewed revision ad231909e8cbe6785dbf682aac6bbe33797f92c8, Vehicle.cpp contains vehicle-state and matrix/control calculations with Eigen/C++. Inspect its eight-element joint/torque vectors, explicitly indexed four-caster homing and opposite encoder/motor rotation signs before selecting a platform. Match the assumed geometry, motor/encoder conventions and dynamic parameters before adapting the mathematics. The source review did not verify numerical behavior, controller stability or a complete dependency/build route. [5]

Within Vehicle.cpp itself, JointRad zeroes its output and returns before the encoder read and caster-state updates. Adding a hardware adapter alone would leave that path bypassed; inspect it as a source limitation, not an observed runtime result. [5]

The other crucial boundary is explicit in HWInterface.h: it calls itself a starting point to replace with the user's hardware interface. Its declarations are incomplete and do not implement the encoder/DAC/calibration transport needed by a physical system. An available vehicle class cannot substitute for that missing integration. This entry therefore does not claim working hardware communication or a successful upstream build. [4]

The Vehicle destructor also comments that DACs should be zeroed but currently relies on a watchdog instead. That is a source limitation to investigate alongside the missing interface, not proof that a watchdog exists or safely stops any selected hardware. No shutdown/recovery behavior was tested. [5]

A bounded next step is reading the vehicle/caster mathematics and enumerating the actual encoder, DAC, homing, calibration and watchdog requirements for a chosen platform. Implementing that adapter and verifying the real system would be separate work; this catalog entry does not perform or certify it. The Apache-2.0 project notice does not provide physical manufacturing designs or rights over an external robot. [1] [2] [4]

No build, numerical benchmark, hardware adapter, motor command, encoder readout, watchdog or physical vehicle test was run. This is a research-code reference whose missing hardware boundary is central to its scope. [4] [5]

Is this for you?

Known limitations
  • HWInterface.h explicitly a starting point with incomplete declarations, not a working transport.
  • Vehicle destructor relies on a watchdog instead of explicitly zeroing DACs; no shutdown behavior validated.
  • No complete build/setup path, runtime control, hardware design or supported product claimed.
  • JointRad zeroes output and returns before encoder/caster-state updates; a supplied hardware interface alone would not activate that path.

Editorial assessment of bounded source evidence; no runtime, fit, manufacturing or compatibility proof.

[1] [2] [5] [4] · Editorial assessment

What you need

Languages / runtimes
  • C++ with Eigen in the selected vehicle implementation.

Source-reported requirement/configuration, not a tested installation, compatibility matrix or measured runtime result.

[5]

Dependencies
  • Eigen/C++ source and matching caster geometry/dynamics
  • Custom hardware interface, encoder/DAC/calibration/watchdog integration not supplied as a complete implementation

[1] [2] [5] [4]

Installation & first result

Open the upstream getting-started guide [1] [2] [5] [4]

  • Inspect the pinned implementation and select the exact configuration described in the article.
  • Follow the chosen upstream environment/build route, resolving the listed dependencies before runtime or hardware integration.

Editorial assessment of bounded source evidence; no runtime, fit, manufacturing or compatibility proof.

[1] [2] [5] [4] · Editorial assessment

Hardware, models & data

Supported hardware
  • Holomni/XR4000-related powered-caster model; required hardware interface and encoder update path are incomplete, not a verified supported device.

Source-reported requirement/configuration, not a tested installation, compatibility matrix or measured runtime result.

[1] [4] [5]

What we checked

Pinned source and selected artifact structure review only; no dependency installation, upstream build, native CAD/kernel/fit/strength validation, fabrication, wiring, calibration, simulation, powered operation or performance testing. Original archives stay private.

Not yet established

  • Requirements: operating system, host computer

Updates

Upstream last updated
Not established
Latest release
Not established
Profile updated
Nov 1, 2026
Sources last checked
Nov 1, 2026
Next review
Dec 1, 2026
Reviewed revision
ad23190

Source files and licenses

Distinct inspectable robotics software/data workflow with specific contribution and bounded next source-investigation step; not performance or physical-build certification.

LayerAvailability / license
softwareavailable · Apache-2.0
Selected project implementation; external dependencies, hardware, weights/data and asset rights remain separate. [5] [2]
documentationavailable · Apache-2.0
Scoped project declaration; no blanket grant over all linked material. [1] [2]

Outside the selected contribution; no separate released layer claimed.

References

Each source links to the exact revision we read. “Used for” shows where this page relies on it.

Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5

Change history