Skip to the content
4 layers81 × 56 mmEsp32-sensor board, the printed circuit board in 3D

4-layer ESP32-C3 IoT development board designed in KiCad 10. Onboard power management (USB-C/LiPo), environmental sensors (BME280, light, sound), and SD/flash storage.

Size
81 × 56 mm
Copper layers
4
Thickness
1.6 mm
Parts
88
Nets
75
Pads
330
Tracks, vias
628, 112
Pours
13
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
9 Sep 2026
Updated
9 Sep 2026

Overview

Esp32-sensor board is an open-source printed circuit board by pasensiojimenez, from the pasensiojimenez/esp32-sensor-board repository on GitHub. It is a 4-layer board of 81 × 56 mm with 88 parts on 75 nets, routed with 628 tracks and 112 vias.

It is built around the ESP32-C3-WROOM-02-H4, MCP73871EV and BME280, with the MAX4466EXK+T, W25Q32JVSSIQ and GSD090012SEU among its other parts. Its parts include 32 resistors, 21 capacitors, 7 ICs, 6 diodes and 5 connectors. It belongs with the sensors and measurement and power boards and the ESP32 and RISC-V boards of this library.

Main components

12

README

README.md

ESP32-C3 IoT Sensor Board

A 4-layer IoT development board built around the ESP32-C3-WROOM-02 module, featuring onboard environmental sensing, an SD card socket, USB-C programming, and LiPo battery power management. Designed entirely in KiCad 10 (schematic + PCB layout).

3D render of the ESP32-C3 IoT Sensor Board

Overview

This project is a custom IoT development board designed as a learning exercise in professional 4-layer PCB design with KiCad. It combines a Wi-Fi/BLE microcontroller, a small set of environmental sensors, onboard SD and flash storage, and a complete USB-C + LiPo power path into a single compact board.

Key Features

  • Microcontroller: ESP32-C3-WROOM-02-H4 module (RISC-V, Wi-Fi + Bluetooth LE)
  • USB-C connectivity: shielded USB-C receptacle with a CP2102N USB-to-UART bridge for programming and serial communication, plus USB ESD protection and an auto-program (auto reset/bootloader) circuit
  • Battery power management: JST-PH LiPo connector, MCP73871 battery charger with USB/battery power-path management, and charging/charged/power-good status LEDs
  • Onboard regulation: LM1117 3.3 V LDO regulator, resettable PTC fuse, and dedicated power flags/power indicator LED
  • Environmental sensing: BME280 sensor (temperature, humidity, and barometric pressure) over I2C
  • Ambient light sensing: TEMT6000 phototransistor with analog output
  • Sound sensing: MAX4466 electret microphone with adjustable-gain amplifier
  • Onboard storage: microSD card socket plus an SPI NOR flash chip (W25Q32, 32 Mbit / 4 MB)
  • Expansion headers: I2C header for an external OLED display, plus a breakout header for spare GPIOs
  • User interface: Reset and Boot buttons, status LEDs, SPI test points
  • Design for manufacturing: 4 mounting holes (2.5 mm), rounded/notched board outline, full 3D component models for realistic rendering

Communication Interfaces

InterfaceUsed for
I2CBME280 environmental sensor (onboard) and the external OLED display header
SPIShared bus between the onboard SD card socket and the onboard SPI NOR flash chip, each with its own chip-select line
UART (USB-Serial)ESP32-C3 UART routed through the CP2102N bridge to the USB-C connector, for firmware flashing and serial monitor
Analog (ADC)Ambient light sensor (TEMT6000) and microphone amplifier (MAX4466) outputs, read directly by the ESP32-C3's ADC

PCB Specifications

ParameterValue
Layers4 (F.Cu / In1.Cu / In2.Cu / B.Cu)
Board thickness1.6 mm
Board size~81 × 56 mm (custom outline, rounded corners)
Minimum track width0.2 mm
Minimum via0.5 mm pad / 0.2 mm drill
EDA toolKiCad 10

