Selama ini saya menggunakan ESP32 dari model Lolin32. Sebagai alternatif, saya mencari board ESP32 dengan ukuran mirip dengan Lolin32, supaya dapat dipasang juga di breadboard. Hal ini penting karena saya sering melakukan percobaan di atas breadboard, dan mesti siap-siap juga kalau-kalau Lolin32 tidak ada lagi. Lolin32 mini sudah tidak diproduksi lagi oleh Wemos, sehingga bisa saja suatu hari tidak ada lagi.
Setelah cari sana-sini, kandidat board yang cocok adalah ESP32 DevkitC clone, atau disebut juga di pasaran sebagai NodeMCU ESP32.
Penampakan
Berikut ini tampak atas dari ESP32 DevkitC.
Berikut ini tampak bawah dari ESP32 DevkitC
Berikut ini ESP32 DevkitC di atas breadboard. ESP32 ini tidak terlalu lebar, sehingga cocok untuk percobaan dengan breadboard.
Ukuran board ESP32 ini mirip sekali dengan Lolin32 (Wemos). Berikut ini perbandingan lebar antara DevkitC (kiri) dan Lolin32 Lite (kanan).
Berikut ini perbandingan panjang antara DevkitC (bawah) dan Lolin32 Lite (atas).
Pinout
Berikut ini daftar pin pada ESP32 DevkitC. Total ada 38 pin yang dikeluarkan dari ESP32, namun ada 8 pin yang sifatnya internal, jadi praktis tidak dapat dipakai untuk aplikasi normal.
sumber: https://esphome.io/devices/nodemcu_esp32.html
Pada waktu memasukkan program dari PC ke board ini, tombol ‘Boot’ harus ditekan. Posisi tombol ‘boot’ dapat dilihat pada gambar berikut.
sumber gambar: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html
Tombol ‘EN’ fungsinya adalah untuk reset.
Contoh Kode
Pada board ESP32 tersebut terdapat sebuah LED yang dapat dikendalikan melalui GPIO2. Berikut ini contoh membuat LED kedip dengan modifikasi software Blink.ino bawaan Arduino. Mesti ditambahkan baris ‘#define LED_BUILTIN 2’ supaya dapat mengakses pin GPIO yang benar.
#define LED_BUILTIN 2
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
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
}
Pada board DevkitC yang asli tidak ada LED on board, sedangkan pada board clone ini ada LEDnya. Keberadaan LED ini cukup membantu untuk melakukan percobaan sederhana dan debugging sederhana.
Keuntungan DevkitC ini dibandingkan Lolin32 adalah tersedia tegangan 5 volt, tidak hanya 3 volt. Tegangan 5 volt ini perlu untuk beberapa sensor yang hanya dapat bekerja di tegangan 5 volt.
Referensi
- ESP32-DevKitC V4 Getting Started Guide
- Wikipedia: NodeMCU
- NodeMCU ESP32
- Espressif: DevkitC Schematic
- Datasheet ESP32-WROOM-32 https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf
Sekian