# ESP32 Dual-CAN Controller Clone
## Description
Photo-based reconstruction of an ESP32-WROOM controller board with USB-C programming, dual CAN transceivers, status LEDs, boot/reset controls, debug headers, and a provisional multi-pin harness connector.
## Project Details
- **Owner:** electrifygarage
- **Created:** 8/26/2026
- **Last Updated:** 8/26/2026
- **Visibility:** Public
- **Stars:** 1
## Key Components
### D1 — [USBLC6-2SC6](https://www.flux.ai/vasy_skral/usblc6-2sc6~g1b.md)
- Manufacturer Part Number: USBLC6-2SC6
- License: https://creativecommons.org/licenses/by/4.0/
- Part Type: Protection
- Manufacturer Name: STMicroelectronics
- Datasheet URL: https://www.st.com/content/ccc/resource/technical/document/datasheet/06/1d/48/9c/6c/20/4a/b2/CD00050750.pdf/files/CD00050750.pdf/jcr:content/translations/en.CD00050750.pdf
- LCSC Part Number: C7519
- Symbol Style: parametric-v1
- Role: Protection
- Role Details: USB 2.0 D+/D- ESD protection at connector
- Functional Group: Power & USB
**Pins:**
- GND [pin 2]
- I/O1 [pin 6]
- I/O1 [pin 1]
- I/O2 [pin 3]
- I/O2 [pin 4]
- VBUS [pin 5]
### D2 — [BAT54H,115](https://www.flux.ai/jecstronic/bat54hc115~nbk.md)
- Manufacturer Part Number: BAT54H,115
- Part Type: Diode
- Manufacturer Name: Nexperia USA Inc.
- Datasheet URL: https://assets.nexperia.com/documents/data-sheet/BAT54H.pdf
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Power ORing
- Role Details: Prevents harness source from backfeeding USB VBUS
- Functional Group: Power & USB
**Pins:**
- A [pin 2]
- K [pin 1]
### D3 — [BAT54H,115](https://www.flux.ai/jecstronic/bat54hc115~nbk.md)
- Manufacturer Part Number: BAT54H,115
- Part Type: Diode
- Manufacturer Name: Nexperia USA Inc.
- Datasheet URL: https://assets.nexperia.com/documents/data-sheet/BAT54H.pdf
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Power ORing
- Role Details: Prevents USB source from backfeeding harness 5V_IN
- Functional Group: Power & USB,External Connectors
**Pins:**
- A [pin 2]
- K [pin 1]
### H1 — [M3 Mounting Hole](https://www.flux.ai/vasyl/m3-mounting-hole~kc3.md)
- Product Info Url: https://www.mcmaster.com/screws/drive-style~torx/rounded-head-style~pan/material~steel/specifications-met~iso-7045/thread-size~m3/finish~zinc-plated/
- Role Details: Lower-left mounting hole; PCB override to NPTH
- Functional Group: External Connectors
**Pins:**
- terminal
### H2 — [M3 Mounting Hole](https://www.flux.ai/vasyl/m3-mounting-hole~kc3.md)
- Product Info Url: https://www.mcmaster.com/screws/drive-style~torx/rounded-head-style~pan/material~steel/specifications-met~iso-7045/thread-size~m3/finish~zinc-plated/
- Role Details: Lower-right mounting hole; PCB override to NPTH
- Functional Group: External Connectors
**Pins:**
- terminal
### J1 — [USB4215-03-A](https://www.flux.ai/adrian95/usb4215-03-a~kg3.md)
- Datasheet URL: https://gct.co/files/specs/usb4215-spec.pdf
- Part Type: USB C
- Symbol Style: parametric-v1
- Package or Case Code: GCT_USB4215-03-A_REVA
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Name: GCT
- Manufacturer Part Number: USB4215-03-A
- Role: USB Connector
- Role Details: USB 2.0 UFP/sink with independent CC pull-downs
- Functional Group: Power & USB
**Pins:**
- CC1 [pin A5]
- CC2 [pin B5]
- DN1 [pin A7]
- DN2 [pin B7]
- DP1 [pin A6]
- DP2 [pin B6]
- GND_A [pin A1_B12]
- GND_B [pin B1_A12]
- SBU1 [pin A8]
- SBU2 [pin B8]
- SHIELD [pin SH1]
- SHIELD [pin SH4]
- SHIELD [pin SH2]
- SHIELD [pin SH3]
- VBUS_A [pin A4_B9]
- VBUS_B [pin B4_A9]
### J2 — [Pin Header 01x12 2.54mm Horizontal](https://www.flux.ai/adrian95/pin-header-01x12-254mm-horizontal~9uu.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Part Type: Connector
- Role: PROVISIONAL_HARNESS
- Role Details: Photo-derived provisional pinout; explicitly not OEM-exact
- Functional Group: External Connectors
**Pins:**
- Pin_1 [pin 1]
- Pin_10 [pin 10]
- Pin_11 [pin 11]
- Pin_12 [pin 12]
- Pin_2 [pin 2]
- Pin_3 [pin 3]
- Pin_4 [pin 4]
- Pin_5 [pin 5]
- Pin_6 [pin 6]
- Pin_7 [pin 7]
- Pin_8 [pin 8]
- Pin_9 [pin 9]
### LED1 — [SML-LX0603GW-TR](https://www.flux.ai/adrian95/sml-lx0603gw-tr~uqi.md)
- Part Type: LED
- Datasheet URL: https://www.lumex.com/spec/SML-LX0603GW-TR.pdf
- Manufacturer Part Number: SML-LX0603GW-TR
- Manufacturer Name: Lumex Opto/Components Inc.
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Power Indicator
- Role Details: SYS_5V present indicator
- Functional Group: User Interface,Power & USB
**Pins:**
- A [pin 2]
- K [pin 1]
### LED2 — [SML-LX0603GW-TR](https://www.flux.ai/adrian95/sml-lx0603gw-tr~uqi.md)
- Part Type: LED
- Datasheet URL: https://www.lumex.com/spec/SML-LX0603GW-TR.pdf
- Manufacturer Part Number: SML-LX0603GW-TR
- Manufacturer Name: Lumex Opto/Components Inc.
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Power Indicator
- Role Details: 3V3 present indicator
- Functional Group: User Interface,Power & USB
**Pins:**
- A [pin 2]
- K [pin 1]
### LED3 — [19-217/R6C-AL1M2VY/3T](https://www.flux.ai/adrian95/19-217r6c-al1m2vy3t~vu8.md)
- Part Type: LED
- Datasheet URL: https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/840/19-217-R6C-AL1M2VY-3T.pdf
- Manufacturer Part Number: 19-217/R6C-AL1M2VY/3T
- Manufacturer Name: Everlight Electronics Co Ltd
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Status Indicator
- Role Details: ESP32 GPIO status output
- Functional Group: User Interface
**Pins:**
- A [pin 2]
- K [pin 1]
### LED4 — [19-217/R6C-AL1M2VY/3T](https://www.flux.ai/adrian95/19-217r6c-al1m2vy3t~vu8.md)
- Part Type: LED
- Datasheet URL: https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/840/19-217-R6C-AL1M2VY-3T.pdf
- Manufacturer Part Number: 19-217/R6C-AL1M2VY/3T
- Manufacturer Name: Everlight Electronics Co Ltd
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Status Indicator
- Role Details: ESP32 GPIO CAN/activity output
- Functional Group: User Interface
**Pins:**
- A [pin 2]
- K [pin 1]
### Q1 — [MMBT3904LT3G](https://www.flux.ai/lcsc/mmbt3904lt3g~77v1.md)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/1810301515_onsemi-MMBT3904LT3G_C150052.pdf
- Package or Case Code: SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR
- LCSC Part Number: C150052
- Part Type: Bipolar Transistors - BJT
- Manufacturer Name: onsemi(安森美)
- Product Info Url: https://lcsc.com/product-detail/Transistors-NPN-PNP_ON-Semicon_MMBT3904LT3G_ON-Semicon-ON-MMBT3904LT3G_C150052.html
- Manufacturer Part Number: MMBT3904LT3G
- JLCPCB Part Class: Extended Part
- Role: Auto Program
- Role Details: Handshake-controlled open-collector pull-down for ESP32 EN/GPIO0 network
- Functional Group: Power & USB,ESP32 Core
**Pins:**
- B [pin 1]
- C [pin 3]
- E [pin 2]
### Q2 — [MMBT3904LT3G](https://www.flux.ai/lcsc/mmbt3904lt3g~77v1.md)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/1810301515_onsemi-MMBT3904LT3G_C150052.pdf
- Package or Case Code: SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR
- LCSC Part Number: C150052
- Part Type: Bipolar Transistors - BJT
- Manufacturer Name: onsemi(安森美)
- Product Info Url: https://lcsc.com/product-detail/Transistors-NPN-PNP_ON-Semicon_MMBT3904LT3G_ON-Semicon-ON-MMBT3904LT3G_C150052.html
- Manufacturer Part Number: MMBT3904LT3G
- JLCPCB Part Class: Extended Part
- Role: Auto Program
- Role Details: Handshake-controlled open-collector pull-down for ESP32 EN/GPIO0 network
- Functional Group: Power & USB,ESP32 Core
**Pins:**
- B [pin 1]
- C [pin 3]
- E [pin 2]
### SW1 — [TS-1088-AR02016](https://www.flux.ai/lcsc/ts-1088-ar02016~e3n1.md)
- Manufacturer Name: XUNPU(讯普)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302330_XUNPU-TS-1088-AR02016_C720477.pdf
- JLCPCB Part Class: Extended Part
- Manufacturer Part Number: TS-1088-AR02016
- Product Info Url: https://lcsc.com/product-detail/Tactile-Switches_XUNPU-TS-1088-AR02016_C720477.html
- LCSC Part Number: C720477
- Part Type: Tactile Switches
- Package or Case Code: SW-SMD_L3.9-W3.0-P4.45
- Role: Reset Button
- Role Details: Manual ESP32 reset to GND
- Functional Group: User Interface,ESP32 Core
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
### SW2 — [TS-1088-AR02016](https://www.flux.ai/lcsc/ts-1088-ar02016~e3n1.md)
- Manufacturer Name: XUNPU(讯普)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302330_XUNPU-TS-1088-AR02016_C720477.pdf
- JLCPCB Part Class: Extended Part
- Manufacturer Part Number: TS-1088-AR02016
- Product Info Url: https://lcsc.com/product-detail/Tactile-Switches_XUNPU-TS-1088-AR02016_C720477.html
- LCSC Part Number: C720477
- Part Type: Tactile Switches
- Package or Case Code: SW-SMD_L3.9-W3.0-P4.45
- Role: Boot Button
- Role Details: Manual ESP32 download-mode selection
- Functional Group: User Interface,ESP32 Core
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
### U1 — [ESP32-WROOM-32](https://www.flux.ai/vasyl/esp32-wroom-32~siz.md)
- Manufacturer Part Number: ESP32-WROOM-32
- Datasheet URL: https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf
- Manufacturer Name: Espressif Systems
- Part Type: RF module
- Role: Main Controller
- Role Details: Original ESP32-WROOM-32; native TWAI used for CAN1
- Functional Group: ESP32 Core
**Pins:**
- EN [pin 3]
- GND [pin 38]
- GND [pin 39]
- GND [pin 1]
- GND [pin 15]
- IO0 [pin 25]
- IO12 [pin 14]
- IO13 [pin 16]
- IO14 [pin 13]
- IO15 [pin 23]
- IO16 [pin 27]
- IO17 [pin 28]
- IO18 [pin 30]
- IO19 [pin 31]
- IO2 [pin 24]
- IO21 [pin 33]
- IO22 [pin 36]
- IO23 [pin 37]
- IO25 [pin 10]
- IO26 [pin 11]
- IO27 [pin 12]
- IO32 [pin 8]
- IO33 [pin 9]
- IO34 [pin 6]
- IO35 [pin 7]
- IO4 [pin 26]
- IO5 [pin 29]
- NC [pin 32]
- RXD0/IO3 [pin 34]
- SCK/CLK [pin 20]
- SCS/CMD [pin 19]
- SDI/SD1 [pin 22]
- SDO/SD0 [pin 21]
- SENSOR_VN [pin 5]
- SENSOR_VP [pin 4]
- SHD/SD2 [pin 17]
- SWP/SD3 [pin 18]
- TXD0/IO1 [pin 35]
- VDD [pin 2]
### U2 — [CH340C](https://www.flux.ai/vasy_skral/ch340c~xfo.md)
- Manufacturer Part Number: CH340C
- Manufacturer Name: Wah
- Datasheet URL: https://datasheet.lcsc.com/szlcsc/Jiangsu-Qin-Heng-CH340C_C84681.pdf
- Part Type: Integrated Circuit
- Role: USB-UART Bridge
- Role Details: USB-C programming and serial console for ESP32
- Functional Group: Power & USB
**Pins:**
- ~CTS [pin 9]
- ~DCD [pin 12]
- ~DSR [pin 10]
- ~DTR [pin 13]
- ~RI [pin 11]
- ~RTS [pin 14]
- GND [pin 1]
- NC [pin 7]
- NC [pin 8]
- R232 [pin 15]
- RXD [pin 3]
- TXD [pin 2]
- UD- [pin 6]
- UD+ [pin 5]
- V3 [pin 4]
- VCC [pin 16]
### U3 — [SN65HVD230DR](https://www.flux.ai/adrian95/sn65hvd230dr~9gb.md)
- Symbol Style: parametric-v1
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Part Number: SN65HVD230DR
- Datasheet URL: https://www.ti.com/general/docs/suppproductinfo.tsp?distId=10&gotoUrl=https%3A%2F%2Fwww.ti.com%2Flit%2Fgpn%2Fsn65hvd230
- Manufacturer Name: Texas Instruments
- Part Type: Integrated Circuit
- Role: CAN Transceiver
- Role Details: CAN1 transceiver driven by ESP32 native TWAI
- Functional Group: CAN Channel 1
**Pins:**
- CANH [pin 7]
- CANL [pin 6]
- D [pin 1]
- GND [pin 2]
- R [pin 4]
- Rs [pin 8]
- VCC [pin 3]
- Vref [pin 5]
### U4 — [MCP2515-E-SO](https://www.flux.ai/jecstronic/mcp2515-e-so~agw.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Datasheet URL: https://ww1.microchip.com/downloads/en/DeviceDoc/MCP2515-Stand-Alone-CAN-Controller-with-SPI-20001801J.pdf
- Manufacturer Part Number: MCP2515-E/SO
- Part Type: Integrated Circuit
- Manufacturer Name: Microchip
- Role: CAN Controller
- Role Details: CAN2 controller on ESP32 VSPI bus; design deviation from uncertain photographed circuitry
- Functional Group: CAN Channel 2
**Pins:**
- ~CS [pin 16]
- ~INT [pin 12]
- ~RESET [pin 17]
- ~RX0BF [pin 11]
- ~RX1BF [pin 10]
- ~TX0RTS [pin 4]
- ~TX1RTS [pin 5]
- ~TX2RTS [pin 6]
- CLKOUT/SOF [pin 3]
- OSC1 [pin 8]
- OSC2 [pin 7]
- RXCAN [pin 2]
- SCK [pin 13]
- SI [pin 14]
- SO [pin 15]
- TXCAN [pin 1]
- VDD [pin 18]
- VSS [pin 9]
### U5 — [SN65HVD230DR](https://www.flux.ai/adrian95/sn65hvd230dr~9gb.md)
- Symbol Style: parametric-v1
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Part Number: SN65HVD230DR
- Datasheet URL: https://www.ti.com/general/docs/suppproductinfo.tsp?distId=10&gotoUrl=https%3A%2F%2Fwww.ti.com%2Flit%2Fgpn%2Fsn65hvd230
- Manufacturer Name: Texas Instruments
- Part Type: Integrated Circuit
- Role: CAN Transceiver
- Role Details: CAN2 transceiver driven by MCP2515
- Functional Group: CAN Channel 2
**Pins:**
- CANH [pin 7]
- CANL [pin 6]
- D [pin 1]
- GND [pin 2]
- R [pin 4]
- Rs [pin 8]
- VCC [pin 3]
- Vref [pin 5]
### U6 — [AMS1117-3.3](https://www.flux.ai/vasy_skral/ams1117-33~34.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Name: AMS
- Part Type: Integrated Circuit
- Symbol Style: Parametric
- Manufacturer Part Number: AMS1117-3.3
- Datasheet URL: http://www.advanced-monolithic.com/pdf/ds1117.pdf
- Role: Linear Regulator
- Role Details: 3.3 V rail sized for 650 mA peak; thermal limitation near sustained peak
- Functional Group: Power & USB
**Pins:**
- GND [pin 1]
- TAB(VOUT) [pin 4]
- VIN [pin 3]
- VOUT [pin 2]
### Y1 — [NX3225GD-8MHZ-STD-CRA-3](https://www.flux.ai/lcsc/nx3225gd-8mhz-std-cra-3~3n50.md)
- Manufacturer Part Number: NX3225GD-8MHZ-STD-CRA-3
- Package or Case Code: OSC-SMD_2P-L3.2-W2.5
- JLCPCB Part Class: Extended Part
- Operating Temperature: -40~+150℃
- Part Type: Crystals
- Manufacturer Name: NDK
- LCSC Part Number: C889706
- Load Capacitor: 8pF
- Frequency Stability: 150ppm
- Datasheet URL: https://www.lcsc.com/datasheet/C889706.pdf?spm=wm.sxq.inf.ggs&lcsc_vid=FlkNBAIDRQULVABfFAVZBgZVFVZYBgZSQ1NeBVIFQlExVlNRTlhdUV1XQVddXzsOAxUeFF5JWBYZEEoKFBINSQcJGk4dAgUUFAk%3D
- Frequency: 8MHz
- Role: Clock
- Role Details: 8 MHz MCP2515 oscillator reference, 8 pF load
- Functional Group: CAN Channel 2
**Pins:**
- 1 [pin 1]
- GND [pin 2]
*The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/electrifygarage/esp32-dual-can-controller-clone~rx](https://www.flux.ai/electrifygarage/esp32-dual-can-controller-clone~rx).*
---
*Generated from [https://www.flux.ai/electrifygarage/esp32-dual-can-controller-clone~rx](https://www.flux.ai/electrifygarage/esp32-dual-can-controller-clone~rx)*