main
Ray ds3487m: white body in tscircuit (pre-1.8 etch structure under an assembly instance); Ray 2026-10-19: black IC body wit… e0d2728
{
  "slug": "ds3487m",
  "version": "0.1.0",
  "type": "component",
  "description": "HGSEMI RS-485 / RS-422 ICs, SOP-16. Datasheet-verified pinout, KiCad symbol/footprint/3D.",
  "tags": [
    "component",
    "interface",
    "ds3487m"
  ],
  "dependencies": {},
  "hero": {
    "type": "image",
    "path": "docs/hero.png"
  },
  "files": [
    "page.json",
    "README.md",
    "ds3487m.kicad_sym",
    "ds3487m.kicad_mod",
    "ds3487m.glb",
    "ds3487m.step",
    "ds3487m.lbr",
    "docs/hero.png",
    "docs/ds3487m-datasheet.pdf",
    "viewers/symbol.html",
    "viewers/footprint.html",
    "ds3487m-etched.step"
  ],
  "visibility": {
    "public": true
  },
  "author": {
    "name": "Ray"
  },
  "component": {
    "mpn": "DS3487M",
    "manufacturer": "HGSEMI",
    "package": "SOP-16",
    "pin_count": 16,
    "category": "RS-485 / RS-422 ICs",
    "parts": {
      "symbol": "ds3487m.kicad_sym",
      "footprint": "ds3487m.kicad_mod",
      "model_3d": "ds3487m-etched.glb",
      "model_3d_plain": "ds3487m.glb",
      "model_3d_step": "ds3487m-etched.step",
      "model_3d_step_plain": "ds3487m.step",
      "lbr": "ds3487m.lbr"
    },
    "pins": [
      {
        "number": "1",
        "name": "INPUT_A",
        "type": "input",
        "description": "TTL-compatible logic input for driver A. PNP-buffered to minimize input loading; VIL max 0.8 V, VIH min 2.0 V, IIL max -200 µA at 0.5 V."
      },
      {
        "number": "2",
        "name": "OUTPUT_A",
        "type": "tri_state",
        "description": "Non-inverting differential output of driver A (one half of RS-422 output pair A). Follows INPUT_A when A/B CONTROL is high; forced to high-Z when A/B CONTROL is low. VOH >= 2.5 V @ IOH = -20 mA, VOL <= 0.5 V @ IOL = 48 mA."
      },
      {
        "number": "3",
        "name": "/OUTPUT_A",
        "type": "tri_state",
        "description": "Inverting differential output of driver A (complementary half of RS-422 output pair A). Opposite polarity to pin 2; forced to high-Z when A/B CONTROL is low. Differential output voltage VT >= 2.0 V."
      },
      {
        "number": "4",
        "name": "A/B_CONTROL",
        "type": "input",
        "description": "Shared active-high output-enable for drivers A and B. High enables both A and B differential outputs; low places both A and B outputs into TRI-STATE (high impedance). TTL-compatible input."
      },
      {
        "number": "5",
        "name": "OUTPUT_B",
        "type": "tri_state",
        "description": "Non-inverting differential output of driver B. Follows INPUT_B when A/B CONTROL is high; forced to high-Z when A/B CONTROL is low."
      },
      {
        "number": "6",
        "name": "/OUTPUT_B",
        "type": "tri_state",
        "description": "Inverting differential output of driver B. Opposite polarity to pin 5; forced to high-Z when A/B CONTROL is low."
      },
      {
        "number": "7",
        "name": "INPUT_B",
        "type": "input",
        "description": "TTL-compatible logic input for driver B. PNP-buffered; VIL max 0.8 V, VIH min 2.0 V."
      },
      {
        "number": "8",
        "name": "GND",
        "type": "power_in",
        "description": "Ground reference (0 V) for the device. All voltages are referenced to this pin."
      },
      {
        "number": "9",
        "name": "INPUT_C",
        "type": "input",
        "description": "TTL-compatible logic input for driver C. PNP-buffered; VIL max 0.8 V, VIH min 2.0 V."
      },
      {
        "number": "10",
        "name": "OUTPUT_C",
        "type": "tri_state",
        "description": "Non-inverting differential output of driver C. Follows INPUT_C when C/D CONTROL is high; forced to high-Z when C/D CONTROL is low. VOH >= 2.5 V @ IOH = -20 mA, VOL <= 0.5 V @ IOL = 48 mA."
      },
      {
        "number": "11",
        "name": "/OUTPUT_C",
        "type": "tri_state",
        "description": "Inverting differential output of driver C. Opposite polarity to pin 10; forced to high-Z when C/D CONTROL is low."
      },
      {
        "number": "12",
        "name": "C/D_CONTROL",
        "type": "input",
        "description": "Shared active-high output-enable for drivers C and D. High enables both C and D differential outputs; low places both C and D outputs into TRI-STATE (high impedance). TTL-compatible input."
      },
      {
        "number": "13",
        "name": "/OUTPUT_D",
        "type": "tri_state",
        "description": "Inverting differential output of driver D. Opposite polarity to pin 14; forced to high-Z when C/D CONTROL is low."
      },
      {
        "number": "14",
        "name": "OUTPUT_D",
        "type": "tri_state",
        "description": "Non-inverting differential output of driver D. Follows INPUT_D when C/D CONTROL is high; forced to high-Z when C/D CONTROL is low."
      },
      {
        "number": "15",
        "name": "INPUT_D",
        "type": "input",
        "description": "TTL-compatible logic input for driver D. PNP-buffered; VIL max 0.8 V, VIH min 2.0 V."
      },
      {
        "number": "16",
        "name": "VCC",
        "type": "power_in",
        "description": "Positive 5 V supply pin. Operating range 4.75 V to 5.25 V; absolute max 8 V. Active supply current typically 50 mA (80 mA max); 35 mA typical in TRI-STATE."
      }
    ],
    "provenance": {
      "rebuilt": "component block rebuilt 2026-10-05 from this page's own README pinout table and .kicad_sym (pins cross-checked), no re-extraction"
    },
    "viewers": {
      "symbol": "viewers/symbol.html",
      "footprint": "viewers/footprint.html"
    },
    "distributor_links": {
      "digikey": "DS3487M-ND",
      "mouser": "926-DS3487M"
    },
    "distributor_check": {
      "checked_at": "2026-10-05T18:57:00Z",
      "source": "Component Ocean /api/assign-pns + lcsc_map",
      "digikey": {
        "pn": "DS3487M-ND",
        "status": "found"
      },
      "mouser": {
        "pn": "926-DS3487M",
        "status": "found"
      }
    },
    "models_3d": [
      {
        "file": "ds3487m.step",
        "role": "plain",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          6,
          9.9,
          1.75
        ],
        "zmin_mm": 0,
        "centre_offset_mm": 0,
        "footprint_binding": "identity",
        "sha256": "d5eeddb4c0b304dc61950919b126fc61d7586abd5f16ab71a2a79759ec6498bf",
        "checked": "2026-10-07",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      },
      {
        "file": "ds3487m-etched.step",
        "role": "eda",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          6,
          9.9,
          1.75
        ],
        "zmin_mm": 0,
        "centre_offset_mm": 0,
        "footprint_binding": "identity",
        "sha256": "ed0369ad3fddb9d43f731e17f1e18d909346cceabd2b13302649495f0753b40e",
        "checked": "2026-10-26",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      }
    ]
  }
}