
Fuel center
andrew-c-tran/byteshift-fuel-center
Automotive-grade CAN module for fuel pressure, temperature and ethanol content. AEC-qualified parts, fail-safe protocol, JLCPCB-ready.

8-channel ESP32-S3 + PROFET+2 (BTS7008-1EPP) 12V load switch with 3-position ATO fuse bypass, KiCad 10, script-generated
Eswitch simple is an open-source printed circuit board by dpeckham, from the dpeckham/eswitch repository on GitHub. It is a 4-layer board of 212 × 116 mm with 230 parts on 167 nets, routed with 13,189 tracks and 1,060 vias.
It is built around the ESP32-S3-WROOM-1-N8, TPSM63603V3RDHR and BTS70041EPPXUMA1, with the BTS70021EPPXUMA1, LM74800QDRRRQ1 and SRV05-4HTG-D among its other parts. Its parts include 92 resistors, 52 capacitors, 32 diodes, 14 ICs and 12 connectors. It belongs with the ESP32 boards of this library.
212 × 116 mm, four-layer prototype with shared LM74800-Q1 AUTO/logic protection
and unconditional passive fuse-selected BYPASS. Open eswitch-simple.kicad_pro.
The release is for bare-board first articles and controlled bench testing. See BUILD.md for assembly and ordering, and PROTECTION-REVIEW.md for the engineering review and hardware tests. Neither 40 A continuous operation nor surge survival has been qualified on hardware. Firmware is not supplied.
AUTO: BATT_RAW -- F10 -- LM74800 cutoff -- shared VS -- PROFET -- ATO fuse -- LOAD
BYPASS: BATT_RAW ----------------------------------------------- ATO fuse -- LOADOne movable ATO fuse per channel, three clips. Pins 1/2/3 are PROFET_OUT/LOAD/RAW. Move the fuse between AUTO and BYPASS only with power disconnected; remove it for OFF. BYPASS/OFF disconnects the load from the PROFET output, avoiding body-diode backfeed. BYPASS has no series electronics and receives raw surges/reversed polarity.
For electronics-fault recovery, disconnect battery and USB, remove F10, move usable channel fuses to BYPASS, then restore power. All AUTO channels may be lost; no extra fixed per-channel fuses are required. Upstream-fuse selectivity and uninterrupted operation are not promised. Shared copper/terminal damage is outside the model.
F10 is a removable Mersen FR14GG50V40 with two MR14SPRING clips and M5 terminals. F9 remains the 2 A logic fuse. AUTO uses BTS7004 on CH1/2, BTS7008 on CH3–7 and BTS7002 on CH8. Maximum ATO fuses: 10/10/5/5/5/5/5/20 A. These are fuse maxima, not validated continuous channel currents. LEDs show AUTO output voltage; BYPASS current is not measured. J11–J18 pin 1 is LOAD+, pin 2 is GND. J5 is 3.3 V bench UART.
The common-source protection targets a +80 V, several-second input event using overvoltage cutoff, not fuse operation or continuous linear clamping. Nominal cutoff is 16.841 V. The four 200 V and two 60 V MOSFETs use individual gate resistors. C27 is 1 µF for the parallel-bank charge pump. The existing sense resistance values remain; R104–R804 use high-power ERJ-PA3 parts for fault-reporting dissipation.
power-copper-review.json: 60 planar power paths with explicit regression floors.power-transition-review.json: real pad-layer connections and local via arrays.protection-screen.json and sense-screen.json: reproducible static screens.out/redesign/verification.json: source hashes and checks for the packaged revision.The two-layer LOAD corridors, protected supply spine and raw BYPASS feed are
explicitly reserved before routing signals. Geometry checks are not thermal solvers.
Manufacturing uses JLC041622-3313, 2 oz inner and outer copper, filled/capped vias
and 90 Ω USB differential control. Follow JLCPCB-ORDER.txt exactly.
python3 redesign/generate.py # explicitly regenerate schematic/BOM after changes
just verify # ERC/topology/parity/geometry/physical transitions
just package # verified fabrication and portable project ZIPs
just render # board viewsThe saved PCB is authoritative. Routing scripts and out/redesign/protection-*
files are development history, not alternative ordering files. Some intermediate
candidates intentionally contain errors or disconnected nets. Do not regenerate
placement over the finished board. KiCad's Python environment is required for
layout scripts; requirements-route-gaps.txt dependencies live in out/py39.
bom-draft.csv is the fitted one-board BOM despite its historical filename.
../fab/eswitch-digikey-qty1.csv contains exact MPN/quantity upload rows, without
spares. F10 screws, washers and shims are separate mechanical purchases detailed
in BUILD.md. Stock and cart acceptance must be checked when ordering.
cost-estimate.json applies historical prices only where known and explicitly
lists unpriced parts. Its subtotal is not a complete build price or current quote.
Fabrication, assembly, hardware, shipping and taxes are excluded.
Intended installation: Vatrer 300 Ah LiFePO4, separate Victron Orion XS 12/12-70A charger branch, 40 A MRBF eswitch feed and 75 A MRBF charger feed. Use 8 AWG copper positive/negative for the 1 m battery run and 4 mm² positive/negative for the 3 m pump run. CH1/2 with a provisional 10 A fuse is appropriate for the standard 12 V Rule 1500 GPH model; confirm the actual pump. Direct-battery fault coordination, thermal limits, pump transients and surge performance remain hardware tests.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 25 | 47k | Resistor_SMD:R_0603_1608Metric | R15, R106, R108, R109, R206, R208, R209, R306, R308, R309, R406, R408, R409, R506, R508, R509 +9 |
| 24 | 4.7k | Resistor_SMD:R_0603_1608Metric | R101, R102, R105, R201, R202, R205, R301, R302, R305, R401, R402, R405, R501, R502, R505, R601 +8 |
| 16 | 10nF 50V | Capacitor_SMD:C_0805_2012Metric | C102, C103, C202, C203, C302, C303, C402, C403, C502, C503, C602, C603, C702, C703, C802, C803 |
| 16 | BAT54S | Package_TO_SOT_SMD:SOT-23 | D101, D103, D201, D203, D301, D303, D401, D403, D501, D503, D601, D603, D701, D703, D801, D803 |
| 13 | 100nF 50V | Capacitor_SMD:C_0805_2012Metric | C3, C10, C20, C21, C24, C101, C201, C301, C401, C501, C601, C701, C801 |
| 10 | 10k | Resistor_SMD:R_0603_1608Metric | R5, R6, R107, R207, R307, R407, R507, R607, R707, R807 |
| 8 | 47R | Resistor_SMD:R_0805_2012Metric | R103, R203, R303, R403, R503, R603, R703, R803 |
| 8 | 47nF 50V | Capacitor_SMD:C_0805_2012Metric | C104, C204, C304, C404, C504, C604, C704, C804 |
| 8 | GREEN | LED_SMD:LED_0603_1608Metric | D102, D202, D302, D402, D502, D602, D702, D802 |
| 8 | M3 mounting / 10mm standoff | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4, H5, H6, H7, H8 |
| 6 | 10R | Resistor_SMD:R_0805_2012Metric | R20, R21, R22, R23, R24, R25 |
| 5 | 3.3k | Resistor_SMD:R_0603_1608Metric | R304, R404, R504, R604, R704 |
| 5 | ATO 5A MAX | eswitch:Fuseholder_ATO_3pos_Keystone_3557 | F3, F4, F5, F6, F7 |
| 5 | BTS7008-1EPR | Package_SO:Infineon_PG-TSDSO-14-22 | U3, U4, U5, U6, U7 |
| 4 | 4.7uF 50V | Capacitor_SMD:C_1210_3225Metric | C1, C2, C22, C29 |
| 4 | 47uF 6.3V X7R | Capacitor_SMD:C_1210_3225Metric | C7, C8, C12, C13 |
| 4 | IPT067N20NM6 200V | Package_TO_SOT_SMD:Infineon_PG-HSOF-8-1 | Q6, Q7, Q8, Q9 |
| 3 | 2.2k | Resistor_SMD:R_0603_1608Metric | R14, R104, R204 |
| 2 | 1uF | Capacitor_SMD:C_0603_1608Metric | C11, C14 |
| 2 | 1uF 100V | Capacitor_SMD:C_1210_3225Metric | C26, C28 |
| 2 | 22R | Resistor_SMD:R_0603_1608Metric | R10, R11 |
| 2 | 49.9k 0.1% | Resistor_SMD:R_0805_2012Metric | R27, R28 |
| 2 | 5.1k | Resistor_SMD:R_0603_1608Metric | R7, R8 |
| 2 | ATO 10A MAX | eswitch:Fuseholder_ATO_3pos_Keystone_3557 | F1, F2 |
| 2 | BSC016N06NS 60V | Package_SON:Infineon_PG-TDSON-8_6.15x5.15mm | Q10, Q11 |
| 2 | BTS7004-1EPP | Package_SO:Infineon_PG-TSDSO-14-22 | U1, U2 |
| 1 | 1.2k | Resistor_SMD:R_0603_1608Metric | R804 |
| 1 | 100nF 250V | Capacitor_SMD:C_1210_3225Metric | C25 |
| 1 | 10uF 10V | Capacitor_SMD:C_0805_2012Metric | C9 |
| 1 | 16.5k | Resistor_SMD:R_0603_1608Metric | R1 |
| 1 | 1k | Resistor_SMD:R_0603_1608Metric | R9 |
| 1 | 1uF 50V | Capacitor_SMD:C_0805_2012Metric | C27 |
| 1 | 2A LOGIC | Fuse:Fuse_1206_3216Metric | F9 |
| 1 | 4.7k 2W | Resistor_THT:R_Axial_DIN0411_L9.9mm_D3.6mm_P15.24mm_Horizontal | R26 |
| 1 | 40A AUTO/LOGIC ISOLATION | eswitch:Fuse_Mersen_14x51_MR14_Wuerth_M5 | F10 |
| 1 | 51V 2% | Diode_SMD:D_SMA | D8 |
| 1 | 7.87k 0.1% | Resistor_SMD:R_0805_2012Metric | R29 |
| 1 | 82V | Diode_SMD:D_SMA | D9 |
| 1 | AGND STAR | NetTie:NetTie-2_SMD_Pad0.5mm | NT1 |
| 1 | ATO 20A MAX | eswitch:Fuseholder_ATO_3pos_Keystone_3557 | F8 |
| 1 | B360A | Diode_SMD:D_SMA | D1 |
| 1 | BATT_RAW | eswitch:ScrewTerminal_Wuerth_74650195_M5 | J2 |
| 1 | BLUE | LED_SMD:LED_0603_1608Metric | D5 |
| 1 | BOOT | Button_Switch_SMD:SW_SPST_PTS645Sx43SMTR92 | SW2 |
| 1 | BSC016N06NS | Package_SON:Infineon_PG-TDSON-8_6.15x5.15mm | Q5 |
| 1 | BTS7002-1EPP | Package_SO:Infineon_PG-TSDSO-14-22 | U8 |
| 1 | CH1 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J11 |
| 1 | CH2 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J12 |
| 1 | CH3 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J13 |
| 1 | CH4 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J14 |
| 1 | CH5 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J15 |
| 1 | CH6 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J16 |
| 1 | CH7 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J17 |
| 1 | CH8 OUTPUT | eswitch:TerminalBlock_1x02_P7.62mm_Wuerth_2184 | J18 |
| 1 | ESP32-S3-WROOM-1-N8 | eswitch:ESP32-S3-WROOM-1_Edge | U10 |
| 1 | GND | eswitch:ScrewTerminal_Wuerth_74650195_M5 | J3 |
| 1 | LM74800-Q1 | Package_SON:WSON-12-1EP_3x3mm_P0.5mm_EP1.5x2.5mm | U13 |
| 1 | LM74800-Q1 AUTO CUTOFF | Package_SON:WSON-12-1EP_3x3mm_P0.5mm_EP1.5x2.5mm | U15 |
| 1 | RESET | Button_Switch_SMD:SW_SPST_PTS645Sx43SMTR92 | SW1 |
| 1 | SMBJ150A | Diode_SMD:D_SMB | D6 |
| 1 | SMBJ33CA | Diode_SMD:D_SMB | D7 |
| 1 | SMCJ16A | Diode_SMD:D_SMC | D3 |
| 1 | SMCJ16A LOCAL TRANSIENT | Diode_SMD:D_SMC | D10 |
| 1 | SRV05-4HTG-D | Package_TO_SOT_SMD:SOT-23-6 | U11 |
| 1 | TLA431AIDBZR | Package_TO_SOT_SMD:SOT-23 | U14 |
| 1 | TPSM63603V3 | eswitch:TI_RDH0030A_TPSM63603 | U9 |
| 1 | UART | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J5 |
| 1 | USB-C | eswitch:USB4105_NPTH_0p2 | J4 |
It measures 212 × 116 mm and has 4 copper layers, 1.6 mm thick.
230 parts, built around the ESP32-S3-WROOM-1-N8, TPSM63603V3RDHR, BTS70041EPPXUMA1 and BTS70021EPPXUMA1. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the dpeckham/eswitch repository on GitHub, at the commit this page was made from: the board is redesign/eswitch-simple.kicad_pcb and its schematic redesign/eswitch-simple.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask dpeckham before reusing the design.

andrew-c-tran/byteshift-fuel-center
Automotive-grade CAN module for fuel pressure, temperature and ethanol content. AEC-qualified parts, fail-safe protocol, JLCPCB-ready.


jwatte/donkey_racing
Tools to help train for the Donkey Car machine learning racing

aliaksei-lameyka/ENKU-Base-reader
Open enku-mainboard-r0.1.kicadpro with KiCad10.0.7. Matching PCB/root schematic and power.kicadsch, mcuio.kicadsch, epdhv.kicadsch, connectors.kicadsch are canonical.

MCiuzelis/LituanicaX_AutonomousCarPlatform
Mechanical and electrical design files for the LituanicaX autonomous RC car: a Raspberry Pi 5–based robot that navigates a cone-track circuit using a depth camera.


