

ESP32-Industrial Sensor Controller
A custom, compact PCB designed in KiCad 10 for an ESP32-based industrial temperature and humidity monitoring system.
- Size
- 50.5 × 38.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 15
- Nets
- 40
- Pads
- 113
- Tracks, vias
- 183, 7
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 21 Oct 2026
- Updated
- 22 Oct 2026
Overview
ESP32-Industrial Sensor Controller is an open-source printed circuit board by Eswar-426, from the Eswar-426/ESP32-Industrial-Sensor-Controller repository on GitHub. It is a 2-layer board of 50.5 × 38.5 mm with 15 parts on 40 nets, routed with 183 tracks and 7 vias.
It is built around the ESP32-WROOM-32, AP2112K-3.3 and SHT31-DIS-F. Its parts include 5 capacitors, 4 resistors, 3 ICs, 2 switches and 1 connector. It belongs with the sensors and measurement boards and the ESP32 boards of this library.
Main components
3ESP32-WROOM-32
SMD,18x25.5mm-40℃~+85℃ -98dBm 2.4GHz 2.7V~3.6V 20dBm Bluetooth4.2 ESP32-DOWDQ6 UART、SDIO、SPI、I2C、GPIO、PWM、ADC、DAC SMD,25.5x18mm WiFi Modules ROHSEspressif SystemsWiFi ModulesAP2112K-3.3
SOT253.3V 600mA CMOS Low Dropout Linear Regulator with EnableDiodes IncorporatedUncategorisedSHT31-DIS-F
DFN-8DFN-8 New Arrivals ROHSSensirionUncategorised
README
README.mdESP32 Industrial Sensor Controller
A custom, compact PCB designed in KiCad 10 for an ESP32-based industrial temperature and humidity monitoring system.
The board integrates an ESP32-WROOM-32 Wi-Fi & Bluetooth microcontroller module, a high-precision Sensirion SHT31-DIS digital environmental sensor, and an ultra-low-dropout AP2112K-3.3 voltage regulator. It features dedicated I²C bus pull-up resistors, hardware Reset and Boot mode tactile switches, comprehensive decoupling networks, and an FTDI-compatible 6-pin UART interface for flashing and serial telemetry.
3D Board Visualization
Features
- Microcontroller Core: Espressif ESP32-WROOM-32 dual-core Tensilica Xtensa 32-bit LX6 processor with 2.4 GHz Wi-Fi (802.11 b/g/n) and Bluetooth v4.2 BR/EDR & BLE.
- Precision Environmental Sensing: Sensirion SHT31-DIS digital sensor connected via I²C bus (
IO21SDA,IO22SCL) providing ±2% RH accuracy and ±0.2 °C temperature accuracy. - Power Management: AP2112K-3.3 high-current (600 mA), low-noise, ultra-low dropout (LDO) linear regulator delivering stable 3.3 V with dedicated input and output decoupling.
- Programming & Serial Telemetry: 6-pin 2.54 mm pitch UART programming header with direct connections to ESP32 UART0 (
TXD0/RXD0), power rails, reset line (EN), and boot line (IO0). - Tactile User Controls: Dedicated tactile buttons for hardware Reset (
SW1, EN to GND) and Boot Mode configuration (SW2, IO0 to GND) with external 10 kΩ pull-ups. - Robust Signal & Power Integrity: 2-layer PCB stackup with continuous front (F.Cu) and back (B.Cu) ground copper pours, low-inductance thermal via stitching, and dedicated 0603 decoupling capacitors per IC.
- Antenna Keepout Compliance: Clean PCB cutout/keepout area maintained around the ESP32 onboard PCB trace antenna to preserve RF performance.
Schematic Overview
Complete schematic available in vector format: docs/schematic.pdf.
Bill of Materials (BOM)
| Reference | Value / Part | Package / Footprint | Description | Qty |
|---|---|---|---|---|
| U1 | AP2112K-3.3 | SOT-23-5 | 600 mA Low-Dropout Linear Voltage Regulator (5V to 3.3V) | 1 |
| U2 | ESP32-WROOM-32 | SMD-38 (18×25.5 mm) | Espressif Dual-Core Wi-Fi & BLE Microcontroller Module | 1 |
| U3 | SHT31-DIS | DFN-8 (2.5×2.5 mm) | Sensirion High-Precision Digital Humidity & Temperature Sensor | 1 |
| C1, C2 | 1 µF | 0603 SMD | Input & Output Filter Capacitors for AP2112K LDO | 2 |
| C3 | 10 µF | 0603 SMD | Bulk Decoupling Capacitor for ESP32 3V3 Rail | 1 |
| C4, C5 | 100 nF | 0603 SMD | High-Frequency Bypass / Decoupling Capacitors (ESP32 & SHT31) | 2 |
| R2, R3 | 10 kΩ | 0603 SMD | Pull-Up Resistors for Boot (IO0) and Reset (EN) Lines | 2 |
| R4, R5 | 4.7 kΩ | 0603 SMD | Dedicated Pull-Up Resistors for I²C Bus (SDA, SCL) | 2 |
| SW1, SW2 | SPST Push Button | SMD (KMS2xxGP) | Reset (EN) and Boot (IO0) Control Switches | 2 |
| J1 | 6-Pin Header (1x06) | PinHeader 2.54 mm Vertical | UART Interface for Flashing, Debugging & Power Input | 1 |
Machine-readable CSV format: docs/bom.csv.
Pinout & Interface Mapping
Programming Header (J1)
| Pin | Net Name | Target Device / Pin | Function / Usage |
|---|---|---|---|
| 1 | GND | System Ground Plane | Common ground connection |
| 2 | +3.3V | System 3.3 V Power Rail | 3.3 V supply rail / power monitor |
| 3 | RXD0 | ESP32 RXD0 (GPIO3) | Serial receive from external USB-UART programmer (TX) |
| 4 | TXD0 | ESP32 TXD0 (GPIO1) | Serial transmit to external USB-UART programmer (RX) |
| 5 | EN | ESP32 EN (Chip Enable) | Hardware reset control (active low) |
| 6 | IO0 | ESP32 GPIO0 (Boot) | Flashing bootloader entry (pull low during reset) |
Internal Sensor Bus (I²C)
| Sensor Pin | Net Name | ESP32 Pin | Function |
|---|---|---|---|
| Pin 1 (SDA) | IO21 | GPIO21 | I²C Serial Data (pulled up by R4: 4.7 kΩ to 3.3V) |
| Pin 4 (SCL) | IO22 | GPIO22 | I²C Serial Clock (pulled up by R5: 4.7 kΩ to 3.3V) |
Design Tools & Verification
Design Suite
- KiCad Version: 10.0.7
- Schematic Capture: KiCad Eeschema
- Layout & Routing: KiCad PCB Editor
- Verification Engine: KiCad Electrical Rules Checker (ERC) & Design Rules Checker (DRC)
Verification Methodology & Results
- Schematic ERC: Passed with 0 errors and 0 warnings. Power flags, pin types, and hierarchical nets verified. See docs/erc-report.rpt.
- PCB DRC: The report shows zero violations and zero unconnected items under the current project-specific constraints. The settings include a 0.20 mm minimum through-hole drill and a 0.175 mm minimum hole clearance. These settings do not guarantee manufacturer acceptance or fabrication readiness. Review the switch footprint clearances and confirm the design rules with the selected manufacturer before fabrication. See docs/drc-report.rpt.
- Copper Architecture: Solid ground polygon pours on both Top (F.Cu) and Bottom (B.Cu) layers, interconnected with stitching vias for thermal relief and return path continuity.
- RF Best Practices: Antenna trace area isolated from underlying copper planes and external routing traces to ensure signal integrity.
Verification Scope Notice:
The hardware design has been fully verified using KiCad's Electrical Rules Check (ERC) and PCB Design Rules Check (DRC). Physical board fabrication, component assembly, firmware flashing, and hardware bench testing have not yet been performed. Fabrication constraints must be re-checked against specific manufacturer design capabilities (e.g., JLCPCB, PCBWay) prior to ordering production panels.
Repository Structure
ESP32-Industrial-Sensor-Controller/
├── README.md # Project overview, schematics, BOM, and pinout
├── .gitignore # KiCad lock, backup, and local cache filters
├── hardware/
│ ├── ESP32_Industrial_Sensor_Controller.kicad_pro # KiCad 10 project file
│ ├── ESP32_Industrial_Sensor_Controller.kicad_sch # Complete schematic file
│ └── ESP32_Industrial_Sensor_Controller.kicad_pcb # Fully routed PCB layout
└── docs/
├── schematic.pdf # Printable vector schematic
├── schematic.png # High-resolution schematic diagram
├── pcb-3d.png # High-definition 3D raytraced board render
├── pcb-front.png # 3D top render
├── pcb-back.png # 3D bottom render
├── bom.csv # Detailed Bill of Materials
├── drc-report.rpt # KiCad PCB DRC report (0 errors)
└── erc-report.rpt # KiCad Schematic ERC report (0 errors)Future Improvements & Roadmap
- Order prototype batch from PCB manufacturer (e.g., JLCPCB / PCBWay) with stencil.
- Surface-mount component soldering & hot-air rework validation.
- Power supply rail validation under dynamic RF load (3.3 V line ripple and thermal dissipation).
- ESP-IDF / Arduino C++ firmware development:
- SHT31 driver implementation with periodic temperature and relative humidity polling.
- Non-volatile storage (NVS) Wi-Fi credential provisioning.
- MQTT / HTTP telemetry publishing to cloud/local IoT dashboards (Home Assistant, AWS IoT, or ThingsBoard).
- ESP32 Deep Sleep power optimization.
- Enclosure design (3D printed industrial DIN-rail or wall-mount enclosure).
Project Status
PCB Design Completed — Prototype fabrication and hardware validation pending.
Author
Kanchi Eswar Ram kumar (@Eswar-426)
ECE Undergraduate | Class of 2026
Developed as a PCB design and embedded systems portfolio project.
Parts
15| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 10kΩ | Resistor_SMD:R_0603_1608Metric | R2, R3 |
| 2 | 1µF | Capacitor_SMD:C_0603_1608Metric | C1, C2 |
| 2 | 4.7 kΩ | Resistor_SMD:R_0603_1608Metric | R4, R5 |
| 1 | 100 nF | Capacitor_SMD:C_0603_1608Metric | C4 |
| 1 | 100nF | Capacitor_SMD:C_0603_1608Metric | C5 |
| 1 | 10µF | Capacitor_SMD:C_0603_1608Metric | C3 |
| 1 | AP2112K-3.3 | Package_TO_SOT_SMD:SOT-23-5 | U1 |
| 1 | Conn_01x06 | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J1 |
| 1 | ESP32-WROOM-32 | RF_Module:ESP32-WROOM-32 | U2 |
| 1 | Reset button | Button_Switch_SMD:SW_SPST_CK_KMS2xxGP | SW1 |
| 1 | SHT31-DIS | Sensor_Humidity:Sensirion_DFN-8-1EP_2.5x2.5mm_P0.5mm_EP1.1x1.7mm | U3 |
| 1 | boot button | Button_Switch_SMD:SW_SPST_CK_KMS2xxGP | SW2 |
Similar boards
- 4 layers20.3 × 40 mm