Repository Structure

text
esp32-sensor-board/
├── docs/
│   └── images/                        # Renders and reference images (e.g. 3D view)
└── hardware/
    ├── esp32-sensor-board.kicad_pro    # KiCad project file
    ├── esp32-sensor-board.kicad_sch    # Top-level schematic (power management)
    ├── esp32-c3-02.kicad_sch           # ESP32-C3 module, USB, flash & SD sheet
    ├── sensors.kicad_sch               # BME280, light and sound sensors sheet
    ├── user-interface.kicad_sch        # Buttons, LEDs and expansion headers sheet
    ├── esp32-sensor-board.kicad_pcb    # PCB layout (4-layer)
    └── libraries/                      # Project-specific symbols, footprints & 3D models

Getting Started

  1. Install KiCad 10 or later.
  2. Clone this repository:
    bash
    git clone https://github.com/pasensiojimenez/esp32-sensor-board.git
  3. Open hardware/esp32-sensor-board.kicad_pro in KiCad.
  4. All custom symbols, footprints, and 3D models are self-contained in hardware/libraries/, so the project should open with libraries already resolved.

Reference & Acknowledgements

This project is based on and follows, as its main reference, the following blog post by Tech Explorations:

Parts

88
QtyValueFootprintReferences
130.1uesp32-sensor-board:C_0805_2012MetricC1, C2, C4, C5, C6, C7, C8, C10, C13, C14, C17, C18, C20
6470esp32-sensor-board:R_0805_2012MetricR10, R18, R20, R26, R28, R31
410Kesp32-sensor-board:R_0805_2012MetricR21, R22, R27, R29
410kesp32-sensor-board:R_0805_2012MetricR3, R11, R16, R32
410uesp32-sensor-board:T491AC3, C9, C11, C12
42kesp32-sensor-board:R_0805_2012MetricR4, R9, R23, R24
450esp32-sensor-board:R_0805_2012MetricR6, R7, R12, R15
31uesp32-sensor-board:C_0805_2012MetricC15, C19, C21
3LTST-C170KRKTesp32-sensor-board:LEDC2012X120NLED1, LED2, LED4
21Mesp32-sensor-board:R_0805_2012MetricR5, R8
24k7esp32-sensor-board:R_0805_2012MetricR1, R2
25k1esp32-sensor-board:R_0805_2012MetricR25, R30
2BC817esp32-sensor-board:SOT-23Q2, Q3
2LTST-C170GKTesp32-sensor-board:LEDC2012X120NLED3, LED6
2USLPT2819DT2TResp32-sensor-board:SW_USLPT2819DT2TRS1, S2
10ZCH0110AF2Eesp32-sensor-board:FUSC3226X100NF1
1100kesp32-sensor-board:R_0805_2012MetricR13
11kesp32-sensor-board:R_0805_2012MetricR14
122k1esp32-sensor-board:R_0805_2012MetricR19
14.7uesp32-sensor-board:T491AC16
147k5esp32-sensor-board:R_0805_2012MetricR17
1B2B-PH-SM4-TBesp32-sensor-board:JST_B2B-PH-SM4-TBJ5
1BME280esp32-sensor-board:PSON65P250X250X100-8NU1
1CMC-5042PF-ACesp32-sensor-board:CUI_CMC-5042PF-ACMK1
1CP2102N-Axx-xQFN20esp32-sensor-board:SiliconLabs_QFN-20-1EP_3x3mm_P0.5mm_EP1.8x1.8mmU5
1Conn_01x04_Pinesp32-sensor-board:PinHeader_1x04_P2.54mm_VerticalJ1
1Conn_01x05_Pinesp32-sensor-board:PinHeader_1x05_P2.54mm_VerticalJ2
1ESP32-C3-WROOM-02-H4esp32-sensor-board:MODULE_ESP32-C3-WROOM-02-H4U2
1GSD090012SEUesp32-sensor-board:AMPHENOL_GSD090012SEUJ3
1LM1117MPX-3.3esp32-sensor-board:VREG_LM1117MPX-3.3VR1
1LTST-C170TBKTesp32-sensor-board:LEDC2012X120NLED5
1MAX4466EXKesp32-sensor-board:SOT65P210X110-5NU3
1MCP73871esp32-sensor-board:QFN-20-1EP_4x4mm_P0.5mm_EP2.5x2.5mmU7
1SS-52400-002esp32-sensor-board:BELFUSE_SS-52400-002J4
1TEMT6000X01esp32-sensor-board:TRANS_TEMT6000X01Q1
1Test CSesp32-sensor-board:TestPoint_Pad_D1.0mmTP1
1Test CS_SDesp32-sensor-board:TestPoint_Pad_D1.0mmTP5
1Test MISOesp32-sensor-board:TestPoint_Pad_D1.0mmTP2
1Test MOSIesp32-sensor-board:TestPoint_Pad_D1.0mmTP4
1Test SCLKesp32-sensor-board:TestPoint_Pad_D1.0mmTP3
1USBLC6-2SC6esp32-sensor-board:SOT-23-6U6
1W25Q32JVSSIQesp32-sensor-board:SOIC127P790X216-8NU4

