{
  "$schema": "../catalyst-tab-bundle.schema.json",
  "catalystVersion": "1.7.0",
  "mechanism": "RotationalMechanism",
  "description": "Angle / angular-velocity / current dashboard for any RotationalMechanism (arms, pivots, turrets).",
  "placeholders": {
    "MECH": "Replace with the RotationalMechanism name (e.g. Arm, Pivot, Turret)."
  },
  "tabs": [
    {
      "title": "{MECH} — Angle",
      "type": "LineGraph",
      "axes": {
        "left": {
          "unit": "degrees",
          "fields": [
            { "key": "/Catalyst/{MECH}/AngleDegrees", "color": "#e94560" },
            { "key": "/Catalyst/{MECH}/SetpointDegrees", "color": "#ff6b6b", "style": "dashed" }
          ]
        },
        "right": {
          "unit": "boolean",
          "fields": [
            { "key": "/Catalyst/{MECH}/AtSetpoint", "color": "#4ade80" }
          ]
        }
      }
    },
    {
      "title": "{MECH} — Motion",
      "type": "LineGraph",
      "axes": {
        "left": {
          "unit": "deg/s",
          "fields": [
            { "key": "/Catalyst/{MECH}/AngularVelocityDPS", "color": "#60a5fa" }
          ]
        },
        "right": {
          "unit": "amps",
          "fields": [
            { "key": "/Catalyst/{MECH}/CurrentAmps", "color": "#f59e0b" }
          ]
        }
      }
    },
    {
      "title": "{MECH} — Hard stop (optional)",
      "notes": "Only present when a hard-stop sensor is configured.",
      "type": "LineGraph",
      "axes": {
        "left": {
          "unit": "boolean",
          "fields": [
            { "key": "/Catalyst/{MECH}/HardStop", "color": "#fbbf24" }
          ]
        }
      }
    },
    {
      "title": "{MECH} — Tuning",
      "type": "Table",
      "fields": [
        "/Catalyst/Tuning/{MECH}/kP",
        "/Catalyst/Tuning/{MECH}/kI",
        "/Catalyst/Tuning/{MECH}/kD",
        "/Catalyst/Tuning/{MECH}/kS",
        "/Catalyst/Tuning/{MECH}/kV",
        "/Catalyst/Tuning/{MECH}/kA",
        "/Catalyst/Tuning/{MECH}/kG",
        "/Catalyst/Tuning/{MECH}/MM/CruiseVelocity",
        "/Catalyst/Tuning/{MECH}/MM/Acceleration",
        "/Catalyst/Tuning/{MECH}/MM/Jerk"
      ]
    }
  ]
}
