Embedded System Project 01: ESP32 Internal LED Blink

Fikri Naufal Hamdi
3 min readFeb 5, 2023

--

Halo, semuanya!
Pada kesempatan kali ini, aku ingin membagikan pengalamanku memulai project implementasi konsep embedded system atau sistem tertanam menggunakan ESP32 sebagai mikrokontrollernya. ESP32 adalah sebuah mikrokontroller yang dikenalkan oleh Espressif System dan penerus dari ESP8266. Salah satu kelebihan dari ESP32 adalah adanya modul Wi-Fi dan Bluetooth di dalamnya yang dapat digunakan untuk pembuatan sistem IoT dengan koneksi wireless. Namun, kali ini kita hanya mencoba memulai project sederhana dengan ESP32, yaitu LED Blinking. Stay tune untuk project-project menarik lainnya!

— Objective
Tujuan dari project 01 ini adalah menyalakan dan mematikan LED internal yang ada pada ESP32 secara periodik (blinking).

Requirements
Beberapa tools yang perlu disiapkan untuk memulai project ini adalah

  • Microcontroller ESP32 Devkit V1
  • Kabel data (USB Type A to Micro USB)
  • Arduino IDE yang terinstall pada Laptop/PC

Jika belum memiliki Arduino IDE, unduh dahulu melalui link berikut (arduino.cc/en/Main/Software) dalam versi terbaru sesuai sistem operasi Laptop/PC yang digunakan, lalu ikuti installation instruction yang diberikan. Pada project ini, aku menggunakan Arduino IDE versi 2.0.3, yaitu versi terbaru per tanggal 2 Februari 2023.

Menu tampilan pengunduhan Arduino IDE

Setelah Arduino IDE terpasang, terdapat beberapa setup yang perlu dilakukan terlebih dahulu.

~ Install ESP32 Board pada Arduino IDE.
Hal ini perlu dilakukan karena Arduino IDE secara default hanya dapat digunakan untuk implementasi Arduino, tidak termasuk ESP32. Oleh karena itu, perlu ditambahkan konfigurasi board ESP32 ke dalam Arduino IDE dahulu. Berikut langkah-langkah yang perlu dilakukan.

  1. Buka Arduino IDE, pilih File > Preferences
  2. Masukkan https://dl.espressif.com/dl/package_esp32_index.json ke dalam bagian “Additional Board Manager URLs” dan klik OK
  3. Buka menu Boards Manager dengan memilih Tools > Board > Boards Manager
  4. Cari pilihan “ESP32 by Espressif Systems” pada Board Managers, lalu install pilihan tersebut
  5. Buka kembali menu Tools > Board, lalu masuk ke pilihan ESP32 > DOIT ESP32 DEVKIT V1
Tampilan pilihan DOIT ESP32 DEVKIT V1

~ Install communication port
Saat pertama kali menginstall Arduino IDE, communication port USB ke UART umumnya belum terpasang dan perlu diatur terlebih dahulu sebagai komunikasi data serial antara ESP32 dan Laptop/PC. Berikut langkah-langkah yang perlu dilakukan.

  1. Install USB to UART Drivers melalui link https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers?tab=downloads sesuai sistem operasi yang digunakan
  2. Hubungkan ESP32 dengan kabel data ke Laptop/PC
  3. Buka menu Tools > Port, lalu pilih Port yang tersedia. Misalnya “COM3” untuk laptop yang kugunakan
Tampilan pilihan port yang tersedia

Jika semua tools dan setup di atas sudah dilakukan, kita siap memulai project kali ini. Let’s get start it!

— Steps

Untuk melakukan LED Blinking menggunakan ESP32, berikut langkah sederhana yang dapat dilakukan.

  1. Hubungkan ESP32 ke Laptop/PC
  2. Siapkan code untuk LED blinking, bisa dengan mengakses menu File > Examples > 01.Basics > Blink atau menyalin code yang dilampirkan di bawah
  3. Upload code tersebut dengan menekan tombol upload

Berikut code yang dapat menjadi alternatif untuk LED Blinking.

// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}

Voila! LED Internal ESP32 akan berkedip sesuai periode atau delay yang ditentukan pada code sebelumnya.

LED Blinking setiap 1 detik

--

--