main
Ray pca9538: component.models_3d pose record per STEP (Z-up, seated z=0, pad-centre origin, identity binding) 9178cb8
{
  "schema_version": 1,
  "type": "component",
  "slug": "pca9538",
  "title": "PCA9538",
  "brief": "TI 8-bit I2C I/O expander with interrupt and reset, VQFN-16. Eight I/O, INT + RESET, 1.65-5.5 V. Datasheet-verified.",
  "version": "0.1.0",
  "license": "CC-BY-SA-4.0",
  "tags": [
    "component",
    "interface",
    "io-expander",
    "gpio-expander",
    "i2c",
    "vqfn-16",
    "texas-instruments"
  ],
  "component": {
    "mpn": "PCA9538",
    "manufacturer": "Texas Instruments",
    "package": "VQFN-16",
    "pin_count": 16,
    "category": "Interface",
    "subcategory": "I2C I/O expander",
    "datasheet": "https://www.ti.com/lit/ds/symlink/pca9538.pdf",
    "parts": {
      "symbol": "pca9538.kicad_sym",
      "footprint": "pca9538.kicad_mod",
      "model_3d": "pca9538-etched.glb",
      "model_3d_plain": "pca9538.glb",
      "model_3d_step": "pca9538-etched.step",
      "model_3d_step_plain": "pca9538.step",
      "lbr": "pca9538.lbr"
    },
    "distributor_links": {},
    "pins": [
      {
        "number": "1",
        "name": "RESET",
        "type": "input",
        "description": "Active-low reset input. Connect to VCC through a pull-up resistor if no active connection is used. Asserting resets the device to its default (power-on) state."
      },
      {
        "number": "2",
        "name": "IO0",
        "type": "bidirectional",
        "description": "P-port I/O bit 0. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "3",
        "name": "IO1",
        "type": "bidirectional",
        "description": "P-port I/O bit 1. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "4",
        "name": "IO2",
        "type": "bidirectional",
        "description": "P-port I/O bit 2. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "5",
        "name": "IO3",
        "type": "bidirectional",
        "description": "P-port I/O bit 3. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "6",
        "name": "VSS",
        "type": "power_in",
        "description": "Ground reference for supply and all I/O signals."
      },
      {
        "number": "7",
        "name": "IO4",
        "type": "bidirectional",
        "description": "P-port I/O bit 4. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "8",
        "name": "IO5",
        "type": "bidirectional",
        "description": "P-port I/O bit 5. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "9",
        "name": "IO6",
        "type": "bidirectional",
        "description": "P-port I/O bit 6. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "10",
        "name": "IO7",
        "type": "bidirectional",
        "description": "P-port I/O bit 7. Push-pull design structure. IOH = -10 mA, IOL = 25 mA (recommended). Powers up as input."
      },
      {
        "number": "11",
        "name": "INT",
        "type": "output",
        "description": "Open-drain active-low interrupt output. Asserts when an input P-port changes state. Connect to VCC through a pull-up resistor. IOL(typ) = 7 mA at VOL = 0.4 V."
      },
      {
        "number": "12",
        "name": "SCL",
        "type": "input",
        "description": "I2C serial clock input. Connect to VCC through a pull-up resistor. Supports 100-kHz Standard-mode and 400-kHz Fast-mode."
      },
      {
        "number": "13",
        "name": "SDA",
        "type": "bidirectional",
        "description": "I2C serial data bus (open-drain). Connect to VCC through a pull-up resistor. IOL(typ) = 3 mA at VOL = 0.4 V."
      },
      {
        "number": "14",
        "name": "VDD",
        "type": "power_in",
        "description": "Supply voltage input, 2.3 V to 5.5 V. Bypass to GND with a local decoupling capacitor."
      },
      {
        "number": "15",
        "name": "A0",
        "type": "input",
        "description": "I2C hardware address input bit 0. Connect directly to VCC or GND to select one of four slave addresses. VIH >= 0.7 x VCC; VIL <= 0.3 x VCC."
      },
      {
        "number": "16",
        "name": "A1",
        "type": "input",
        "description": "I2C hardware address input bit 1. Connect directly to VCC or GND to select one of four slave addresses. VIH >= 0.7 x VCC; VIL <= 0.3 x VCC."
      }
    ],
    "provenance": {
      "extractor": "ds2sf",
      "datasheet": {
        "url": "https://www.ti.com/lit/ds/symlink/pca9538.pdf",
        "pages": 44,
        "sha256": "7bbc8724cd47ce44",
        "source_tier": "mfr"
      },
      "cad": "KiCad official (CC-BY-SA 4.0)",
      "pins": {
        "total": 16,
        "described": 16,
        "cites_pages": true,
        "refuses_to_fabricate": true
      }
    },
    "viewers": {
      "symbol": "viewers/symbol.html",
      "footprint": "viewers/footprint.html"
    },
    "models_3d": [
      {
        "file": "pca9538.step",
        "role": "plain",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          4,
          4,
          1.1
        ],
        "zmin_mm": 0,
        "centre_offset_mm": 0,
        "footprint_binding": "identity",
        "sha256": "854ad7ead56d2f04cead5801b806789d0197f3de59fc65546bd4f40791da63a6",
        "checked": "2026-10-07",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      },
      {
        "file": "pca9538-etched.step",
        "role": "eda",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          4,
          4,
          1.1
        ],
        "zmin_mm": 0,
        "centre_offset_mm": 0,
        "footprint_binding": "identity",
        "sha256": "6aec52d6b650118d99fa238498fa6a7e5e46a318e163c345ebcc2cc24259cd55",
        "checked": "2026-10-07",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      }
    ]
  },
  "metadata": {
    "specs": {
      "Type": "8-bit I2C I/O expander",
      "Interface": "I2C (up to 400 kHz)",
      "I/O": "8 pins (IO0-IO7)",
      "Interrupt": "INT output (interrupt-on-change)",
      "Reset": "Hardware RESET input",
      "Addresses": "4 (A0-A1)",
      "Supply": "1.65-5.5 V",
      "Package": "VQFN-16"
    }
  },
  "sections": [
    "hero",
    "viewers",
    "readme",
    "breadcrumbs",
    "info"
  ],
  "discovery_triggers": [
    "pca9538",
    "8-bit io expander",
    "i2c gpio with reset",
    "add gpio over i2c"
  ],
  "discovery_pitch": "TI PCA9538 8-bit I2C I/O expander with interrupt and reset (VQFN-16) with datasheet-verified pinout, KiCad symbol/footprint/3D, and full provenance.",
  "author": {
    "name": "Ray"
  },
  "dependencies": {},
  "hero": {
    "type": "image",
    "path": "docs/hero.png"
  },
  "files": [
    "page.json",
    "README.md",
    "pca9538.kicad_sym",
    "pca9538.kicad_mod",
    "pca9538.glb",
    "pca9538.step",
    "pca9538.lbr",
    "docs/hero.png",
    "docs/pca9538-datasheet.pdf",
    "viewers/symbol.html",
    "viewers/footprint.html",
    "pca9538-etched.step"
  ],
  "variants": [
    {
      "mpn": "PCA9538PW (TSSOP-16)",
      "kind": "packaging"
    },
    {
      "mpn": "PCA9538RGVR (VQFN-16)",
      "kind": "packaging"
    },
    {
      "mpn": "PCA9538ADBR (SSOP-16, variant address)",
      "kind": "packaging"
    }
  ]
}