← Commit history

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

Ray ·b255ce084c ·2mo ago ·parent 388faf2
5 files changed +199−7
bts6163d.lbr+1−1
@@ -80,7 +80,7 @@   <wire x1="4.1100" y1="-2.7000" x2="3.1100" y2="-2.7000" width="0.1000" layer="51"/>   <text x="0" y="4.050" size="1.27" layer="25" align="bottom-center">&gt;NAME</text>   <text x="0" y="-4.050" size="1.27" layer="27" align="top-center">&gt;VALUE</text>-</package>+<!--adom-pin1--><polygon width="0.0500" layer="21"><vertex x="-5.0400" y="2.9400"/><vertex x="-5.3800" y="3.4100"/><vertex x="-4.7000" y="3.4100"/></polygon></package> </packages> <symbols> <symbol name="BTS6163D">
package.json+2−1
@@ -24,6 +24,7 @@     "docs/hero.png",     "docs/bts6163d-datasheet.pdf",     "viewers/symbol.html",-    "viewers/footprint.html"+    "viewers/footprint.html",+    "pads.json"   ] }\ No newline at end of file
pads.jsonadded+180
@@ -0,0 +1,180 @@+{+ "schema": "adom.pads/1",+ "slug": "bts6163d",+ "footprint": "TO-252-4",+ "generated_from": {+  "footprint": "TO-252-4@sha256:37afb57535e0bf46",+  "pins": "page.json:component.pins",+  "overrides": null+ },+ "pin1": {+  "pad": "1",+  "at": [+   -5.04,+   -2.28+  ],+  "corner": "top-left",+  "source": "silk-marker",+  "derived_from": "TO-252-4@sha256:37afb57535e0bf46"+ },+ "pad_count": 5,+ "paste_apertures": 4,+ "issues": [+  {+   "kind": "pin-has-no-pad",+   "pin": "Tab",+   "detail": "page.json declares pin \"Tab\" but the footprint has no such pad"+  }+ ],+ "pads": [+  {+   "pad": "1",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -5.04,+    -2.28+   ],+   "rot": 0.0,+   "size": [+    2.2,+    0.8+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "1",+   "name": "OUT",+   "type": "power_out",+   "description": "Power output to the load. Pins 1 and 5 must be externally shorted; not shorting both outputs increases R_ON, reduces peak current capability, and degrades current-sense accuracy.",+   "is_pin1": true,+   "source": {+    "geometry": "TO-252-4.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "2",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -5.04,+    -1.14+   ],+   "rot": 0.0,+   "size": [+    2.2,+    0.8+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "2",+   "name": "IN",+   "type": "input",+   "description": "Control input; activates the power switch when pulled low (shorted to ground via R_IN). Required current capability of input switch typ. 1.6 mA (max 2.4 mA); turn-off current max 30 µA. Under-voltage shutdown at V_bIN ≈ 2.5-3.5 V.",+   "is_pin1": false,+   "source": {+    "geometry": "TO-252-4.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "3",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    1.26,+    0.0+   ],+   "rot": 0.0,+   "size": [+    6.4,+    5.8+   ],+   "layers": [+    "F.Cu",+    "F.Mask"+   ],+   "thermal": false,+   "pin": "3",+   "name": "Vbb",+   "type": "power_in",+   "description": "Positive supply voltage. Operating range 5.5-62 V; absolute max 62 V (48 V for full short-circuit protection); load-dump 70 V. Tab and pin 3 are internally shorted. Integrated series resistor R_bb ≈ 100 Ω in the V_bb line.",+   "is_pin1": false,+   "source": {+    "geometry": "TO-252-4.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "4",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -5.04,+    1.14+   ],+   "rot": 0.0,+   "size": [+    2.2,+    0.8+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "4",+   "name": "IS",+   "type": "output",+   "description": "Sense/diagnostic output. In normal operation delivers a current proportional to the load current with ratio k_ILIS ≈ 9000 (I_S = I_L / k_ILIS). In fault conditions (overload, overtemperature, short circuit) sources a defined fault current I_IS,fault ≈ 4.0-7.5 mA. Requires external R_IS (typ. 1 kΩ) to signal GND; leave open if unused.",+   "is_pin1": false,+   "source": {+    "geometry": "TO-252-4.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  },+  {+   "pad": "5",+   "kind": "smd",+   "shape": "roundrect",+   "at": [+    -5.04,+    2.28+   ],+   "rot": 0.0,+   "size": [+    2.2,+    0.8+   ],+   "layers": [+    "F.Cu",+    "F.Mask",+    "F.Paste"+   ],+   "thermal": false,+   "pin": "5",+   "name": "OUT",+   "type": "power_out",+   "description": "Power output to the load. Pins 1 and 5 must be externally shorted; not shorting both outputs increases R_ON, reduces peak current capability, and degrades current-sense accuracy.",+   "is_pin1": false,+   "source": {+    "geometry": "TO-252-4.kicad_mod",+    "meaning": "page.json:component.pins",+    "correspondence": "kicad: symbol pin number == pad name"+   }+  }+ ]+}\ No newline at end of file
page.json+15−4
@@ -38,25 +38,25 @@         "number": "2",         "name": "IN",         "type": "input",-        "description": "Control input; activates the power switch when pulled low (shorted to ground via R_IN). Required current capability of input switch typ. 1.6 mA (max 2.4 mA); turn-off current max 30 \u00b5A. Under-voltage shutdown at V_bIN \u2248 2.5-3.5 V."+        "description": "Control input; activates the power switch when pulled low (shorted to ground via R_IN). Required current capability of input switch typ. 1.6 mA (max 2.4 mA); turn-off current max 30 µA. Under-voltage shutdown at V_bIN ≈ 2.5-3.5 V."       },       {         "number": "3",         "name": "Vbb",         "type": "power_in",-        "description": "Positive supply voltage. Operating range 5.5-62 V; absolute max 62 V (48 V for full short-circuit protection); load-dump 70 V. Tab and pin 3 are internally shorted. Integrated series resistor R_bb \u2248 100 \u03a9 in the V_bb line."+        "description": "Positive supply voltage. Operating range 5.5-62 V; absolute max 62 V (48 V for full short-circuit protection); load-dump 70 V. Tab and pin 3 are internally shorted. Integrated series resistor R_bb ≈ 100 Ω in the V_bb line."       },       {         "number": "Tab",         "name": "Vbb",         "type": "power_in",-        "description": "Exposed thermal tab, internally shorted to pin 3 (Vbb). Provides the primary thermal path; must be soldered to Vbb copper for the specified R_thJA (45-55 K/W on 50\u00d750 mm 1.5 mm FR4 with 6 cm\u00b2 copper)."+        "description": "Exposed thermal tab, internally shorted to pin 3 (Vbb). Provides the primary thermal path; must be soldered to Vbb copper for the specified R_thJA (45-55 K/W on 50×50 mm 1.5 mm FR4 with 6 cm² copper)."       },       {         "number": "4",         "name": "IS",         "type": "output",-        "description": "Sense/diagnostic output. In normal operation delivers a current proportional to the load current with ratio k_ILIS \u2248 9000 (I_S = I_L / k_ILIS). In fault conditions (overload, overtemperature, short circuit) sources a defined fault current I_IS,fault \u2248 4.0-7.5 mA. Requires external R_IS (typ. 1 k\u03a9) to signal GND; leave open if unused."+        "description": "Sense/diagnostic output. In normal operation delivers a current proportional to the load current with ratio k_ILIS ≈ 9000 (I_S = I_L / k_ILIS). In fault conditions (overload, overtemperature, short circuit) sources a defined fault current I_IS,fault ≈ 4.0-7.5 mA. Requires external R_IS (typ. 1 kΩ) to signal GND; leave open if unused."       },       {         "number": "5",@@ -84,6 +84,17 @@     "viewers": {       "symbol": "viewers/symbol.html",       "footprint": "viewers/footprint.html"+    },+    "pin1": {+      "pad": "1",+      "at": [+        -5.04,+        -2.28+      ],+      "corner": "top-left",+      "source": "silk-marker",+      "derived_from": "TO-252-4@sha256:37afb57535e0bf46",+      "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='-6.790 -3.900 11.900 7.800' style='width:100%;height:100%'><line class='ly-silk' x1='-3.310' y1='-3.450' x2='-3.310' y2='-3.180' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-3.310' y1='3.450' x2='-3.310' y2='3.180' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='3.110' y1='-3.450' x2='-3.310' y2='-3.450' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='3.110' y1='3.450' x2='-3.310' y2='3.450' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-fab' x1='-5.810' y1='-2.655' x2='-5.810' y2='-1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='-1.905' x2='-3.110' y2='-1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='1.905' x2='-5.810' y2='2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='2.655' x2='-3.110' y2='2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-3.110' y1='1.905' x2='-5.810' y2='1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-2.705' y1='-2.655' x2='-5.810' y2='-2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='3.110' y1='-2.700' x2='4.110' y2='-2.700' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='4.110' y1='-2.700' x2='4.110' y2='2.700' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='4.110' y1='2.700' x2='3.110' y2='2.700' stroke='#f472b6' stroke-width='0.100'/><rect class='ly-courtyard' x='-6.390' y='-3.500' width='11.100' height='7.000' fill='none' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='' data-name='' x='-1.940' y='-2.900' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.415' y='-1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='-1.940' y='0.150' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.415' y='1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='1.410' y='-2.900' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='2.935' y='-1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='1.410' y='0.150' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='2.935' y='1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='1' data-name='OUT' x='-6.140' y='-2.880' width='2.200' height='1.200' rx='0.300' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-5.040' y='-2.280' font-size='0.720' 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='IN' x='-1.940' y='-2.900' width='6.400' height='5.800' rx='1.450' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.260' y='0.000' font-size='1.100' 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='Vbb' x='-6.140' y='1.680' width='2.200' height='1.200' rx='0.300' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-5.040' y='2.280' font-size='0.720' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>3</text></svg></div>+<div class=stage id=stage><svg xmlns='http://www.w3.org/2000/svg' viewBox='-6.790 -3.900 11.900 7.800' style='width:100%;height:100%'><line class='ly-silk' x1='-3.310' y1='-3.450' x2='-3.310' y2='-3.180' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-3.310' y1='3.450' x2='-3.310' y2='3.180' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='3.110' y1='-3.450' x2='-3.310' y2='-3.450' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='3.110' y1='3.450' x2='-3.310' y2='3.450' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-fab' x1='-5.810' y1='-2.655' x2='-5.810' y2='-1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='-1.905' x2='-3.110' y2='-1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='1.905' x2='-5.810' y2='2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-5.810' y1='2.655' x2='-3.110' y2='2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-3.110' y1='1.905' x2='-5.810' y2='1.905' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='-2.705' y1='-2.655' x2='-5.810' y2='-2.655' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='3.110' y1='-2.700' x2='4.110' y2='-2.700' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='4.110' y1='-2.700' x2='4.110' y2='2.700' stroke='#f472b6' stroke-width='0.100'/><line class='ly-fab' x1='4.110' y1='2.700' x2='3.110' y2='2.700' stroke='#f472b6' stroke-width='0.100'/><rect class='ly-courtyard' x='-6.390' y='-3.500' width='11.100' height='7.000' fill='none' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='' data-name='' x='-1.940' y='-2.900' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.415' y='-1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='-1.940' y='0.150' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-0.415' y='1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='1.410' y='-2.900' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='2.935' y='-1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='' data-name='' x='1.410' y='0.150' width='3.050' height='2.750' rx='0.688' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='2.935' y='1.525' font-size='1.100' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'></text><rect class='ly-copper pad' data-num='1' data-name='OUT' x='-6.140' y='-2.880' width='2.200' height='1.200' rx='0.300' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-5.040' y='-2.280' font-size='0.720' 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='IN' x='-1.940' y='-2.900' width='6.400' height='5.800' rx='1.450' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.260' y='0.000' font-size='1.100' 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='Vbb' x='-6.140' y='1.680' width='2.200' height='1.200' rx='0.300' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-5.040' y='2.280' font-size='0.720' fill='#1c1206' text-anchor='middle' dominant-baseline='central' pointer-events='none' font-family='ui-monospace,monospace' font-weight='700'>3</text><polygon class='ly-silk adom-pin1' points='-5.040,-2.940 -5.380,-3.410 -4.700,-3.410' fill='#d8b4fe' stroke='none'><title>pin 1</title></polygon></svg></div> <div id=tip></div> <script> var KIND="footprint", MPN="RAY/BTS6163D", PINS=[{"desc":"","name":"OUT","number":"1","type":""},{"desc":"","name":"IN","number":"2","type":""},{"desc":"","name":"Vbb","number":"3","type":""},{"desc":"","name":"IS","number":"4","type":""},{"desc":"","name":"OUT","number":"5","type":""}];