# Custom Programmer for ESP32 Using USB-C USB3.0 Pins ## Description NOT RECOMMENDED FOR NEW DESIGNS. It did not work during testing. Please refer to [my other project that worked successfully.](https://www.flux.ai/markwuflux/ch340c-esp32-programmer-v2-bottom-layer) Using this programmer to exploit the extra pins given by a USB 3.0 Superspeed cable. By doing so, you can program an ESP32 without adding a programmer port. NOT Compliant with USB-C Standard ## Project Details - **Owner:** markwuflux - **Created:** 9/26/2023 - **Last Updated:** 2/19/2024 - **Visibility:** Public - **Stars:** 2 - **Forks:** 1 - **Copies:** 1 ## Key Components ### IC1 — [CH340C](https://www.flux.ai/vasyl/ch340c~qf3.md) - Manufacturer Part Number: CH340C - Datasheet URL: https://datasheet.lcsc.com/szlcsc/Jiangsu-Qin-Heng-CH340C_C84681.pdf - Part Type: Integrated Circuit - Manufacturer Name: Wah **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] ### J1 — [TYPE-C-31-M-12](https://www.flux.ai/vasyl/type-c-31-m-12~tm.md) - Manufacturer Name: ROHS - Part Type: Connector - Manufacturer Part Number: TYPE-C-31-M-12 - Datasheet URL: https://www.snapeda.com/parts/TYPE-C-31-M-12/HRO%20Electronics%20Co.,%20Ltd./datasheet/ **Pins:** - CC1 [pin A5] - CC2 [pin B5] - DN1 [pin A7] - DN2 [pin B7] - DP1 [pin A6] - DP2 [pin B6] - GND [pin A1B12] - GND__1 [pin B1A12] - SBU1 [pin A8] - SBU2 [pin B8] - SHIELD [pin S1] - SHIELD__1 [pin S2] - SHIELD__2 [pin S3] - SHIELD__3 [pin S4] - VBUS [pin A4B9] - VBUS__1 [pin B4A9] ### J2 — [1054500101](https://www.flux.ai/adrian95/1054500101~2d.md) - Manufacturer Part Number: 1054500101 - Datasheet URL: https://www.molex.com/pdm_docs/ps/PS-105448-001.pdf - Part Type: Connector - Manufacturer Name: Molex - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - CC1 [pin A5] - CC2 [pin B5] - D1- [pin A7] - D1+ [pin A6] - D2- [pin B7] - D2+ [pin B6] - GND1 [pin A1] - GND2 [pin A12] - GND3 [pin B1] - GND4 [pin B12] - RX1- [pin B10] - RX1+ [pin B11] - RX2- [pin A10] - RX2+ [pin A11] - SBU1 [pin A8] - SBU2 [pin B8] - SHIELD [pin S3] - SHIELD [pin S2] - SHIELD [pin S4] - SHIELD [pin S1] - TX1- [pin A3] - TX1+ [pin A2] - TX2- [pin B3] - TX2+ [pin B2] - VBUS1 [pin A4] - VBUS2 [pin A9] - VBUS3 [pin B4] - VBUS4 [pin B9] ### Q1 — [BC817-40](https://www.flux.ai/jharwinbarrozo/bc817-40~09.md) - Manufacturer Part Number: BC817-40 - Part Type: Transistor - Datasheet URL: https://datasheet.lcsc.com/lcsc/1811061725_ST-Semtech-BC817-40_C85078.pdf - Manufacturer Name: ST SEMTECH **Pins:** - B - C - E ### Q2 — [BC817-40](https://www.flux.ai/jharwinbarrozo/bc817-40~09.md) - Manufacturer Name: ST SEMTECH - Part Type: Transistor - Datasheet URL: https://datasheet.lcsc.com/lcsc/1811061725_ST-Semtech-BC817-40_C85078.pdf - Manufacturer Part Number: BC817-40 **Pins:** - B - C - E ### RX — [0603 Orange LED](https://www.flux.ai/corynrobinson/0603-orange-led~sq.md) - Manufacturer Part Number: APT1608SECK - Part Type: LED - Forward Voltage: 2.1V - Manufacturer Name: Kingbright - Current: 20mA - Datasheet URL: https://www.kingbrightusa.com/images/catalog/SPEC/APT1608SECK.pdf **Pins:** - A [pin 2] - K [pin 1] ### TX — [0603 Orange LED](https://www.flux.ai/corynrobinson/0603-orange-led~sq.md) - Current: 20mA - Datasheet URL: https://www.kingbrightusa.com/images/catalog/SPEC/APT1608SECK.pdf - Part Type: LED - Manufacturer Part Number: APT1608SECK - Forward Voltage: 2.1V - Manufacturer Name: Kingbright **Pins:** - A [pin 2] - K [pin 1] ### U1 — [AP2112K-3.3TRG1](https://www.flux.ai/vasyl/ap2112k-33trg1~qk.md) - Manufacturer Part Number: AP2112K-3.3TRG1 - Datasheet URL: https://www.diodes.com/assets/Datasheets/AP2112.pdf - Part Type: Integrated Circuit - Manufacturer Name: Diodes Incorporated **Pins:** - EN [pin 3] - GND [pin 2] - VIN [pin 1] - VOUT [pin 5] *The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/markwuflux/custom-programmer-for-esp32-using-usb-c-usb3p0-pins~a5](https://www.flux.ai/markwuflux/custom-programmer-for-esp32-using-usb-c-usb3p0-pins~a5).* --- *Generated from [https://www.flux.ai/markwuflux/custom-programmer-for-esp32-using-usb-c-usb3p0-pins~a5](https://www.flux.ai/markwuflux/custom-programmer-for-esp32-using-usb-c-usb3p0-pins~a5)*