Jumat, 13 November 2026

LAPORAN PRAKTIKUM MENGONTROL LAMPU LED ESP32 MENGGUNAKAN BYLINK

LAPORAN PRAKTIKUM

MENGONTROL LAMPU LED ESP32 MENGGUNAKAN BYLINK

 

Disusun oleh :

        Nabil Qualita Akhsan                                                 26051204020

        Nia Dwi Enjelika                                                        26051204081

        Hazel Muhammad Arvin Al Fawwaz                         26051204134

        Muhammad Habibie                                                   26051204217

 

 

BAB I

PENDAHULUAN

1.1 Latar Belakang

            Perkembangan teknologi Internet of Things (IoT) memungkinkan perangkat elektronik saling terhubung dan dikendalikan dari jarak jauh melalui jaringan internet. Salah satu penerapan paling mendasar adalah pengendalian peralatan listrik seperti lampu. Pengendalian secara konvensional dengan saklar manual mengharuskan pengguna berada di lokasi dan sering menyebabkan pemborosan energi ketika lampu lupa dimatikan. Oleh karena itu, dibutuhkan sistem yang dapat mengendalikan lampu secara praktis dari jarak jauh menggunakan perangkat yang umum dimiliki, seperti smartphone.

ESP32 merupakan mikrokontroler dengan modul Wi-Fi dan Bluetooth bawaan, sehingga dapat terhubung ke internet tanpa modul tambahan dan banyak dipakai dalam proyek IoT. Untuk menghubungkannya dengan pengguna, dapat digunakan Blynk, yaitu platform IoT yang menyediakan antarmuka kendali berupa tombol atau switch virtual melalui aplikasi mobile maupun web. Berdasarkan hal tersebut, praktikum ini dilakukan untuk mempelajari cara mengontrol lampu LED menggunakan ESP32 yang terhubung dengan Blynk, sekaligus memahami prinsip dasar komunikasi IoT dan penerapan kontrol output digital.


1.2 Tujuan Praktikum

  1. Merancang sistem pengendali lampu LED berbasis ESP32 yang terhubung dengan Blynk.
  2. Mengamati jalannya pengendalian lampu LED dari jarak jauh melalui aplikasi Blynk
  3. Memprogram ESP32 untuk menyalakan dan mematikan LED berdasarkan perintah dari Blynk.

 

BAB II

TINJAUAN PUSTAKA

2.1 Internet of Things

Internet of Things (IoT) adalah konsep yang memungkinkan berbagai perangkat fisik saling terhubung melalui jaringan internet untuk bertukar data secara real-time. Konsep ini banyak diterapkan dalam kehidupan sehari-hari, salah satunya pada otomasi rumah (smart home), yang dapat meningkatkan efisiensi energi sekaligus kenyamanan pengguna [1]. Pada sistem pencahayaan, IoT membuat sensor dan aktuator dapat bekerja terpadu sehingga pengguna dapat memantau dan mengendalikan lampu dari jarak jauh [3].

 

2.2 Mikrokontroler ESP32

ESP32 adalah mikrokontroler dengan konektivitas Wi-Fi dan Bluetooth terintegrasi dan harga yang relatif terjangkau. Mikrokontroler ini dapat diprogram melalui Arduino IDE dan dapat dikombinasikan dengan berbagai modul, seperti relay dan sensor [1]. ESP32 juga memiliki kemampuan pemrosesan yang cukup tinggi dengan konsumsi daya yang efisien, sehingga sering dipakai pada proyek otomasi, termasuk sistem pencahayaan pintar [3]. Alasan lain pemilihannya adalah kemampuannya mengakses Wi-Fi langsung tanpa modul tambahan serta kompatibilitasnya yang baik dengan Blynk [4].

 

2.3 Arduino IDE

ESP32 adalah mikrokontroler dengan konektivitas Wi-Fi dan Bluetooth terintegrasi dan harga yang relatif terjangkau. Mikrokontroler ini dapat diprogram melalui Arduino IDE dan dapat dikombinasikan dengan berbagai modul, seperti relay dan sensor [1]. ESP32 juga memiliki kemampuan pemrosesan yang cukup tinggi dengan konsumsi daya yang efisien, sehingga sering dipakai pada proyek otomasi, termasuk sistem pencahayaan pintar [3]. Alasan lain pemilihannya adalah kemampuannya mengakses Wi-Fi langsung tanpa modul tambahan serta kompatibilitasnya yang baik dengan Blynk [4].

 

