Skip to the content
PCBKitNew board
2 layers30 × 60 mmESP32 kicad project, the printed circuit board in 3D

ESP32 kicad project

shyver/custom-ESP32

This project was prepared with manufacturability and assembly considerations in mind, despite being developed primarily as a portfolio and learning exercise.

Size
30 × 60 mm
Copper layers
2
Thickness
1.6 mm
Parts
68
Nets
73
Pads
276
Tracks, vias
830, 52
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
4 Feb 2026
Updated
20 Mar 2026

Overview

ESP32 kicad project is an open-source printed circuit board by shyver, from the shyver/custom-ESP32 repository on GitHub, published under the MIT licence. It is a 2-layer board of 30 × 60 mm with 68 parts on 73 nets, routed with 830 tracks and 52 vias.

It is built around the ESP32-WROOM-32E, TPS56339DDC and SS8050, with the AO3401A and SRP5030CA-4R7M among its other parts. Its parts include 24 resistors, 13 capacitors, 5 diodes, 3 ICs and 3 transistors. It belongs with the ESP32 boards of this library.

Main components

5

README

README.md

Project Overview

A compact ESP32 devboard designed for rapid prototyping of IoT devices. The board functions similarly to an ESP32 DevKit, but it's smaller, more robust, and production-ready.

Architecture

The board is composed of the following functional blocks :

  • Power subsystem : TPS56339 Buck regulator
  • Processing core : ESP32-WROOM-32E
  • Communication Interfaces : USB, UART
  • Protection : ESD, TVS, reverse polarity,
  • Supporting circuitry : reset, reboot, level shifting,

Key Engineering Decisions

  • Buck regulator instead of LDO A switching buck regulator was selected to efficiently step down USB 5 V to 3.3 V while supporting the ESP32’s peak current demands. This avoids thermal limitations and voltage droop that would occur with a linear regulator.

  • Use of an ESP32 module rather than bare IC The ESP32-WROOM module was chosen to simplify RF design, eliminate impedance-controlled antenna routing complexity, and reduce bring-up risk while maintaining full ESP32 functionality.

  • USB-C power input with CC resistors A USB-C receptacle configured for default USB power mode allows reliable 5 V sourcing without requiring USB-PD negotiation, simplifying implementation while maintaining compatibility with modern cables and chargers.

  • Dedicated USB-UART bridge for development and debugging A hardware USB-UART interface was included to provide stable flashing, logging, and recovery access independent of firmware state, improving development reliability.

  • Local decoupling strategy on all power domains Multiple ceramic capacitors of varying values were placed near power pins to handle both high-frequency switching noise and transient load current from the ESP32 and digital interfaces.

  • Compact switching loop placement in the power stage The regulator input capacitor, switching node, diode/MOSFET path, and inductor were positioned to minimize loop area and reduce switching noise and EMI risk.

  • 2-layer PCB with continuous ground plane A 2-layer stack was intentionally used to balance manufacturing cost and learning value while maintaining acceptable signal integrity through the use of a largely uninterrupted ground plane.

  • Testpoint exposure for critical rails and signals Key nets such as VIN, 3V3, EN, IO0, and UART signals were exposed to simplify probing, debugging, and bring-up validation.

  • ESD and transient protection on USB data and power lines TVS protection devices were added to improve robustness against cable hot-plugging and electrostatic discharge events.

  • Auto-programming transistor network for ESP32 boot control A transistor-based control circuit was implemented to allow automatic toggling of EN and IO0 during flashing, enabling seamless firmware upload without manual button interaction.

  • Header-based GPIO breakout for prototyping flexibility Dual 19-pin headers were used to expose ESP32 GPIOs, enabling breadboard compatibility and expansion without requiring board redesign.

  • Component package size compromise for assembly and density 0603 passives were selected as a balance between compactness and beginner-friendly solderability.

Layout Strategy

  • functional placement performed before routing, prioritized distance optimization when it's critical.
  • Power paths routed first with minimized loop area
  • continuous ground plane on the second layer, while minimizing the usage of vias.
  • sensitive and noisy circuits separated.
  • Antenna keepout respected.

