Universal ESP32 Control PCB

Job ID: 39828910

Budget: €30 – €250 EUR

Task: PCB Design for Control Board
Goal

Design a universal control PCB with:

ESP32 DevKitC (plugged into a 2×19 pin socket, microUSB remains on the DevKit board),

Tuya WBR3 module (UART communication, 3.3 V supply),

8× relay outputs (5 V),

5 sensor inputs connected via 4-pin connectors (VCC=5 V, GND, SIG1, SIG2),

RGB LED strip control (PWM color + brightness),

buzzer,

button on the PCB edge,

12 V DC input with onboard step-down to 5 V.

Placement of inputs and outputs

Relays: outputs routed to 5.08 mm screw terminals on the sides of the PCB.

Sensors: connected via 4-pin connectors on the opposite edge of the PCB.

Power (12 V input): separate screw terminal.

RGB LED strip: 4-pin connector (12V, R, G, B).

Button: on the PCB edge, with an additional 2-pin header for external button connection.

Functional blocks
1. ESP32 DevKitC

2×19 pin socket (2.54 mm pitch) for ESP32 DevKitC module.

MicroUSB, RESET, BOOT remain on the DevKit board itself.

2. Communication

Tuya WBR3 module, UART connection with ESP32:

ESP32 GPIO16 (RX), GPIO17 (TX).

Powered from 3.3 V (from ESP32 or from dedicated LDO).

3. Relays

8× 5 V relays, driven through transistor drivers (ULN2803 or similar).

Outputs to screw terminals on the side of the PCB.

Functions labeled as RELAY1 through RELAY8.

4. Sensors (5 units)

Each sensor uses a 4-pin connector: VCC (5 V), GND, SIG1, SIG2.
All signals going into ESP32 must be reduced to 3.3 V (voltage divider or level shifter).

Sensor 1: SIG1=GPIO27, SIG2=GPIO32

Sensor 2: SIG1=GPIO33, SIG2=GPIO34

Sensor 3: SIG1=GPIO35, SIG2=GPIO36

Sensor 4: SIG1=GPIO39, SIG2=GPIO0

Sensor 5: SIG1=GPIO2, SIG2=GPIO15

(Note: GPIO0 and GPIO2 are strap pins – only safe to use as inputs, must not interfere with ESP32 boot process.)

5. RGB LED strip

Connector: 4-pin (12V, R, G, B).

Controlled by 3× MOSFET (low-side switching).

ESP32 PWM outputs: R=GPIO12, G=GPIO13, B=GPIO15.

6. Others

Buzzer: GPIO4.

Button: GPIO14 (INPUT_PULLUP → GND).

ESP32 Pin Mapping

UART: RX=GPIO16, TX=GPIO17

Relays (8×): GPIO18, GPIO19, GPIO21, GPIO22, GPIO23, GPIO5, GPIO25, GPIO26

Sensors (5×):

Sensor 1: GPIO27, GPIO32

Sensor 2: GPIO33, GPIO34

Sensor 3: GPIO35, GPIO36

Sensor 4: GPIO39, GPIO0

Sensor 5: GPIO2, GPIO15

RGB: R=GPIO12, G=GPIO13, B=GPIO15

Buzzer: GPIO4

Button: GPIO14

Power

12 V DC input via 5.08 mm screw terminal.

Step-down 12 V → 5 V (3 A) to supply ESP32, WBR3, relays, and sensors.

3.3 V for WBR3 – either from ESP32 or a small onboard LDO.

GND plane and wide traces for 12 V and 5 V rails.

Deliverables

Schematic (PDF + editable project in KiCad/EasyEDA).

PCB layout + Gerber + BOM (parts preferably from TME.eu).

3D STEP model of the PCB with all components.

Silkscreen with clear labels for terminals, connectors, polarity, and functions.