2.3 Blynk

Blynk adalah platform IoT berbasis cloud dan aplikasi mobile yang menghubungkan smartphone dengan papan pengembangan seperti Arduino, Raspberry Pi, ESP8266, dan ESP32 [2], [4]. Melalui antarmuka web maupun aplikasi, pengguna dapat mengendalikan dan memantau perangkat secara real-time [3]. Dalam pengendalian lampu, tombol virtual di Blynk dihubungkan ke pin ESP32 melalui virtual pin [1]. Agar terhubung, program memerlukan auth token dari Blynk serta konfigurasi jaringan Wi-Fi [2].

 

 

BAB III

METODOLOGI

3.1 Alat dan Bahan

Alat dan bahan yang digunakan pada praktikum ini mengacu pada rangkaian fisik yang terdokumentasi, yaitu satu LED yang dihubungkan dengan ESP32 melalui breadboard. Pengendalian LED dirancang menggunakan aplikasi Blynk.

A. Alat

1. Laptop/komputer untuk menyusun dan mengunggah program melalui Arduino IDE.

2. Arduino IDE beserta dukungan board ESP32 dan library Blynk.

3. Blynk IoT (Web Dashboard atau aplikasi) untuk membuat tombol kendali dan mengirim perintah.

4. Jaringan Wi-Fi untuk menghubungkan ESP32 ke layanan Blynk.

B. Bahan

1. ESP32 DevKit V1 sebanyak 1 unit.

2. LED sebanyak 1 buah sebagai indikator keluaran (sesuai daftar bahan awal: LED biru).

3. Resistor 220 Ω sebanyak 1 buah sebagai pembatas arus LED.

4. Breadboard dan kabel jumper secukupnya untuk menghubungkan ESP32, resistor, dan LED.


3.2 Prosedur Kerja

A. Perancangan dan Perakitan Rangkaian

1. Siapkan ESP32 DevKit V1, satu LED, satu resistor 220 Ω, breadboard, serta kabel jumper.

2. Rangkai satu LED pada breadboard. Pada penyesuaian kode ini, GPIO 26 ESP32 digunakan sebagai keluaran yang dihubungkan melalui resistor 220 Ω menuju anoda LED; katoda LED dihubungkan ke GND. Cocokkan kembali nomor GPIO dengan sambungan pada perangkat sebenarnya.

3. Periksa polaritas LED, posisi komponen, serta sambungan kabel agar tidak ada jalur yang longgar atau terbalik.

4. Siapkan sambungan ESP32 ke laptop untuk proses pemrograman, lalu pastikan rangkaian siap diuji.

B. Konfigurasi Blynk IoT

1. Masuk ke Blynk IoT dan buat template untuk perangkat ESP32 dengan koneksi Wi-Fi. Nama template disesuaikan dengan program, yaitu “LAMPU CONTROL”.

2. Buat satu Datastream bertipe Integer dengan rentang 0–1 menggunakan Virtual Pin V0 untuk pengendalian LED.

3. Tambahkan satu tombol Switch pada dashboard Blynk dan hubungkan ke V0. Nilai 0 digunakan untuk OFF, sedangkan nilai 1 untuk ON.

4. Buat perangkat (device) dari template tersebut untuk memperoleh identitas template dan token autentikasi, kemudian gunakan kredensialnya pada program ESP32.

Tabel 3.1 Hubungan Datastream dan Satu LED

Komponen

Virtual Pin

GPIO pin

Nilai tombol

Satu LED

V0

26

0 = mati; 1 = menyala


C. Pembuatan dan Pengunggahan Program

1. Jalankan Arduino IDE, pasang dukungan board ESP32 dan library Blynk, kemudian pilih jenis board serta port yang sesuai.

2. Susun kode dengan library WiFi.h, WiFiClient.h, dan BlynkSimpleEsp32.h; isikan identitas perangkat Blynk dan jaringan Wi-Fi sesuai perangkat yang digunakan.

3. Tentukan satu GPIO sebagai keluaran LED. Kode yang disesuaikan di bawah memakai GPIO 26 dan fungsi BLYNK_WRITE(V0) untuk membaca perintah tombol.