Challenges & Mistakes Encountered

  • Overestimating component size during initial selection The first chosen power inductor was significantly oversized for the board constraints, forcing a late replacement and footprint update. This highlighted the importance of checking mechanical dimensions early during component selection.

  • Uncertainty around decoupling placement and power node topology Early schematic iterations created intermediate 3.3 V nodes before decoupling capacitors, raising concerns about transient stability for sensitive ESP32 pins. This led to a deeper understanding that decoupling effectiveness depends on physical placement rather than schematic net naming.

  • Confusion between hierarchical labels and true net organization Heavy use of hierarchical labels initially gave a false sense of structured connectivity while increasing mental overhead. The design process clarified when hierarchical labels are necessary versus when global or local labels improve readability.

  • Footprint discovery and verification difficulties Several selected components lacked easily accessible or clearly documented footprints, requiring manual footprint creation and verification. This emphasized the importance of mechanical datasheet review and footprint validation before committing to layout.

  • Ground routing misconceptions in 2-layer design Early routing attempts treated ground as a signal to be manually routed, resulting in unnecessary vias and complexity. The transition to a ground-plane-first mindset significantly simplified routing and improved layout quality.

  • Switching regulator layout anxiety and via usage uncertainty The switching regulator region introduced uncertainty regarding acceptable via placement and switching loop integrity. Iteration led to prioritizing loop compactness over aesthetic routing.

  • Difficulty managing dense silkscreen and annotation clutter Default silkscreen settings produced excessive overlap and visual noise, leading to many DRC warnings. This required learning that silkscreen is secondary to electrical correctness and can be selectively simplified for readability.

  • Routing congestion between ESP32 and USB-UART interface TX/RX and control signals initially became difficult to route due to placement decisions. This reinforced the importance of functional block placement before routing begins.

  • Misinterpretation of multi-pin power connectivity warnings DRC warnings regarding internally connected power pins (e.g., multiple 3.3 V or VBUS pins) caused confusion, revealing the need to explicitly short these pins externally for proper current distribution and rule compliance.

  • Balancing perfectionism with forward progress A recurring challenge was spending excessive time refining non-critical details (silkscreen, labeling, cosmetic routing). Progress improved once the focus shifted toward electrical correctness and manufacturability first.

    Manufacturing Readiness

This project was prepared with manufacturability and assembly considerations in mind, despite being developed primarily as a portfolio and learning exercise.

PCB Fabrication Readiness

  • DRC clean: The PCB passes electrical design rule checks with no critical errors. Remaining warnings are limited to silkscreen overlap and do not affect fabrication.
  • Standard 2-layer stackup: The board was designed using a conventional 2-layer stack (signal + ground plane) to ensure compatibility with low-cost fabrication services.
  • Controlled trace widths: Power traces (VBUS and 3.3 V) were routed with increased width to safely handle peak current and reduce voltage drop.
  • Ground plane implementation: A continuous ground pour was used to improve return paths, reduce noise, and simplify manufacturing.

Component Selection & Assembly

  • Widely available packages: Components were chosen in common SMD footprints (0603, 0805, SOT-23, QFN-24, ESP32 module) to simplify sourcing and assembly.
  • Module-based RF design: Using the ESP32-WROOM-32E avoids RF layout complexity and improves assembly reliability.
  • Hand-soldering feasibility: Passive sizes and component spacing allow manual assembly, making the design accessible for prototyping and small-batch builds.
  • Polarized and orientation-sensitive parts labeled: Diodes, regulators, and IC orientation were verified to reduce assembly risk.

Power Integrity & Protection

  • Input protection included: Polyfuse and TVS protection were added on VBUS to improve robustness against shorts and voltage transients.
  • Decoupling strategy: Local decoupling capacitors were placed near regulators, microcontroller supply pins, and USB-UART IC to ensure stable operation.
  • Switching regulator layout considerations: The switching loop was kept compact to reduce EMI and switching noise.

Connector & Mechanical Considerations

  • Standard 2.54 mm pin headers: Dual 19-pin headers were selected for compatibility with breadboards, jumper wires, and prototyping environments.
  • Accessible test points: Key rails and signals (VIN, 3V3, EN, TX, RX, SW) include test pads to simplify debugging and validation.
  • USB-C mechanical footprint: The USB connector footprint includes mounting pads for mechanical stability during insertion cycles.

Generated Manufacturing Outputs

The following files can be exported directly for fabrication and assembly:

  • Gerber files
  • Drill files
  • Pick-and-place (position) files
  • Bill of Materials (BOM)
  • Interactive 3D PCB view for mechanical validation

Known Limitations

  • Silkscreen density may require minor cleanup before production.
  • No panelization strategy was defined.
  • Assembly stencil optimization was not validated.
  • RF performance and EMI compliance were not experimentally verified.

Recommended Pre-Production Improvements

  • Run a second DFM review focused on solder mask clearance and paste apertures.
  • Validate USB differential impedance if targeting high-speed reliability.
  • Perform prototype bring-up with thermal observation of the regulator and inductor.
  • Add fiducials if automated assembly is planned.

Parts

