← Commit history

Targeted fixes, page content unchanged: mcp23017.lbr; models_3d

Ray ·145dec7664 ·1d ago ·parent 1b3a786
3 files changed +134−74
mcp23017.lbr+89−69
@@ -52,36 +52,48 @@ <library> <description>16-bit I/O expander, I2C, interrupts, w pull-ups, GPA7/GPB7 output only (https://microchip.my.site.com/s/article/GPA7---GPB7-Cannot-Be-Used-as-Inputs-In-MCP23017),  SOIC-28</description> <packages>-<package name="MCP23017x-x-SO">-  <description>MCP23017x-x-SO</description>-  <smd name="1" x="-4.6500" y="8.2550" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="2" x="-4.6500" y="6.9850" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="3" x="-4.6500" y="5.7150" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="4" x="-4.6500" y="4.4450" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="5" x="-4.6500" y="3.1750" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="6" x="-4.6500" y="1.9050" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="7" x="-4.6500" y="0.6350" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="8" x="-4.6500" y="-0.6350" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="9" x="-4.6500" y="-1.9050" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="10" x="-4.6500" y="-3.1750" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="11" x="-4.6500" y="-4.4450" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="12" x="-4.6500" y="-5.7150" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="13" x="-4.6500" y="-6.9850" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="14" x="-4.6500" y="-8.2550" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="15" x="4.6500" y="-8.2550" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="16" x="4.6500" y="-6.9850" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="17" x="4.6500" y="-5.7150" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="18" x="4.6500" y="-4.4450" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="19" x="4.6500" y="-3.1750" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="20" x="4.6500" y="-1.9050" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="21" x="4.6500" y="-0.6350" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="22" x="4.6500" y="0.6350" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="23" x="4.6500" y="1.9050" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="24" x="4.6500" y="3.1750" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="25" x="4.6500" y="4.4450" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="26" x="4.6500" y="5.7150" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="27" x="4.6500" y="6.9850" dx="2.0500" dy="0.6000" layer="1"/>-  <smd name="28" x="4.6500" y="8.2550" dx="2.0500" dy="0.6000" layer="1"/>+<package name="SOIC-28W_7.5x17.9mm_P1.27mm">+  <description>SOIC-28W, 7.5 x 17.9 mm, 1.27 mm pitch. SOIC, 28 Pin</description>+  <smd name="1" x="-4.6500" y="8.2550" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="2" x="-4.6500" y="6.9850" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="3" x="-4.6500" y="5.7150" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="4" x="-4.6500" y="4.4450" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="5" x="-4.6500" y="3.1750" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="6" x="-4.6500" y="1.9050" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="7" x="-4.6500" y="0.6350" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="8" x="-4.6500" y="-0.6350" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="9" x="-4.6500" y="-1.9050" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="10" x="-4.6500" y="-3.1750" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="11" x="-4.6500" y="-4.4450" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="12" x="-4.6500" y="-5.7150" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="13" x="-4.6500" y="-6.9850" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="14" x="-4.6500" y="-8.2550" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="15" x="4.6500" y="-8.2550" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="16" x="4.6500" y="-6.9850" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="17" x="4.6500" y="-5.7150" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="18" x="4.6500" y="-4.4450" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="19" x="4.6500" y="-3.1750" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="20" x="4.6500" y="-1.9050" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="21" x="4.6500" y="-0.6350" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="22" x="4.6500" y="0.6350" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="23" x="4.6500" y="1.9050" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="24" x="4.6500" y="3.1750" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="25" x="4.6500" y="4.4450" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="26" x="4.6500" y="5.7150" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="27" x="4.6500" y="6.9850" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <smd name="28" x="4.6500" y="8.2550" dx="2.0500" dy="0.6000" layer="1" roundness="50"/>+  <polygon width="0.1200" layer="21">+    <vertex x="-4.6500" y="8.8200"/>+    <vertex x="-4.9900" y="9.2900"/>+    <vertex x="-4.3100" y="9.2900"/>+  </polygon>+  <polygon width="0.1000" layer="51">+    <vertex x="-2.7500" y="8.9500"/>+    <vertex x="3.7500" y="8.9500"/>+    <vertex x="3.7500" y="-8.9500"/>+    <vertex x="-3.7500" y="-8.9500"/>+    <vertex x="-3.7500" y="7.9500"/>+  </polygon>   <wire x1="-3.8600" y1="9.0600" x2="3.8600" y2="9.0600" width="0.1200" layer="21"/>   <wire x1="-3.8600" y1="8.8150" x2="-3.8600" y2="9.0600" width="0.1200" layer="21"/>   <wire x1="-3.8600" y1="-9.0600" x2="-3.8600" y2="-8.8150" width="0.1200" layer="21"/>@@ -94,40 +106,41 @@ </packages> <symbols> <symbol name="MCP23017x-x-SO">-  <wire x1="-10.16" y1="22.86" x2="10.16" y2="22.86" width="0.254" layer="94"/>-  <wire x1="10.16" y1="22.86" x2="10.16" y2="-22.86" width="0.254" layer="94"/>-  <wire x1="10.16" y1="-22.86" x2="-10.16" y2="-22.86" width="0.254" layer="94"/>-  <wire x1="-10.16" y1="-22.86" x2="-10.16" y2="22.86" width="0.254" layer="94"/>-  <text x="0" y="25.4" size="1.27" layer="95" align="bottom-center">&gt;NAME</text>-  <text x="0" y="-25.4" size="1.27" layer="96" align="top-center">&gt;VALUE</text>-  <pin name="GPB0" x="12.7" y="-2.54" length="short" direction="io" rot="R180"/>-  <pin name="GPB1" x="12.7" y="-5.08" length="short" direction="io" rot="R180"/>-  <pin name="GPB2" x="12.7" y="-7.62" length="short" direction="io" rot="R180"/>-  <pin name="GPB3" x="12.7" y="-10.16" length="short" direction="io" rot="R180"/>-  <pin name="GPB4" x="12.7" y="-12.7" length="short" direction="io" rot="R180"/>-  <pin name="GPB5" x="12.7" y="-15.24" length="short" direction="io" rot="R180"/>-  <pin name="GPB6" x="12.7" y="-17.78" length="short" direction="io" rot="R180"/>-  <pin name="GPB7" x="12.7" y="-20.32" length="short" direction="out" rot="R180"/>-  <pin name="V_{DD}" x="0" y="25.4" length="short" direction="pwr" rot="R270"/>-  <pin name="V_{SS}" x="0" y="-25.4" length="short" direction="pwr" rot="R90"/>-  <pin name="NC" x="-10.16" y="15.24" length="short" direction="io"/>-  <pin name="SCK" x="-12.7" y="20.32" length="short" direction="in"/>-  <pin name="SDA" x="-12.7" y="17.78" length="short" direction="io"/>-  <pin name="NC@2" x="-10.16" y="12.7" length="short" direction="io"/>-  <pin name="A0" x="-12.7" y="-15.24" length="short" direction="in"/>-  <pin name="A1" x="-12.7" y="-17.78" length="short" direction="in"/>-  <pin name="A2" x="-12.7" y="-20.32" length="short" direction="in"/>-  <pin name="~{RESET}" x="-12.7" y="-2.54" length="short" direction="in"/>-  <pin name="INTB" x="-12.7" y="2.54" length="short" direction="hiz"/>-  <pin name="INTA" x="-12.7" y="5.08" length="short" direction="hiz"/>-  <pin name="GPA0" x="12.7" y="20.32" length="short" direction="io" rot="R180"/>-  <pin name="GPA1" x="12.7" y="17.78" length="short" direction="io" rot="R180"/>-  <pin name="GPA2" x="12.7" y="15.24" length="short" direction="io" rot="R180"/>-  <pin name="GPA3" x="12.7" y="12.7" length="short" direction="io" rot="R180"/>-  <pin name="GPA4" x="12.7" y="10.16" length="short" direction="io" rot="R180"/>-  <pin name="GPA5" x="12.7" y="7.62" length="short" direction="io" rot="R180"/>-  <pin name="GPA6" x="12.7" y="5.08" length="short" direction="io" rot="R180"/>-  <pin name="GPA7" x="12.7" y="2.54" length="short" direction="out" rot="R180"/>+  <description>16-bit I/O expander, I2C, interrupts, w pull-ups, GPA7/GPB7 output only (https://microchip.my.site.com/s/article/GPA7---GPB7-Cannot-Be-Used-as-Inputs-In-MCP23017),  SOIC-28</description>+  <wire x1="-12.7" y1="33.02" x2="12.7" y2="33.02" width="0.254" layer="94"/>+  <wire x1="12.7" y1="33.02" x2="12.7" y2="-33.02" width="0.254" layer="94"/>+  <wire x1="12.7" y1="-33.02" x2="-12.7" y2="-33.02" width="0.254" layer="94"/>+  <wire x1="-12.7" y1="-33.02" x2="-12.7" y2="33.02" width="0.254" layer="94"/>+  <text x="-9.3980" y="24.6380" size="1.27" layer="95" align="center">&gt;NAME</text>+  <text x="11.1760" y="24.6380" size="1.27" layer="96" align="center">&gt;VALUE</text>+  <pin name="GPB0" x="17.78" y="2.539999999999999" length="middle" direction="io" rot="R180"/>+  <pin name="GPB1" x="17.78" y="0" length="middle" direction="io" rot="R180"/>+  <pin name="GPB2" x="17.78" y="-2.5400000000000027" length="middle" direction="io" rot="R180"/>+  <pin name="GPB3" x="17.78" y="-5.080000000000002" length="middle" direction="io" rot="R180"/>+  <pin name="GPB4" x="17.78" y="-7.620000000000001" length="middle" direction="io" rot="R180"/>+  <pin name="GPB5" x="17.78" y="-10.16" length="middle" direction="io" rot="R180"/>+  <pin name="GPB6" x="17.78" y="-12.7" length="middle" direction="io" rot="R180"/>+  <pin name="GPB7" x="17.78" y="27.94" length="middle" direction="out" rot="R180"/>+  <pin name="V__DD" x="-17.78" y="15.24" length="middle" direction="pwr"/>+  <pin name="V__SS" x="-17.78" y="12.7" length="middle" direction="pwr"/>+  <pin name="NC" x="17.78" y="-27.94" length="middle" direction="nc" rot="R180"/>+  <pin name="SCK" x="-17.78" y="22.86" length="middle" direction="in"/>+  <pin name="SDA" x="17.78" y="-22.860000000000003" length="middle" direction="io" rot="R180"/>+  <pin name="NC@2" x="17.78" y="-30.48" length="middle" direction="nc" rot="R180"/>+  <pin name="A0" x="-17.78" y="30.48" length="middle" direction="in"/>+  <pin name="A1" x="-17.78" y="27.94" length="middle" direction="in"/>+  <pin name="A2" x="-17.78" y="25.4" length="middle" direction="in"/>+  <pin name="!RESET!" x="-17.78" y="20.32" length="middle" direction="in"/>+  <pin name="INTB" x="17.78" y="-20.319999999999997" length="middle" direction="hiz" rot="R180"/>+  <pin name="INTA" x="17.78" y="-17.779999999999998" length="middle" direction="hiz" rot="R180"/>+  <pin name="GPA0" x="17.78" y="22.86" length="middle" direction="io" rot="R180"/>+  <pin name="GPA1" x="17.78" y="20.32" length="middle" direction="io" rot="R180"/>+  <pin name="GPA2" x="17.78" y="17.78" length="middle" direction="io" rot="R180"/>+  <pin name="GPA3" x="17.78" y="15.24" length="middle" direction="io" rot="R180"/>+  <pin name="GPA4" x="17.78" y="12.7" length="middle" direction="io" rot="R180"/>+  <pin name="GPA5" x="17.78" y="10.16" length="middle" direction="io" rot="R180"/>+  <pin name="GPA6" x="17.78" y="7.620000000000001" length="middle" direction="io" rot="R180"/>+  <pin name="GPA7" x="17.78" y="30.48" length="middle" direction="out" rot="R180"/> </symbol> </symbols> <devicesets>@@ -137,7 +150,7 @@     <gate name="G$1" symbol="MCP23017x-x-SO" x="0" y="0"/>   </gates>   <devices>-    <device name="" package="MCP23017x-x-SO">+    <device name="" package="SOIC-28W_7.5x17.9mm_P1.27mm">       <connects>         <connect gate="G$1" pin="GPB0" pad="1"/>         <connect gate="G$1" pin="GPB1" pad="2"/>@@ -147,8 +160,8 @@         <connect gate="G$1" pin="GPB5" pad="6"/>         <connect gate="G$1" pin="GPB6" pad="7"/>         <connect gate="G$1" pin="GPB7" pad="8"/>-        <connect gate="G$1" pin="V_{DD}" pad="9"/>-        <connect gate="G$1" pin="V_{SS}" pad="10"/>+        <connect gate="G$1" pin="V__DD" pad="9"/>+        <connect gate="G$1" pin="V__SS" pad="10"/>         <connect gate="G$1" pin="NC" pad="11"/>         <connect gate="G$1" pin="SCK" pad="12"/>         <connect gate="G$1" pin="SDA" pad="13"/>@@ -156,7 +169,7 @@         <connect gate="G$1" pin="A0" pad="15"/>         <connect gate="G$1" pin="A1" pad="16"/>         <connect gate="G$1" pin="A2" pad="17"/>-        <connect gate="G$1" pin="~{RESET}" pad="18"/>+        <connect gate="G$1" pin="!RESET!" pad="18"/>         <connect gate="G$1" pin="INTB" pad="19"/>         <connect gate="G$1" pin="INTA" pad="20"/>         <connect gate="G$1" pin="GPA0" pad="21"/>@@ -168,7 +181,14 @@         <connect gate="G$1" pin="GPA6" pad="27"/>         <connect gate="G$1" pin="GPA7" pad="28"/>       </connects>-      <technologies><technology name=""/></technologies>+      <technologies>+        <technology name="">+          <attribute name="MPN" value="MCP23017" constant="no"/>+          <attribute name="MANUFACTURER" value="Microchip Technology" constant="no"/>+          <attribute name="DATASHEET" value="https://ww1.microchip.com/downloads/en/DeviceDoc/20001952C.pdf" constant="no"/>+          <attribute name="ADOM_WIKI" value="https://wiki.adom.inc/adom/mcp23017" constant="no"/>+        </technology>+      </technologies>     </device>   </devices> </deviceset>
package.json+2−2
@@ -1,6 +1,6 @@ {   "slug": "mcp23017",-  "version": "0.1.0",+  "version": "1.0.1",   "type": "component",   "description": "Microchip 16-bit I2C I/O expander, SOIC-28. Two 8-bit ports, interrupts, configurable pull-ups, 3 address pins. Datasheet-verified.",   "tags": [@@ -28,4 +28,4 @@     "viewers/symbol.html",     "viewers/footprint.html"   ]-}\ No newline at end of file+}
page.json+43−3
@@ -4,7 +4,7 @@   "slug": "mcp23017",   "title": "MCP23017",   "brief": "Microchip 16-bit I2C I/O expander, SOIC-28. Two 8-bit ports, interrupts, configurable pull-ups, 3 address pins. Datasheet-verified.",-  "version": "0.1.0",+  "version": "1.0.1",   "license": "CC-BY-SA-4.0",   "tags": [     "component",@@ -222,7 +222,47 @@     "viewers": {       "symbol": "viewers/symbol.html",       "footprint": "viewers/footprint.html"-    }+    },+    "models_3d": [+      {+        "file": "mcp23017.step",+        "role": "plain",+        "up": "Z",+        "units": "mm",+        "origin": "footprint origin = pad-pattern centre",+        "seat": "z = 0",+        "extents_mm": [+          10.3,+          17.9,+          2.75+        ],+        "zmin_mm": -0.0,+        "centre_offset_mm": 0.0,+        "footprint_binding": "identity",+        "sha256": "b889a13dbe9ec59e79fa9f1b5118b00bfa54f9582392335ff3365b64afc264b1",+        "checked": "2026-11-10",+        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"+      },+      {+        "file": "mcp23017-etched.step",+        "role": "plain",+        "up": "Z",+        "units": "mm",+        "origin": "footprint origin = pad-pattern centre",+        "seat": "z = 0",+        "extents_mm": [+          10.3,+          17.9,+          2.78+        ],+        "zmin_mm": -0.0,+        "centre_offset_mm": 0.0,+        "footprint_binding": "identity",+        "sha256": "de169592cb98022b3efb96f8d1bea6c2f76dc541c330fe5cf6c1e7202d217dbe",+        "checked": "2026-11-10",+        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"+      }+    ]   },   "metadata": {     "specs": {@@ -283,4 +323,4 @@       "kind": "packaging"     }   ]-}\ No newline at end of file+}