4. Periksa program, lalu unggah ke ESP32. Setelah berhasil, buka Serial Monitor pada baud rate 115200 untuk memeriksa informasi koneksi dan perintah masuk.

D. Alur Pelaksanaan Pengujian

1. Aktifkan perangkat dan koneksi Wi-Fi, lalu periksa apakah ESP32 berhasil tersambung ke layanan Blynk. Program mengatur pin LED dalam keadaan LOW sebelum proses sinkronisasi.

2. Ubah Switch V0 menjadi ON (1) pada dashboard Blynk, kemudian amati apakah LED menyala.

3. Ubah Switch V0 menjadi OFF (0), kemudian amati apakah LED mati. Catat kondisi yang benar-benar terlihat serta pesan pada Serial Monitor.


3.3 Program

Program berikut adalah kode yang diberikan oleh kelompok, dipertahankan sesuai aslinya. Di dalam program terdapat pengaturan GPIO 26 (V0) dan GPIO 25 (V1), sedangkan dokumentasi rangkaian memperlihatkan satu LED. Karena itu, pada pengujian satu LED perlu dipastikan pin yang benar-benar digunakan.

#define BLYNK_TEMPLATE_ID "TMPL63Ux8Lhfh"
#define BLYNK_TEMPLATE_NAME "LAMPU CONTROL"
#define BLYNK_AUTH_TOKEN "ugY9KSfxQL3_I9S9bwxied2b2_wL5NYG"
#define BLYNK_PRINT Serial

#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>

char ssid[] = "fchrihh";
char pass[] = "gakdiganti";

const int ledKiri = 26;
const int ledKanan = 25;

// Sinkronisasi status terakhir saat berhasil terhubung
BLYNK_CONNECTED() {
  Serial.println("\n[SISTEM] Berhasil sinkronisasi dengan Blynk Server!");
  Blynk.syncVirtual(V0);
  Blynk.syncVirtual(V1);
}

// Menerima perintah dari tombol V0 di aplikasi
BLYNK_WRITE(V0) {
  int nilaiTombol = param.asInt();
  digitalWrite(ledKiri, nilaiTombol);
 
  Serial.print("Perintah Diterima -> LED Kiri (V0) : ");
  Serial.println(nilaiTombol == 1 ? "NYALA" : "MATI");
}

// Menerima perintah dari tombol V1 di aplikasi
BLYNK_WRITE(V1) {
  int nilaiTombol = param.asInt();
  digitalWrite(ledKanan, nilaiTombol);
 
  Serial.print("Perintah Diterima -> LED Kanan (V1) : ");
  Serial.println(nilaiTombol == 1 ? "NYALA" : "MATI");
}

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

  pinMode(ledKiri, OUTPUT);
  pinMode(ledKanan, OUTPUT);

  digitalWrite(ledKiri, LOW);
  digitalWrite(ledKanan, LOW);

  Serial.println("\n[SISTEM] Menghubungkan ke WiFi...");
  Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
}

void loop() {
  Blynk.run();
}

 

3.4 Penjelasan Program

A. Inisialisasi Library dan Kredensial Blynk

Bagian #define BLYNK_TEMPLATE_ID, BLYNK_TEMPLATE_NAME, dan BLYNK_AUTH_TOKEN digunakan untuk mengenali perangkat pada layanan Blynk. Library WiFi.h, WiFiClient.h, dan BlynkSimpleEsp32.h memungkinkan ESP32 terhubung ke jaringan serta berkomunikasi dengan Blynk. Variabel ssid dan pass menyimpan data koneksi Wi-Fi.

B. Penentuan Pin dan Kondisi Awal LED

Baris const int pinLED = 26 menentukan GPIO yang digunakan untuk satu LED pada contoh kode. Fungsi pinMode(pinLED, OUTPUT) menetapkan pin tersebut sebagai keluaran, sementara digitalWrite(pinLED, LOW) memberikan kondisi awal mati sebelum sinkronisasi dengan Blynk.

C. Pembacaan Perintah Virtual Pin

Fungsi BLYNK_WRITE(V0) menerima perintah dari satu Switch pada dashboard. Perintah param.asInt() membaca nilai 0 atau 1, lalu digitalWrite(pinLED, ...) mengubah keluaran menjadi LOW (LED mati) atau HIGH (LED menyala). Informasi perintah dapat diamati melalui Serial Monitor.

