# 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)*