- 4 layers220 × 160 mm

Broadcast rtu carrier rev a
Gecesars/01-plataforma-telemetria-broadcast
Plataforma Unificada de Telemetria de Estação Transmissora — baseline técnica e acompanhamento do projeto
94 parts - 2 layers22 × 153.3 mm

- 2 layers94.5 × 64 mm

Air monitor
kaushalch1/air-monitor
this is a portable air quality monitoring device designed to measure particulate matter and environmental conditions in real time.
42 parts - 2 layers60 × 170 mm

Thermometer R005
IgorCulafic/PCBSmith
Open-source PCB design tools: KiCad workflows, automatic routing, design review and laser fabrication. Working toward plain-language circuit-to-board design.
64 partsAGPL-3.0 - 2 layers27 × 40.3 mm

Panasonic aircon
jnicolson/panasonic_ac_wifi
Module to interface with the CN-CNT port on Panasonic airconditioner units
26 parts28CC-BY-4.0 - 2 layers68 × 81.5 mm

- 2 layers137.5 × 51 mm

Questions
How big is the ESP32-Industrial Sensor Controller PCB?
It measures 50.5 × 38.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the ESP32-Industrial Sensor Controller use?
15 parts, built around the ESP32-WROOM-32, AP2112K-3.3 and SHT31-DIS-F. 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-Industrial Sensor Controller KiCad files?
From the Eswar-426/ESP32-Industrial-Sensor-Controller repository on GitHub, at the commit this page was made from: the board is hardware/ESP32_Industrial_Sensor_Controller.kicad_pcb and its schematic hardware/ESP32_Industrial_Sensor_Controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the ESP32-Industrial Sensor Controller design in my own project?
Its repository states no licence, so its author keeps all rights: ask Eswar-426 before reusing the design.