D. Sinkronisasi dan Koneksi Sistem

Saat ESP32 tersambung ke server Blynk, fungsi BLYNK_CONNECTED() memanggil Blynk.syncVirtual(V0) untuk meminta status terakhir pada tombol V0. Blynk.begin() membangun koneksi menggunakan Wi-Fi dan autentikasi perangkat, sedangkan Blynk.run() memproses komunikasi secara berulang.

E. Alur Kerja Pengendalian LED

Pengguna mengubah satu tombol Switch pada Blynk menjadi ON atau OFF. Nilai 1 atau 0 dikirim melalui Virtual Pin V0 ke ESP32, diproses oleh BLYNK_WRITE(V0), kemudian diteruskan ke satu LED melalui GPIO yang ditentukan dalam program. Dengan demikian, rangkaian dirancang untuk mengendalikan satu LED dari aplikasi.

3.5 Rencana Pengujian Sistem

Pengujian disusun untuk memeriksa apakah satu tombol pada Blynk dapat mengendalikan satu LED. Kondisi berikut adalah respons yang diharapkan berdasarkan program, bukan hasil pengamatan langsung yang sudah diverifikasi.

Tabel 3.2 Skenario Pengujian Satu LED

No.

Tindakan pada tombol V0

Nilai digital

Respons LED yang diharapkan

1

Atur ke OFF

0

LED mati

2

Atur ke ON

1

LED menyala

3

Ubah dari ON menjadi OFF

0

LED kembali mati

Pengamatan langsung perlu mencatat kondisi LED saat tombol ON dan OFF ditekan, disertai dokumentasi atau keluaran Serial Monitor. Foto rangkaian yang tersedia belum menunjukkan hasil kedua kondisi tombol tersebut.



BAB IV

HASIL DAN PEMBAHASAN

4.1 Hasil Pengamatan

Dokumentasi praktikum memperlihatkan satu LED yang dirangkai pada breadboard bersama ESP32, resistor, dan kabel jumper. Foto tersebut membuktikan susunan perangkat, tetapi tidak memperlihatkan kondisi tombol pada Blynk ataupun hasil pengujian nyala-mati secara berurutan. Oleh karena itu, Tabel 4.1 menampilkan kondisi LED yang diharapkan dari program satu LED, sedangkan hasil uji nyata perlu dicatat setelah percobaan dilakukan.


Tabel 4.1 Kondisi LED Berdasarkan Perintah Blynk (Satu LED)

No.

Perintah Blynk (V0)

Nilai

Kondisi satu LED yang diharapkan

1

OFF

0

Mati

2

ON

1

Menyala

 

Gambar 4.1 Dokumentasi rangkaian ESP32 dengan satu LED


4.2 Pembahasan

Berdasarkan dokumentasi rangkaian, praktikum ini menggunakan satu LED yang terpasang pada breadboard dan dihubungkan dengan ESP32 melalui kabel jumper serta resistor. Karena hanya satu LED yang terlihat, rancangan dan tabel pengujian perlu menggunakan satu keluaran, bukan dua LED sebagaimana tercantum pada versi laporan sebelumnya. Penyesuaian kode menggunakan satu tombol Blynk, yaitu Virtual Pin V0, dengan GPIO 26 sebagai pin keluaran pada contoh program.

Tabel 4.1 menunjukkan dua kondisi dasar yang perlu diuji. Saat tombol Blynk berada pada posisi OFF (0), fungsi digitalWrite() mengatur keluaran LOW sehingga LED diharapkan mati. Saat tombol berada pada posisi ON (1), pin keluaran diatur HIGH sehingga LED diharapkan menyala. Angka 0 dan 1 merupakan nilai logika perintah dari Blynk, bukan pembacaan sensor cahaya atau hasil pengukuran lingkungan.

Pada program, BLYNK_WRITE(V0) membaca nilai Switch dan mengubah keadaan pin LED. ESP32 berkomunikasi dengan Blynk melalui jaringan Wi-Fi dengan fungsi Blynk.begin() dan Blynk.run(). Mekanisme ini sesuai dengan tujuan praktikum untuk mempelajari pengendalian keluaran digital berbasis Internet of Things, tetapi keberhasilannya secara nyata tetap harus dipastikan melalui percobaan.