The 84 most common of 88 parts.

Similar boards

  • 4 layers107.6 × 55 mmESP32-sensor board, the printed circuit board in 3D

    ESP32-sensor board

    chopda15/ESP32-sensor-board

    Custom-designed ESP32-C3 IoT PCB with integrated Li-ion charging, environmental sensing, data logging, USB-C connectivity, and power-efficient embedded system architecture.

    94 parts
  • 4 layers93 × 56.3 mmKicad 10 ESP32 Demo Project, the printed circuit board in 3D

    Kicad 10 ESP32 Demo Project

    Kaushalyasamantha/ESP32-C3-IoT-Dev-Board

    "A custom 4-layer IoT development board built around the ESP32-C3 in KiCad 9"

    87 parts
  • 4 layers77.3 × 48.5 mmESP32 IOT, the printed circuit board in 3D

    ESP32 IOT

    WasikeIsaac/ESP32_IOT-PCB-

    ESP32 IoT board: 4-layer KiCad PCB with USB-C, BME280, mic, audio amp, SD card, GPIO breakout. Full custom design from schematic to layout.

    87 parts1
  • 4 layers108.5 × 60 mmESP32 BME690, the printed circuit board in 3D

    ESP32 BME690

    andrewcnjuguna/ESP32_BME690

    Multi-room ESP32-S3 environmental sensor node that streams air-quality data to a Node.js server over Wi-Fi. Built around the Bosch BME690 with auxiliary light, sound and battery monitoring.

    98 parts
  • 4 layers83 × 53.5 mmESP 32 PCB Project, the printed circuit board in 3D

    ESP 32 PCB Project

    BBIkal/ESP32_IOT_Project

    A compact 4-layer mixed-signal PCB designed in KiCad 9, built around the ESP32-C3 module for IoT sensor applications.

    92 parts
  • 4 layers60.6 × 72.3 mmESP32, the printed circuit board in 3D

    ESP32

    KirtiChickamath/ESP32-IoT-sensor-board

    ESP32- IoT sensor board. 4-layer PCB, designed in KiCad . Features LiPo charging, USB-C, SPI flash, SD card, BME280, and more.

    90 parts2

Questions

How big is the Esp32-sensor board PCB?

It measures 81 × 56 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Esp32-sensor board use?

88 parts, built around the ESP32-C3-WROOM-02-H4, MCP73871EV, BME280 and MAX4466EXK+T. 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-sensor board KiCad files?

From the pasensiojimenez/esp32-sensor-board repository on GitHub, at the commit this page was made from: the board is hardware/esp32-sensor-board.kicad_pcb and its schematic hardware/esp32-c3-02.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Esp32-sensor board design in my own project?

Its repository states no licence, so its author keeps all rights: ask pasensiojimenez before reusing the design.