ESP32 Relay Board AC/DC WiFi Bluetooth 4-Channel ESP32-WROOM Smart Home Module

$65.20 Inc. GST
You save (%)

Quantity Discount (%) Price
1 $65.20
2 - 4 5 % $61.94
5 - 9 7.5 % $60.31
10 - 19 10 % $58.68
20 - 49 12.5 % $57.05
50 - 99 15 % $55.42
100+ 17.5 % $53.79

Description

ESP32_Relay_X4_V1.1 – AC/DC Powered WiFi + Bluetooth BLE 4-Channel Relay Development Board with ESP32-WROOM-32E | AuscomTech

Upgrade your automation, IoT, and smart-home projects with the ESP32_Relay_X4_V1.1, a powerful 4-channel relay development board featuring the proven ESP32-WROOM-32E module.
With AC or DC power input, built-in WiFi + Bluetooth BLE, fully broken-out GPIO headers, isolated relay outputs, and support for ESPHome, Tasmota, Arduino, and MicroPython — this board is a complete smart-control solution.

Perfect for Home Assistant, industrial automation, IoT installations, smart appliances, remote switching, and maker projects.


🔥 Key Features

🧠 ESP32-WROOM-32E Onboard (4MB Flash)

  • Dual-core 32-bit processor

  • WiFi 802.11 b/g/n + Bluetooth BLE

  • Supports OTA firmware updates

  • Stable, mature module ideal for long-term deployment


🔌 Wide AC/DC Power Input

  • AC 220V direct power

  • DC 5–30V wide-range power input

  • No external power supply or buck converter required

  • Safe, convenient installation inside electrical panels & enclosures


🔗 4-Channel Relay Outputs

Each relay supports AC and DC loads — ideal for:

✔ Smart lighting
✔ Pumps & solenoids
✔ Fans & HVAC control
✔ Gate motors
✔ Contactors
✔ Industrial automation output

Relay terminals:

  • NC (Normally Closed): connected to COM until relay is activated

  • COM (Common)

  • NO (Normally Open): becomes connected to COM when relay is activated


🧰 GPIO & UART Fully Broken Out

All relevant ESP32 GPIO pins are available for expansion:

  • Sensors

  • Displays

  • UART/I²C/SPI modules

  • External inputs & buttons

Includes:
✔ IO0 programmable button
✔ RESET button

Perfect for secondary development and custom firmware.


📡 Full Wireless Capability

Supports all major ESP32 ecosystems:

  • ESPHome (Home Assistant)

  • Tasmota

  • Arduino IDE

  • MicroPython

  • ESP-IDF

  • MQTT / Webserver / HTTP automation


🛠️ Programming & Flashing Information

⚠️ IMPORTANT — External USB-TTL Programmer Required

This board does NOT include a built-in USB-to-serial interface.
The Micro-USB port is for power only.

To upload firmware, use an external USB-UART programmer:

  • PL2303

  • CH340

  • CP2102

  • FTDI FT232RL

Connect to the 4-pin UART header:

Board Pin USB-TTL Pin
5V 5V
TXD RX
RXD TX
GND GND

🔧 How to Enter Flashing Mode

  1. Connect USB-TTL adapter wiring (5V–TX–RX–GND).

  2. Hold BOOT (IO0).

  3. Power the board by plugging in the USB-TTL to your PC.

  4. Release BOOT.

  5. Upload firmware (Arduino, ESPHome, ESPTool, etc.).

  6. Power cycle the board to run the new uploaded program.

This is the standard bootloader procedure for ESP32 modules without auto-programming.


📐 Specifications

Parameter Details
Model ESP32_Relay_X4_V1.1
Module ESP32-WROOM-32E (4MB Flash)
Relays 4-Channel isolated relay outputs
Power Input AC 220V OR DC 5–30V
Wireless WiFi 2.4GHz + Bluetooth + BLE
Programming UART (RX/TX/5V/GND header)
Buttons IO0 (BOOT), RESET
Dimensions 93 × 87 mm
Weight 92 g
Use Cases Smart home, IoT control, automation, Home Assistant, ESPHome, Tasmota

🧩 Popular Applications

🏠 Smart-Home

  • Light automation

  • ESPHome Home Assistant relays

  • Smart irrigation

  • Garage/gate control

🏭 Industrial / Workshop

  • Equipment control

  • Motor drivers (via contactors)

  • Remote relay switching

  • Automation prototypes

🤖 IoT & Embedded

  • MQTT relay controllers

  • Wireless control systems

  • Automation learning platforms


📦 Package Includes

  • 1 × ESP32_Relay_X4_V1.1 (AC/DC Powered) – 4-Channel Relay Board

  • 2 × 10-pin double-row headers

  • 1 × 6-pin single-row header

  • 1 × Single-line terminal cap

