Project 1: Getting Started with Microcontroller ESP-32 (Program Blink Internal LED)

Muhammad Raflie Dwi Putra
6 min readJan 31, 2021

Bismillaahirrahmaanirrahiim..

Hello sobat setia medium-ers semua!! Gimana kabarnya?? Semoga sehat selalu yaa..

Menurut pepatah, tak kenal maka?? ya kenalan dongg.. Sebelumnya kita kenalan dulu ya guys. Kenalin namaku Muhammad Raflie Dwi Putra yang bisa dipanggil Raflie dengan NIM 18219035. Aku sedang berkuliah semester 4 di prodi Sistem dan Teknologi Informasi (STI) Institut Teknologi Bandung.

Pada story kali ini, aku ingin sharing sedikit pengalamanku yang aku dapatkan pada first project salah satu mata kuliahku di semester 4 ini. Yaa, nama mata kuliah (matkul) itu adalah II2260-Embedded System. Nah, pada satu semester kedepan ini, aku bersama teman-teman di prodi Sistem dan Teknologi Informasi (STI) 19, akan mengotak-atik dan mencoba eksplor lebih dalam terkait ESP32 ini, tentu dibimbing oleh Dosenku yang bernama Dr. Kusprasapta Mutijarsa, S.T., M.T. serta kating-kating asisten pembimbing.

For your information, sebenarnya aku pun baru ‘memegang’ ESP32 ini setelah diberi pengarahan oleh dosenku kalau ESP32 ini akan dipakai selama satu semester ini. Pada semester 2, aku sudah sempat memegang dan mempelajari mengenai komponen serupa (bisa dibilang mirip lah yaa) yang disebut Arduino Uno sehingga aku sudah tidak terlalu kagok ketika memakai ESP32 ini.

Sebelumnya temen-temen kalo penasaran mengenai ESP32 ini, yuk kenalan dulu dengan si ESP32 ini. Nahh, secara sederhana ESP32 itu adalah sebuah chip/microcontroller sebagai pengendali (I/O) pada suatu rangkaian elektronik yang terintegrasi dengan Wifi dan Bluetooth. Begini beberapa contoh gambar dari ESP32 Boards guys…

Getting Started with the ESP32 Development Board | Random Nerd Tutorials

Nahh, aku pakenya yang bagian kiri atas, namanya DOIT ESP32 DEVKIT V1 Board. Dimana belinya kak? Kita bisa mendapatkan ini salah satunya di Tokoped*a, banyak kok store yang jual begituan, hehe. Jangan lupa juga buat beli Kabel Micro USB (kabel yang biasa kita pake buat charger lho, yg micro usb type A) yaa!! Karena kebetulan aku punya kabelnya yg type C, jadi aku beli juga kabel itu di Tok*pedia. (Tips: Beli komponen-komponennya cari yg tokonya sama supaya menghemat ongkir guys wkwk).

By the way, sebelum kita bisa ‘mengoperasikan’ ESP32 Board ini, tentunya kita butuh Programming Environment yang salah satunya bisa pake aplikasi Arduino IDE yang di dalamnya sudah dikonfigurasikan dengan board ESP32 dan telah terinstall Package Board ESP32 serta di-setting ke board dan port yang tepat. Tidak lupa juga untuk sudah melakukan instalasi driver USB to UART.
[Catatan: Buat temen-temen yang belum menyiapkan semua hal tersebut, bisa dibaca dan diikuti di story mediumku juga yang berjudul “Persiapan Programming Environments untuk Pengoperasian ESP32 DevKit” yaa]

Start for Arduino IDE

Jika sudah siap, yuk mulai aja…..

Kita akan membuat simple project sebagai program pertama, yaitu program LED Blink. Program ini cocok banget dicoba sama pemula, karena untuk source code dari programnya sudah tersedia di dalam Arduino IDE ini. Output dari program ini akan menyebabkan “Blue LED” pada ESP32 Board melakukan kelap-kelip (Blink) dengan waktu durasi tiap LED menyala atau meredup dapat ditentukan dari dalam program Blink tersebut.

Komponen dan Perangkat

Adapun sebelumnya, aku list kembali apa aja sih komponen dan perangkat yang kita butuhkan di sini.

  1. ESP32 DEVKIT V1 DOIT Board
Foto ESP32 DEVKIT V1 DOIT Board

2. Kabel Micro USB (type A)

Foto Kabel Micro USB (type A)

3. Perangkat PC (Laptop / Komputer)

Foto Perangkat PC (Laptop / Komputer)

4. Tambahan/Optional: Breadboard 830 points (untuk tempat meletakkan ESP32 supaya tidak banyak tersentuh secara langsung oleh tangan)

Foto Breadboard 830 points

Proses Perakitan Rangkaian

Untuk proses perakitan rangkaiannya, kita bisa menyambungkan kedua ujung kabel Micro USB ke ESP32 Board dan Perangkat PC kita (seperti pada skema gambar di bawah ini). ESP32 Board akan memverifikasi ketika sudah berhasil tersambung ke perangkat PC dengan menyalanya “Red LED” pada ESP32 Board.

Skema ESP32 Board yang telah terhubung dengan kabel Micro USB
Foto Sesuai dengan Skema Rangkaian (ESP32 Board dipasang di Breadboard yang terhubung ke kabel USB dan USB Port pada Laptop / PC)

