← Commit history

pin 1: carry the footprint's marker into the .lbr, the viewer and page.json (silk-marker, drawn, top-left)

Ray ·a0d0fd04ff ·1mo ago ·parent e929504
5 files changed +197−3
package.json+2−1
@@ -24,6 +24,7 @@     "docs/hero.png",     "docs/umc4ntr-datasheet.pdf",     "viewers/symbol.html",-    "viewers/footprint.html"+    "viewers/footprint.html",+    "pads.json"   ] }\ No newline at end of file
pads.jsonadded+182
@@ -0,0 +1,182 @@+{+ "schema": "adom.pads/1",+ "slug": "umc4ntr",+ "footprint": "SOT-353_SC-70-5",+ "generated_from": {+  "footprint": "SOT-353_SC-70-5@sha256:869e17094994ff78",+  "pins": "page.json:component.pins",+  "overrides": null+ },+ "pin1": {+  "pad": "1",+  "at": [+   -0.8375,+   -0.65+  ],+  "corner": "top-left",+  "source": "silk-marker",+  "derived_from": "SOT-353_SC-70-5@sha256:869e17094994ff78"+ },+ "pad_count": 5,+ "symbol_pins": [+  "1",+  "2",+  "3",+  "4",+  "5"+ ],+ "paste_apertures": 0,+ "issues": [],+ "pads": [+  {+   "pad": "1",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -0.8375,+    -0.65+   ],+   "rot": 0.0,+   "size": [+    1.025,+    0.35+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "1",+   "name": "DTr2_B",+   "type": "input",+   "description": "Base input of DTr2 (PNP, DTA114Y-equivalent) through internal 10kΩ series resistor R1. 47kΩ R2 sits between base and emitter. Absolute-max VIN = −40V / +6V.",+   "is_pin1": true,+   "source": {+    "geometry": "SOT-353_SC-70-5.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "2",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -0.8375,+    0.0+   ],+   "rot": 0.0,+   "size": [+    1.025,+    0.35+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "2",+   "name": "DTr2_E",+   "type": "passive",+   "description": "Emitter of DTr2 (PNP). Typically connected to VCC (positive supply) in a high-side switch topology. Absolute-max VCC = −50V.",+   "is_pin1": false,+   "source": {+    "geometry": "SOT-353_SC-70-5.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "3",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -0.8375,+    0.65+   ],+   "rot": 0.0,+   "size": [+    1.025,+    0.35+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "3",+   "name": "DTr1_B",+   "type": "input",+   "description": "Base input of DTr1 (NPN, DTC114E-equivalent) through internal 47kΩ series resistor R1. 47kΩ R2 sits between base and emitter (R2/R1 ≈ 1). Absolute-max VIN = +40V / −10V.",+   "is_pin1": false,+   "source": {+    "geometry": "SOT-353_SC-70-5.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "4",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    0.8375,+    0.65+   ],+   "rot": 0.0,+   "size": [+    1.025,+    0.35+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "4",+   "name": "DTr1_E",+   "type": "passive",+   "description": "Emitter of DTr1 (NPN). Typically connected to GND in a low-side switch topology.",+   "is_pin1": false,+   "source": {+    "geometry": "SOT-353_SC-70-5.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "5",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    0.8375,+    -0.65+   ],+   "rot": 0.0,+   "size": [+    1.025,+    0.35+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "5",+   "name": "DTr1_C/DTr2_C",+   "type": "output",+   "description": "Collector output. In dual DTR packages such as UMC4N the two collectors are frequently brought out on a shared or adjacent pin; check ROHM's specific UMC4N pinout for whether pin 5 is DTr1 collector only, DTr2 collector only, or common. Absolute-max IO/IC ≈ 100mA.",+   "is_pin1": false,+   "source": {+    "geometry": "SOT-353_SC-70-5.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  }+ ]+}\ No newline at end of file
page.json+11
@@ -78,6 +78,17 @@     "viewers": {       "symbol": "viewers/symbol.html",       "footprint": "viewers/footprint.html"+    },+    "pin1": {+      "pad": "1",+      "at": [+        -0.8375,+        -0.65+      ],+      "corner": "top-left",+      "source": "silk-marker",+      "derived_from": "SOT-353_SC-70-5@sha256:869e17094994ff78",+      "mark": "drawn"     }   },   "metadata": {
umc4ntr.lbr+1−1
@@ -68,7 +68,7 @@   <wire x1="0.7350" y1="-1.1100" x2="-0.7350" y2="-1.1100" width="0.1200" layer="21"/>   <text x="0" y="1.763" size="1.27" layer="25" align="bottom-center">&gt;NAME</text>   <text x="0" y="-1.763" size="1.27" layer="27" align="top-center">&gt;VALUE</text>-</package>+<!--adom-pin1--><polygon width="0.0500" layer="21"><vertex x="-1.1800" y="1.0900"/><vertex x="-1.3200" y="1.2800"/><vertex x="-1.0400" y="1.2800"/></polygon></package> </packages> <symbols> <symbol name="UMC4NTR">
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='-1.850 -1.510 3.700 3.020' style='width:100%;height:100%'><line class='ly-silk' x1='-0.735' y1='-1.110' x2='0.735' y2='-1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.735' y1='-1.085' x2='-0.735' y2='-1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.735' y1='1.110' x2='-0.735' y2='1.085' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='-1.110' x2='0.735' y2='-1.085' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='-0.215' x2='0.735' y2='0.215' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='1.085' x2='0.735' y2='1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='1.110' x2='-0.735' y2='1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-1.450' y1='-0.930' x2='-0.730' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.450' y1='0.930' x2='-1.450' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='-1.100' x2='0.730' y2='-1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='-0.930' x2='-0.730' y2='-1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='0.930' x2='-1.450' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='1.100' x2='-0.730' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-1.100' x2='0.730' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-0.930' x2='1.450' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-0.370' x2='0.730' y2='0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='0.370' x2='1.450' y2='0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='0.930' x2='0.730' y2='1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='1.100' x2='-0.730' y2='1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='-0.930' x2='1.450' y2='-0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='-0.370' x2='0.730' y2='-0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='0.370' x2='1.450' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='0.930' x2='0.730' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='DTr2_B' x='-1.350' y='-0.825' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='-0.650' 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='DTr2_E' x='-1.350' y='-0.175' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='0.000' 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='DTr1_B' x='-1.350' y='0.475' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='0.650' 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='DTr1_E' x='0.325' y='0.475' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='0.838' y='0.650' 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='DTr1_C/DTr2_C' x='0.325' y='-0.825' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='0.838' y='-0.650' 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></svg></div>+<div class=stage id=stage><svg xmlns='http://www.w3.org/2000/svg' viewBox='-1.850 -1.510 3.700 3.020' style='width:100%;height:100%'><line class='ly-silk' x1='-0.735' y1='-1.110' x2='0.735' y2='-1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.735' y1='-1.085' x2='-0.735' y2='-1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.735' y1='1.110' x2='-0.735' y2='1.085' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='-1.110' x2='0.735' y2='-1.085' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='-0.215' x2='0.735' y2='0.215' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='1.085' x2='0.735' y2='1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.735' y1='1.110' x2='-0.735' y2='1.110' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-1.450' y1='-0.930' x2='-0.730' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.450' y1='0.930' x2='-1.450' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='-1.100' x2='0.730' y2='-1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='-0.930' x2='-0.730' y2='-1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='0.930' x2='-1.450' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-0.730' y1='1.100' x2='-0.730' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-1.100' x2='0.730' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-0.930' x2='1.450' y2='-0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='-0.370' x2='0.730' y2='0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='0.370' x2='1.450' y2='0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='0.930' x2='0.730' y2='1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='0.730' y1='1.100' x2='-0.730' y2='1.100' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='-0.930' x2='1.450' y2='-0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='-0.370' x2='0.730' y2='-0.370' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='0.370' x2='1.450' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.450' y1='0.930' x2='0.730' y2='0.930' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='DTr2_B' x='-1.350' y='-0.825' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='-0.650' 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='DTr2_E' x='-1.350' y='-0.175' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='0.000' 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='DTr1_B' x='-1.350' y='0.475' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.838' y='0.650' 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='DTr1_E' x='0.325' y='0.475' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='0.838' y='0.650' 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='DTr1_C/DTr2_C' x='0.325' y='-0.825' width='1.025' height='0.350' rx='0.087' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='0.838' y='-0.650' 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><polygon class='ly-silk adom-pin1' points='-1.180,-1.090 -1.320,-1.280 -1.040,-1.280' fill='#d8b4fe' stroke='none'><title>pin 1</title></polygon></svg></div> <div id=tip></div> <script> var KIND="footprint", MPN="RAY/UMC4NTR", PINS=[{"desc":"","name":"DTr2_B","number":"1","type":""},{"desc":"","name":"DTr2_E","number":"2","type":""},{"desc":"","name":"DTr1_B","number":"3","type":""},{"desc":"","name":"DTr1_C/DTr2_C","number":"5","type":""},{"desc":"","name":"DTr1_E","number":"4","type":""}];