📌 Code Examples & Usage – ESP32 4-Channel Relay Board (ESP32-WROOM, AC/DC Powered)

⚠ Safety First (Please Add This)

This board can be powered from mains AC and can switch mains voltages via relays. If you’re not licensed/experienced with mains wiring, use a qualified electrician and keep everything enclosed with strain relief and fusing.


📋 Overview

This is a 4-relay ESP32 board that can be powered by AC mains or DC, and each relay has COM / NO / NC terminals available. ESPHome Devices
It exposes multiple GPIOs, and can be programmed via a UART programming header. ESPHome Devices

Relay GPIO Mapping (Internal)

  • Relay 1 → GPIO32

  • Relay 2 → GPIO33

  • Relay 3 → GPIO25

  • Relay 4 → GPIO26

  • Status LED → GPIO23 ESPHome Devices


🔌 Programming Notes (Important)

This style of board is commonly flashed using a USB-to-Serial adapter via the programming header (TX/RX/GND + GPIO0). ESPHome Devices
Also: the ESPHome device notes mention don’t power it “wrong” during programming (use the board’s proper power method after flashing). ESPHome Devices


1️⃣ Arduino IDE – Basic Relay Test (Toggle All 4)

// ESP32 4-relay board pinout:
// Relay1 GPIO32, Relay2 GPIO33, Relay3 GPIO25, Relay4 GPIO26
// Status LED GPIO23

const int RELAY1 = 32;
const int RELAY2 = 33;
const int RELAY3 = 25;
const int RELAY4 = 26;

void setup() {
Serial.begin(115200);

pinMode(RELAY1, OUTPUT);
pinMode(RELAY2, OUTPUT);
pinMode(RELAY3, OUTPUT);
pinMode(RELAY4, OUTPUT);

// Start OFF
digitalWrite(RELAY1, LOW);
digitalWrite(RELAY2, LOW);
digitalWrite(RELAY3, LOW);
digitalWrite(RELAY4, LOW);

Serial.println("ESP32 4-Relay Test Started");
}

void loop() {
digitalWrite(RELAY1, HIGH); delay(500);
digitalWrite(RELAY1, LOW); delay(200);

digitalWrite(RELAY2, HIGH); delay(500);
digitalWrite(RELAY2, LOW); delay(200);

digitalWrite(RELAY3, HIGH); delay(500);
digitalWrite(RELAY3, LOW); delay(200);

digitalWrite(RELAY4, HIGH); delay(500);
digitalWrite(RELAY4, LOW); delay(800);
}

If your relays behave “inverted” (ON when LOW), just flip the HIGH/LOW logic in the sketch.


2️⃣ Arduino IDE – Simple Wi-Fi Web Control (4 Buttons)

This creates a tiny web page on your ESP32 so you can click Relay ON/OFF.

#include <WiFi.h>
#include <WebServer.h>

const char* ssid = "YOUR_WIFI";
const char* pass = "YOUR_PASS";

const int R1 = 32, R2 = 33, R3 = 25, R4 = 26;

WebServer server(80);

void setRelay(int pin, bool on) {
digitalWrite(pin, on ? HIGH : LOW); // invert if your board is active-low
}

String page() {
String html = "<html><body><h2>ESP32 Relay Board</h2>";
html += "<p><a href='/r1/on'>R1 ON</a> | <a href='/r1/off'>R1 OFF</a></p>";
html += "<p><a href='/r2/on'>R2 ON</a> | <a href='/r2/off'>R2 OFF</a></p>";
html += "<p><a href='/r3/on'>R3 ON</a> | <a href='/r3/off'>R3 OFF</a></p>";
html += "<p><a href='/r4/on'>R4 ON</a> | <a href='/r4/off'>R4 OFF</a></p>";
html += "</body></html>";
return html;
}

void setup() {
Serial.begin(115200);

pinMode(R1, OUTPUT); pinMode(R2, OUTPUT);
pinMode(R3, OUTPUT); pinMode(R4, OUTPUT);

setRelay(R1,false); setRelay(R2,false);
setRelay(R3,false); setRelay(R4,false);

WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) { delay(300); Serial.print("."); }
Serial.println("\nWiFi connected!");
Serial.print("IP: "); Serial.println(WiFi.localIP());

server.on("/", [](){ server.send(200, "text/html", page()); });

server.on("/r1/on", [](){ setRelay(R1,true); server.send(200,"text/html",page()); });
server.on("/r1/off", [](){ setRelay(R1,false); server.send(200,"text/html",page()); });

server.on("/r2/on", [](){ setRelay(R2,true); server.send(200,"text/html",page()); });
server.on("/r2/off", [](){ setRelay(R2,false); server.send(200,"text/html",page()); });