[Catatan: Adapun kita bisa mengetahui apakah driver USB to UART yang kita telah install berhasil terinstall dengan benar ketika pada menu “Tools” Arduino IDE, kemudian bagian port sudah dapat kita setting ke port yang tepat.]

Upload Program

Setelah itu, kita akan meng-upload program LED Blink ke ESP32 Board. Langkah pertama, di dalam Arduino IDE, klik menu ‘File’, kemudian pilih ‘Examples’ lalu pilih ‘01.Basics’ dan klik pada pilihan ‘Blink’.

Membuka Program Blink pada Arduino IDE

Amati Source Program

// Menyalakan Internal LED Selama 2 Sekon dan Mematikan Internal LED selama 1 sekon (Terulang Terus-Menerus)

// Fungsi setup dijalankan untuk melakukan inisiasi di awal
void setup() {
// Inisiasi digital pin LED_BUILTIN sebagai sebuah output.
pinMode(LED_BUILTIN, OUTPUT);
}

// Fungsi loop dijalankan secara terus-menerus selamanya
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // Menyalakan LED (HIGH adalah level tegangan)
delay(2000); // delay atau menunggu selama 2 detik
digitalWrite(LED_BUILTIN, LOW); // Mematikan LED dengan membuat LOW pada voltage
delay(1000); // delay atau menunggu selama 1 detik
}

Kita bisa mengamati source program dari program Blink tersebut terlebih dahulu, seperti gambar di bawah ini. Amati mulai dari adanya dua buah template procedure, yaitu void setup() dan void loop(). Pada source code di gambar ini, di bagian procedure void setup() terdapat pinMode (LED_BUILTIN_LED, OUTPUT) yang berfungsi untuk menginisiasi untuk menginisiasi digital pin LED_BUILTIN sebagai sebuah output. Kemudian pada source code bagian void loop(), digitalWrite (LED_BUILTIN, HIGH) berfungsi untuk menyalakan LED (berwarna biru) pada ESP32 Board. Sementara delay (1000) berfungsi untuk menunggu LED tersebut tetap dalam kondisi menyala selama 1000 milisekon atau 1 sekon. Begitu pun dengan digitalWrite (LED_BUILTIN, LOW) berfungsi untuk mematikan LED (berwarna biru) pada ESP32 Board. Lalu yang terakhir, delay (1000) kembali yang berfungsi untuk menunggu LED tersebut tetap dalam kondisi mati selama 1000 milisekon atau 1 sekon.
[Untuk diingat, bahwa fungsi/procedure yang terdapat di dalam void loop() akan selalu diulang terus menerus tanpa henti.]

Tampilan Source Code Program Blink LED Internal

Compiling and Executing

Langkah selanjutnya, setelah kita mengamati dan memahami source code tersebut, kita dapat melakukan compiling (verivy) and executing (upload). Pertama, kita dapat memilih (klik) pada simbol checklist di bagian kanan atas dari menu tampilan Blink ini untuk melakukan verivy. Kemudian kita akan menunggu beberapa saat hingga muncul pesan “Done compiling.”. Setelah itu, kita baru dapat memilih simbol right direction di bagian kanan atas dari menu tampilan Blink ini juga, untuk melakukan upload. Lalu kita akan menunggu kembali hingga muncul pesan upload sukses serta ditandai dengan ‘blue LED’ pada ESP32 Board kita telah memulai proses Blink (kelap-kelip) sesuai program tersebut.
[Catatan: Kita dapat melakukan eksperimen tambahan pada program Blink ini dengan mengubah-ubah ‘time delay’ untuk LED on dan/atau LED off berdasarkan pemahaman kita sekarang terhadap source code tersebut. Lakukan verivy dan upload kembali setiap setelah ingin mencoba mengubah ‘time delay’ tersebut]

Kita akan merasa puas ketika berhasil membuat LED pada ESP32 Board ini menjadi kelap-kelip (Blink). Namun, sekadar informasi, untuk mengembalikan kondisi LED dalam kondisi semula, kita dapat melakukan verify dan upload kembali source code default (function setup dan loop kosong) yang ada pada menu tampilan setelah masuk Arduino IDE.

ANALISIS dan PENJELASAN HASIL EKSPERIMEN

Eksperimen tersebut berhasil menjelaskan dan membuktikan bahwa microcontroller ESP32 dapat melakukan program sederhana Blink dengan template dan source code yang telah tersedia oleh Arduino IDE. Kita dapat mencoba berkali-kali dengan mengubah-ubah waktu delay on dan off Internal LED tersebut. Jangan lupa menonton video demo di atas sehingga temen-temen semoga bisa semakin faham dan mengenal ESP32 ini. Selain itu, temen-temen juga bisa mengeksplor lebih jauh mengenai ESP32 ini, salah satunya melalui 90+ ESP32 Projects, Tutorials and Guides with Arduino IDE​ | Random Nerd Tutorials.

Sekian, terima kasih dan selamat mencoba!!!
Alhamdulillaah…

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Muhammad Raflie Dwi Putra
Muhammad Raflie Dwi Putra

Written by Muhammad Raflie Dwi Putra

Fresh Graduate of Information System and Technology Institut Teknologi Bandung (ITB) 2023

No responses yet

Write a response