ESP32 Tutorial Part 1 (Blink Test)
Hai haii, sebelumnya kenalin dulu nih, aku Ilham Alvindo Riandova dari Sistem dan Teknologi Informasi Institut Teknologi Bandung, dan saat ini aku sedang menempuh studi semester 4 di kampus gajah #asik. Pada semester 4 ini Pak Soni selaku pengampu mata kuliah II2260 Sistem Embedded meminta kami untuk mengerjakan project dengan ESP32. Jadi aku akan memberikan tutorial untuk blink test di ESP32 itu sendiri. Yuk langsung aja!
Eh bentar, tapi ESP32 itu apa gan?
Jadi fyi, ESP32 ini adalah sebuah microcontroller, yaa semacam arduino lah ya. ESP32 ini secara sistem sudah lebih mumpuni dari arduino. Kelebihan dari ESP32 ini juga banyak. Mulai dari microcontrollernya yang udah 32 bit, terdapat bluetooth, dan ada wifi juga!. Untuk informasi selanjutnya bisa cari di google ya kelebihannya apa hehehe.
Jadi tutorial pertama untuk memulai menggunakan ESP32 adalah dengan menyiapkan komponen-komponen berikut :
- Arduino IDE
- Breadboard (optional)
- USB to UART Converter
- ESP32 (ada banyak variasi, cuman yang aku punya itu 30 pin)
- Laptop atau komputer
- Micro USB cable
SOO MARI KITA MULAI !
A. INSTALASI
1. INSTALASI ARDUINO IDE
Nah untuk penginstallan arduino IDE, bisa di download sesuai sistem operasi laptop/komputer di link ini ya! https://www.arduino.cc/en/software/
Setelah selesai penginstallan akan keluar seperti ini
2. INSTALASI PACKAGE ESP32
Karena ini adalah software untuk arduino dan bukan untuk ESP32, maka kita perlu menginstall extension untuk ESP32 di arduino IDE nya dengan mengubah Additional Boards Manager URL-nya. Dengan cara klik
File -> Preferences
lalu masukkan link berikut pada additional boards manager URL-nya : https://dl.espressif.com/dl/package_esp32_index.json , Lalu klik OK.
Lalu setelah itu kita perlu menginstall ESP32 extensionnya. Dengan cara klik
Tools -> Board -> Boards Manager
Lalu ketik ESP32 pada kolom pencarian, dan install ESP32 extensionnya.
Setelah selesai menginstall ESP32 extensionnya. Kembali lagi ke Tools -> Board. Lalu pilih ESP32 Arduino -> Pilih DOIT ESP32 DEVKIT V1.
3. INSTALASI USB to UART CONVERTER
Karena ini adalah software untuk arduino, maka kita perlu menginstall driver USB to UART. Karena kabel yang digunakan oleh Arduino dan ESP32 berbeda. Converter USB to UART bisa di download pada link berikut yapp!
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
B. BLINK TEST
1. SKEMA BLINK TEST
Untuk memulai blink test, yang pertama kita lakukan adalah memasukkan ujung micro usb yang kecil ke ESP32 dan yang besar ke port usb laptop, dengan skema seperti berikut.
Lalu buka Arduino IDE, dan pastikan Board yang ada pada Arduino IDE sudah berada pada DOIT ESP32 DEVKIT 1 dan juga portnya sudah berada pada port yang tersedia (Nomor port bisa berbeda seperti COM3, COM4, COM9, atau COM lainnya ya!).
Selanjutnya untuk memulai blink test, kita memakai blink test yang sudah tersedia pada Arduino IDE. Caranya adalah dengan cara klik
File -> Examples -> 01.Basics -> Blink
2. SOURCE CODE
Setelah kita memilih example blink yang terdapat pada Arduino IDE, kita akan menemukan code default sebagai berikut:
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
“M..maksud codenya apa, aku gangerti” -anonim, 2021.
Nanti dibawah kita bahas apa maksud codenya ya! kita lanjut dulu aja okee :)).
Setelah ketemu dengan code diatas, kita tinggal klik “upload” (yang tanda panah ke kanan).
tunggu sebentarr,
DAAN TADAAAA
Lampu warna biru yang ada di ESP32 nya kelap-kelip kayak lampu sen ibu-ibu yang ke kanan taunya belok kiri! :D
Pertanyaannya adalah..
“Lah kok bisa gitu?!” -anonim, 2021.
3. PEMBAHASAN SOURCE CODE
Daripada kita bingung kenapa lampunya bisa mati-nyala, mati-nyala mending kita analisis codenya yang bisa bikin lampunya kayak gitu!
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
Pada code diatas fungsi void setup adalah hal wajib yang harus ditulis untuk menjalankan ESP32. Fungsi ini terdiri dari code yang bertuliskan pinMode(LED_BUILTIN, OUTPUT). Maksud dari pinMode adalah mengkonfigurasi pin pada ESP32 agar bekerja menjadi sebuah input atau output. Salah satu parameter yang digunakan pada pinMode adalah LED_BUILTIN yang artinya adalah memakai lampu default yang sudah ada pada ESP32 (yang warna biru), dan OUTPUT mengartikan lamput tersebut akan menjadi keluaran dari fungsinya.
b. Void loop
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
Void loop berarti menandakan bahwa ini adalah prosedur yang berulang (looping). Pada code, terdapat digitalWrite(LED_BUILTIN, HIGH). digitalWrite sendiri digunakan untuk mengirimkan sinyal digital ke pin yang tersambung dan juga untuk tegangan yang sudah ditentukan. LED_BUILTIN pada code berarti bahwa fungsi ini menggunakan pin default LED_BUILTIN yang ada pada ESP32 untuk dikirimkan sinyal digital dengan voltase HIGH (tinggi). code ini mengartikan bahwa lampu LED akan menyala jika dikirimkan sinyal dengan voltase HIGH. Lalu fungsi delay(1000) adalah durasi lamanya waktu lampu menyala dalam milisecond. Maka arti dari code digitalWrite(LED_BUILTIN, HIGH); delay(1000); adalah lampu built in yang ada pada ESP32 akan menyala dengan lama 1000 milisecond atau 1 detik.
Pada code terdapat juga digitalWrite(LED_BUILTIN, LOW). Sama seperti sebelumnya, LED_BUILTIN pada code berarti bahwa fungsi ini menggunakan pin LED_BUILTIN yang ada pada ESP32 untuk dikirimkan sinyal digital dengan voltase atau tegangan LOW (rendah). Karena voltase rendah maka ini mengartikan bahwa lampu akan mati. Lalu delay(1000) adalah durasi waktu saat mati, yaitu 1000 milisecond atau 1 detik.
Seperti yang tadi pertama dibilang bahwa void loop adalah fungsi berulang (looping) yang artinya bahwa ESP32 akan mengulang code dari atas lagi sampai bawah, lalu mengulanginya lagi dari atas sampai bawah, dan seterusnya hingga ia mendapatkan upload code yang baru atau ada inputan baru.
Nah jadi dari code diatas, maka output yang terjadi pada ESP32 adalah, lampu BUILTIN yang ada di ESP32 akan menyala selama 1 detik kemudian mati selama 1 detik, hingga berulang-ulang. Jadi itulah kenapa LEDnya bisa redup terang redup terang. Kita juga bisa mainin delaynya kok, misal mau diperpanjang durasinya atau diperpendek kayak lampu disko gitu :))
Untuk videonya dapat dilihat pada video dibawah ini ya !!!
Jadi sekian pembahasan untuk instalasi dan blink pada ESP32, maaf kalo ada kesalahan dari penulis yang masih belajar ini. Terima kasih sudah membaca dan sampai berjumpa di lain project :D
Referensi :
- randomnerdstutorial.com
- embeddednesia.com
Best Regards,
Ilham Alvindo Riandova (18219063)
Sistem dan Teknologi Informasi, Institut Teknologi Bandung.