component
MCP23S17T-E/SS
Public Made by Adomby adom
Microchip I/O Expanders, SSOP-28-208mil. Pinout extracted from the datasheet, KiCad symbol/footprint/3D.
← Commit history
pin 1: carry the footprint's marker into the .lbr, the viewer and page.json (silk-marker, drawn, top-left)
5 files changed
+910−3
mcp23s17t-e.lbr+1−1@@ -90,7 +90,7 @@ <wire x1="2.7600" y1="-5.2100" x2="-2.7600" y2="-5.2100" width="0.1200" layer="21"/> <text x="0" y="5.810" size="1.27" layer="25" align="bottom-center">>NAME</text> <text x="0" y="-5.810" size="1.27" layer="27" align="top-center">>VALUE</text>-</package>+<!--adom-pin1--><polygon width="0.0500" layer="21"><vertex x="-3.5000" y="4.6900"/><vertex x="-3.8400" y="5.1600"/><vertex x="-3.1600" y="5.1600"/></polygon></package> </packages> <symbols> <symbol name="MCP23S17T-E">
package.json+2−1@@ -24,6 +24,7 @@ "docs/hero.png", "docs/mcp23s17t-e-datasheet.pdf", "viewers/symbol.html",- "viewers/footprint.html"+ "viewers/footprint.html",+ "pads.json" ] }
pads.jsonadded+895@@ -0,0 +1,895 @@+{+ "schema": "adom.pads/1",+ "slug": "mcp23s17t-e",+ "footprint": "SSOP-28_5.3x10.2mm_P0.65mm",+ "generated_from": {+ "footprint": "SSOP-28_5.3x10.2mm_P0.65mm@sha256:bbb0d0449b996c0a",+ "pins": "page.json:component.pins",+ "overrides": null+ },+ "pin1": {+ "pad": "1",+ "at": [+ -3.5,+ -4.225+ ],+ "corner": "top-left",+ "source": "silk-marker",+ "derived_from": "SSOP-28_5.3x10.2mm_P0.65mm@sha256:bbb0d0449b996c0a"+ },+ "pad_count": 28,+ "symbol_pins": [+ "1",+ "10",+ "11",+ "12",+ "13",+ "14",+ "15",+ "16",+ "17",+ "18",+ "19",+ "2",+ "20",+ "21",+ "22",+ "23",+ "24",+ "25",+ "26",+ "27",+ "28",+ "3",+ "4",+ "5",+ "6",+ "7",+ "8",+ "9"+ ],+ "paste_apertures": 0,+ "issues": [],+ "pads": [+ {+ "pad": "1",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -4.225+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "1",+ "name": "GPB0",+ "type": "bidirectional",+ "description": "PORTB bit 0. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": true,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "2",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -3.575+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "2",+ "name": "GPB1",+ "type": "bidirectional",+ "description": "PORTB bit 1. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "3",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -2.925+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "3",+ "name": "GPB2",+ "type": "bidirectional",+ "description": "PORTB bit 2. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "4",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -2.275+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "4",+ "name": "GPB3",+ "type": "bidirectional",+ "description": "PORTB bit 3. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "5",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -1.625+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "5",+ "name": "GPB4",+ "type": "bidirectional",+ "description": "PORTB bit 4. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "6",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -0.975+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "6",+ "name": "GPB5",+ "type": "bidirectional",+ "description": "PORTB bit 5. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "7",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ -0.325+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "7",+ "name": "GPB6",+ "type": "bidirectional",+ "description": "PORTB bit 6. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "8",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 0.325+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "8",+ "name": "GPB7",+ "type": "bidirectional",+ "description": "PORTB bit 7. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "9",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 0.975+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "9",+ "name": "VDD",+ "type": "power_in",+ "description": "Positive supply voltage. Operating range 1.8 V to 5.5 V (industrial) or 4.5 V to 5.5 V (extended, -40 to +125°C). Bypass locally with 0.1 µF.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "10",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 1.625+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "10",+ "name": "VSS",+ "type": "power_in",+ "description": "Ground reference (0 V).",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "11",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 2.275+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "11",+ "name": "CS",+ "type": "input",+ "description": "SPI chip select, active low. Frames a SPI transaction on the MCP23S17.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "12",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 2.925+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "12",+ "name": "SCK",+ "type": "input",+ "description": "SPI serial clock input (up to 10 MHz).",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "13",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 3.575+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "13",+ "name": "SI",+ "type": "input",+ "description": "SPI serial data input (MOSI from host).",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "14",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -3.5,+ 4.225+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "14",+ "name": "SO",+ "type": "output",+ "description": "SPI serial data output (MISO to host). Typically driven only during a read cycle.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "15",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 4.225+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "15",+ "name": "A0",+ "type": "input",+ "description": "Hardware address bit 0. Must be externally tied to VDD or VSS; combined with A1/A2 forms the SPI device address.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "16",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 3.575+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "16",+ "name": "A1",+ "type": "input",+ "description": "Hardware address bit 1. Must be externally tied to VDD or VSS.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "17",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 2.925+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "17",+ "name": "A2",+ "type": "input",+ "description": "Hardware address bit 2. Must be externally tied to VDD or VSS; up to 8 devices share the bus.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "18",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 2.275+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "18",+ "name": "RESET",+ "type": "input",+ "description": "Hardware reset, active low. Must be tied high (or driven high) for normal operation; asserting low returns all registers to POR defaults.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "19",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 1.625+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "19",+ "name": "INTB",+ "type": "output",+ "description": "Interrupt output for PORTB. Configurable as active-high, active-low, or open-drain (via IOCON register).",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "20",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 0.975+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "20",+ "name": "INTA",+ "type": "output",+ "description": "Interrupt output for PORTA. Configurable as active-high, active-low, or open-drain; can be mirrored with INTB.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "21",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ 0.325+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "21",+ "name": "GPA0",+ "type": "bidirectional",+ "description": "PORTA bit 0. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "22",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -0.325+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "22",+ "name": "GPA1",+ "type": "bidirectional",+ "description": "PORTA bit 1. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "23",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -0.975+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "23",+ "name": "GPA2",+ "type": "bidirectional",+ "description": "PORTA bit 2. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "24",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -1.625+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "24",+ "name": "GPA3",+ "type": "bidirectional",+ "description": "PORTA bit 3. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "25",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -2.275+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "25",+ "name": "GPA4",+ "type": "bidirectional",+ "description": "PORTA bit 4. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "26",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -2.925+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "26",+ "name": "GPA5",+ "type": "bidirectional",+ "description": "PORTA bit 5. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "27",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -3.575+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "27",+ "name": "GPA6",+ "type": "bidirectional",+ "description": "PORTA bit 6. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "28",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 3.5,+ -4.225+ ],+ "rot": 0.0,+ "size": [+ 1.9,+ 0.4+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "28",+ "name": "GPA7",+ "type": "bidirectional",+ "description": "PORTA bit 7. Bidirectional I/O pin with optional interrupt-on-change and internal weak pull-up.",+ "is_pin1": false,+ "source": {+ "geometry": "SSOP-28_5.3x10.2mm_P0.65mm.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ }+ ]+}
page.json+11@@ -216,6 +216,17 @@ "viewers": { "symbol": "viewers/symbol.html", "footprint": "viewers/footprint.html"+ },+ "pin1": {+ "pad": "1",+ "at": [+ -3.5,+ -4.225+ ],+ "corner": "top-left",+ "source": "silk-marker",+ "derived_from": "SSOP-28_5.3x10.2mm_P0.65mm@sha256:bbb0d0449b996c0a",+ "mark": "drawn" } }, "metadata": {
viewers/footprint.html+1−1@@ -23,7 +23,7 @@ rect.pad.hi{stroke:var(--hi);stroke-width:.15;paint-order:stroke} #tip .td{font-size:11px;color:var(--ink);margin-top:5px;line-height:1.4} </style></head><body> <div class=bar><span class=h>PCB footprint</span><span class=sp></span><button class="lyrtog on" data-lyr="copper"><span class="d" style="background:#e35d5d"></span>Copper</button><button class="lyrtog on" data-lyr="silk"><span class="d" style="background:#e6edf3"></span>Silkscreen</button><button class="lyrtog" data-lyr="fab"><span class="d" style="background:#8b949e"></span>Fab</button><button class="lyrtog" data-lyr="courtyard"><span class="d" style="background:#bc8cff"></span>Courtyard</button></div>-<div class=stage id=stage><svg xmlns='http://www.w3.org/2000/svg' viewBox='-5.100 -5.750 10.200 11.500' style='width:100%;height:100%'><line class='ly-silk' x1='-2.760' y1='-5.210' x2='2.760' y2='-5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-2.760' y1='-4.685' x2='-2.760' y2='-5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-2.760' y1='5.210' x2='-2.760' y2='4.685' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='-5.210' x2='2.760' y2='-4.685' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='4.685' x2='2.760' y2='5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='5.210' x2='-2.760' y2='5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-4.700' y1='-4.680' x2='-2.900' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-4.700' y1='4.680' x2='-4.700' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='-5.350' x2='2.900' y2='-5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='-4.680' x2='-2.900' y2='-5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='4.680' x2='-4.700' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='5.350' x2='-2.900' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='-5.350' x2='2.900' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='-4.680' x2='4.700' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='4.680' x2='2.900' y2='5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='5.350' x2='-2.900' y2='5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='4.700' y1='-4.680' x2='4.700' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='4.700' y1='4.680' x2='2.900' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='GPB0' x='-4.450' y='-4.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>1</text><rect class='ly-copper pad' data-num='2' data-name='GPB1' x='-4.450' y='-3.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>2</text><rect class='ly-copper pad' data-num='3' data-name='GPB2' x='-4.450' y='-3.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>3</text><rect class='ly-copper pad' data-num='4' data-name='GPB3' x='-4.450' y='-2.475' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>4</text><rect class='ly-copper pad' data-num='5' data-name='GPB4' x='-4.450' y='-1.825' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>5</text><rect class='ly-copper pad' data-num='6' data-name='GPB5' x='-4.450' y='-1.175' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>6</text><rect class='ly-copper pad' data-num='7' data-name='GPB6' x='-4.450' y='-0.525' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>7</text><rect class='ly-copper pad' data-num='8' data-name='GPB7' x='-4.450' y='0.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>8</text><rect class='ly-copper pad' data-num='9' data-name='VDD' x='-4.450' y='0.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>9</text><rect class='ly-copper pad' data-num='10' data-name='VSS' x='-4.450' y='1.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>10</text><rect class='ly-copper pad' data-num='11' data-name='CS' x='-4.450' y='2.075' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>11</text><rect class='ly-copper pad' data-num='12' data-name='SCK' x='-4.450' y='2.725' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>12</text><rect class='ly-copper pad' data-num='13' data-name='SI' x='-4.450' y='3.375' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>13</text><rect class='ly-copper pad' data-num='14' data-name='SO' x='-4.450' y='4.025' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>14</text><rect class='ly-copper pad' data-num='15' data-name='A0' x='2.550' y='4.025' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>15</text><rect class='ly-copper pad' data-num='16' data-name='A1' x='2.550' y='3.375' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>16</text><rect class='ly-copper pad' data-num='17' data-name='A2' x='2.550' y='2.725' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>17</text><rect class='ly-copper pad' data-num='18' data-name='RESET' x='2.550' y='2.075' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>18</text><rect class='ly-copper pad' data-num='19' data-name='INTB' x='2.550' y='1.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>19</text><rect class='ly-copper pad' data-num='20' data-name='INTA' x='2.550' y='0.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>20</text><rect class='ly-copper pad' data-num='21' data-name='GPA0' x='2.550' y='0.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>21</text><rect class='ly-copper pad' data-num='22' data-name='GPA1' x='2.550' y='-0.525' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>22</text><rect class='ly-copper pad' data-num='23' data-name='GPA2' x='2.550' y='-1.175' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>23</text><rect class='ly-copper pad' data-num='24' data-name='GPA3' x='2.550' y='-1.825' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>24</text><rect class='ly-copper pad' data-num='25' data-name='GPA4' x='2.550' y='-2.475' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>25</text><rect class='ly-copper pad' data-num='26' data-name='GPA5' x='2.550' y='-3.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>26</text><rect class='ly-copper pad' data-num='27' data-name='GPA6' x='2.550' y='-3.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>27</text><rect class='ly-copper pad' data-num='28' data-name='GPA7' x='2.550' y='-4.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>28</text></svg></div>+<div class=stage id=stage><svg xmlns='http://www.w3.org/2000/svg' viewBox='-5.100 -5.750 10.200 11.500' style='width:100%;height:100%'><line class='ly-silk' x1='-2.760' y1='-5.210' x2='2.760' y2='-5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-2.760' y1='-4.685' x2='-2.760' y2='-5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-2.760' y1='5.210' x2='-2.760' y2='4.685' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='-5.210' x2='2.760' y2='-4.685' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='4.685' x2='2.760' y2='5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='2.760' y1='5.210' x2='-2.760' y2='5.210' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-4.700' y1='-4.680' x2='-2.900' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-4.700' y1='4.680' x2='-4.700' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='-5.350' x2='2.900' y2='-5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='-4.680' x2='-2.900' y2='-5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='4.680' x2='-4.700' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.900' y1='5.350' x2='-2.900' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='-5.350' x2='2.900' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='-4.680' x2='4.700' y2='-4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='4.680' x2='2.900' y2='5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.900' y1='5.350' x2='-2.900' y2='5.350' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='4.700' y1='-4.680' x2='4.700' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='4.700' y1='4.680' x2='2.900' y2='4.680' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='GPB0' x='-4.450' y='-4.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>1</text><rect class='ly-copper pad' data-num='2' data-name='GPB1' x='-4.450' y='-3.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>2</text><rect class='ly-copper pad' data-num='3' data-name='GPB2' x='-4.450' y='-3.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>3</text><rect class='ly-copper pad' data-num='4' data-name='GPB3' x='-4.450' y='-2.475' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>4</text><rect class='ly-copper pad' data-num='5' data-name='GPB4' x='-4.450' y='-1.825' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>5</text><rect class='ly-copper pad' data-num='6' data-name='GPB5' x='-4.450' y='-1.175' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>6</text><rect class='ly-copper pad' data-num='7' data-name='GPB6' x='-4.450' y='-0.525' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='-0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>7</text><rect class='ly-copper pad' data-num='8' data-name='GPB7' x='-4.450' y='0.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>8</text><rect class='ly-copper pad' data-num='9' data-name='VDD' x='-4.450' y='0.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>9</text><rect class='ly-copper pad' data-num='10' data-name='VSS' x='-4.450' y='1.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>10</text><rect class='ly-copper pad' data-num='11' data-name='CS' x='-4.450' y='2.075' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>11</text><rect class='ly-copper pad' data-num='12' data-name='SCK' x='-4.450' y='2.725' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>12</text><rect class='ly-copper pad' data-num='13' data-name='SI' x='-4.450' y='3.375' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>13</text><rect class='ly-copper pad' data-num='14' data-name='SO' x='-4.450' y='4.025' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-3.500' y='4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>14</text><rect class='ly-copper pad' data-num='15' data-name='A0' x='2.550' y='4.025' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>15</text><rect class='ly-copper pad' data-num='16' data-name='A1' x='2.550' y='3.375' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>16</text><rect class='ly-copper pad' data-num='17' data-name='A2' x='2.550' y='2.725' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>17</text><rect class='ly-copper pad' data-num='18' data-name='RESET' x='2.550' y='2.075' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>18</text><rect class='ly-copper pad' data-num='19' data-name='INTB' x='2.550' y='1.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>19</text><rect class='ly-copper pad' data-num='20' data-name='INTA' x='2.550' y='0.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>20</text><rect class='ly-copper pad' data-num='21' data-name='GPA0' x='2.550' y='0.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>21</text><rect class='ly-copper pad' data-num='22' data-name='GPA1' x='2.550' y='-0.525' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-0.325' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>22</text><rect class='ly-copper pad' data-num='23' data-name='GPA2' x='2.550' y='-1.175' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-0.975' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>23</text><rect class='ly-copper pad' data-num='24' data-name='GPA3' x='2.550' y='-1.825' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-1.625' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>24</text><rect class='ly-copper pad' data-num='25' data-name='GPA4' x='2.550' y='-2.475' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-2.275' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>25</text><rect class='ly-copper pad' data-num='26' data-name='GPA5' x='2.550' y='-3.125' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-2.925' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>26</text><rect class='ly-copper pad' data-num='27' data-name='GPA6' x='2.550' y='-3.775' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-3.575' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>27</text><rect class='ly-copper pad' data-num='28' data-name='GPA7' x='2.550' y='-4.425' width='1.900' height='0.400' rx='0.100' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='3.500' y='-4.225' font-size='0.350' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>28</text><polygon class='ly-silk adom-pin1' points='-3.500,-4.690 -3.840,-5.160 -3.160,-5.160' fill='#d8b4fe' stroke='none'><title>pin 1</title></polygon></svg></div> <div id=tip></div> <script> var KIND="footprint", MPN="RAY/MCP23S17T-E", PINS=[{"desc":"","name":"GPB0","number":"1","type":""},{"desc":"","name":"GPB1","number":"2","type":""},{"desc":"","name":"GPB2","number":"3","type":""},{"desc":"","name":"GPB3","number":"4","type":""},{"desc":"","name":"GPB4","number":"5","type":""},{"desc":"","name":"GPB5","number":"6","type":""},{"desc":"","name":"GPB6","number":"7","type":""},{"desc":"","name":"GPB7","number":"8","type":""},{"desc":"","name":"VDD","number":"9","type":""},{"desc":"","name":"VSS","number":"10","type":""},{"desc":"","name":"CS","number":"11","type":""},{"desc":"","name":"SCK","number":"12","type":""},{"desc":"","name":"SI","number":"13","type":""},{"desc":"","name":"SO","number":"14","type":""},{"desc":"","name":"GPA7","number":"28","type":""},{"desc":"","name":"GPA6","number":"27","type":""},{"desc":"","name":"GPA5","number":"26","type":""},{"desc":"","name":"GPA4","number":"25","type":""},{"desc":"","name":"GPA3","number":"24","type":""},{"desc":"","name":"GPA2","number":"23","type":""},{"desc":"","name":"GPA1","number":"22","type":""},{"desc":"","name":"GPA0","number":"21","type":""},{"desc":"","name":"INTA","number":"20","type":""},{"desc":"","name":"INTB","number":"19","type":""},{"desc":"","name":"RESET","number":"18","type":""},{"desc":"","name":"A2","number":"17","type":""},{"desc":"","name":"A1","number":"16","type":""},{"desc":"","name":"A0","number":"15","type":""}];