🏠 IoT Home Automation System
Pedoman Lengkap Pembuatan Smart Home dengan ESP8266, Blynk & Miniatur 3 Ruangan
Progress Pembelajaran
📋 Overview Proyek
Membuat sistem smart home automation menggunakan ESP8266 yang dapat mengontrol lampu di 3 ruangan berbeda (Kamar Tidur x2, Ruang Tamu, K. Mandi, dan Dapur) melalui aplikasi Blynk secara wireless.
Spesifikasi Sistem
🏗️ Miniatur Bangunan
- Ukuran: 45m² (sesuai denah)
- Kamar Tidur 1: 300x300 cm
- Kamar Tidur 2: 300x300 cm
- Ruang Tamu: 370x220 cm
- Kamar Mandi: 150x200 cm
- Dapur: 400x220 cm
💡 Sistem Pencahayaan
- 2x Sakelar Tunggal
- 2x Sakelar Ganda
- 4x Lampu LED (48W total)
- 1x Kotak Kontak 350VA
- Total Beban: 864 Watt
🤖 Sistem IoT
- Mikrokontroler: ESP8266
- Platform: Blynk IoT
- Koneksi: WiFi 2.4GHz
- Control: Relay 4 Channel
- Power: 5V/3.3V
📊 Fitur Sistem
- Remote control via smartphone
- Real-time monitoring
- ON/OFF scheduling
- Status feedback
- Multi-device support
Diagram Blok Sistem
🔧 Alat & Bahan
A. Komponen Elektronik
| No | Komponen | Spesifikasi | Jumlah | Keterangan |
|---|---|---|---|---|
| 1 | ESP8266 NodeMCU | V3 / CH340 | 1 unit | Mikrokontroler utama |
| 2 | Relay Module | 4 Channel 5V | 1 unit | Untuk switching lampu |
| 3 | LED / Lampu Mini | 5mm atau 3V-5V | 4-6 pcs | Simulasi lampu rumah |
| 4 | Resistor | 220Ω - 330Ω | 4-6 pcs | Pembatas arus LED |
| 5 | Power Supply | 5V 2A (Micro USB) | 1 unit | Sumber daya sistem |
| 6 | Kabel Jumper | Male-Female, Male-Male | 20 pcs | Koneksi antar komponen |
| 7 | Breadboard | 830 points | 1 unit | Prototyping (opsional) |
| 8 | Kabel USB | Micro USB | 1 unit | Programming & power |
B. Material Miniatur
| No | Material | Ukuran/Spesifikasi | Jumlah | Fungsi |
|---|---|---|---|---|
| 1 | Kardus/Triplek | Tebal 3-5mm | 2-3 lembar | Dinding & lantai miniatur |
| 2 | Styrofoam | Tebal 1-2cm | 1 lembar | Base/alas miniatur |
| 3 | Kertas Karton | Warna-warni | 5-10 lembar | Dekorasi dinding/lantai |
| 4 | Lem Tembak | - | 2-3 stick | Perekat utama |
| 5 | Lem Putih/Fox | - | 1 botol | Perekat kertas |
| 6 | Cat Akrilik | Berbagai warna | 5-7 warna | Finishing & dekorasi |
| 7 | Akrilik Bening | 2mm | Secukupnya | Jendela/pintu (opsional) |
C. Peralatan
Peralatan Elektronik
- Solder & Timah
- Tang Potong/Kupas
- Multimeter
- Obeng Set
- Laptop/PC
Peralatan Miniatur
- Cutter/Pisau
- Gunting
- Penggaris (30-50cm)
- Pensil & Spidol
- Lem Tembak Gun
Software Requirements
- Arduino IDE (v1.8.x atau v2.x)
- Blynk App (Android/iOS)
- ESP8266 Board Manager
- Blynk Library
- Driver CH340 (jika perlu)
Akun & Koneksi
- Akun Blynk (gratis)
- WiFi 2.4GHz
- Email aktif
- Smartphone
- Koneksi Internet
- Pastikan ESP8266 dalam kondisi baik (test dengan sketch blink)
- Cek voltase relay (harus 5V, bukan 12V)
- Siapkan WiFi dengan password yang diketahui
- Install semua software terlebih dahulu
- Ukur dan potong material miniatur sesuai denah
🔌 Wiring Diagram
Skema Koneksi Lengkap
Tabel Koneksi Detail
| ESP8266 Pin | → | Relay Module | → | Lampu/Ruangan |
|---|---|---|---|---|
| VIN (5V) | → | VCC | - | Power Supply +5V |
| GND | → | GND | - | Power Supply GND |
| D1 (GPIO5) | → | IN1 | → | LED 1 - Kamar Tidur 1 |
| D2 (GPIO4) | → | IN2 | → | LED 2 - Kamar Tidur 2 |
| D5 (GPIO14) | → | IN3 | → | LED 3 - Ruang Tamu |
| D6 (GPIO12) | → | IN4 | → | LED 4 - Dapur |
| - | - | COM (Common) | → | Power Supply GND |
| - | - | NO1, NO2, NO3, NO4 | → | LED+ (Anoda) |
- Relay Module: Gunakan relay 5V, bukan 12V!
- Logic Level: ESP8266 menggunakan 3.3V logic, pastikan relay kompatibel
- LED: Gunakan resistor 220Ω-330Ω untuk LED 5mm standar
- Power: Gunakan power supply minimal 2A untuk keandalan sistem
- Kabel: Gunakan kabel berkualitas, hindari kabel terlalu tipis
- Common: Sambungkan COM relay ke GND (untuk switching negatif)
Penjelasan Cara Kerja
1. Power Supply: Adaptor 5V/2A menyuplai daya ke ESP8266 dan Relay Module
2. ESP8266: Menerima perintah dari Blynk melalui WiFi, kemudian mengirim sinyal HIGH/LOW ke pin D1, D2, D5, D6
3. Relay Module: Ketika menerima sinyal HIGH, relay akan ON dan menghubungkan NO (Normally Open) dengan COM, sehingga LED menyala
4. LED/Lampu: Menyala saat relay ON, padam saat relay OFF
5. Feedback: Status LED dikirim kembali ke aplikasi Blynk untuk monitoring real-time
⚡ Skema Instalasi Listrik Sesuai Denah
Berikut adalah adaptasi dari denah instalasi listrik rumah tinggal yang Anda kirimkan dari Direktorat Jenderal Ketenagalistrikan, disesuaikan untuk sistem IoT dengan miniatur.
Layout Miniatur 3D dengan Instalasi
Spesifikasi Instalasi per Ruangan
| Ruangan | Ukuran | Lampu | Daya | Sakelar | Pin Control |
|---|---|---|---|---|---|
| Kamar Tidur 1 | 300 x 300 cm | 1 buah (LED1) | ~1W (LED) | Sakelar Tunggal | D1 (GPIO5) |
| Kamar Tidur 2 | 300 x 300 cm | 1 buah (LED2) | ~1W (LED) | Sakelar Tunggal | D2 (GPIO4) |
| Ruang Tamu | 370 x 220 cm | 1 buah (LED3) | ~1W (LED) | Sakelar Ganda | D5 (GPIO14) |
| Kamar Mandi | 150 x 200 cm | - | - | - | - |
| Dapur | 400 x 220 cm | 1 buah (LED4) | ~1W (LED) | Sakelar Ganda | D6 (GPIO12) |
Denah yang Anda kirimkan menunjukkan instalasi listrik rumah tinggal 45m² dengan beban total 864 Watt. Untuk proyek IoT ini, kita mengadaptasi layout tersebut dengan:
- Skala Miniatur: 1:20 atau 1:25 dari ukuran asli
- Lampu: Menggunakan LED 5mm (5V) sebagai pengganti lampu 48W
- Sakelar: Digantikan dengan kontrol digital via relay
- PHB: Sistem kontrol terpusat dengan ESP8266 + Relay Module
- Kabel: Menggunakan jumper wire untuk prototyping
Sistem Kelistrikan Smart Home
- Proyek ini menggunakan 5V DC, aman untuk pembelajaran
- JANGAN menghubungkan langsung ke 220V AC tanpa pengalaman
- Gunakan adaptor/power supply yang bersertifikat SNI
- Pastikan semua koneksi terisolasi dengan baik
- Jauhkan dari air dan tempat lembab
- Matikan power saat melakukan wiring/troubleshooting
💻 Programming ESP8266
1. Setup Arduino IDE
Install Arduino IDE
- Download Arduino IDE dari arduino.cc
- Pilih versi 1.8.x atau 2.x (keduanya support ESP8266)
- Install sesuai sistem operasi (Windows/Mac/Linux)
Tambahkan ESP8266 Board Manager
- Buka Arduino IDE → File → Preferences
- Di kolom "Additional Boards Manager URLs", masukkan:
- Klik OK
- Buka Tools → Board → Boards Manager
- Cari "esp8266" dan install esp8266 by ESP8266 Community
Install Library Blynk
- Buka Sketch → Include Library → Manage Libraries
- Cari "Blynk" dan install Blynk by Volodymyr Shymanskyy
- Tunggu hingga instalasi selesai
2. Kode Program Lengkap
Program ini mengontrol 4 relay untuk mengatur lampu di 4 ruangan berbeda menggunakan Blynk IoT platform.
3. Upload Program
Konfigurasi Board
- Tools → Board → ESP8266 Boards → NodeMCU 1.0 (ESP-12E Module)
- Tools → Upload Speed → 115200
- Tools → CPU Frequency → 80 MHz
- Tools → Flash Size → 4MB (FS:2MB OTA:~1019KB)
Pilih Port
- Hubungkan ESP8266 ke laptop via USB
- Tools → Port → Pilih port COM yang muncul (misal: COM3, COM5)
- Jika tidak muncul, install driver CH340
Upload
- Klik tombol Upload (→) atau Ctrl+U
- Tunggu hingga proses upload selesai
- Monitor Serial: Tools → Serial Monitor (Ctrl+Shift+M)
- Set baud rate ke 115200
- Port tidak terdeteksi: Install driver CH340/CP2102
- Failed to connect: Tekan tombol FLASH di NodeMCU saat upload
- Timeout: Periksa kabel USB, coba port USB lain
- Error compiling: Pastikan library Blynk sudah terinstall
📱 Setup Blynk IoT Platform
1. Membuat Akun Blynk
Download Aplikasi
- Android: Google Play Store → Cari "Blynk IoT"
- iOS: App Store → Cari "Blynk IoT"
- Atau via web: blynk.cloud
Register Akun
- Buka aplikasi Blynk
- Klik "Sign Up"
- Masukkan email dan password
- Verifikasi email
- Login ke akun Anda
2. Membuat Template
Create New Template
- Login ke blynk.cloud
- Klik "Templates" di menu kiri
- Klik "+ New Template"
- Isi data:
- Name: Smart Home
- Hardware: ESP8266
- Connection Type: WiFi
- Klik "Done"
Setup Datastreams
Datastreams adalah virtual pins untuk komunikasi dengan hardware.
- Di Template, klik tab "Datastreams"
- Klik "+ New Datastream" → Virtual Pin
- Buat 4 datastreams:
| Name | Virtual Pin | Data Type | Min/Max |
|---|---|---|---|
| Kamar Tidur 1 | V1 | Integer | 0 / 1 |
| Kamar Tidur 2 | V2 | Integer | 0 / 1 |
| Ruang Tamu | V3 | Integer | 0 / 1 |
| Dapur | V4 | Integer | 0 / 1 |
- Save setiap datastream
Design Web Dashboard
- Klik tab "Web Dashboard"
- Drag & drop widget "Switch" 4 kali
- Konfigurasi setiap switch:
- Switch 1: Datastream → V1, Title: "💡 Kamar Tidur 1"
- Switch 2: Datastream → V2, Title: "💡 Kamar Tidur 2"
- Switch 3: Datastream → V3, Title: "💡 Ruang Tamu"
- Switch 4: Datastream → V4, Title: "💡 Dapur"
- Atur layout sesuai keinginan
- Klik "Save"
Design Mobile Dashboard
- Klik tab "Mobile Dashboard"
- Tambahkan widget "Button" 4 kali
- Konfigurasi sama seperti Web Dashboard
- Pilih mode: Switch
- ON/OFF Label: "ON" / "OFF"
- Save Template
3. Membuat Device
Add New Device
- Kembali ke Dashboard, klik "Devices"
- Klik "+ New Device"
- Pilih "From Template"
- Pilih template "Smart Home"
- Beri nama: "Smart Home Miniature"
- Klik "Create"
Copy Auth Token & Template ID
- Setelah device dibuat, klik device tersebut
- Klik tab "Device Info"
- Copy BLYNK_TEMPLATE_ID
- Copy BLYNK_AUTH_TOKEN
- Paste ke kode program Arduino (bagian atas)
4. Testing Koneksi
Upload & Monitor
- Upload program yang sudah dikonfigurasi
- Buka Serial Monitor (115200 baud)
- Perhatikan output:
================================= IoT Smart Home Automation ================================= Pin configured. All relays OFF. Connecting to WiFi: WiFi_Rumah .......... WiFi Connected! IP Address: 192.168.1.100 Connected to Blynk! Blynk Connected - Syncing state...
Test dari Aplikasi
- Buka aplikasi Blynk di smartphone
- Device "Smart Home Miniature" akan muncul
- Status: ●ONLINE (hijau)
- Tekan tombol switch untuk ON/OFF lampu
- Perhatikan LED fisik menyala/padam
- Cek Serial Monitor untuk feedback
- Device Offline: Cek WiFi credentials, pastikan WiFi 2.4GHz
- Invalid Token: Pastikan Auth Token benar, tidak ada spasi
- Tidak bisa control: Cek Virtual Pin mapping (V1-V4)
- Delay respon: Normal untuk koneksi internet lambat
🔨 Step-by-Step Pembuatan Miniatur
Fase 1: Persiapan & Pengukuran
Tentukan Skala Miniatur
- Ukuran denah asli: 45m² (berbagai ruangan)
- Skala yang disarankan: 1:20 atau 1:25
- Contoh dengan skala 1:20:
- 300cm → 15cm
- 220cm → 11cm
- 400cm → 20cm
- Total ukuran base: sekitar 40cm x 35cm
Buat Pola di Kertas
- Gambar layout lengkap di kertas dengan skala yang dipilih
- Tandai posisi:
- Dinding pemisah ruangan
- Pintu dan jendela
- Posisi lampu/LED
- Lokasi ESP8266 & Relay
- Buat template untuk dipindahkan ke kardus
Potong Material Base
- Potong styrofoam/triplek untuk base (40cm x 35cm)
- Ratakan permukaan dengan amplas
- Buat garis panduan sesuai denah
Fase 2: Konstruksi Dinding
Potong Dinding Setiap Ruangan
Sesuai skala 1:20, tinggi dinding: 12-15cm
- Kamar Tidur 1: 4 dinding @ 15cm x 12cm dan 15cm x 12cm
- Kamar Tidur 2: 4 dinding @ 15cm x 12cm dan 15cm x 12cm
- Ruang Tamu: 2 dinding @ 20cm x 12cm dan 2 @ 11cm x 12cm
- Dapur: 2 dinding @ 20cm x 12cm dan 2 @ 11cm x 12cm
- K. Mandi: 4 dinding @ 7.5cm x 12cm dan 10cm x 12cm
- Sisakan space untuk pintu (4-5cm)
Lubangi untuk Kabel
- Buat lubang kecil (3-5mm) di dinding untuk jalur kabel
- Posisi lubang: dekat plafon untuk jalur lampu
- 1 lubang besar (2cm) untuk kabel dari controller ke ruangan
Rakit Dinding
- Gunakan lem tembak untuk merekatkan dinding ke base
- Pastikan tegak lurus (gunakan penggaris siku)
- Tempelkan dinding sesuai layout denah
- Biarkan kering selama 15-30 menit
Fase 3: Instalasi Elektronik
Pasang LED di Setiap Ruangan
- Buat holder LED dari kardus kecil (bentuk lampu gantung)
- Solder LED dengan resistor 220Ω
- Pasang di plafon setiap ruangan:
- Kamar Tidur 1: 1 LED (warna kuning/putih)
- Kamar Tidur 2: 1 LED (warna kuning/putih)
- Ruang Tamu: 1-2 LED (warna putih)
- Dapur: 1 LED (warna putih)
- Tarik kabel LED melalui lubang dinding
Wiring ke Relay Module
- Tempatkan breadboard/relay module di luar miniatur (pojok)
- Sambungkan kabel LED ke relay sesuai wiring diagram:
- LED 1 (+) → Relay NO1
- LED 2 (+) → Relay NO2
- LED 3 (+) → Relay NO3
- LED 4 (+) → Relay NO4
- Semua LED (-) → GND via resistor
- Rapikan kabel dengan cable ties
Pasang ESP8266 & Relay
- Buat box/casing dari kardus untuk ESP8266
- Tempatkan di posisi strategis (mudah akses USB)
- Sambungkan ESP8266 ke Relay sesuai pin mapping
- Hubungkan power supply
- Test semua koneksi dengan multimeter
Fase 4: Finishing & Dekorasi
Cat & Wallpaper
- Cat dinding luar dengan akrilik (warna netral)
- Tempel kertas karton bermotif untuk dinding dalam
- Warna berbeda untuk setiap ruangan:
- Kamar Tidur: Biru muda / Krem
- Ruang Tamu: Putih / Abu-abu terang
- Dapur: Putih / Kuning muda
Tambahkan Detail
- Buat pintu mini dari kardus (dapat dibuka/tutup)
- Jendela dari plastik transparan/akrilik
- Lantai: tempel kertas bermotif keramik/kayu
- Furniture mini (opsional): tempat tidur, meja, kursi dari kardus
Label & Dokumentasi
- Buat label nama ruangan (sticker atau tulisan)
- Tempelkan di dinding atau pintu ruangan
- Buat label untuk controller box: "ESP8266 Smart Controller"
- Foto produk dari berbagai sudut
📸 Foto Produk Jadi
Tampak depan miniatur rumah dengan 5 ruangan
LED menyala di setiap ruangan
Controller box terlihat rapi di pojok
📸 Foto Detail Instalasi
Wiring dari ESP8266 ke Relay Module
Koneksi LED di setiap ruangan
Tampak dari atas menunjukkan layout lengkap
- Gunakan double tape untuk merapikan kabel di bagian bawah
- Buat pintu/atap yang dapat dibuka untuk akses maintenance
- Tambahkan base akrilik transparan untuk tampilan lebih modern
- Gunakan LED dengan diffuser untuk cahaya lebih lembut
- Dokumentasikan setiap tahap pembuatan untuk laporan
✅ Testing & Demo Produk
1. Pre-Testing (Sebelum Rakit)
Test ESP8266
- Upload sketch Blink sederhana
- Pastikan LED onboard berkedip
- Test koneksi WiFi dengan sketch WiFiScan
Test Relay Module
- Beri power 5V ke relay
- Dengarkan bunyi "klik" saat relay ON/OFF
- Cek continuity NO-COM dengan multimeter
- Test manual dengan jumper ke GND
Test LED
- Sambungkan LED + resistor ke power 5V
- Pastikan LED menyala dengan brightness yang cukup
- Cek polaritas (anoda/katoda)
- Ukur arus (sekitar 10-20mA per LED)
2. Integration Testing
Test ESP8266 + Relay
- Sambungkan sesuai wiring diagram
- Upload program test sederhana (tanpa Blynk)
- Test setiap pin (D1, D2, D5, D6) satu per satu
- Pastikan relay bekerja dengan benar
Test dengan Blynk
- Upload program lengkap dengan Blynk
- Cek koneksi di Serial Monitor
- Test control dari aplikasi Blynk
- Verifikasi semua switch bekerja
- Cek response time (delay normal: 100-500ms)
Test Full System
- Sambungkan LED ke relay
- Test ON/OFF setiap lampu dari Blynk
- Test kombinasi (2-3 lampu ON bersamaan)
- Test reconnection (putus WiFi, sambung lagi)
- Test power cycle (cabut-colok power)
3. Checklist Testing
| No | Item Test | Expected Result | Status |
|---|---|---|---|
| 1 | WiFi Connection | ESP8266 connect ke WiFi dalam 10 detik | ☐ |
| 2 | Blynk Connection | Device status ONLINE di app | ☐ |
| 3 | LED 1 - Kamar Tidur 1 | Nyala/padam via switch V1 | ☐ |
| 4 | LED 2 - Kamar Tidur 2 | Nyala/padam via switch V2 | ☐ |
| 5 | LED 3 - Ruang Tamu | Nyala/padam via switch V3 | ☐ |
| 6 | LED 4 - Dapur | Nyala/padam via switch V4 | ☐ |
| 7 | Response Time | < 1 detik dari tap ke LED nyala | ☐ |
| 8 | Simultaneous Control | 4 lampu dapat ON bersamaan | ☐ |
| 9 | Auto Reconnect | Reconnect otomatis setelah WiFi putus | ☐ |
| 10 | Power Stability | Sistem stabil selama 30 menit continuous | ☐ |
4. Skenario Demo
Demo Dasar
- Intro: Jelaskan konsep smart home & IoT
- Show Hardware: Tunjukkan ESP8266, Relay, LED
- Show App: Buka aplikasi Blynk di smartphone
- Demo ON/OFF: Nyalakan/matikan lampu satu per satu
- Explain: Jelaskan bagaimana WiFi mengirim perintah ke ESP8266
Demo Advanced
- Scenario 1 - Pagi Hari: Nyalakan lampu Kamar Mandi & Dapur
- Scenario 2 - Siang Hari: Matikan semua lampu (hemat energi)
- Scenario 3 - Malam Hari: Nyalakan lampu Ruang Tamu & Kamar Tidur
- Scenario 4 - Tidur: Matikan semua kecuali 1 lampu redup
Demo Remote Access
- Kontrol dari smartphone di ruangan berbeda
- Tunjukkan real-time monitoring di Blynk
- Demo reconnection setelah putus koneksi
- Show Serial Monitor untuk debugging
5. Troubleshooting Common Issues
| Problem | Possible Cause | Solution |
|---|---|---|
| LED tidak menyala | Polaritas terbalik, resistor putus | Cek polaritas LED, test resistor |
| Relay tidak bunyi klik | Power kurang, pin salah | Cek VCC 5V, cek wiring GPIO |
| ESP8266 tidak connect WiFi | SSID/password salah, WiFi 5GHz | Cek credentials, gunakan WiFi 2.4GHz |
| Blynk offline | Token salah, internet mati | Cek Auth Token, cek koneksi internet |
| Response lambat | WiFi lemah, server Blynk overload | Dekatkan router, tunggu beberapa saat |
| LED redup | Resistor terlalu besar, voltage drop | Gunakan resistor 220Ω, cek power supply |
- Jangan operasikan sistem dengan power > 5V untuk pembelajaran
- Matikan power sebelum melakukan perubahan wiring
- Gunakan power supply bersertifikat, hindari charger murah
- Jangan biarkan sistem menyala tanpa pengawasan
6. Dokumentasi Akhir
- ✅ Foto miniatur dari 4 sudut (depan, belakang, samping, atas)
- ✅ Video demo ON/OFF setiap lampu (30-60 detik)
- ✅ Screenshot aplikasi Blynk (dashboard & control)
- ✅ Foto wiring diagram (fisik vs skema)
- ✅ Screenshot Serial Monitor (menunjukkan koneksi)
- ✅ Foto detail LED dan relay saat bekerja
- ✅ Tabel hasil testing dengan status PASS/FAIL
- ✅ Laporan tertulis (pendahuluan, metodologi, hasil, kesimpulan)
📸 Screenshot Aplikasi Blynk
Dashboard dengan 4 switch untuk setiap ruangan
Status device: ONLINE
Semua switch dapat dikontrol dengan responsif
🎥 Video Demo
Rekam video yang menunjukkan:
- Overview miniatur rumah
- Tap switch di smartphone
- LED menyala di ruangan yang sesuai
- Test semua 4 ruangan
- Demo scenario (pagi, siang, malam)
0 Komentar