server.on("/r3/on", [](){ setRelay(R3,true); server.send(200,"text/html",page()); });
server.on("/r3/off", [](){ setRelay(R3,false); server.send(200,"text/html",page()); });

server.on("/r4/on", [](){ setRelay(R4,true); server.send(200,"text/html",page()); });
server.on("/r4/off", [](){ setRelay(R4,false); server.send(200,"text/html",page()); });

server.begin();
}

void loop() {
server.handleClient();
}


3️⃣ ESPHome / Home Assistant (Super Popular)

If you want Home Assistant control with minimal coding, this ESPHome config is a great starting point (using the known relay GPIOs and status LED). ESPHome Devices

esphome:
name: esp32_relay_x4
friendly_name: ESP32 Relay X4

esp32:
variant: esp32
framework:
type: esp-idf

wifi:
ssid: "YOUR_WIFI"
password: "YOUR_PASS"

logger:
api:
ota:

switch:
- platform: gpio
pin: GPIO32
name: "Relay 1"
- platform: gpio
pin: GPIO33
name: "Relay 2"
- platform: gpio
pin: GPIO25
name: "Relay 3"
- platform: gpio
pin: GPIO26
name: "Relay 4"

status_led:
pin: GPIO23


🧠 Tips

  • Active-low relays: some boards energise the relay when the GPIO is LOW. If so, invert logic in Arduino code or use inverted: true in ESPHome switches.

  • Inductive loads: add proper snubbers/RC or MOVs for AC loads, and flyback protection where appropriate (many boards handle this on-board, but loads matter).

  • Don’t overload: relay contacts may be rated “10A” on paper, but real-world loads (motors, transformers, LED drivers) can have high inrush.

⚡ Inductive Loads, Electrical Noise & Relay Protection (Important)

When switching inductive loads such as:

  • Motors

  • Pumps

  • Solenoids

  • Contactors

  • Relays

  • Transformers

the collapsing magnetic field can generate high-voltage spikes (back-EMF). These spikes can:

  • Reset or crash the ESP32

  • Cause false relay triggering

  • Reduce relay contact life

  • Interfere with Wi-Fi / Bluetooth

  • Permanently damage the relay or control electronics

Even if the relay is rated correctly, noise is still a real issue.


🧯 Recommended Protection Methods

1️⃣ Flyback (Shunt) Diode – DC Loads

For DC inductive loads (12 V / 24 V pumps, solenoids, DC motors):

  • Place a diode across the load

  • Cathode (striped end) to +V

  • Anode to –V

Common diode choices:

  • 1N4007 (general purpose)

  • UF4007 (faster recovery)

  • Schottky diode (low voltage drop)

+V ----[ LOAD ]---- GND
| |
|<| |
Diode |

✔ This is the single most important protection for DC loads.


2️⃣ RC Snubber – AC Loads

For AC inductive loads (fans, pumps, motors, transformers):

  • Use an RC snubber across the load or relay contacts

  • Typical values:

    • 100 nF (0.1 µF) capacitor (X2-rated for mains)

    • 100 Ω resistor (½ W or higher)

✔ This suppresses voltage spikes and contact arcing.

⚠ Capacitor must be X2 safety rated for mains use.


3️⃣ MOV (Metal Oxide Varistor) – AC Surge Protection

  • MOVs clamp high-voltage spikes caused by switching or lightning transients

  • Place across:

    • Line ↔ Neutral

    • Or across the load

Typical examples:

  • MOV-14D471 (240 VAC systems)

  • MOV-10D471 (lighter loads)

✔ Often used together with snubbers for best protection.


4️⃣ Separate Power Supplies (Highly Recommended)

Whenever possible:

  • Power the ESP32 board from its own supply

  • Power relays and loads from a separate supply

  • Always share GND if DC supplies are separate

This prevents:

  • Brown-outs

  • Wi-Fi dropouts

  • Random resets


5️⃣ Physical Layout & Wiring Tips

✔ Keep high-voltage / high-current wiring away from ESP32 antenna
✔ Twist AC load wires to reduce radiated noise
✔ Keep relay wiring short
✔ Use ferrite beads or clamp-on ferrites on noisy cables
✔ Add a bulk capacitor (470–1000 µF) on the DC supply near the board


🧠 Symptoms of Noise Problems

  • ESP32 randomly reboots

  • Wi-Fi disconnects when relay switches

  • Relays chatter or trigger incorrectly

  • Serial output freezes

  • Only fails when load is connected

👉 These are almost always noise / inductive kickback issues, not faulty boards.

Additional information

Weight 120 g
Dimensions 260 × 160 × 20 mm

Reviews

There are no reviews yet.


Only logged in customers who have purchased this product may leave a review.