pixalynx/esp32-gps-cellular-tracker
This code defines a hardware layout comprising a Wi-Fi-enabled ESP32 module, GPS module, cellular GSM module, battery management components (including charger, protection circuits, and voltage regulators), USB-C connector, SIM card holder, RF components, and supporting passive components for a comprehensive GPS+Cellular tracker device.
- Version
- 1.1.0
- License
- unset
- Stars
- 0
dist/index.cjs
'use strict';
var jsxRuntime = require('react/jsx-runtime');
// Pads for pins 17-22 and 32 have been removed from the imported footprint.
// On the WROOM-32E they are NC ("do not connect" -- the flash lines are not
// brought out), so the castellations are left unsoldered. Dropping them
// frees the module's right-hand column for routing; the local autorouter
// was otherwise parking layer-change vias flush against those unused pads.
const pinLabels$e = {
pin1: ["GND1"],
pin2: ["3V3"],
pin3: ["EN"],
pin4: ["SENSOR_VP"],
pin5: ["SENSOR_VN"],
pin6: ["IO34"],
pin7: ["IO35"],
pin8: ["IO32"],
pin9: ["IO33"],
pin10: ["IO25"],
pin11: ["IO26"],
pin12: ["IO27"],
pin13: ["IO14"],
pin14: ["IO12"],
pin15: ["GND2"],
pin16: ["IO13"],
pin23: ["IO15"],
pin24: ["IO2"],
pin25: ["IO0"],
pin26: ["IO4"],
pin27: ["IO16"],
pin28: ["IO17"],
pin29: ["IO5"],
pin30: ["IO18"],
pin31: ["IO19"],
pin33: ["IO21"],
pin34: ["RXD0"],
pin35: ["TXD0"],
pin36: ["IO22"],
pin37: ["IO23"],
pin38: ["GND3"],
pin39: ["GND4"]
};
const pinAttributes$5 = {
pin1: { requiresGround: true },
pin15: { requiresGround: true },
pin38: { requiresGround: true },
pin39: { requiresGround: true }
};
const ESP32_WROOM_32E_N4 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$e, pinAttributes: pinAttributes$5, supplierPartNumbers: {
"jlcpcb": [
"C701341"
]
}, manufacturerPartNumber: "ESP32-WROOM-32E-N4", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-9.29001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "-8.02001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "-6.75001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-5.48001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin5"], pcbX: "-4.21001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin6"], pcbX: "-2.94001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin7"], pcbX: "-1.67001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin8"], pcbX: "-0.40001825mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin9"], pcbX: "0.86998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin10"], pcbX: "2.13998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin11"], pcbX: "3.40998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin12"], pcbX: "4.67998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin13"], pcbX: "5.94998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin14"], pcbX: "7.21998175mm", pcbY: "-9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin15"], pcbX: "8.71502575mm", pcbY: "-5.714873mm", width: "2.0999958mm", height: "0.9500108mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin16"], pcbX: "8.71502575mm", pcbY: "-4.444873mm", width: "2.0999958mm", height: "0.9500108mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin23"], pcbX: "8.71502575mm", pcbY: "4.445127mm", width: "2.0999958mm", height: "0.9500108mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin24"], pcbX: "8.71502575mm", pcbY: "5.715127mm", width: "2.0999958mm", height: "0.9500108mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin25"], pcbX: "7.21998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin26"], pcbX: "5.94998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin27"], pcbX: "4.67998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin28"], pcbX: "3.40998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin29"], pcbX: "2.13998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin30"], pcbX: "0.86998175mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin31"], pcbX: "-0.40001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin33"], pcbX: "-2.94001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin34"], pcbX: "-4.21001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin35"], pcbX: "-5.48001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin36"], pcbX: "-6.75001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin37"], pcbX: "-8.02001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin38"], pcbX: "-9.29001825mm", pcbY: "9.000109mm", width: "0.9500108mm", height: "2.0999958mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-1.60905825mm", pcbY: "-1.500251mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-1.60905825mm", pcbY: "-2.900045mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-1.60905825mm", pcbY: "-0.099949mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-3.00910625mm", pcbY: "-0.099949mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-3.00910625mm", pcbY: "-1.499997mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-3.00910625mm", pcbY: "-2.900045mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-0.20901025mm", pcbY: "-2.900045mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-0.20901025mm", pcbY: "-1.499997mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin39"], pcbX: "-0.20901025mm", pcbY: "-0.099949mm", width: "0.8999982mm", height: "0.8999982mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -16.764019050000115, "y": 9.000083599999925 }, { "x": -10.298118850000037, "y": 9.000083599999925 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -16.764019050000115, "y": -8.999931199999992 }, { "x": -10.314044649999914, "y": -8.999931199999992 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -16.764019050000115, "y": 9.000083599999925 }, { "x": -16.764019050000115, "y": -8.999931199999992 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -10.480059050000023, "y": 9.000083599999925 }, { "x": -10.480059050000023, "y": -8.999931199999992 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -9.971195449999868, "y": 9.01707620000002 }, { "x": -10.480059050000023, "y": 9.01707620000002 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 8.73595535000004, "y": 6.396227999999837 }, { "x": 8.73595535000004, "y": 9.01707620000002 }, { "x": 7.901158950000081, "y": 9.01707620000002 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 7.901158950000081, "y": -8.999931199999992 }, { "x": 8.73595535000004, "y": -8.999931199999992 }, { "x": 8.73595535000004, "y": -6.396050199999991 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -10.480059050000023, "y": -8.999931199999992 }, { "x": -9.971195449999868, "y": -8.999931199999992 }] }), jsxRuntime.jsx("silkscreentext", { text: "{NAME}", pcbX: "-3.53768025mm", pcbY: "11.040747mm", anchorAlignment: "center", fontSize: "1mm" }), jsxRuntime.jsx("courtyardoutline", { outline: [{ "x": -17.09728025000004, "y": 10.29074700000001 }, { "x": 10.021919750000052, "y": 10.29074700000001 }, { "x": 10.021919750000052, "y": -10.427652999999964 }, { "x": -17.09728025000004, "y": -10.427652999999964 }, { "x": -17.09728025000004, "y": 10.29074700000001 }] })] }), cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C701341.obj?uuid=cad43509223249168514859e4520db8a",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C701341.step?uuid=cad43509223249168514859e4520db8a",
pcbRotationOffset: 180,
modelOriginPosition: { x: -4.066063750000012, y: 0, z: 0 },
}, ...props }));
};
const pinLabels$d = {
pin1: ["GND1"],
pin2: ["TXD"],
pin3: ["RXD"],
pin4: ["1PPS"],
pin5: ["ON_OFF"],
pin6: ["VBAT"],
pin7: ["NC1"],
pin8: ["VCC"],
pin9: ["NRESET"],
pin10: ["GND2"],
pin11: ["RF_IN"],
pin12: ["GND3"],
pin13: ["NC2"],
pin14: ["VCC_RF"],
pin15: ["Reserved1"],
pin16: ["SDA"],
pin17: ["SCL"],
pin18: ["Reserved2"]
};
const pinAttributes$4 = {
pin1: { requiresGround: true },
pin7: { doNotConnect: true },
pin8: { requiresPower: true },
pin10: { requiresGround: true },
pin12: { requiresGround: true },
pin13: { doNotConnect: true }
};
const ATGM336H_5N31 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$d, pinAttributes: pinAttributes$4, supplierPartNumbers: {
"jlcpcb": [
"C90770"
]
}, manufacturerPartNumber: "ATGM336H-5N31", footprint: "dfn18_pillpads_p1.1mm_w11.39mm_pw0.7mm_pl1.77mm_pin1location(rightside,top)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C90770.obj?uuid=3a9b92849d9d4e12aff81024b0dce41f",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C90770.step?uuid=3a9b92849d9d4e12aff81024b0dce41f",
pcbRotationOffset: 90,
modelOriginPosition: { x: -38099999983387534e-21, y: -3810000009707437e-20, z: 0 },
}, ...props }));
};
const pinLabels$c = {
pin1: ["UART1_TXD"],
pin2: ["UART1_RXD"],
pin3: ["UART1_RTS"],
pin4: ["UART1_CTS"],
pin5: ["UART1_DCD"],
pin6: ["UART1_DTR"],
pin7: ["UART1_RI"],
pin8: ["GND1"],
pin9: ["MICP"],
pin10: ["MICN"],
pin11: ["SPKP"],
pin12: ["SPKN"],
pin13: ["GND2"],
pin14: ["SIM_DET"],
pin15: ["SIM_DATA"],
pin16: ["SIM_CLK"],
pin17: ["SIM_RST"],
pin18: ["SIM_VDD"],
pin19: ["GND3"],
pin20: ["BT_ANT"],
pin21: ["GND4"],
pin22: ["UART2_TXD"],
pin23: ["UART2_RXD"],
pin24: ["USB_VBUS"],
pin25: ["USB_DP"],
pin26: ["USB_DN"],
pin27: ["GND5"],
pin28: ["VRTC"],
pin29: ["RF_SYNC"],
pin30: ["GND6"],
pin31: ["GND7"],
pin32: ["GSM_ANT"],
pin33: ["GND8"],
pin34: ["VBAT1"],
pin35: ["VBAT2"],
pin36: ["GND9"],
pin37: ["GND10"],
pin38: ["ADC"],
pin39: ["PWRKEY"],
pin40: ["VDD_EXT"],
pin41: ["NETLIGHT"],
pin42: ["STATUS"]
};
const pinAttributes$3 = {
pin8: { requiresGround: true },
pin13: { requiresGround: true },
pin19: { requiresGround: true },
pin21: { requiresGround: true },
pin27: { requiresGround: true },
pin30: { requiresGround: true },
pin31: { requiresGround: true },
pin33: { requiresGround: true },
pin36: { requiresGround: true },
pin37: { requiresGround: true }
};
const SIM800C = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$c, pinAttributes: pinAttributes$3, supplierPartNumbers: {
"jlcpcb": [
"C2981431"
]
}, manufacturerPartNumber: "SIM800C", footprint: "lga42_grid12x9_pillpads_p1.1mm_w17.51mm_h19.41mm_pw0.62mm_pl1.93mm", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2981431.obj?uuid=c74e916e8ed54ce4b831e0419a021410",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2981431.step?uuid=c74e916e8ed54ce4b831e0419a021410",
pcbRotationOffset: 0,
modelOriginPosition: { x: 0, y: 0, z: 0 },
}, ...props }));
};
const pinLabels$b = {
pin1: ["TEMP"],
pin2: ["PROG"],
pin3: ["GND"],
pin4: ["VCC"],
pin5: ["BAT"],
pin6: ["N_STDBY"],
pin7: ["N_CHRG"],
pin8: ["CE"],
pin9: ["EP"]
};
const pinAttributes$2 = {
pin3: { requiresGround: true },
pin4: { requiresPower: true }
};
const footprinterPinLabels$1 = {
...pinLabels$b,
"pin9": [...pinLabels$b["pin9"], "thermalpad"],
};
const TP4056_42_ESOP8 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: footprinterPinLabels$1, pinAttributes: pinAttributes$2, supplierPartNumbers: {
"jlcpcb": [
"C16581"
]
}, manufacturerPartNumber: "TP4056-42-ESOP8", footprint: "dfn8_thermalpad2.4mmx3.3mm_w7.02mm_pl1.2mm_pin1location(leftside,bottom)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C16581.obj?uuid=9e2b03dd4dce46a190ce3fa245369fb2",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C16581.step?uuid=9e2b03dd4dce46a190ce3fa245369fb2",
pcbRotationOffset: 90,
modelOriginPosition: { x: 0.000012700000013410317, y: -12699999984988608e-21, z: -0.099425 },
}, ...props }));
};
const pinLabels$a = {
pin1: ["OD"],
pin2: ["VM"],
pin3: ["OC"],
pin4: ["TD"],
pin5: ["VCC"],
pin6: ["GND"]
};
const pinAttributes$1 = {
pin5: { requiresPower: true },
pin6: { requiresGround: true }
};
const DW01A = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$a, pinAttributes: pinAttributes$1, supplierPartNumbers: {
"jlcpcb": [
"C351410"
]
}, manufacturerPartNumber: "DW01A", footprint: "dfn6_p0.95mm_w3.3702mm_pw0.532mm_pl1.072mm_pin1location(leftside,bottom)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C351410.obj?uuid=229b69761e2c45dba6a83d8866dec72d",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C351410.step?uuid=229b69761e2c45dba6a83d8866dec72d",
pcbRotationOffset: 90,
modelOriginPosition: { x: -12700000070253736e-21, y: 0.000012700000070253736, z: -0.048939 },
}, ...props }));
};
const pinLabels$9 = {
pin1: ["S1"],
pin2: ["pin2"],
pin3: ["S2"],
pin4: ["G2"],
pin5: ["pin5"],
pin6: ["G1"]
};
const FS8205A = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$9, supplierPartNumbers: {
"jlcpcb": [
"C2830320"
]
}, manufacturerPartNumber: "FS8205A", footprint: "soic6_p0.95mm_w3.8mm_pl1.1mm_pin1location(rightside,bottom)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2830320.obj?uuid=229b69761e2c45dba6a83d8866dec72d",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2830320.step?uuid=229b69761e2c45dba6a83d8866dec72d",
pcbRotationOffset: 180,
modelOriginPosition: { x: 0.000025399999913133797, y: -889000000370288e-19, z: -0.048939 },
}, ...props }));
};
const pinLabels$8 = {
pin1: ["VIN"],
pin2: ["GND"],
pin3: ["EN"],
pin4: ["NC"],
pin5: ["VOUT"]
};
const pinAttributes = {
pin1: { requiresPower: true },
pin2: { requiresGround: true },
pin4: { doNotConnect: true }
};
const AP2112K_3_3TRG1 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$8, pinAttributes: pinAttributes, supplierPartNumbers: {
"jlcpcb": [
"C51118"
]
}, manufacturerPartNumber: "AP2112K-3.3TRG1", footprint: "dfn6_missing(5)_p0.95mm_w3.7mm_pw0.62mm_pl1.1mm_pin1location(leftside,bottom)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C51118.obj?uuid=6d166d1d6c064b99aa79465714e989c1",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C51118.step?uuid=6d166d1d6c064b99aa79465714e989c1",
pcbRotationOffset: 0,
modelOriginPosition: { x: -12700000070253736e-21, y: 0, z: -0.15 },
}, ...props }));
};
const pinLabels$7 = {
pin1: ["pin1"],
pin2: ["pin2"],
pin3: ["pin3"]
};
const BWU_FL_IPEX1 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$7, supplierPartNumbers: {
"jlcpcb": [
"C5137195"
]
}, manufacturerPartNumber: "BWU.FL-IPEX1", footprint: jsxRuntime.jsxs("footprint", { insertionDirection: "from_above", children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-1.05000425mm", pcbY: "0mm", width: "1.0500106mm", height: "0.999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "0.47501175mm", pcbY: "-1.474978mm", width: "2.1999956mm", height: "1.0500106mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "0.47501175mm", pcbY: "1.474978mm", width: "2.1999956mm", height: "1.0500106mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.872468949999984, "y": 0.7310628000000179 }, { "x": 1.872468949999984, "y": 1.2699491999999282 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.872468949999984, "y": 1.2699491999999282 }, { "x": 1.8061241499999596, "y": 1.2699491999999282 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.8061241499999596, "y": -1.2700507999999218 }, { "x": 1.872468949999984, "y": -1.2700507999999218 }, { "x": 1.872468949999984, "y": -0.7311643999998978 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.856151450000084, "y": 1.2700000000000955 }, { "x": -0.9224962499999947, "y": 1.2700000000000955 }, { "x": -0.9224962499999947, "y": 0.7311136000000715 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.9224962499999947, "y": -0.7311136000000715 }, { "x": -0.9224962499999947, "y": -1.2699999999999818 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.9224962499999947, "y": -1.2699999999999818 }, { "x": -0.856151450000084, "y": -1.2699999999999818 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.872468949999984, "y": 0.7310628000000179 }, { "x": 1.872468949999984, "y": -0.7311643999998978 }] }), jsxRuntime.jsx("silkscreencircle", { pcbX: "0.47501175mm", pcbY: "0mm", radius: "0.567944mm" }), jsxRuntime.jsx("silkscreentext", { text: "{NAME}", pcbX: "0.22888575mm", pcbY: "3.0066mm", anchorAlignment: "center", fontSize: "1mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": 1.0058463500000698, "y": -25400000026820635e-21 }, { "x": 0.9671771525157737, "y": -0.1944285836415247 }, { "x": 0.8570565948426747, "y": -0.3592356448426699 }, { "x": 0.6922495336415295, "y": -0.4693562025157689 }, { "x": 0.49784635000003163, "y": -0.508025400000065 }, { "x": 0.49784635000003163, "y": -0.508025400000065 }, { "x": 0.2735080371727463, "y": -0.4508300883509264 }, { "x": 0.09784715000000688, "y": -0.3000247999999601 }, { "x": -0.7374826500000609, "y": -0.3000247999999601 }, { "x": -0.7374826500000609, "y": 0.29997400000002017 }, { "x": 0.09784715000000688, "y": 0.29997400000002017 }, { "x": 0.2735080371727463, "y": 0.4507792883507591 }, { "x": 0.49784635000003163, "y": 0.5079745999998977 }, { "x": 0.49784635000003163, "y": 0.5079745999998977 }, { "x": 0.6922495336415295, "y": 0.4693054025157153 }, { "x": 0.8570565948426747, "y": 0.35918484484261626 }, { "x": 0.9671771525157737, "y": 0.19437778364147107 }, { "x": 1.0058463500000698, "y": -25400000026820635e-21 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("courtyardoutline", { outline: [{ "x": -1.824514249999993, "y": 2.2566000000001623 }, { "x": 2.282285750000028, "y": 2.2566000000001623 }, { "x": 2.282285750000028, "y": -2.2311999999999443 }, { "x": -1.824514249999993, "y": -2.2311999999999443 }, { "x": -1.824514249999993, "y": 2.2566000000001623 }] })] }), cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C5137195.obj?uuid=f0657290bb2f49d4b7d2a20aba567506",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C5137195.step?uuid=f0657290bb2f49d4b7d2a20aba567506",
pcbRotationOffset: 180,
modelOriginPosition: { x: 0.4725098500000513, y: 0, z: -0.01 },
}, ...props }));
};
const pinLabels$6 = {
pin1: ["pin1"],
pin2: ["pin2"],
pin3: ["C7"],
pin4: ["C6", "VPP"],
pin5: ["C5", "GND"],
pin6: ["C3", "CLK"],
pin7: ["C2", "RST"],
pin8: ["C1", "VCC"]
};
const SMN_304 = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$6, supplierPartNumbers: {
"jlcpcb": [
"C266889"
]
}, manufacturerPartNumber: "SMN-304", footprint: jsxRuntime.jsxs("footprint", { insertionDirection: "from_bottom", children: [jsxRuntime.jsx("hole", { pcbX: "-4.339971mm", pcbY: "-4.155059mm", diameter: "0.999998mm" }), jsxRuntime.jsx("hole", { pcbX: "4.660011mm", pcbY: "4.145153mm", diameter: "0.7999984mm" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "-2.539873mm", pcbY: "5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "0.000127mm", pcbY: "5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin5"], pcbX: "2.540127mm", pcbY: "5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin6"], pcbX: "-2.539873mm", pcbY: "-5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin7"], pcbX: "0.050927mm", pcbY: "-5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin8"], pcbX: "2.540127mm", pcbY: "-5.974969mm", width: "0.8999982mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-5.390007mm", pcbY: "-0.000127mm", width: "0.999998mm", height: "3.2900112mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "5.390007mm", pcbY: "-0.000127mm", width: "0.999998mm", height: "3.2900112mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 3.8098730000000103, "y": -1.1428730000000087 }, { "x": 3.3018730000000147, "y": -1.9048730000000091 }, { "x": 3.682873000000015, "y": -1.9048730000000091 }, { "x": 3.682873000000015, "y": -3.682873000000015 }, { "x": 3.9368730000000056, "y": -3.682873000000015 }, { "x": 3.9368730000000056, "y": -1.9048730000000091 }, { "x": 4.317873000000006, "y": -1.9048730000000091 }, { "x": 3.8098730000000103, "y": -1.1428730000000087 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -4.1655999999999835, "y": 5.456046999999984 }, { "x": -4.1655999999999835, "y": 6.161989199999979 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 4.2672000000000025, "y": 5.964046999999994 }, { "x": 4.2672000000000025, "y": 6.161989199999979 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -3.221151799999987, "y": -6.148984400000003 }, { "x": -5.030978000000005, "y": -6.148984400000003 }, { "x": -5.030978000000005, "y": -1.876145600000001 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.6303517999999997, "y": -6.148984400000003 }, { "x": -1.8588481999999829, "y": -6.148984400000003 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.8588482000000113, "y": -6.148984400000003 }, { "x": 0.7319518000000187, "y": -6.148984400000003 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 5.030978000000019, "y": -1.876145600000001 }, { "x": 5.030978000000019, "y": -6.148984400000003 }, { "x": 3.2211518000000154, "y": -6.148984400000003 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 5.030978000000019, "y": 3.7157913999999863 }, { "x": 5.030978000000019, "y": 1.8761455999999868 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 5.030978000000019, "y": 6.161989199999979 }, { "x": 5.030978000000019, "y": 4.574514599999986 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 4.190746000000004, "y": -6.100953000000004 }, { "x": 4.190746000000004, "y": -5.491353000000004 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -3.221151799999987, "y": 6.161989199999979 }, { "x": -4.523968599999989, "y": 6.161989199999979 }, { "x": -5.030978000000005, "y": 5.6549797999999925 }, { "x": -5.030978000000005, "y": 1.8761455999999868 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.6811517999999808, "y": 6.161989199999979 }, { "x": -1.8588481999999829, "y": 6.161989199999979 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.8588482000000113, "y": 6.161989199999979 }, { "x": 0.6811518000000234, "y": 6.161989199999979 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 5.030978000000019, "y": 6.161989199999979 }, { "x": 3.2211518000000154, "y": 6.161989199999979 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.539999999999992, "y": 3.8304469999999924 }, { "x": 2.1082000000000107, "y": 3.8304469999999924 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.5651459999999986, "y": -3.865752999999998 }, { "x": -2.0830539999999758, "y": -3.865752999999998 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 0.00012699999999199463, "y": 1.9254469999999912 }, { "x": -2.158873, "y": 1.9254469999999912 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.0826729999999856, "y": 1.0872469999999907 }, { "x": 0.00012699999999199463, "y": 1.0872469999999907 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.05092699999997308, "y": 1.0745469999999955 }, { "x": 2.1080730000000187, "y": 1.0745469999999955 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.0318730000000045, "y": 1.912746999999996 }, { "x": -0.05092699999997308, "y": 1.912746999999996 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.025272999999984336, "y": -1.1035030000000035 }, { "x": -2.1842729999999904, "y": -1.1035030000000035 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.1080729999999903, "y": -1.9417030000000182 }, { "x": -0.025272999999984336, "y": -1.9417030000000182 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.07632699999999204, "y": -1.9544030000000134 }, { "x": 2.0826729999999998, "y": -1.9544030000000134 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.0064729999999997, "y": -1.116203000000013 }, { "x": -0.07632699999999204, "y": -1.116203000000013 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 5.105400000000017, "y": 1.8711925999999863 }, { "x": 5.105400000000017, "y": 3.7941504000000066 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 1.8588482000000113, "y": 6.070599999999999 }, { "x": 0.6811518000000234, "y": 6.070599999999999 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -0.6811517999999808, "y": 6.070599999999999 }, { "x": -1.8588481999999829, "y": 6.070599999999999 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -4.1655999999999835, "y": 5.456046999999984 }, { "x": -4.14905373592164, "y": 5.224699998902949 }, { "x": -4.099751777907727, "y": 4.998062555598565 }, { "x": -4.0186977716482915, "y": 4.78074835486413 }, { "x": -3.9075417429703805, "y": 4.577181287144171 }, { "x": -3.7685465080702727, "y": 4.391505390898544 }, { "x": -3.60454160910146, "y": 4.227500491929717 }, { "x": -3.418865712855819, "y": 4.088505257029624 }, { "x": -3.215298645135846, "y": 3.9773492283516987 }, { "x": -2.9979844444014248, "y": 3.896295222092263 }, { "x": -2.771347001097027, "y": 3.8469932640783497 }, { "x": -2.539999999999992, "y": 3.8304469999999924 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 4.19074599999999, "y": -5.491353000000004 }, { "x": 4.174199735921661, "y": -5.260005998902955 }, { "x": 4.124897777907734, "y": -5.033368555598585 }, { "x": 4.043843771648312, "y": -4.81605435486415 }, { "x": 3.932687742970387, "y": -4.612487287144191 }, { "x": 3.7936925080702935, "y": -4.426811390898564 }, { "x": 3.6296876091014667, "y": -4.262806491929709 }, { "x": 3.4440117128558256, "y": -4.123811257029644 }, { "x": 3.2404446451358666, "y": -4.01265522835169 }, { "x": 3.0231304444014313, "y": -3.9316012220922687 }, { "x": 2.796493001097062, "y": -3.8822992640783696 }, { "x": 2.5651459999999986, "y": -3.865752999999998 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -4.242053999999996, "y": -5.9993530000000135 }, { "x": -4.228638371028211, "y": -5.7604655937859945 }, { "x": -4.188560193431144, "y": -5.524582335310811 }, { "x": -4.122323473545919, "y": -5.294669593412465 }, { "x": -4.030761176556609, "y": -5.073618654218791 }, { "x": -3.9150247514734815, "y": -4.864209361546898 }, { "x": -3.7765696509937783, "y": -4.669075158754211 }, { "x": -3.617137028339613, "y": -4.490669971660381 }, { "x": -3.4387318412457972, "y": -4.3312373490062015 }, { "x": -3.24359763845311, "y": -4.192782248526541 }, { "x": -3.0341883457812173, "y": -4.077045823443399 }, { "x": -2.8131374065875434, "y": -3.9854835264540753 }, { "x": -2.583224664689169, "y": -3.9192468065688644 }, { "x": -2.3473414062140137, "y": -3.879168628971783 }, { "x": -2.1084539999999947, "y": -3.865752999999998 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.158873, "y": 1.9254469999999912 }, { "x": -2.349373, "y": 1.874402678841875 }, { "x": -2.4888286788418554, "y": 1.7349469999999911 }, { "x": -2.539873, "y": 1.544446999999991 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.5398730000000143, "y": 1.544446999999991 }, { "x": -2.4786198146102407, "y": 1.3158469999999909 }, { "x": -2.311273, "y": 1.1485001853897359 }, { "x": -2.0826729999999856, "y": 1.0872469999999907 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.1080730000000187, "y": 1.0745469999999955 }, { "x": 2.298573000000019, "y": 1.1255913211581117 }, { "x": 2.4380286788418744, "y": 1.2650469999999956 }, { "x": 2.489073000000019, "y": 1.4555469999999957 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.489073000000019, "y": 1.4555469999999957 }, { "x": 2.4278198146102454, "y": 1.6841469999999816 }, { "x": 2.2604730000000046, "y": 1.8514938146102367 }, { "x": 2.0318730000000045, "y": 1.912746999999996 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.1842729999999904, "y": -1.1035030000000035 }, { "x": -2.3747729999999905, "y": -1.154547321158148 }, { "x": -2.514228678841846, "y": -1.2940030000000036 }, { "x": -2.5652729999999906, "y": -1.4845030000000037 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": -2.5652729999999906, "y": -1.4845030000000037 }, { "x": -2.5040198146102455, "y": -1.713103000000018 }, { "x": -2.3366729999999905, "y": -1.8804498146102588 }, { "x": -2.1080729999999903, "y": -1.9417030000000182 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.0826729999999998, "y": -1.9544030000000134 }, { "x": 2.273173, "y": -1.9033586788418688 }, { "x": 2.4126286788418696, "y": -1.7639030000000133 }, { "x": 2.463673, "y": -1.5734030000000132 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 2.463673, "y": -1.5734030000000132 }, { "x": 2.402419814610255, "y": -1.3448029999999989 }, { "x": 2.2350730000000283, "y": -1.177456185389758 }, { "x": 2.0064729999999997, "y": -1.1162029999999845 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ "x": 4.2672000000000025, "y": 5.964046999999994 }, { "x": 4.2537843710282175, "y": 5.7251595937859605 }, { "x": 4.213706193431165, "y": 5.489276335310805 }, { "x": 4.147469473545954, "y": 5.259363593412445 }, { "x": 4.055907176556616, "y": 5.038312654218771 }, { "x": 3.940170751473488, "y": 4.828903361546864 }, { "x": 3.801715650993799, "y": 4.633769158754191 }, { "x": 3.6422830283396337, "y": 4.4553639716603755 }, { "x": 3.463877841245818, "y": 4.295931349006196 }, { "x": 3.268743638453145, "y": 4.157476248526535 }, { "x": 3.0593343457812523, "y": 4.041739823443393 }, { "x": 2.83828340658755, "y": 3.9501775264540555 }, { "x": 2.608370664689204, "y": 3.8839408065688588 }, { "x": 2.3724874062140486, "y": 3.8438626289717774 }, { "x": 2.1336000000000297, "y": 3.8304469999999924 }] }), jsxRuntime.jsx("silkscreenrect", { pcbX: "-3.537077mm", pcbY: "-0.027305mm", width: "1.1938mm", height: "2.0828mm", strokeWidth: "0.254mm" }), jsxRuntime.jsx("silkscreentext", { text: "{NAME}", pcbX: "-0.000127mm", pcbY: "7.522847mm", anchorAlignment: "center", fontSize: "1mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": -0.5079999999999814, "y": -0.88900000000001 }, { "x": -0.5079999999999814, "y": -5.0800000000000125 }, { "x": -0.2539999999999907, "y": -5.0800000000000125 }, { "x": -0.2539999999999907, "y": -2.413000000000011 }, { "x": 0.5080000000000098, "y": -2.413000000000011 }, { "x": -0.5079999999999814, "y": -0.88900000000001 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": 1.4210854715202004e-14, "y": -2.794000000000011 }, { "x": -25399999998398926e-21, "y": -3.1750253999999956 }, { "x": 0.12697460000001115, "y": -3.302025400000005 }, { "x": 0.38097460000000183, "y": -3.302025400000005 }, { "x": 0.5079746000000114, "y": -3.1750253999999956 }, { "x": 0.5079746000000114, "y": -2.9210000000000207 }, { "x": 0.7619746000000021, "y": -2.9210000000000207 }, { "x": 0.7620000000000147, "y": -3.302000000000021 }, { "x": 0.8889746000000116, "y": -3.302000000000021 }, { "x": 0.88900000000001, "y": -2.921025400000005 }, { "x": 0.7620000000000147, "y": -2.7940253999999953 }, { "x": 0.5079746000000114, "y": -2.794000000000011 }, { "x": 0.38097460000000183, "y": -2.9210000000000207 }, { "x": 0.38100000000001444, "y": -3.1750000000000114 }, { "x": 0.2539746000000065, "y": -3.1750253999999956 }, { "x": 0.12697460000001115, "y": -3.1750000000000114 }, { "x": 0.12697460000001115, "y": -2.794000000000011 }, { "x": 1.4210854715202004e-14, "y": -2.794000000000011 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": -25399999998398926e-21, "y": -3.5560000000000116 }, { "x": 0.12697460000001115, "y": -3.555974599999999 }, { "x": 0.12697460000001115, "y": -3.683000000000021 }, { "x": 0.7620000000000147, "y": -3.683000000000021 }, { "x": 0.7620000000000147, "y": -3.555974599999999 }, { "x": 0.88900000000001, "y": -3.5560000000000116 }, { "x": 0.88900000000001, "y": -3.936974599999999 }, { "x": 0.7620000000000147, "y": -3.937000000000012 }, { "x": 0.7620000000000147, "y": -3.809974600000004 }, { "x": 0.12697460000001115, "y": -3.809974600000004 }, { "x": 0.12697460000001115, "y": -3.937000000000012 }, { "x": -25399999998398926e-21, "y": -3.936974599999999 }, { "x": -25399999998398926e-21, "y": -3.5560000000000116 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": -25399999998398926e-21, "y": -4.190974600000004 }, { "x": 0.88900000000001, "y": -4.190974600000004 }, { "x": 0.88900000000001, "y": -4.318000000000012 }, { "x": 0.2539746000000065, "y": -4.572000000000017 }, { "x": 0.88900000000001, "y": -4.826000000000022 }, { "x": 0.8889746000000116, "y": -4.953000000000017 }, { "x": 1.4210854715202004e-14, "y": -4.953000000000017 }, { "x": -25399999998398926e-21, "y": -4.826000000000022 }, { "x": 0.6350000000000193, "y": -4.826000000000022 }, { "x": -25399999998398926e-21, "y": -4.572000000000017 }, { "x": 0.6350000000000193, "y": -4.318000000000012 }, { "x": -25399999998398926e-21, "y": -4.318000000000012 }, { "x": -25399999998398926e-21, "y": -4.190974600000004 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("fabricationnotepath", { route: [{ "x": -4.444999999999993, "y": 6.222999999999985 }, { "x": -5.079999999999984, "y": 5.58799999999998 }, { "x": -4.825999999999993, "y": 5.58799999999998 }, { "x": -4.190999999999988, "y": 6.222999999999985 }, { "x": -4.444999999999993, "y": 6.222999999999985 }], strokeWidth: "0.254mm" }), jsxRuntime.jsx("courtyardoutline", { outline: [{ "x": -6.142926999999986, "y": 6.7728469999999845 }, { "x": 6.142673000000002, "y": 6.7728469999999845 }, { "x": 6.142673000000002, "y": -6.782753 }, { "x": -6.142926999999986, "y": -6.782753 }, { "x": -6.142926999999986, "y": 6.7728469999999845 }] })] }), cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C266889.obj?uuid=e188f44e57f64fb0a0cea1dace9b73a2",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C266889.step?uuid=e188f44e57f64fb0a0cea1dace9b73a2",
pcbRotationOffset: 0,
modelOriginPosition: { x: 0, y: 0.000012700000013410317, z: -0.25 },
}, ...props }));
};
const pinLabels$5 = {
pin1: ["pin1"],
pin2: ["pin2"]
};
const B2B_PH_K_S_LF__SN_ = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$5, supplierPartNumbers: {
"jlcpcb": [
"C131337"
]
}, manufacturerPartNumber: "B2B-PH-K-S(LF)(SN)", footprint: "pinrow2_nosquareplating_p2mm_od1.6mm_id0.9mm_pin1location(rightside,top)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C131337.obj?uuid=ee6b32b5c03144688a5663b32f9648c4",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C131337.step?uuid=ee6b32b5c03144688a5663b32f9648c4",
pcbRotationOffset: 180,
modelOriginPosition: { x: -0.9995, y: -0.5500381999999945, z: -6999999999646178e-21 },
}, ...props }));
};
const pinLabels$4 = {
pin1: ["pin1"],
pin2: ["pin2"],
pin3: ["pin3"],
pin4: ["pin4"]
};
const footprinterPinLabels = {
...pinLabels$4,
"pin4": [...pinLabels$4["pin4"], "pin5", "pin6", "pin7"],
};
const MSK12C02 = (props) => {
const { name = "SW1", ...restProps } = props;
return (jsxRuntime.jsx("switch", { name: name, pinLabels: footprinterPinLabels, supplierPartNumbers: {
"jlcpcb": [
"C431540"
]
}, manufacturerPartNumber: "MSK12C02", footprint: "smdslideswitch7_signalcols4_missing(2)_p1.5mm_pw0.6mm_pl1.524mm_mounty-2.2501mm_mpx7.1999mm_mpy2.3mm_mpw1.2mm_mpl0.7mm_holex1.5mm_holey-2.2502mm_holed0.9mm", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C431540.obj?uuid=fc12522ae2f04394b021187ce17b23bb",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C431540.step?uuid=fc12522ae2f04394b021187ce17b23bb",
pcbRotationOffset: 180,
modelOriginPosition: { x: 0.000025400000026820635, y: -0.7060877499999378, z: -10000000000287557e-22 },
}, ...restProps }));
};
const ERR1AM102F12OT = (props) => {
const { name = "C1", ...restProps } = props;
return (jsxRuntime.jsx("capacitor", { name: name, capacitance: "1000uF", supplierPartNumbers: {
"jlcpcb": [
"C106613"
]
}, manufacturerPartNumber: "ERR1AM102F12OT", footprint: "pinrow2_nosquareplating_p3.5mm_od1.6mm", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C106613.obj?uuid=5d8fef05026249fba67d921d4fb62a95",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C106613.step?uuid=5d8fef05026249fba67d921d4fb62a95",
pcbRotationOffset: 180,
modelOriginPosition: { x: 0, y: 0, z: -6999999999646178e-21 },
}, ...restProps }));
};
const pinLabels$3 = {
pin1: ["A"],
pin2: ["B"],
pin3: ["C"],
pin4: ["D"]
};
const TS_1187A_B_A_B = (props) => {
const { name = "SW1", ...restProps } = props;
return (jsxRuntime.jsx("pushbutton", { name: name, pinLabels: pinLabels$3, supplierPartNumbers: {
"jlcpcb": [
"C318884"
]
}, manufacturerPartNumber: "TS-1187A-B-A-B", footprint: "smdpushbutton4_px6mm_py3.7mm_pw1mm_ph0.75mm", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C318884.obj?uuid=91b67c1735f643ffb2e7226c23dd3492",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C318884.step?uuid=91b67c1735f643ffb2e7226c23dd3492",
pcbRotationOffset: 0,
modelOriginPosition: { x: 0.000012700000070253736, y: 0.0004999999999999449, z: -0.05 },
}, ...restProps }));
};
const pinLabels$2 = {
pin1: ["G"],
pin2: ["S"],
pin3: ["D"]
};
const AO3401A = (props) => {
return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$2, symbol: jsxRuntime.jsxs("symbol", { children: [jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.2, "y": 0 }, { "x": 0.08, "y": 0.04 }, { "x": 0.08, "y": -0.04 }, { "x": 0.2, "y": 0 }], strokeColor: "#880000", isFilled: true, fillColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.4, "y": -0.04 }, { "x": 0.46, "y": 0.06 }, { "x": 0.34, "y": 0.06 }, { "x": 0.4, "y": -0.04 }], strokeColor: "#880000", isFilled: true, fillColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.2, "y": -0.2 }, { "x": 0.4, "y": -0.2 }, { "x": 0.4, "y": -0.04 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.2, "y": 0.14 }, { "x": 0.2, "y": 0.2 }, { "x": 0.4, "y": 0.2 }, { "x": 0.4, "y": 0.06 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.2, "y": 0.14 }, { "x": 0, "y": 0.14 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0, "y": 0 }, { "x": 0.2, "y": 0 }, { "x": 0.2, "y": -0.2 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.2, "y": -0.14 }, { "x": 0, "y": -0.14 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": -0.04, "y": 0.18 }, { "x": -0.04, "y": -0.18 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0, "y": 0.1 }, { "x": 0, "y": 0.18 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0, "y": -0.04 }, { "x": 0, "y": 0.04 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0, "y": -0.18 }, { "x": 0, "y": -0.1 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": -0.2, "y": 0 }, { "x": -0.04, "y": 0 }], strokeColor: "#880000" }), jsxRuntime.jsx("schematicpath", { points: [{ "x": 0.46, "y": -0.04 }, { "x": 0.44, "y": -0.04 }, { "x": 0.36, "y": -0.04 }, { "x": 0.34, "y": -0.04 }], strokeColor: "#880000" }), jsxRuntime.jsx("port", { name: "pin3", pinNumber: 3, aliases: ["D"], direction: "up", schX: 0.2, schY: 0.4, schStemLength: 0.2 }), jsxRuntime.jsx("port", { name: "pin1", pinNumber: 1, aliases: ["G"], direction: "left", schX: -0.4, schY: 0, schStemLength: 0.2 }), jsxRuntime.jsx("port", { name: "pin2", pinNumber: 2, aliases: ["S"], direction: "down", schX: 0.2, schY: -0.4, schStemLength: 0.2 })] }), supplierPartNumbers: {
"jlcpcb": [
"C15127"
]
}, manufacturerPartNumber: "AO3401A", footprint: "sot23w_p1.15mm_pw0.8mm_pin1location(rightside,bottom)", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C15127.obj?uuid=d777607a152f4f3aac9bb0d0c14ed6fd",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C15127.step?uuid=d777607a152f4f3aac9bb0d0c14ed6fd",
pcbRotationOffset: 180,
modelOriginPosition: { x: 0.00003809999999759839, y: -3810000001180924e-20, z: 0.050795 },
}, ...props }));
};
const pinLabels$1 = {
pin1: ["cathode", "neg"],
pin2: ["anode", "pos"]
};
const SS14L = (props) => {
const { name = "D1", ...restProps } = props;
return (jsxRuntime.jsx("diode", { name: name, pinLabels: pinLabels$1, supplierPartNumbers: {
"jlcpcb": [
"C190475"
]
}, manufacturerPartNumber: "SS14L", footprint: "smdpads2_p3.3mm_pw1mm_ph1.2mm", cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C190475.obj?uuid=c6882627c5f64d6e8dd3b5c64b2adb0a",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C190475.step?uuid=c6882627c5f64d6e8dd3b5c64b2adb0a",
pcbRotationOffset: 0,
modelOriginPosition: { x: -12699999956566899e-21, y: -0.007010400000012851, z: -0.21 },
}, ...restProps }));
};
// USB-C 16-pin top-mount receptacle, JLCPCB basic part C2765186
// ("TYPE-C 16PIN 2MD(073)"). Geometry is a verbatim copy of the footprint
// the parts engine fetches for this part number (12 SMD contacts at
// 0.5mm pitch, four plated shell slots, two 0.7mm alignment-peg holes),
// with the pegs expressed only as NPTH holes. The fetched version also
// carries the pegs as pcb_cutouts, which the placement checker flags as
// the connector overlapping its own cutouts and that in turn suppresses
// autorouting -- so the footprint is spelled out here instead. Pin numbers
// follow tscircuit's canonical USB-C order so `standard="usb_c"` still
// drives the schematic symbol.
const pinLabels = {
pin1: ["GND1"],
pin2: ["VBUS1"],
pin3: ["CC1"],
pin4: ["DP1"],
pin5: ["DM1", "DN1"],
pin6: ["SBU1"],
pin7: ["SBU2"],
pin8: ["DM2", "DN2"],
pin9: ["DP2"],
pin10: ["CC2"],
pin11: ["VBUS2"],
pin12: ["GND2"],
pin13: ["SHELL1"],
pin14: ["SHELL2"],
pin15: ["SHELL3"],
pin16: ["SHELL4"],
};
const wide = { width: "0.55mm", height: "1.1mm", shape: "rect" };
const narrow = { width: "0.3mm", height: "1.1mm", shape: "rect" };
const TYPE_C_16PIN_2MD_073 = (props) => {
return (jsxRuntime.jsx("connector", { standard: "usb_c", pinLabels: pinLabels, manufacturerPartNumber: "TYPE-C 16PIN 2MD(073)", supplierPartNumbers: { jlcpcb: ["C2765186"] }, footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-3.2mm", pcbY: "2.125mm", ...wide }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "-2.4mm", pcbY: "2.125mm", ...wide }), jsxRuntime.jsx("smtpad", { portHints: ["pin7"], pcbX: "-1.75mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "-1.25mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin8"], pcbX: "-0.75mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.25mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin5"], pcbX: "0.25mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin9"], pcbX: "0.75mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin6"], pcbX: "1.25mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin10"], pcbX: "1.75mm", pcbY: "2.125mm", ...narrow }), jsxRuntime.jsx("smtpad", { portHints: ["pin11"], pcbX: "2.4mm", pcbY: "2.125mm", ...wide }), jsxRuntime.jsx("smtpad", { portHints: ["pin12"], pcbX: "3.2mm", pcbY: "2.125mm", ...wide }), jsxRuntime.jsx("platedhole", { portHints: ["pin13"], shape: "pill", pcbX: "-4.325mm", pcbY: "1.575mm", outerWidth: "1.1mm", outerHeight: "1.9mm", holeWidth: "0.6mm", holeHeight: "1.4mm" }), jsxRuntime.jsx("platedhole", { portHints: ["pin14"], shape: "pill", pcbX: "4.325mm", pcbY: "1.575mm", outerWidth: "1.1mm", outerHeight: "1.9mm", holeWidth: "0.6mm", holeHeight: "1.4mm" }), jsxRuntime.jsx("platedhole", { portHints: ["pin15"], shape: "pill", pcbX: "-4.325mm", pcbY: "-2.625mm", outerWidth: "1.2mm", outerHeight: "1.6mm", holeWidth: "0.6mm", holeHeight: "1.0mm" }), jsxRuntime.jsx("platedhole", { portHints: ["pin16"], shape: "pill", pcbX: "4.325mm", pcbY: "-2.625mm", outerWidth: "1.2mm", outerHeight: "1.6mm", holeWidth: "0.6mm", holeHeight: "1.0mm" }), jsxRuntime.jsx("hole", { pcbX: "-2.89mm", pcbY: "1.055mm", diameter: "0.7mm" }), jsxRuntime.jsx("hole", { pcbX: "2.89mm", pcbY: "1.055mm", diameter: "0.7mm" }), jsxRuntime.jsx("silkscreenpath", { route: [{ x: 4.572, y: -1.647 }, { x: 4.572, y: 0.347 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ x: 4.572, y: -5.076 }, { x: 4.572, y: -3.603 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ x: -4.5, y: -1.644 }, { x: -4.5, y: 0.344 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ x: -4.5, y: -5.225 }, { x: -4.5, y: -3.606 }] }), jsxRuntime.jsx("silkscreenpath", { route: [{ x: 4.5, y: -5.225 }, { x: -4.5, y: -5.225 }] }), jsxRuntime.jsx("silkscreentext", { text: "{NAME}", pcbX: "0mm", pcbY: "3.6mm", anchorAlignment: "center", fontSize: "1mm" }), jsxRuntime.jsx("courtyardoutline", { outline: [{ x: -4.753, y: 2.934 }, { x: 4.815, y: 2.934 }, { x: 4.815, y: -5.491 }, { x: -4.753, y: -5.491 }, { x: -4.753, y: 2.934 }] })] }), cadModel: {
objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2765186.obj?uuid=4ee8413127e64716b804db03d4b340ae",
stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C2765186.step?uuid=4ee8413127e64716b804db03d4b340ae",
pcbRotationOffset: 0,
modelOriginPosition: { x: -127e-7, y: 1.57499705, z: -1.6800018 },
}, ...props }));
};
// Schematic sections laid out on a grid, spaced so each section's internal
// offsets don't collide with its neighbors.
const SEC = {
Usb: { x: 0, y: 34 },
Charger: { x: 0, y: 17 },
Protection: { x: -20, y: 17 },
Regulator: { x: 20, y: 17 },
Mcu: { x: 0, y: 0 },
BootReset: { x: 20, y: 0 },
Gps: { x: -20, y: -17 },
Cellular: { x: 0, y: -17 },
SimCard: { x: 20, y: -17 },
};
// ESP32-WROOM-32E's own printed PCB antenna sits in the ~6.3mm-wide strip at
// the narrow end of the module opposite the two 14-pad rows (visible in the
// imported footprint as the tall silkscreen sliver from x=-16.76 to -10.48mm,
// module-local coordinates). No copper is allowed there on either layer or
// it detunes the antenna. The keepout extends ~2.5mm past the antenna on its
// left and top sides and 1mm below it (the GPS UART traces enter the ESP32's
// bottom pad row from that corner, and the router clipped a wider margin
// there); its right edge stops short of the first pad column (pins 1/38 at
// x=-9.29).
// Espressif's guideline is stricter still -- antenna at the board edge with
// nothing metallic nearby -- so expect reduced Wi-Fi/BT range compared to a
// dev kit. The tracker's primary link is the GSM modem, so this is a
// tradeoff, not a blocker.
const ESP32_LOCAL_ANTENNA_OFFSET = { x: -14.79, y: 0.8, width: 9.22, height: 21.6 };
// Bottom-layer "via fence" under every ESP32 perimeter pad (module-local
// coordinates, pads are 0.95 x 2.1mm on a 1.27mm pitch). Each strip is
// 0.65mm across and runs 0.55mm past both ends of its pad. The 0.62mm lanes
// left between neighbours still pass a 0.15mm trace at the router's 0.2mm
// obstacle margin, but a 0.4mm via cannot fit in a lane or sit against a pad
// end, which is exactly where the local router kept parking layer changes
// (0-0.05mm from the neighbouring pad). Row-end pads get the strip widened
// on their outer side for the same reason. The ESP32 pads are top-layer
// only, so these bottom-layer strips never touch real copper.
const ESP32_VIA_FENCE_RECTS = (() => {
const rects = [];
const rowXs = Array.from({ length: 14 }, (_, i) => -9.29 + i * 1.27);
for (const rowY of [-9, 9.0]) {
rowXs.forEach((x, i) => {
const end = i === 0 ? -1 : i === 13 ? 1 : 0;
rects.push({ x: x + end * 0.225, y: rowY, w: 0.65 + Math.abs(end) * 0.45, h: 3.2 });
});
}
// Right column: only pins 15, 16, 23, 24 still have pads (NC pads removed).
for (const y of [-5.715, -4.445, 4.445, 5.715]) {
const end = y === -5.715 ? -1 : y === 5.715 ? 1 : 0;
rects.push({ x: 8.715, y: y + end * 0.225, w: 3.2, h: 0.65 + Math.abs(end) * 0.45 });
}
return rects;
})();
var index_circuit = () => {
const mcuPos = { x: 0, y: 4.143 };
const antennaKeepout = {
pcbX: mcuPos.x + ESP32_LOCAL_ANTENNA_OFFSET.x,
pcbY: mcuPos.y + ESP32_LOCAL_ANTENNA_OFFSET.y,
width: ESP32_LOCAL_ANTENNA_OFFSET.width,
height: ESP32_LOCAL_ANTENNA_OFFSET.height,
};
return (jsxRuntime.jsxs("board", { width: "68mm", height: "116mm", layers: 2, title: "ESP32 GPS + Cellular Tracker",
// 0.2/0.4mm vias clear JLCPCB's 2-layer minimum (0.15/0.25mm). The
// DRC floor below is JLCPCB's published 0.10mm (4 mil) trace/space
// for 1oz 2-layer; the <autoroutingphase> asks the router for more
// than that because it lands short of whatever margin it is given in
// dense spots. (autorouter.traceClearance is not read by the local
// router, so it is not used here.)
pcbStyle: { viaHoleDiameter: "0.2mm", viaPadDiameter: "0.4mm" }, minTraceToPadEdgeClearance: "0.1mm", minViaEdgeToPadEdgeClearance: "0.1mm", children: [jsxRuntime.jsx("autoroutingphase", { minTraceToPadEdgeClearance: "0.2mm", minViaEdgeToPadEdgeClearance: "0.25mm" }), jsxRuntime.jsx("hole", { name: "H1", diameter: "3.2mm", pcbX: -31, pcbY: 55 }), jsxRuntime.jsx("hole", { name: "H2", diameter: "3.2mm", pcbX: 31, pcbY: 55 }), jsxRuntime.jsx("hole", { name: "H3", diameter: "3.2mm", pcbX: -31, pcbY: -55 }), jsxRuntime.jsx("hole", { name: "H4", diameter: "3.2mm", pcbX: 31, pcbY: -55 }), jsxRuntime.jsx("net", { name: "GND", isGroundNet: true }), jsxRuntime.jsx("net", { name: "USB5V", isPowerNet: true }), jsxRuntime.jsx("net", { name: "VBAT", isPowerNet: true }), jsxRuntime.jsx("net", { name: "VSYS", isPowerNet: true }), jsxRuntime.jsx("net", { name: "MCU_PWR", isPowerNet: true }), jsxRuntime.jsx("net", { name: "V3V3", isPowerNet: true }), jsxRuntime.jsx("schematicsection", { name: "Usb", displayName: "USB-C Charging Input" }), jsxRuntime.jsx("schematicsection", { name: "Charger", displayName: "TP4056 Li-ion Charger" }), jsxRuntime.jsx("schematicsection", { name: "Protection", displayName: "Battery + Protection (DW01A/FS8205A)" }), jsxRuntime.jsx("schematicsection", { name: "Regulator", displayName: "3.3V Regulation" }), jsxRuntime.jsx("schematicsection", { name: "Mcu", displayName: "ESP32-WROOM-32E" }), jsxRuntime.jsx("schematicsection", { name: "BootReset", displayName: "Boot / Reset / UART Header" }), jsxRuntime.jsx("schematicsection", { name: "Gps", displayName: "GPS (ATGM336H, UART)" }), jsxRuntime.jsx("schematicsection", { name: "Cellular", displayName: "SIM800C GSM/GPRS + SIM Card" }), jsxRuntime.jsx("schematicsection", { name: "SimCard", displayName: "Nano-SIM Holder" }), jsxRuntime.jsx(TYPE_C_16PIN_2MD_073, { name: "J1", pcbX: 0, pcbY: 53.4, pcbRotation: 180, schSectionName: "Usb", schX: SEC.Usb.x, schY: SEC.Usb.y }), jsxRuntime.jsx("resistor", { name: "R1", resistance: "5.1k", footprint: "0402", pcbX: -4.359, pcbY: 38.114, schSectionName: "Usb", schX: SEC.Usb.x - 4, schY: SEC.Usb.y - 4 }), jsxRuntime.jsx("resistor", { name: "R2", resistance: "5.1k", footprint: "0402", pcbX: 4.359, pcbY: 38.114, schSectionName: "Usb", schX: SEC.Usb.x + 4, schY: SEC.Usb.y - 4 }), jsxRuntime.jsx("trace", { from: "J1.VBUS1", to: "net.USB5V", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "J1.VBUS2", to: "net.USB5V", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "J1.GND1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.GND2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.SHELL1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.SHELL2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.SHELL3", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.SHELL4", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.CC1", to: "R1.pin1" }), jsxRuntime.jsx("trace", { from: "R1.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J1.CC2", to: "R2.pin1" }), jsxRuntime.jsx("trace", { from: "R2.pin2", to: "net.GND" }), jsxRuntime.jsx(TP4056_42_ESOP8, { name: "U1", pcbX: 0, pcbY: 33.142, schSectionName: "Charger", schX: SEC.Charger.x, schY: SEC.Charger.y + 0.78 }), jsxRuntime.jsx("capacitor", { name: "C1", maxDecouplingTraceLength: "30mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: -6.974, pcbY: 33.142, schSectionName: "Charger", schX: SEC.Charger.x - 5, schY: SEC.Charger.y }), jsxRuntime.jsx("capacitor", { name: "C2", maxDecouplingTraceLength: "30mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: 6.974, pcbY: 33.142, schSectionName: "Charger", schX: SEC.Charger.x + 5, schY: SEC.Charger.y }), jsxRuntime.jsx("resistor", { name: "R3", resistance: "2.4k", footprint: "0402", pcbX: 0, pcbY: 28.171, schSectionName: "Charger", schX: SEC.Charger.x, schY: SEC.Charger.y - 4 }), jsxRuntime.jsx("led", { name: "LED1", color: "red", footprint: "0603", schRotation: 90, pcbX: -12.205, pcbY: 29.829, schSectionName: "Charger", schX: SEC.Charger.x - 9, schY: SEC.Charger.y - 1 }), jsxRuntime.jsx("resistor", { name: "R4", resistance: "330", footprint: "0402", schOrientation: "vertical", pcbX: -12.205, pcbY: 33.142, schSectionName: "Charger", schX: SEC.Charger.x - 9, schY: SEC.Charger.y - 4 }), jsxRuntime.jsx("led", { name: "LED2", color: "green", footprint: "0603", schRotation: 90, pcbX: 12.205, pcbY: 29.829, schSectionName: "Charger", schX: SEC.Charger.x + 9, schY: SEC.Charger.y - 1 }), jsxRuntime.jsx("resistor", { name: "R5", resistance: "330", footprint: "0402", schOrientation: "vertical", pcbX: 12.205, pcbY: 33.142, schSectionName: "Charger", schX: SEC.Charger.x + 9, schY: SEC.Charger.y - 4 }), jsxRuntime.jsx("trace", { from: "net.USB5V", to: "U1.VCC", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "U1.GND", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U1.CE", to: "net.USB5V" }), jsxRuntime.jsx("trace", { from: "U1.TEMP", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U1.EP", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U1.BAT", to: "net.VBAT", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "U1.PROG", to: "R3.pin1" }), jsxRuntime.jsx("trace", { from: "R3.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C1.pin1", to: "net.USB5V", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C1.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C2.pin1", to: "net.VBAT", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C2.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U1.N_CHRG", to: "LED1.cathode" }), jsxRuntime.jsx("trace", { from: "LED1.anode", to: "R4.pin1" }), jsxRuntime.jsx("trace", { from: "R4.pin2", to: "net.USB5V" }), jsxRuntime.jsx("trace", { from: "U1.N_STDBY", to: "LED2.cathode" }), jsxRuntime.jsx("trace", { from: "LED2.anode", to: "R5.pin1" }), jsxRuntime.jsx("trace", { from: "R5.pin2", to: "net.USB5V" }), jsxRuntime.jsx(B2B_PH_K_S_LF__SN_, { name: "J2", pcbX: -31.385, pcbY: 18.229, pcbRotation: 180, schSectionName: "Protection", schX: SEC.Protection.x - 9, schY: SEC.Protection.y }), jsxRuntime.jsx("silkscreentext", { text: "+", pcbX: -32.385, pcbY: 20.6, fontSize: "1.2mm" }), jsxRuntime.jsx("silkscreentext", { text: "-", pcbX: -30.385, pcbY: 20.6, fontSize: "1.2mm" }), jsxRuntime.jsx(DW01A, { name: "U2", pcbX: -24.5, pcbY: 19.886, schSectionName: "Protection", schX: SEC.Protection.x, schY: SEC.Protection.y + 4 }), jsxRuntime.jsx(FS8205A, { name: "U3", pcbX: -23.6, pcbY: 13.258, schSectionName: "Protection", schX: SEC.Protection.x, schY: SEC.Protection.y - 2 }), jsxRuntime.jsx("resistor", { name: "R17", resistance: "100", footprint: "0402", pcbX: -27.026, pcbY: 22.371, schSectionName: "Protection", schX: SEC.Protection.x - 4, schY: SEC.Protection.y + 7 }), jsxRuntime.jsx("capacitor", { name: "C18", maxDecouplingTraceLength: "12mm", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: -27.5, pcbY: 25.0, schSectionName: "Protection", schX: SEC.Protection.x - 4, schY: SEC.Protection.y + 4 }), jsxRuntime.jsx("resistor", { name: "R18", resistance: "1k", footprint: "0402", pcbX: -27.026, pcbY: 16.571, schSectionName: "Protection", schX: SEC.Protection.x - 4, schY: SEC.Protection.y - 2 }), jsxRuntime.jsx("trace", { from: "J2.pin1", to: "net.VBAT", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "J2.pin2", to: "U3.S1", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "J2.pin2", to: "U2.GND" }), jsxRuntime.jsx("trace", { from: "U3.S2", to: "net.GND", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "U3.pin2", to: "U3.pin5" }), jsxRuntime.jsx("trace", { from: "U3.G1", to: "U2.OD" }), jsxRuntime.jsx("trace", { from: "U3.G2", to: "U2.OC" }), jsxRuntime.jsx("trace", { from: "net.VBAT", to: "R17.pin1" }), jsxRuntime.jsx("trace", { from: "R17.pin2", to: "U2.VCC" }), jsxRuntime.jsx("trace", { from: "U2.VCC", to: "C18.pin1" }), jsxRuntime.jsx("trace", { from: "C18.pin2", to: "U2.GND" }), jsxRuntime.jsx("trace", { from: "U2.VM", to: "R18.pin1" }), jsxRuntime.jsx("trace", { from: "R18.pin2", to: "net.GND" }), jsxRuntime.jsx(AO3401A, { name: "Q3", pcbX: -17.436, pcbY: 23.2, schSectionName: "Protection", schX: SEC.Protection.x + 6, schY: SEC.Protection.y + 5 }), jsxRuntime.jsx("resistor", { name: "R19", resistance: "100k", footprint: "0402", pcbX: -13.513, pcbY: 23.2, schSectionName: "Protection", schX: SEC.Protection.x + 10, schY: SEC.Protection.y + 5 }), jsxRuntime.jsx(MSK12C02, { name: "SW1", pcbX: -15, pcbY: 19.9, schSectionName: "Protection", schX: SEC.Protection.x + 8, schY: SEC.Protection.y }), jsxRuntime.jsx("trace", { from: "net.VBAT", to: "Q3.S", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "Q3.D", to: "net.VSYS", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "Q3.G", to: "R19.pin1" }), jsxRuntime.jsx("trace", { from: "R19.pin2", to: "net.VBAT" }), jsxRuntime.jsx("trace", { from: "Q3.G", to: "SW1.pin2" }), jsxRuntime.jsx("trace", { from: "SW1.pin1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "SW1.pin4", to: "net.GND" }), jsxRuntime.jsx(AP2112K_3_3TRG1, { name: "U4", pcbX: 22.667, pcbY: 18.229, schSectionName: "Regulator", schX: SEC.Regulator.x, schY: SEC.Regulator.y + 0.48 }), jsxRuntime.jsx("capacitor", { name: "C3", maxDecouplingTraceLength: "15mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: 18.308, pcbY: 18.229, schSectionName: "Regulator", schX: SEC.Regulator.x - 4, schY: SEC.Regulator.y }), jsxRuntime.jsx("capacitor", { name: "C4", maxDecouplingTraceLength: "15mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: 27.026, pcbY: 18.229, schSectionName: "Regulator", schX: SEC.Regulator.x + 4, schY: SEC.Regulator.y }), jsxRuntime.jsx("trace", { from: "net.MCU_PWR", to: "U4.VIN", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "U4.EN", to: "net.MCU_PWR" }), jsxRuntime.jsx("trace", { from: "U4.GND", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U4.VOUT", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C3.pin1", to: "net.MCU_PWR", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C3.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C4.pin1", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C4.pin2", to: "net.GND" }), jsxRuntime.jsx(SS14L, { name: "D1", pcbX: 31.385, pcbY: 24.029, pcbRotation: 90, schSectionName: "Regulator", schX: SEC.Regulator.x + 12, schY: SEC.Regulator.y + 6 }), jsxRuntime.jsx(AO3401A, { name: "Q5", pcbX: 31.385, pcbY: 11.6, schSectionName: "Regulator", schX: SEC.Regulator.x + 12, schY: SEC.Regulator.y - 2 }), jsxRuntime.jsx("resistor", { name: "R22", resistance: "100k", footprint: "0402", pcbX: 27, pcbY: 24.029, schSectionName: "Regulator", schX: SEC.Regulator.x + 8, schY: SEC.Regulator.y + 6 }), jsxRuntime.jsx("trace", { from: "net.USB5V", to: "D1.anode", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "D1.cathode", to: "net.MCU_PWR", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "Q5.D", to: "net.VSYS", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "Q5.S", to: "net.MCU_PWR", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "Q5.G", to: "net.USB5V" }), jsxRuntime.jsx("trace", { from: "R22.pin1", to: "net.USB5V" }), jsxRuntime.jsx("trace", { from: "R22.pin2", to: "net.GND" }), jsxRuntime.jsx("resistor", { name: "R6", resistance: "100k", footprint: "0402", pcbX: 22.667, pcbY: 14.5, schSectionName: "Regulator", schX: SEC.Regulator.x, schY: SEC.Regulator.y - 5 }), jsxRuntime.jsx("resistor", { name: "R7", resistance: "100k", footprint: "0402", pcbX: 22.667, pcbY: 9.942, schSectionName: "Regulator", schX: SEC.Regulator.x, schY: SEC.Regulator.y - 8 }), jsxRuntime.jsx("capacitor", { name: "C19", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: 22.667, pcbY: 6.629, schSectionName: "Regulator", schX: SEC.Regulator.x + 4, schY: SEC.Regulator.y - 8 }), jsxRuntime.jsx("trace", { from: "net.VSYS", to: "R6.pin1", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "R6.pin2", to: "R7.pin1" }), jsxRuntime.jsx("trace", { from: "R6.pin2", to: "C19.pin1" }), jsxRuntime.jsx("trace", { from: "R6.pin2", to: "U5.IO35" }), jsxRuntime.jsx("trace", { from: "C19.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "R7.pin2", to: "net.GND" }), jsxRuntime.jsx("keepout", { shape: "rect", layer: "top", ...antennaKeepout }), jsxRuntime.jsx("keepout", { shape: "rect", layer: "bottom", ...antennaKeepout }), ESP32_VIA_FENCE_RECTS.map((r) => (jsxRuntime.jsx("keepout", { shape: "rect", layer: "bottom", pcbX: mcuPos.x + r.x, pcbY: mcuPos.y + r.y, width: r.w, height: r.h }))), jsxRuntime.jsx(ESP32_WROOM_32E_N4, { name: "U5", pcbX: mcuPos.x, pcbY: mcuPos.y, schHeight: 4.6, schSectionName: "Mcu", schX: SEC.Mcu.x, schY: SEC.Mcu.y }), jsxRuntime.jsx("capacitor", { name: "C5", maxDecouplingTraceLength: "15mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: -5.23, pcbY: -8, schSectionName: "Mcu", schX: SEC.Mcu.x - 6, schY: SEC.Mcu.y - 6 }), jsxRuntime.jsx("capacitor", { name: "C6", maxDecouplingTraceLength: "30mm", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: -2.615, pcbY: -8, schSectionName: "Mcu", schX: SEC.Mcu.x - 6, schY: SEC.Mcu.y - 8 }), jsxRuntime.jsx("trace", { from: "U5.3V3", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "U5.GND1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U5.GND2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U5.GND3", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U5.GND4", to: "net.GND" }), jsxRuntime.jsx("via", { pcbX: 1.3, pcbY: 2.6, connectsTo: "net.GND" }), jsxRuntime.jsx("trace", { from: "C5.pin1", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C5.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C6.pin1", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "C6.pin2", to: "net.GND" }), jsxRuntime.jsx("resistor", { name: "R8", resistance: "10k", footprint: "0402", pcbX: 15.692, pcbY: 7.458, schSectionName: "BootReset", schX: SEC.BootReset.x - 4, schY: SEC.BootReset.y + 8.58 }), jsxRuntime.jsx("capacitor", { name: "C7", capacitance: "1uF", footprint: "0402", schOrientation: "vertical", pcbX: 19.18, pcbY: 7.458, schSectionName: "BootReset", schX: SEC.BootReset.x, schY: SEC.BootReset.y + 8 }), jsxRuntime.jsx(TS_1187A_B_A_B, { name: "SW2", pcbX: 15.692, pcbY: 12.429, schSectionName: "BootReset", schX: SEC.BootReset.x - 4, schY: SEC.BootReset.y + 4 }), jsxRuntime.jsx("trace", { from: "U5.EN", to: "R8.pin2" }), jsxRuntime.jsx("trace", { from: "U5.EN", to: "C7.pin1" }), jsxRuntime.jsx("trace", { from: "U5.EN", to: "SW2.pin1" }), jsxRuntime.jsx("trace", { from: "R8.pin1", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "C7.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "SW2.pin2", to: "net.GND" }), jsxRuntime.jsx("resistor", { name: "R9", resistance: "10k", footprint: "0402", pcbX: 15.692, pcbY: 0.829, schSectionName: "BootReset", schX: SEC.BootReset.x - 4, schY: SEC.BootReset.y - 4 }), jsxRuntime.jsx(TS_1187A_B_A_B, { name: "SW3", pcbX: 15.692, pcbY: -4.142, schSectionName: "BootReset", schX: SEC.BootReset.x - 4, schY: SEC.BootReset.y - 8 }), jsxRuntime.jsx("trace", { from: "U5.IO0", to: "R9.pin2" }), jsxRuntime.jsx("trace", { from: "U5.IO0", to: "SW3.pin1" }), jsxRuntime.jsx("trace", { from: "R9.pin1", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "SW3.pin2", to: "net.GND" }), jsxRuntime.jsx("led", { name: "LED3", color: "blue", footprint: "0603", schRotation: -90, pcbX: 27, pcbY: 12.429, schSectionName: "BootReset", schX: SEC.BootReset.x + 6.5, schY: SEC.BootReset.y + 8 }), jsxRuntime.jsx("resistor", { name: "R10", resistance: "330", footprint: "0402", schOrientation: "vertical", pcbX: 27, pcbY: 15.0, schSectionName: "BootReset", schX: SEC.BootReset.x + 6.5, schY: SEC.BootReset.y + 10 }), jsxRuntime.jsx("trace", { from: "U5.IO2", to: "R10.pin1" }), jsxRuntime.jsx("trace", { from: "R10.pin2", to: "LED3.anode" }), jsxRuntime.jsx("trace", { from: "LED3.cathode", to: "net.GND" }), jsxRuntime.jsx("pinheader", { name: "J6", pinCount: 6, gender: "male", pitch: "2.54mm", footprint: "pinrow6",
// Pinned to a genuine 1x6 single-row header; the parts engine
// otherwise auto-picks C492420, which is a 2x3 double-row part.
supplierPartNumbers: { jlcpcb: ["C492405"] }, showSilkscreenPinLabels: true, pinLabels: ["GND", "TXD0", "RXD0", "IO0", "EN", "3V3"], pcbX: 15.692, pcbY: -9.942, schSectionName: "BootReset", schX: SEC.BootReset.x - 4, schY: SEC.BootReset.y - 14 }), jsxRuntime.jsx("trace", { from: "J6.pin1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J6.pin2", to: "U5.TXD0" }), jsxRuntime.jsx("trace", { from: "J6.pin3", to: "U5.RXD0" }), jsxRuntime.jsx("trace", { from: "J6.pin4", to: "U5.IO0" }), jsxRuntime.jsx("trace", { from: "J6.pin5", to: "U5.EN" }), jsxRuntime.jsx("trace", { from: "J6.pin6", to: "net.V3V3" }), jsxRuntime.jsx(ATGM336H_5N31, { name: "U6", pcbX: -20.924, pcbY: -16.571, schSectionName: "Gps", schX: SEC.Gps.x, schY: SEC.Gps.y }), jsxRuntime.jsx("capacitor", { name: "C8", maxDecouplingTraceLength: "15mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: -28.3, pcbY: -8.3, schSectionName: "Gps", schX: SEC.Gps.x + 6, schY: SEC.Gps.y }), jsxRuntime.jsx("capacitor", { name: "C9", maxDecouplingTraceLength: "15mm", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: -23.8, pcbY: -9.942, schSectionName: "Gps", schX: SEC.Gps.x + 6, schY: SEC.Gps.y + 2 }), jsxRuntime.jsx("resistor", { name: "R11", resistance: "10k", footprint: "0402", pcbX: -32.5, pcbY: -7.458, schSectionName: "Gps", schX: SEC.Gps.x - 6, schY: SEC.Gps.y + 3 }), jsxRuntime.jsx("trace", { from: "U6.VCC", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "U6.VBAT", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "U6.GND1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U6.GND2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U6.GND3", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C8.pin1", to: "net.V3V3", thickness: "0.4mm" }), jsxRuntime.jsx("trace", { from: "C8.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C9.pin1", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "C9.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U6.NRESET", to: "R11.pin2" }), jsxRuntime.jsx("trace", { from: "R11.pin1", to: "net.V3V3" }), jsxRuntime.jsx("trace", { from: "U6.TXD", to: "U5.IO16" }), jsxRuntime.jsx("trace", { from: "U6.RXD", to: "U5.IO17" }), jsxRuntime.jsx("trace", { from: "U6.1PPS", to: "U5.IO34" }), jsxRuntime.jsx("trace", { from: "U6.ON_OFF", to: "U5.IO25" }), jsxRuntime.jsx("inductor", { name: "L1", inductance: "27nH", footprint: "0402",
// The manual draws 47nH here. Murata LQG15HS27NJ02D is used instead:
// its SRF (~1.7GHz) sits just above GPS L1 (1.575GHz), where its
// impedance peaks, so it is a better choke at the signal frequency
// than the 47nH 0402 parts JLCPCB stocks (SRF ~1.0-1.3GHz, i.e.
// already capacitive at L1). Either passes the antenna's DC bias.
supplierPartNumbers: { jlcpcb: ["C12669"] }, schOrientation: "vertical", pcbX: -19.5, pcbY: -23.614, schSectionName: "Gps", schX: SEC.Gps.x + 3, schY: SEC.Gps.y - 5 }), jsxRuntime.jsx("capacitor", { name: "C20", capacitance: "100pF", footprint: "0402",
// C0G/NP0 dielectric matters on an RF line; pinned to the JLCPCB
// basic 100pF 50V C0G part so the parts engine can't swap in X7R.
supplierPartNumbers: { jlcpcb: ["C1546"] }, pcbX: -24.224, pcbY: -23.6, pcbRotation: 90, schOrientation: "vertical", schSectionName: "Gps", schX: SEC.Gps.x - 3, schY: SEC.Gps.y - 3 }), jsxRuntime.jsx(BWU_FL_IPEX1, { name: "J3", pcbX: -23.8, pcbY: -26.4, pcbRotation: 270, schSectionName: "Gps", schX: SEC.Gps.x - 3, schY: SEC.Gps.y - 6 }), jsxRuntime.jsx("trace", { from: "U6.RF_IN", to: "C20.pin1", thickness: "0.5mm" }), jsxRuntime.jsx("trace", { from: "C20.pin2", to: "J3.pin1", thickness: "0.5mm" }), jsxRuntime.jsx("trace", { from: "U6.VCC_RF", to: "L1.pin1" }), jsxRuntime.jsx("trace", { from: "L1.pin2", to: "J3.pin1" }), jsxRuntime.jsx("trace", { from: "J3.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J3.pin3", to: "net.GND" }), jsxRuntime.jsx(SIM800C, { name: "U7", pcbX: 12.205, pcbY: -31.486, schHeight: 5.2, schSectionName: "Cellular", schX: SEC.Cellular.x, schY: SEC.Cellular.y }), jsxRuntime.jsx("trace", { from: "U7.GND1", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND3", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND4", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND5", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND6", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND7", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND8", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND9", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.GND10", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.VBAT1", to: "net.VSYS", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "U7.VBAT2", to: "net.VSYS", thickness: "0.6mm" }), jsxRuntime.jsx("capacitor", { name: "C10", maxDecouplingTraceLength: "15mm", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: 17.0, pcbY: -19.5, schSectionName: "Cellular", schX: SEC.Cellular.x - 8, schY: SEC.Cellular.y }), jsxRuntime.jsx("capacitor", { name: "C11", maxDecouplingTraceLength: "25mm", capacitance: "10uF", footprint: "0805", schOrientation: "vertical", pcbX: 13.513, pcbY: -19.5, schSectionName: "Cellular", schX: SEC.Cellular.x - 8, schY: SEC.Cellular.y + 2 }), jsxRuntime.jsx(ERR1AM102F12OT, { name: "C12", polarized: true, maxDecouplingTraceLength: "15mm", pcbX: 27, pcbY: -18, schOrientation: "vertical", schSectionName: "Cellular", schX: SEC.Cellular.x - 8, schY: SEC.Cellular.y - 3 }), jsxRuntime.jsx("trace", { from: "C10.pin1", to: "net.VSYS" }), jsxRuntime.jsx("trace", { from: "C10.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C11.pin1", to: "net.VSYS", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "C11.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "C12.pos", to: "net.VSYS", thickness: "0.6mm" }), jsxRuntime.jsx("trace", { from: "C12.neg", to: "net.GND", thickness: "0.6mm" }), jsxRuntime.jsx("capacitor", { name: "C13", maxDecouplingTraceLength: "15mm", capacitance: "10uF", footprint: "0603", schOrientation: "vertical", pcbX: 23.9, pcbY: -31.071, schSectionName: "Cellular", schX: SEC.Cellular.x + 8, schY: SEC.Cellular.y + 4 }), jsxRuntime.jsx("trace", { from: "U7.VRTC", to: "C13.pin1" }), jsxRuntime.jsx("trace", { from: "C13.pin2", to: "net.GND" }), jsxRuntime.jsx("transistor", { name: "Q1", type: "npn", footprint: "sot23", supplierPartNumbers: { jlcpcb: ["C20526"] }, pcbX: 7, pcbY: -17, schSectionName: "Cellular", schX: SEC.Cellular.x + 8, schY: SEC.Cellular.y }), jsxRuntime.jsx("resistor", { name: "R12", resistance: "10k", footprint: "0402", pcbX: 3, pcbY: -19.5, schSectionName: "Cellular", schX: SEC.Cellular.x + 4, schY: SEC.Cellular.y - 0.675 }), jsxRuntime.jsx("resistor", { name: "R13", resistance: "10k", footprint: "0402", pcbX: 11, pcbY: -17, schSectionName: "Cellular", schX: SEC.Cellular.x + 8, schY: SEC.Cellular.y + 2 }), jsxRuntime.jsx("trace", { from: "U5.IO4", to: "R12.pin1" }), jsxRuntime.jsx("trace", { from: "R12.pin2", to: "Q1.base" }), jsxRuntime.jsx("trace", { from: "Q1.emitter", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "Q1.collector", to: "U7.PWRKEY" }), jsxRuntime.jsx("trace", { from: "U7.PWRKEY", to: "R13.pin1" }), jsxRuntime.jsx("trace", { from: "R13.pin2", to: "net.VSYS" }), jsxRuntime.jsx("trace", { from: "U7.STATUS", to: "U5.IO32" }), jsxRuntime.jsx("trace", { from: "U7.UART1_RI", to: "U5.IO33" }), jsxRuntime.jsx("resistor", { name: "R14", resistance: "10k", footprint: "0402", pcbX: 15, pcbY: -17, schSectionName: "Cellular", schX: SEC.Cellular.x - 2, schY: SEC.Cellular.y + 6 }), jsxRuntime.jsx("resistor", { name: "R15", resistance: "33k", footprint: "0402", pcbX: 19, pcbY: -17, schSectionName: "Cellular", schX: SEC.Cellular.x - 2, schY: SEC.Cellular.y + 9 }), jsxRuntime.jsx("trace", { from: "U5.IO27", to: "R14.pin1" }), jsxRuntime.jsx("trace", { from: "R14.pin2", to: "R15.pin1" }), jsxRuntime.jsx("trace", { from: "R14.pin2", to: "U7.UART1_RXD" }), jsxRuntime.jsx("trace", { from: "R15.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "U7.UART1_TXD", to: "U5.IO26" }), jsxRuntime.jsx("transistor", { name: "Q2", type: "npn", footprint: "sot23", supplierPartNumbers: { jlcpcb: ["C20526"] }, pcbX: 0.872, pcbY: -31.486, schSectionName: "Cellular", schX: SEC.Cellular.x + 11, schY: SEC.Cellular.y - 4.5 }), jsxRuntime.jsx("resistor", { name: "R20", resistance: "2.2k", footprint: "0402", pcbX: 2.18, pcbY: -28.586, schSectionName: "Cellular", schX: SEC.Cellular.x + 7.5, schY: SEC.Cellular.y - 5.175 }), jsxRuntime.jsx("led", { name: "LED4", color: "green", footprint: "0603", schRotation: 90, pcbX: 0.872, pcbY: -34.8, schSectionName: "Cellular", schX: SEC.Cellular.x + 14, schY: SEC.Cellular.y - 4.5 }), jsxRuntime.jsx("resistor", { name: "R16", resistance: "330", footprint: "0402", schOrientation: "vertical", pcbX: 0.872, pcbY: -37.286, schSectionName: "Cellular", schX: SEC.Cellular.x + 14, schY: SEC.Cellular.y - 2 }), jsxRuntime.jsx("trace", { from: "U7.NETLIGHT", to: "R20.pin1" }), jsxRuntime.jsx("trace", { from: "R20.pin2", to: "Q2.base" }), jsxRuntime.jsx("trace", { from: "Q2.emitter", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "Q2.collector", to: "LED4.cathode" }), jsxRuntime.jsx("trace", { from: "LED4.anode", to: "R16.pin1" }), jsxRuntime.jsx("trace", { from: "R16.pin2", to: "net.VSYS" }), jsxRuntime.jsx("resistor", { name: "R21", resistance: "0", footprint: "0402", pcbX: 22.8, pcbY: -27.384, schSectionName: "Cellular", schX: SEC.Cellular.x + 11, schY: SEC.Cellular.y }), jsxRuntime.jsx(BWU_FL_IPEX1, { name: "J5", pcbX: 26.5, pcbY: -27.384, schSectionName: "Cellular", schX: SEC.Cellular.x + 14, schY: SEC.Cellular.y }), jsxRuntime.jsx("trace", { from: "U7.GSM_ANT", to: "R21.pin1", thickness: "0.5mm" }), jsxRuntime.jsx("trace", { from: "R21.pin2", to: "J5.pin1", thickness: "0.5mm" }), jsxRuntime.jsx("trace", { from: "J5.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J5.pin3", to: "net.GND" }), jsxRuntime.jsx(SMN_304, { name: "J4", pcbX: 12.205, pcbY: -49.8, schSectionName: "SimCard", schX: SEC.SimCard.x, schY: SEC.SimCard.y }), jsxRuntime.jsx("keepout", { shape: "rect", layer: "bottom", pcbX: 12.205 - 5.39 - 0.825, pcbY: -49.8, width: 0.65, height: 4.4 }), jsxRuntime.jsx("keepout", { shape: "rect", layer: "bottom", pcbX: 12.205 + 5.39 + 0.825, pcbY: -49.8, width: 0.65, height: 4.4 }), jsxRuntime.jsx("capacitor", { name: "C14", maxDecouplingTraceLength: "20mm", capacitance: "100nF", footprint: "0402", schOrientation: "vertical", pcbX: 19.615, pcbY: -52.614, schSectionName: "SimCard", schX: SEC.SimCard.x - 5, schY: SEC.SimCard.y + 2 }), jsxRuntime.jsx("capacitor", { name: "C15", capacitance: "33pF", footprint: "0402", supplierPartNumbers: { jlcpcb: ["C1562"] }, schOrientation: "vertical", pcbX: 1.743, pcbY: -51.371, schSectionName: "SimCard", schX: SEC.SimCard.x - 2, schY: SEC.SimCard.y + 2 }), jsxRuntime.jsx("capacitor", { name: "C16", capacitance: "33pF", footprint: "0402", supplierPartNumbers: { jlcpcb: ["C1562"] }, schOrientation: "vertical", pcbX: 22.667, pcbY: -48.058, schSectionName: "SimCard", schX: SEC.SimCard.x + 2, schY: SEC.SimCard.y + 2 }), jsxRuntime.jsx("capacitor", { name: "C17", capacitance: "33pF", footprint: "0402", supplierPartNumbers: { jlcpcb: ["C1562"] }, schOrientation: "vertical", pcbX: 22.667, pcbY: -51.371, schSectionName: "SimCard", schX: SEC.SimCard.x + 5, schY: SEC.SimCard.y + 2 }), jsxRuntime.jsx("trace", { from: "J4.VCC", to: "U7.SIM_VDD" }), jsxRuntime.jsx("trace", { from: "J4.VCC", to: "C14.pin1" }), jsxRuntime.jsx("trace", { from: "C14.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J4.RST", to: "U7.SIM_RST" }), jsxRuntime.jsx("trace", { from: "J4.RST", to: "C15.pin1" }), jsxRuntime.jsx("trace", { from: "C15.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J4.CLK", to: "U7.SIM_CLK" }), jsxRuntime.jsx("trace", { from: "J4.CLK", to: "C16.pin1" }), jsxRuntime.jsx("trace", { from: "C16.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J4.C7", to: "U7.SIM_DATA" }), jsxRuntime.jsx("trace", { from: "J4.C7", to: "C17.pin1" }), jsxRuntime.jsx("trace", { from: "C17.pin2", to: "net.GND" }), jsxRuntime.jsx("trace", { from: "J4.GND", to: "net.GND" }), jsxRuntime.jsx("copperpour", { connectsTo: "net.GND", layer: "top", clearance: "0.2mm" }), jsxRuntime.jsx("copperpour", { connectsTo: "net.GND", layer: "bottom", clearance: "0.2mm" })] }));
};
module.exports = index_circuit;