Program juga mengatur pin sebagai OUTPUT dan memberikan nilai LOW saat mulai dijalankan. Ketika koneksi ke Blynk terbentuk, Blynk.syncVirtual(V0) meminta status terakhir pada dashboard sehingga kondisi LED dapat mengikuti perintah tersimpan. Karena foto yang diberikan hanya menunjukkan rangkaian fisik, tidak dapat disimpulkan dari foto saja apakah proses koneksi dan sinkronisasi telah berhasil.

Jika LED tidak merespons perintah, pemeriksaan dapat dilakukan pada polaritas LED, posisi resistor, sambungan GND, kesesuaian GPIO dengan kode, pengaturan Datastream V0, koneksi Wi-Fi, dan autentikasi Blynk. Serial Monitor pada 115200 baud dapat membantu melihat pesan koneksi serta nilai tombol. Selain itu, nomor GPIO sebenarnya pada rangkaian perlu diverifikasi langsung karena label pin ESP32 tidak cukup terbaca dari foto.



BAB V

PENUTUP

5.1 Kesimpulan

1. Rangkaian yang terdokumentasi menggunakan satu LED pada breadboard bersama ESP32, resistor, dan kabel jumper. Rancangan kontrol disesuaikan dengan satu tombol Blynk dan satu keluaran GPIO.

2. Berdasarkan penyesuaian program, nilai ON (1) pada V0 dirancang menyalakan LED, sedangkan nilai OFF (0) dirancang mematikannya. Keberhasilan pengendalian secara langsung belum dapat dipastikan hanya dari foto rangkaian.

3. Program telah disusun dengan fungsi koneksi Wi-Fi dan Blynk, penerimaan perintah melalui BLYNK_WRITE(V0), sinkronisasi status, serta pengendalian LED melalui digitalWrite(). Rangkaian dan kode tersebut menggambarkan konsep dasar kontrol keluaran digital berbasis IoT.


5.2 Saran

1. Lakukan pengujian LED pada kondisi tombol ON dan OFF melalui Blynk, lalu dokumentasikan perubahan yang benar-benar terjadi agar tabel hasil pengamatan dapat dilengkapi dengan data nyata.

2. Pastikan nomor GPIO yang tersambung ke LED sesuai dengan deklarasi dalam program. Periksa pula polaritas LED, resistor 220 Ω, serta sambungan ke GND.

3. Gunakan Serial Monitor untuk memeriksa penerimaan perintah V0 dan kestabilan koneksi Wi-Fi maupun Blynk saat pengujian.

4. Sertakan dokumentasi kondisi LED saat menyala dan mati pada praktikum berikutnya. Demi keamanan, token autentikasi Blynk dan kata sandi Wi-Fi tidak perlu dicantumkan secara terbuka dalam laporan yang dibagikan.



DAFTAR PUSTAKA

[1] Fawaid, J. K. I., Faturochman, I. Y., & Aryanto, K. D. R. R. (2025). Sistem kontrol lampu smart home berbasis ESP32 dan aplikasi Blynk. Seminar Nasional Teknologi Informasi dan Bisnis (SENATIB) 2025, 861–867. Universitas Duta Bangsa Surakarta. https://ojs.udb.ac.id/Senatib/article/download/5460/3662

[2] Qodri M.A., M. A., Rahaningsih, N., & Dana, R. D. (2024). Sistem pengendalian lampu rumah dan kantor berbasis Internet of Things menggunakan mikrokontroler NodeMCU ESP8266. JATI (Jurnal Mahasiswa Teknik Informatika), 8(1), 681–686. https://ejournal.itn.ac.id/index.php/jati/article/download/8703/5038

[3] Haigis, R. F. (2025). Smart light system berbasis sensor cahaya dengan teknologi IoT. JATI (Jurnal Mahasiswa Teknik Informatika), 9(3), 5057–5062. https://ejournal.itn.ac.id/jati/article/download/13588/7676

[4] Aji, W. S. D., Laksana, I. D., Kristiawan, S. G. V. S., Maulana, R., & Marcus, R. D. (2025). Evaluasi kinerja dan skalabilitas platform Blynk untuk aplikasi Internet of Things (IoT). ELANG: Journal of Interdisciplinary Research, 3(1), 46–52. https://jurnal.stiki.ac.id/elang/article/download/2037/1054


Tidak ada komentar:

Posting Komentar