{
  "metadata": {
    "id": "rev-41-1311-pk6-15mm-plastic-120deg-bracket",
    "name": "REV Robotics 15mm Plastic 120 Degree Bracket",
    "type": "mechanical_bracket",
    "description": "Injection-molded nylon (PA66) 120° bracket for the REV DUO 15mm build system. Includes alignment ribs intended to seat into the 15mm extrusion channel. Uses M3 clearance holes on an 8mm grid for fastening to extrusion/plates.",
    "manufacturer": "REV Robotics",
    "part_number": "REV-41-1311-PK6",
    "datasheet_url": "https://www.revrobotics.com/content/docs/REV-41-1311-DR.pdf",
    "tags": [
      "rev",
      "rev-duo",
      "15mm",
      "bracket",
      "120deg",
      "plastic",
      "nylon",
      "pa66",
      "m3",
      "8mm-grid"
    ],
    "schema_version": "1.4.0",
    "version": "0.2.0",
    "taxonomy": [
      "mechanical.mounting",
      "robotics.ftc"
    ]
  },
  "domains": [
    {
      "domain": "mechanical",
      "package_type": "injection_molded_plastic",
      "metadata": {
        "material": "Nylon (PA66)",
        "thickness_mm": 3,
        "bracket_angle_deg": 120,
        "hole_grid_spacing_mm": 8,
        "hole_spec": "M3 clearance (typ.)",
        "alignment_ribs": "Yes (designed to seat into REV DUO 15mm extrusion channel)"
      },
      "resources": [
        {
          "id": "mount_leg_a_hole_grid",
          "name": "Mounting hole grid (leg A)",
          "description": "M3 clearance hole grid on bracket leg A (8mm spacing).",
          "connector_type": "through_hole",
          "functions": [
            {
              "name": "mounting_hole_a",
              "description": "Provides fastening via M3 hardware.",
              "direction": "bidirectional"
            }
          ],
          "metadata": {
            "hole_grid_spacing_mm": 8,
            "hole_spec": "M3 clearance"
          }
        },
        {
          "id": "mount_leg_b_hole_grid",
          "name": "Mounting hole grid (leg B)",
          "description": "M3 clearance hole grid on bracket leg B (8mm spacing).",
          "connector_type": "through_hole",
          "functions": [
            {
              "name": "mounting_hole_b",
              "description": "Provides fastening via M3 hardware.",
              "direction": "bidirectional"
            }
          ],
          "metadata": {
            "hole_grid_spacing_mm": 8,
            "hole_spec": "M3 clearance"
          }
        }
      ],
      "interfaces": [
        {
          "id": "mount_leg_a",
          "name": "Mount interface (leg A)",
          "protocol": {
            "type": "threaded_connection",
            "role": "mounting_point_a"
          },
          "requires": [
            {
              "function": "mounting_hole_a",
              "count": 1
            }
          ],
          "description": "Fasten bracket leg A to a mating structure using M3 hardware through the leg-A M3-clearance hole grid."
        },
        {
          "id": "mount_leg_b",
          "name": "Mount interface (leg B)",
          "protocol": {
            "type": "threaded_connection",
            "role": "mounting_point_b"
          },
          "requires": [
            {
              "function": "mounting_hole_b",
              "count": 1
            }
          ],
          "description": "Fasten bracket leg B to a mating structure using M3 hardware through the leg-B M3-clearance hole grid."
        }
      ]
    }
  ],
  "warnings": [
    "This definition intentionally models each bracket leg as its own mount interface so Protoboard can allocate two independent mount instances."
  ],
  "usage_notes": "Use M3 fasteners appropriate for your stack-up. Alignment ribs are intended to seat inside the REV DUO 15mm extrusion channel."
}