68
QtyValueFootprintReferences
810kResistor_SMD:R_0603_1608MetricR6, R7, R8, R9, R10, R11, R14, R15
70.1µFCapacitor_SMD:C_0603_1608MetricC1, C3, C4, C8, C9, C10, C12
310µFCapacitor_SMD:C_0805_2012MetricC2, C5, Cin1
31kResistor_SMD:R_0603_1608MetricR16, R17, R20
3GNDTestPoint:TestPoint_Pad_D1.5mmTP2, TP3, TP4
2100kResistor_SMD:R_0603_1608MetricR23, R24
222Resistor_SMD:R_0603_1608MetricR21, R22
222µFCapacitor_SMD:C_1206_3216MetricC6, C7
247Resistor_SMD:R_0603_1608MetricR12, R13
25.0V TVSpersonal_library:SODFL1060X40ND4, D5
25.1kResistor_SMD:R_0603_1608MetricR2, R3
2Conn_01x19_PinConnector_PinHeader_1.27mm:PinHeader_1x19_P1.27mm_VerticalLEFT_GPIO1, RIGHT_GPIO1
2LEDLED_SMD:LED_0603_1608MetricD2, D3
2SS8050Package_TO_SOT_SMD:SOT-23Q2, Q3
2SW_PushButton_Switch_SMD:SW_SPST_TL3342SW1, SW2
110.0kResistor_SMD:R_0603_1608MetricR5
122.1KResistor_SMD:R_0603_1608MetricR18
130.0Resistor_SMD:R_0603_1608MetricR1
130.9kResistor_SMD:R_0603_1608MetricR4
13V3TestPoint:TestPoint_Pad_D1.5mmTP7
14.7µCapacitor_SMD:C_0805_2012MetricC11
147.5KResistor_SMD:R_0603_1608MetricR19
15.0V TVSDiode_SMD:D_SOD-123D1
1AO3401APackage_TO_SOT_SMD:SOT-23Q1
1BSTTestPoint:TestPoint_Pad_D1.5mmTP6
1CP2102N-Axx-xQFN24Package_DFN_QFN:QFN-24-1EP_4x4mm_P0.5mm_EP2.6x2.6mmU3
1Conn_01x04_PinConnector_PinHeader_1.27mm:PinHeader_1x04_P1.27mm_VerticalJ1
1ENTestPoint:TestPoint_Pad_D1.5mmTP9
1ESP32-WROOM-32ERF_Module:ESP32-WROOM-32DU2
1IO0TestPoint:TestPoint_Pad_D1.5mmTP10
1PolyfuseFuse:Fuse_1206_3216MetricF1
1RX0TestPoint:TestPoint_Pad_D1.5mmTP12
1SRP5030CA-4R7MInductor_SMD:L_Bourns_SRP5030TL1
1SWTestPoint:TestPoint_Pad_D1.5mmTP5
1TPS56339DDCPackage_TO_SOT_SMD:SOT-23-6U1
1TX0TestPoint:TestPoint_Pad_D1.5mmTP11
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_GCT_USB4110J2
1VINTestPoint:TestPoint_Pad_D1.5mmTP1
1VOUTTestPoint:TestPoint_Pad_D1.5mmTP8

Questions

How big is the ESP32 kicad project PCB?

It measures 30 × 60 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ESP32 kicad project use?

68 parts, built around the ESP32-WROOM-32E, TPS56339DDC, SS8050 and AO3401A. 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.

Where can I download the ESP32 kicad project KiCad files?

From the shyver/custom-ESP32 repository on GitHub, at the commit this page was made from: the board is kicad/ESP32_kicad_project.kicad_pcb and its schematic kicad/ESP32_kicad_project.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the ESP32 kicad project design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers90.2 × 90 mmSra dev board 2026, the printed circuit board in 3D

    Sra dev board 2026

    SRA-VJTI/sra-board-hardware-design

    ESP32-based Development Board for Robotics and Embedded Applications

    219 parts81MIT
  • 4 layers136.4 × 77.8 mmMother, the printed circuit board in 3D

    Mother

    emiirkaya/ThermovitalSync-PCB

    A PCB project for a vital monitoring-cooling device with GUI

    99 parts2MIT
  • 4 layers65.2 × 20.8 mmTWLOG v1, the printed circuit board in 3D

    TWLOG v1

    Ghous-Ali/Custom-ESP32-Dev-Board

    Custom ESP32-WROOM-32E development board | 4-layer PCB designed in KiCad 9.0.7

    47 parts1MIT
  • 2 layersEsp32-module-3.0, the printed circuit board in 3D

    Esp32-module-3.0

    sukeshraom/ESP32-WROOM-32E-development-board

    ESP32-WROOM-32E development board in the Arduino UNO form factor with USB Type-C and CH340C USB-to-UART interface. Includes complete KiCad schematic, PCB layout, and manufacturing files.

    33 parts1
  • 2 layers33.2 × 40 mmDesk Display, the printed circuit board in 3D

    Desk Display

    ANSHUMANDOCX/Desk-Display

    It is a desk display made using an E ink display.

    63 parts
  • 2 layers95.3 × 36.5 mmStudy Tracker, the printed circuit board in 3D

    Study Tracker

    ANSHUMANDOCX/ESP32-LCD-Study-Tracker

    Its a Study tracker that helps you be productive while studying along with maintaining a day wise log online on the website hosted on the ESP32 itself

    37 parts
  • 4 layers48.2 × 54.1 mmESP32, the printed circuit board in 3D

    ESP32

    apoorvarshneya/ESP32_DevBoard

    Designed and developed a custom ESP32 Development Kit from scratch using KiCad, featuring USB-to-Serial programming, 5V-to-3.3V power regulation, reset/boot buttons, LEDs, GPIO headers, and selectable power inputs.

    48 parts
  • 2 layers63 × 64.5 mmFlight1, the printed circuit board in 3D

    Flight1

    aryan-asit/flight-controller

    This is a flight controller for model rocket.

    61 parts