component
TP4054
Public Made by Adomby adom
UMW Battery Management, SOT-23-5L. 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
+200−6
package.json+2−1@@ -24,6 +24,7 @@ "docs/hero.png", "docs/tp4054-datasheet.pdf", "viewers/symbol.html",- "viewers/footprint.html"+ "viewers/footprint.html",+ "pads.json" ] }
pads.jsonadded+182@@ -0,0 +1,182 @@+{+ "schema": "adom.pads/1",+ "slug": "tp4054",+ "footprint": "SOT-23-5",+ "generated_from": {+ "footprint": "SOT-23-5@sha256:455a3f7c3e5eb5b8",+ "pins": "page.json:component.pins",+ "overrides": null+ },+ "pin1": {+ "pad": "1",+ "at": [+ -1.1375,+ -0.95+ ],+ "corner": "top-left",+ "source": "silk-marker",+ "derived_from": "SOT-23-5@sha256:455a3f7c3e5eb5b8"+ },+ "pad_count": 5,+ "symbol_pins": [+ "1",+ "2",+ "3",+ "4",+ "5"+ ],+ "paste_apertures": 0,+ "issues": [],+ "pads": [+ {+ "pad": "1",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -1.1375,+ -0.95+ ],+ "rot": 0.0,+ "size": [+ 1.325,+ 0.6+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "1",+ "name": "CHRG",+ "type": "output",+ "description": "Open-drain charge-status output. Pulled low by an internal N-channel MOSFET while charging; high-impedance when charging completes or during undervoltage lockout. Typical V(CHRG) = 0.35V at I(CHRG) = 5mA. Withstands up to V_SS + 10V. Commonly drives an LED to ground through a series resistor.",+ "is_pin1": true,+ "source": {+ "geometry": "SOT-23-5.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "2",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -1.1375,+ 0.0+ ],+ "rot": 0.0,+ "size": [+ 1.325,+ 0.6+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "2",+ "name": "GND",+ "type": "power_in",+ "description": "Device ground (VSS) reference for all internal circuitry and the return for the PROG resistor.",+ "is_pin1": false,+ "source": {+ "geometry": "SOT-23-5.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "3",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ -1.1375,+ 0.95+ ],+ "rot": 0.0,+ "size": [+ 1.325,+ 0.6+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "3",+ "name": "BAT",+ "type": "power_out",+ "description": "Charging current output to the Li-ion cell. Regulates the battery float voltage to 4.2V (±1%) and sources the programmed charge current (up to 600mA absolute max). Under battery-reverse (V_BAT = -4V) an internal ~0.7mA current flows to GND to protect the ESD diode. Absolute max V_BAT = 7V.",+ "is_pin1": false,+ "source": {+ "geometry": "SOT-23-5.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "4",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 1.1375,+ 0.95+ ],+ "rot": 0.0,+ "size": [+ 1.325,+ 0.6+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "4",+ "name": "VCC",+ "type": "power_in",+ "description": "Positive supply input, 4.25V-6.5V (absolute max V_SS + 7V). Requires at least a 1µF bypass capacitor to GND. When V(BAT) - V(VCC) drops below ~30mV the part enters shutdown and I(BAT) falls below ~2µA.",+ "is_pin1": false,+ "source": {+ "geometry": "SOT-23-5.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ },+ {+ "pad": "5",+ "kind": "smd",+ "shape": "roundrect",+ "at": [+ 1.1375,+ -0.95+ ],+ "rot": 0.0,+ "size": [+ 1.325,+ 0.6+ ],+ "layers": [+ "F.Cu",+ "F.Mask",+ "F.Paste"+ ],+ "thermal": false,+ "pin": "5",+ "name": "PROG",+ "type": "bidirectional",+ "description": "Charge-current programming, charge-current monitoring, and shutdown pin. A resistor R_PROG from PROG to GND sets I_BAT: I_BAT = (V_PROG / R_PROG) × 1000, with V_PROG ≈ 1V in constant-current mode (e.g. R_PROG = 2kΩ → ~500mA, 10kΩ → ~100mA). A 2µA pull-up allows the pin to be pulled high (>1.21V) to shut the charger down (I_CC drops to ~25µA). Absolute max V_PROG = V_SS ± 0.3V nominal / max current 800µA.",+ "is_pin1": false,+ "source": {+ "geometry": "SOT-23-5.kicad_mod",+ "meaning": "page.json:component.pins",+ "correspondence": "kicad: symbol pin number == pad name"+ }+ }+ ]+}
page.json+14−3@@ -44,19 +44,19 @@ "number": "3", "name": "BAT", "type": "power_out",- "description": "Charging current output to the Li-ion cell. Regulates the battery float voltage to 4.2V (\u00b11%) and sources the programmed charge current (up to 600mA absolute max). Under battery-reverse (V_BAT = -4V) an internal ~0.7mA current flows to GND to protect the ESD diode. Absolute max V_BAT = 7V."+ "description": "Charging current output to the Li-ion cell. Regulates the battery float voltage to 4.2V (±1%) and sources the programmed charge current (up to 600mA absolute max). Under battery-reverse (V_BAT = -4V) an internal ~0.7mA current flows to GND to protect the ESD diode. Absolute max V_BAT = 7V." }, { "number": "4", "name": "VCC", "type": "power_in",- "description": "Positive supply input, 4.25V-6.5V (absolute max V_SS + 7V). Requires at least a 1\u00b5F bypass capacitor to GND. When V(BAT) - V(VCC) drops below ~30mV the part enters shutdown and I(BAT) falls below ~2\u00b5A."+ "description": "Positive supply input, 4.25V-6.5V (absolute max V_SS + 7V). Requires at least a 1µF bypass capacitor to GND. When V(BAT) - V(VCC) drops below ~30mV the part enters shutdown and I(BAT) falls below ~2µA." }, { "number": "5", "name": "PROG", "type": "bidirectional",- "description": "Charge-current programming, charge-current monitoring, and shutdown pin. A resistor R_PROG from PROG to GND sets I_BAT: I_BAT = (V_PROG / R_PROG) \u00d7 1000, with V_PROG \u2248 1V in constant-current mode (e.g. R_PROG = 2k\u03a9 \u2192 ~500mA, 10k\u03a9 \u2192 ~100mA). A 2\u00b5A pull-up allows the pin to be pulled high (>1.21V) to shut the charger down (I_CC drops to ~25\u00b5A). Absolute max V_PROG = V_SS \u00b1 0.3V nominal / max current 800\u00b5A."+ "description": "Charge-current programming, charge-current monitoring, and shutdown pin. A resistor R_PROG from PROG to GND sets I_BAT: I_BAT = (V_PROG / R_PROG) × 1000, with V_PROG ≈ 1V in constant-current mode (e.g. R_PROG = 2kΩ → ~500mA, 10kΩ → ~100mA). A 2µA pull-up allows the pin to be pulled high (>1.21V) to shut the charger down (I_CC drops to ~25µA). Absolute max V_PROG = V_SS ± 0.3V nominal / max current 800µA." } ], "provenance": {@@ -78,6 +78,17 @@ "viewers": { "symbol": "viewers/symbol.html", "footprint": "viewers/footprint.html"+ },+ "pin1": {+ "pad": "1",+ "at": [+ -1.1375,+ -0.95+ ],+ "corner": "top-left",+ "source": "silk-marker",+ "derived_from": "SOT-23-5@sha256:455a3f7c3e5eb5b8",+ "mark": "drawn" } }, "metadata": {
tp4054.lbr+1−1@@ -68,7 +68,7 @@ <wire x1="0.9100" y1="-1.5600" x2="-0.9100" y2="-1.5600" width="0.1200" layer="21"/> <text x="0" y="2.212" size="1.27" layer="25" align="bottom-center">>NAME</text> <text x="0" y="-2.212" size="1.27" layer="27" align="top-center">>VALUE</text>-</package>+<!--adom-pin1--><polygon width="0.0500" layer="21"><vertex x="-1.4500" y="1.5100"/><vertex x="-1.6900" y="1.8400"/><vertex x="-1.2100" y="1.8400"/></polygon></package> </packages> <symbols> <symbol name="TP4054">
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='-2.450 -2.100 4.900 4.200' style='width:100%;height:100%'><line class='ly-silk' x1='-0.910' y1='-1.560' x2='0.910' y2='-1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.910' y1='-1.510' x2='-0.910' y2='-1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.910' y1='1.560' x2='-0.910' y2='1.510' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='-1.560' x2='0.910' y2='-1.510' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='-0.390' x2='0.910' y2='0.390' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='1.510' x2='0.910' y2='1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='1.560' x2='-0.910' y2='1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-2.050' y1='-1.500' x2='-1.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.050' y1='1.500' x2='-2.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='-1.700' x2='1.050' y2='-1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='-1.500' x2='-1.050' y2='-1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='1.500' x2='-2.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='1.700' x2='-1.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-1.700' x2='1.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-1.500' x2='2.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-0.390' x2='1.050' y2='0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='0.390' x2='2.050' y2='0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='1.500' x2='1.050' y2='1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='1.700' x2='-1.050' y2='1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='-1.500' x2='2.050' y2='-0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='-0.390' x2='1.050' y2='-0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='0.390' x2='2.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='1.500' x2='1.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='CHRG' x='-1.800' y='-1.250' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='-0.950' font-size='0.360' 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='GND' x='-1.800' y='-0.300' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='0.000' font-size='0.360' 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='BAT' x='-1.800' y='0.650' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='0.950' font-size='0.360' 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='VCC' x='0.475' y='0.650' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.137' y='0.950' font-size='0.360' 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='PROG' x='0.475' y='-1.250' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.137' y='-0.950' font-size='0.360' 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='-2.450 -2.100 4.900 4.200' style='width:100%;height:100%'><line class='ly-silk' x1='-0.910' y1='-1.560' x2='0.910' y2='-1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.910' y1='-1.510' x2='-0.910' y2='-1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='-0.910' y1='1.560' x2='-0.910' y2='1.510' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='-1.560' x2='0.910' y2='-1.510' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='-0.390' x2='0.910' y2='0.390' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='1.510' x2='0.910' y2='1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-silk' x1='0.910' y1='1.560' x2='-0.910' y2='1.560' stroke='#d8b4fe' stroke-width='0.120'/><line class='ly-courtyard' x1='-2.050' y1='-1.500' x2='-1.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-2.050' y1='1.500' x2='-2.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='-1.700' x2='1.050' y2='-1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='-1.500' x2='-1.050' y2='-1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='1.500' x2='-2.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='-1.050' y1='1.700' x2='-1.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-1.700' x2='1.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-1.500' x2='2.050' y2='-1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='-0.390' x2='1.050' y2='0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='0.390' x2='2.050' y2='0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='1.500' x2='1.050' y2='1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='1.050' y1='1.700' x2='-1.050' y2='1.700' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='-1.500' x2='2.050' y2='-0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='-0.390' x2='1.050' y2='-0.390' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='0.390' x2='2.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><line class='ly-courtyard' x1='2.050' y1='1.500' x2='1.050' y2='1.500' stroke='#4ade80' stroke-width='0.050'/><rect class='ly-copper pad' data-num='1' data-name='CHRG' x='-1.800' y='-1.250' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='-0.950' font-size='0.360' 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='GND' x='-1.800' y='-0.300' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='0.000' font-size='0.360' 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='BAT' x='-1.800' y='0.650' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='-1.137' y='0.950' font-size='0.360' 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='VCC' x='0.475' y='0.650' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.137' y='0.950' font-size='0.360' 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='PROG' x='0.475' y='-1.250' width='1.325' height='0.600' rx='0.150' fill='#f59e0b' stroke='#00000033' stroke-width='0.03' opacity='0.94'/><text class='padnum' x='1.137' y='-0.950' font-size='0.360' 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.450,-1.510 -1.690,-1.840 -1.210,-1.840' fill='#d8b4fe' stroke='none'><title>pin 1</title></polygon></svg></div> <div id=tip></div> <script> var KIND="footprint", MPN="RAY/TP4054", PINS=[{"desc":"","name":"CHRG","number":"1","type":""},{"desc":"","name":"GND","number":"2","type":""},{"desc":"","name":"BAT","number":"3","type":""},{"desc":"","name":"PROG","number":"5","type":""},{"desc":"","name":"VCC","number":"4","type":""}];