# ros2_control demos: launch chained controllers

Official ros2_control demos ros2 launch example for launch chained controllers. Inspect the pinned source and upstream setup before use.

ID: `ros2-control-example-12-bringup-launch-launch-chained-controllers-launch-py`

Record version: `source-d89855e2e8d3f5dbb67ab4472af98dfab59a4e4156dfdb43eb7e9da1d9e12ee2`

Hub commit: `cbe459404040a145b32f2812b8b72ad93e97439c`

## Access

Fetch the pinned repository, verify this source checksum, and use upstream installation and invocation. This record does not install or execute code.

Hub preparation adapter: **false**. Runtime verification: **not_run**.

Upstream setup: https://github.com/ros-controls/ros2_control_demos/blob/3c35e783e268e5235bb042a71c68112a3ecb777e/README.md

## Source and license

- Repository: https://github.com/ros-controls/ros2_control_demos
- Pinned source: https://github.com/ros-controls/ros2_control_demos/blob/3c35e783e268e5235bb042a71c68112a3ecb777e/example_12/bringup/launch/launch_chained_controllers.launch.py
- Revision: `3c35e783e268e5235bb042a71c68112a3ecb777e`
- Path: `example_12/bringup/launch/launch_chained_controllers.launch.py`
- Source SHA256: `d89855e2e8d3f5dbb67ab4472af98dfab59a4e4156dfdb43eb7e9da1d9e12ee2`
- Source bytes: 1405
- Original authors: See pinned upstream source and license notices.
- License: [Apache-2.0](https://github.com/ros-controls/ros2_control_demos/blob/3c35e783e268e5235bb042a71c68112a3ecb777e/LICENSE)
- License scope: Selected example source code only; preserve upstream copyright and per-file notices. Robot models, datasets, weights, simulator binaries and third-party dependencies retain their separate licenses.

License SHA256: `cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30`

## Requirements

```json
{
  "python": "ROS 2 Jazzy Python 3 and C++ colcon toolchain",
  "packages": [
    "ROS 2 Jazzy",
    "ros2_control, ros2_controllers and ros2_control_demos pinned source"
  ],
  "display": "Launch examples require their matching description, controller YAML and hardware plugins. Default mock/Gazebo configurations differ; inspect launch arguments before hardware use.",
  "execution_domain": "simulation-or-hardware",
  "source_imports": [
    "launch",
    "launch.substitutions",
    "launch_ros.actions",
    "launch_ros.substitutions"
  ]
}
```

## Invocation

```json
{
  "entrypoint": "ros2 launch ros2_control_demo_example_12 launch_chained_controllers.launch.py",
  "notes": "Launch examples require their matching description, controller YAML and hardware plugins. Default mock/Gazebo configurations differ; inspect launch arguments before hardware use. No Hub preparation adapter or measured runtime success is claimed."
}
```

## Compatibility

```json
[]
```

Missing environment fields remain unknown. Source discovery labels do not establish robot compatibility.

## Evidence

Level: **source_reviewed**. Runtime verification: **not_run**.

Fetched and SHA-256 checked this immutable source; statically parsed Python or located native main; verified pinned license bytes and checked explicit per-file license identifiers. No upstream code executed.

Source review and contributor reports do not establish task completion. Preserve upstream attribution and licenses.
