🇹🇳 ZTech Tunisia: Delivery to all 24 Governorates | FREE Delivery on orders over 150 TND!
Home Project Hub ESP32 Smart Home IoT Gateway & Environmental Monitor
INTERMEDIATE LEVEL PROJECT

ESP32 Smart Home IoT Gateway & Environmental Monitor

Build a complete Wi-Fi connected smart home monitoring station using ESP32, DHT22 temp/humidity sensor, OLED display, and 2-channel relay controller.

ESP32 Smart Home IoT Gateway & Environmental Monitor

Required Components List

All components needed to assemble this project

Project Guide & Description

In this project, you will assemble an IoT gateway that reads ambient temperature & humidity, displays real-time metrics on an I2C OLED screen, and toggles household AC appliances automatically via a 2-channel relay isolated module.

Arduino / C++ Source Code

#include <WiFi.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <DHT.h>

#define DHTPIN 4
#define DHTTYPE DHT22
#define RELAY1_PIN 16
#define RELAY2_PIN 17

DHT dht(DHTPIN, DHTTYPE);
Adafruit_SSD1306 display(128, 64, &Wire, -1);

void setup() {
  Serial.begin(115200);
  dht.begin();
  pinMode(RELAY1_PIN, OUTPUT);
  pinMode(RELAY2_PIN, OUTPUT);
  digitalWrite(RELAY1_PIN, HIGH);
  
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println("OLED Failed");
    for(;;);
  }
}

void loop() {
  float temp = dht.readTemperature();
  float hum = dht.readHumidity();
  
  display.clearDisplay();
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(0,0);
  display.println("ZTech ESP32 Station");
  display.setTextSize(2);
  display.setCursor(0,20);
  display.print("Temp: "); display.print(temp, 1); display.println("C");
  display.setCursor(0,42);
  display.print("Hum:  "); display.print(hum, 1); display.println("%");
  display.display();
  
  delay(2000);
}

ZTech AI Component Assistant

Ask for component recommendations, specs or project advice

AI Recommendation: