{
  "metadata": {
    "id": "sparkfun-rob-09065-submicro-servo",
    "name": "SparkFun Servo - Generic (Sub-Micro Size) ROB-09065",
    "type": "actuator",
    "description": "Sub-micro analog RC servo similar in size/spec to Hitec HS-55. Includes single, double, four-point, and circle micro horns. Electrical: 3-wire RC servo. Mechanical: micro output spline (tooth count unspecified by baseline).",
    "manufacturer": "SparkFun",
    "part_number": "ROB-09065",
    "datasheet_url": "https://cdn.sparkfun.com/datasheets/Robotics/Small%20Servo%20-%20ROB-09065.pdf",
    "tags": [
      "servo",
      "rc",
      "sub-micro",
      "analog",
      "horn-set",
      "PWM"
    ],
    "schema_version": "1.4.0",
    "version": "0.3.0",
    "taxonomy": [
      "actuator.motor.servo"
    ]
  },
  "domains": [
    {
      "domain": "electrical",
      "resources": [
        {
          "id": "vdd",
          "name": "Servo VDD",
          "functions": [
            {
              "name": "power_input",
              "direction": "sink",
              "signal_class": "power",
              "shareable_with": []
            }
          ]
        },
        {
          "id": "gnd",
          "name": "Servo GND",
          "functions": [
            {
              "name": "ground",
              "direction": "bidirectional",
              "signal_class": "ground",
              "shareable_with": [
                "power_input"
              ]
            }
          ]
        },
        {
          "id": "sig",
          "name": "PWM Signal",
          "functions": [
            {
              "name": "digital_io",
              "direction": "receiver",
              "signal_class": "data",
              "shareable_with": []
            }
          ]
        }
      ],
      "interfaces": [
        {
          "id": "rc_servo_3wire",
          "name": "RC Servo 3-wire",
          "protocol": {
            "type": "digital",
            "role": "receiver"
          },
          "requires": [
            {
              "function": "power_input",
              "count": 1,
              "shareable_with": []
            },
            {
              "function": "ground",
              "count": 1,
              "shareable_with": [
                "power_input"
              ]
            },
            {
              "function": "digital_io",
              "count": 1,
              "shareable_with": []
            }
          ],
          "constraints": {
            "max_connections": 1,
            "requires_matching_voltage_domain": true
          },
          "power_delivery": {
            "max_voltage_V": 6
          },
          "description": "Expects hobby RC PWM (≈50 Hz, ~1–2 ms pulses)."
        }
      ],
      "supply_voltage_V": [
        4.8,
        6
      ]
    },
    {
      "domain": "mechanical",
      "resources": [
        {
          "id": "output_spline",
          "name": "Output Spline",
          "connector_type": "custom",
          "functions": [
            {
              "name": "mechanical_drive",
              "direction": "source",
              "signal_class": "mechanical_drive",
              "shareable_with": []
            }
          ],
          "description": "Micro servo output spline; tooth count and major diameter not specified in baseline."
        },
        {
          "id": "mount_tabs",
          "name": "Side Mounting Tabs",
          "connector_type": "through_hole",
          "functions": [
            {
              "name": "mechanical_mount",
              "direction": "sink",
              "shareable_with": []
            }
          ],
          "description": "Through-hole mounting on ears; hole Ø ≈ 2.03 mm per drawing."
        }
      ],
      "interfaces": [
        {
          "id": "servo_spline_micro_generic:v1",
          "name": "Servo Spline - Micro (Generic)",
          "protocol": {
            "type": "servo_spline_micro",
            "role": "output"
          },
          "requires": [
            {
              "function": "mechanical_drive",
              "count": 1
            }
          ],
          "description": "Placeholder spline interface for micro/sub-micro servos where tooth count/diameter are unspecified. Use horn parts that match this exact ID only when their evidence confirms this unit’s spline."
        },
        {
          "id": "micro_servo_mount_tabs:v1",
          "name": "Micro Servo Side-Mount Tabs",
          "protocol": {
            "type": "mechanical_connection",
            "role": "mounting_point"
          },
          "requires": [
            {
              "function": "mechanical_mount",
              "count": 2
            }
          ],
          "description": "Side ears with two through-holes for panel/frame mounting."
        }
      ],
      "dimensions_mm": {
        "length": 31.8,
        "width": 11.7,
        "height": 29
      },
      "mount_holes": [
        {
          "location": "left",
          "diam_mm": 2.03
        },
        {
          "location": "right",
          "diam_mm": 2.03
        }
      ],
      "weight_g": 9
    }
  ],
  "compatibility_notes": "Servo horns must match the output spline signature. This sub-micro unit’s spline tooth count is not published by the baseline source; micro servo splines vary (examples: 15T, 22T, 24T, 25T). Use verified horn parts only when evidence confirms the same interface.",
  "warnings": [
    "Rotation is ~160° in practice although rated 180°.",
    "Do not assume Futaba/Hitec/JR spline parity on sub-micro sizes without evidence."
  ],
  "usage_notes": "Included horns: single, double, four-point, circle. Treat horns as separate ProtoParts that PROVIDE the same spline interface ID and present their own outbound mounting patterns for user assemblies.",
  "node_geometry": {
    "width_px": 180,
    "height_px": 100
  }
}