component
PCA9555
Public Made by Adomby adom
NXP 16-bit I2C I/O expander, SO-24. Two 8-bit ports, interrupt output, polarity inversion, 3 address pins. Datasheet-verified.
main
Ray
pca9555: component.models_3d pose record per STEP (Z-up, seated z=0, pad-centre origin, identity binding)
c6d6700
1mo ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
{
"schema_version": 1,
"type": "component",
"slug": "pca9555",
"title": "PCA9555",
"brief": "NXP 16-bit I2C I/O expander, SO-24. Two 8-bit ports, interrupt output, polarity inversion, 3 address pins. Datasheet-verified.",
"version": "0.1.0",
"license": "CC-BY-SA-4.0",
"tags": [
"component",
"interface",
"io-expander",
"i2c",
"gpio",
"so-24",
"nxp"
],
"component": {
"mpn": "PCA9555",
"manufacturer": "NXP Semiconductors",
"package": "SO-24",
"pin_count": 24,
"category": "Interface IC",
"subcategory": "I2C 16-bit I/O expander",
"datasheet": "https://www.nxp.com/docs/en/data-sheet/PCA9555.pdf",
"parts": {
"symbol": "pca9555.kicad_sym",
"footprint": "pca9555.kicad_mod",
"model_3d": "pca9555-etched.glb",
"model_3d_plain": "pca9555.glb",
"lbr": "pca9555.lbr",
"model_3d_step": "pca9555-etched.step",
"model_3d_step_plain": "pca9555.step"
},
"distributor_links": {},
"pins": [
{
"number": "1",
"name": "INT",
"type": "output",
"description": "Active-LOW open-drain interrupt output. Asserts when any input port pin state differs from its input port register value; requires an external pull-up to VDD."
},
{
"number": "2",
"name": "A1",
"type": "input",
"description": "I2C-bus slave address input bit 1. Tie to VDD or VSS to set the programmable portion of the 7-bit slave address (0100 A2 A1 A0)."
},
{
"number": "3",
"name": "A2",
"type": "input",
"description": "I2C-bus slave address input bit 2. Tie to VDD or VSS to set the programmable portion of the 7-bit slave address."
},
{
"number": "4",
"name": "IO0_0",
"type": "bidirectional",
"description": "Port 0 bit 0 general-purpose I/O. Configurable per bit as input (default, high-Z with weak 100 kΩ pull-up to VDD) or push-pull output. 5 V-tolerant input."
},
{
"number": "5",
"name": "IO0_1",
"type": "bidirectional",
"description": "Port 0 bit 1 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "6",
"name": "IO0_2",
"type": "bidirectional",
"description": "Port 0 bit 2 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "7",
"name": "IO0_3",
"type": "bidirectional",
"description": "Port 0 bit 3 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "8",
"name": "IO0_4",
"type": "bidirectional",
"description": "Port 0 bit 4 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "9",
"name": "IO0_5",
"type": "bidirectional",
"description": "Port 0 bit 5 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "10",
"name": "IO0_6",
"type": "bidirectional",
"description": "Port 0 bit 6 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "11",
"name": "IO0_7",
"type": "bidirectional",
"description": "Port 0 bit 7 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "12",
"name": "VSS",
"type": "power_in",
"description": "Supply ground (0 V) reference for the device."
},
{
"number": "13",
"name": "IO1_0",
"type": "bidirectional",
"description": "Port 1 bit 0 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "14",
"name": "IO1_1",
"type": "bidirectional",
"description": "Port 1 bit 1 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "15",
"name": "IO1_2",
"type": "bidirectional",
"description": "Port 1 bit 2 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "16",
"name": "IO1_3",
"type": "bidirectional",
"description": "Port 1 bit 3 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "17",
"name": "IO1_4",
"type": "bidirectional",
"description": "Port 1 bit 4 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "18",
"name": "IO1_5",
"type": "bidirectional",
"description": "Port 1 bit 5 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "19",
"name": "IO1_6",
"type": "bidirectional",
"description": "Port 1 bit 6 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "20",
"name": "IO1_7",
"type": "bidirectional",
"description": "Port 1 bit 7 general-purpose I/O. Configurable per bit as input (default) or push-pull output. 5 V-tolerant input."
},
{
"number": "21",
"name": "A0",
"type": "input",
"description": "I2C-bus slave address input bit 0. Tie to VDD or VSS to set the programmable portion of the 7-bit slave address (0100 A2 A1 A0)."
},
{
"number": "22",
"name": "SCL",
"type": "input",
"description": "I2C-bus serial clock input line. 0 Hz to 400 kHz clock frequency; requires external pull-up to VDD."
},
{
"number": "23",
"name": "SDA",
"type": "bidirectional",
"description": "I2C-bus serial data line (open-drain). Requires external pull-up to VDD."
},
{
"number": "24",
"name": "VDD",
"type": "power_in",
"description": "Positive supply voltage input. Operating range 2.3 V to 5.5 V; bypass locally with a 100 nF ceramic capacitor to VSS."
}
],
"provenance": {
"extractor": "ds2sf",
"datasheet": {
"url": "https://www.nxp.com/docs/en/data-sheet/PCA9555.pdf",
"pages": 34,
"sha256": "9f4f9c0ce4c461d7",
"source_tier": "mfr"
},
"cad": "KiCad official (CC-BY-SA 4.0)",
"pins": {
"total": 24,
"described": 24,
"cites_pages": true,
"refuses_to_fabricate": true
}
},
"viewers": {
"symbol": "viewers/symbol.html",
"footprint": "viewers/footprint.html"
},
"models_3d": [
{
"file": "pca9555.step",
"role": "plain",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
10.3,
15.4,
2.75
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "4b0d20f82f5b0124fecfe11c941274a3c865a30f7baee8b8fadd7df55972d4cd",
"checked": "2026-10-07",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
},
{
"file": "pca9555-etched.step",
"role": "eda",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
10.3,
15.4,
2.75
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "367a6a6cb13e02a89dc98c47bd0b5c53efcbc406e22e03fd5f49d0e3af67323b",
"checked": "2026-10-07",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
}
]
},
"metadata": {
"specs": {
"Type": "I2C 16-bit I/O expander",
"I/O lines": "16 (ports IO0, IO1)",
"Bus": "I2C up to 400 kHz",
"Per-pin": "direction + polarity inversion",
"Interrupt": "open-drain INT on change",
"Address pins": "A0-A2 (8 per bus)",
"Supply voltage": "1.65-5.5 V",
"Package": "SO-24"
}
},
"sections": [
"hero",
"viewers",
"readme",
"breadcrumbs",
"info"
],
"discovery_triggers": [
"pca9555",
"i2c io expander 16",
"gpio expander nxp",
"port expander interrupt"
],
"discovery_pitch": "PCA9555 16-bit I2C I/O expander (SO-24) with datasheet-verified pinout, KiCad symbol/footprint/3D, and full provenance.",
"author": {
"name": "Ray",
"email": "[email protected]"
},
"dependencies": {},
"hero": {
"type": "image",
"path": "docs/hero.png"
},
"files": [
"page.json",
"README.md",
"pca9555.kicad_sym",
"pca9555.kicad_mod",
"pca9555.glb",
"pca9555.lbr",
"docs/hero.png",
"docs/pca9555-datasheet.pdf",
"viewers/symbol.html",
"viewers/footprint.html",
"pca9555-etched.step"
],
"variants": [
{
"mpn": "PCA9555D (SO-24)",
"kind": "packaging"
},
{
"mpn": "PCA9555PW (TSSOP-24)",
"kind": "packaging"
}
]
}