Panduan Lengkap Pinout ESP32-CAM-MB dengan Kamera OV3660 - Mengenal Fungsi dan Penggunaan Setiap GPIO

ESP32-CAM merupakan salah satu modul mikrokontroler berbasis ESP32 yang banyak digunakan dalam proyek Internet of Things (IoT), sistem keamanan, pengenalan wajah, pemantauan jarak jauh, hingga aplikasi kecerdasan buatan berbasis kamera. Modul ini menggabungkan kemampuan pemrosesan data dari ESP32 dengan sensor kamera beresolusi tinggi dalam ukuran yang ringkas dan biaya yang relatif terjangkau. Pada artikel ini, pembahasan difokuskan pada ESP32-CAM yang digunakan bersama papan programmer ESP32-CAM-MB dan kamera OV3660. Selain dilengkapi kamera, modul ini juga menyediakan slot microSD serta beberapa pin GPIO yang masih dapat dimanfaatkan untuk menghubungkan sensor maupun perangkat eksternal lainnya. Sebelum mulai mengembangkan proyek, penting untuk memahami fungsi setiap GPIO karena sebagian besar pin pada ESP32-CAM sudah digunakan oleh kamera, memori PSRAM, dan slot microSD.

Pinout ESP32-CAM

Diagram pinout membantu pengguna mengetahui fungsi masing-masing pin yang tersedia pada modul ESP32-CAM.



Melalui diagram pinout, Anda dapat melihat pin yang digunakan untuk catu daya, komunikasi serial, kartu microSD, LED bawaan, serta pin yang masih tersedia untuk kebutuhan proyek tambahan.

Pin Catu Daya ESP32-CAM

ESP32-CAM menyediakan beberapa pin yang berkaitan dengan suplai daya, yaitu pin GND, pin 3.3V, dan pin 5V. Modul ini dapat diberi catu daya melalui pin 3.3V maupun pin 5V. Namun, dalam praktiknya penggunaan pin 5V lebih direkomendasikan karena mampu memberikan suplai daya yang lebih stabil, terutama saat kamera aktif dan konsumsi arus meningkat.

 

Jika menggunakan sumber tegangan 3.3V yang kurang stabil, ESP32-CAM dapat mengalami berbagai masalah seperti gagal booting, restart otomatis, atau kamera tidak dapat beroperasi dengan baik. Oleh karena itu, sebagian besar proyek ESP32-CAM menggunakan tegangan masukan 5V yang kemudian diatur oleh regulator internal menjadi tegangan kerja yang dibutuhkan sistem.

Pin VCC sebagai Output Tegangan

Selain pin 3.3V dan 5V, terdapat sebuah pin yang diberi label VCC pada papan ESP32-CAM. Perlu diperhatikan bahwa pin ini bukan digunakan sebagai sumber masukan daya, melainkan sebagai keluaran tegangan yang dapat dimanfaatkan untuk memberi daya pada sensor atau modul tambahan dengan kebutuhan arus kecil.


Secara bawaan, pin VCC biasanya menghasilkan tegangan 3.3V. Di dekat pin tersebut terdapat jalur solder yang memungkinkan pengguna mengubah tegangan keluaran menjadi 5V. Namun, modifikasi ini memerlukan proses penyolderan dan sebaiknya dilakukan oleh pengguna yang sudah berpengalaman.

Pin Serial untuk Upload Program

ESP32-CAM tidak dilengkapi konverter USB-to-Serial bawaan seperti Arduino Uno. Oleh karena itu, proses pemrograman membutuhkan bantuan modul USB-to-TTL atau papan ESP32-CAM-MB. Komunikasi serial dilakukan melalui GPIO 1 sebagai pin TX dan GPIO 3 sebagai pin RX. Kedua pin ini digunakan saat proses upload program maupun komunikasi serial dengan komputer. Setelah program berhasil diunggah, GPIO 1 dan GPIO 3 sebenarnya masih dapat digunakan untuk perangkat eksternal. Namun, penggunaan pin tersebut dapat mengganggu fungsi Serial Monitor yang biasa digunakan untuk proses debugging.

GPIO 0 dan Mode Upload Program

GPIO 0 merupakan salah satu pin terpenting pada ESP32-CAM karena menentukan mode operasi perangkat saat dinyalakan. Ketika GPIO 0 dihubungkan ke GND, ESP32 akan masuk ke mode flashing sehingga program baru dapat diunggah ke memori. Sebaliknya, jika GPIO 0 tidak terhubung ke GND, ESP32 akan menjalankan program yang tersimpan di memori seperti biasa. Pada penggunaan ESP32-CAM-MB, proses ini biasanya lebih mudah karena papan programmer telah menyediakan tombol untuk mempermudah proses upload tanpa harus memasang kabel jumper secara manual.

GPIO 16 dan Memori PSRAM

Sebagian besar modul ESP32-CAM menggunakan GPIO 16 untuk berkomunikasi dengan memori PSRAM internal. PSRAM berfungsi sebagai memori tambahan yang sangat penting untuk pemrosesan gambar beresolusi tinggi, streaming video, maupun aplikasi pengolahan citra yang membutuhkan kapasitas RAM lebih besar. Karena digunakan oleh PSRAM, GPIO 16 umumnya tidak disarankan untuk digunakan sebagai pin input atau output tambahan selama kamera aktif.

GPIO yang Digunakan Slot microSD

ESP32-CAM dilengkapi slot microSD yang memungkinkan penyimpanan gambar, video, maupun data lainnya secara lokal. Saat slot microSD digunakan, beberapa GPIO akan dialokasikan khusus untuk komunikasi dengan kartu memori. Namun, jika fitur microSD tidak digunakan, pin-pin tersebut dapat dimanfaatkan sebagai GPIO tambahan untuk sensor atau aktuator.


Beberapa pin yang terhubung ke slot microSD juga mendukung fungsi ADC dan RTC GPIO sehingga dapat digunakan untuk pembacaan sinyal analog maupun aplikasi yang memanfaatkan fitur deep sleep.

Apabila proyek membutuhkan lebih banyak GPIO, kartu microSD dapat dioperasikan dalam mode 1-bit sehingga beberapa jalur data tambahan menjadi tersedia untuk penggunaan lain.

LED Flash Bawaan pada GPIO 4

ESP32-CAM memiliki LED putih berintensitas tinggi yang berfungsi sebagai lampu flash saat mengambil gambar. LED tersebut terhubung langsung ke GPIO 4. Karena GPIO 4 juga digunakan oleh slot microSD, terkadang LED flash dapat menyala ketika kartu memori sedang diakses. Kondisi ini merupakan hal yang normal dan sering ditemui pada berbagai proyek ESP32-CAM. Untuk mengurangi konflik tersebut, kartu microSD dapat dijalankan dalam mode 1-bit menggunakan konfigurasi berikut: 


SD_MMC.begin("/sdcard", true);


Dengan konfigurasi tersebut, LED flash umumnya tidak akan berkedip saat proses akses data berlangsung.

LED Indikator Merah pada GPIO 33

Di dekat tombol reset terdapat LED merah bawaan yang terhubung ke GPIO 33. LED ini dapat digunakan sebagai indikator status sistem, misalnya untuk menunjukkan koneksi Wi-Fi berhasil, proses penyimpanan data sedang berlangsung, atau kondisi kesalahan tertentu. Berbeda dengan LED pada umumnya, LED merah ini menggunakan logika terbalik. Artinya, LED akan menyala ketika GPIO 33 diberi logika LOW dan akan mati ketika diberi logika HIGH. Contoh program sederhana untuk menyalakan LED merah adalah sebagai berikut:

 

void setup() {

  pinMode(33, OUTPUT);

}


void loop() {

  digitalWrite(33, LOW);

}


Koneksi Kamera OV3660 pada ESP32-CAM

Kamera OV3660 menggunakan sejumlah GPIO khusus untuk mengirimkan data gambar ke mikrokontroler ESP32. Karena pin-pin tersebut sudah digunakan oleh kamera, pengguna tidak dapat memanfaatkannya untuk fungsi lain selama kamera aktif.


Pada konfigurasi standar ESP32-CAM, GPIO 32 digunakan sebagai pin Power Down (PWDN), sedangkan GPIO 0 berfungsi sebagai sumber clock kamera (XCLK). Untuk komunikasi konfigurasi kamera, GPIO 26 digunakan sebagai SIOD dan GPIO 27 sebagai SIOC.

 

Data gambar dikirim melalui GPIO 35, GPIO 34, GPIO 39, GPIO 36, GPIO 21, GPIO 19, GPIO 18, dan GPIO 5. Sementara itu, sinyal sinkronisasi video menggunakan GPIO 25 sebagai VSYNC, GPIO 23 sebagai HREF, dan GPIO 22 sebagai PCLK. Berikut konfigurasi pin yang umum digunakan pada Arduino IDE:

 

#define PWDN_GPIO_NUM  32

#define RESET_GPIO_NUM -1

#define XCLK_GPIO_NUM  0

#define SIOD_GPIO_NUM  26

#define SIOC_GPIO_NUM  27


#define Y9_GPIO_NUM    35

#define Y8_GPIO_NUM    34

#define Y7_GPIO_NUM    39

#define Y6_GPIO_NUM    36

#define Y5_GPIO_NUM    21

#define Y4_GPIO_NUM    19

#define Y3_GPIO_NUM    18

#define Y2_GPIO_NUM    5


#define VSYNC_GPIO_NUM 25

#define HREF_GPIO_NUM  23

#define PCLK_GPIO_NUM  22


Konfigurasi tersebut memungkinkan ESP32 berkomunikasi dengan sensor kamera OV3660 untuk menangkap gambar maupun melakukan streaming video secara real-time.

GPIO yang Aman Digunakan untuk Proyek Tambahan

Karena sebagian besar pin telah digunakan oleh kamera dan microSD, jumlah GPIO yang tersedia pada ESP32-CAM memang lebih terbatas dibandingkan papan ESP32 biasa. Dalam banyak proyek, GPIO 1, GPIO 3, GPIO 4, GPIO 12, GPIO 13, GPIO 14, GPIO 15, dan GPIO 33 masih dapat dimanfaatkan untuk sensor atau perangkat tambahan. Namun, pengguna tetap perlu memperhatikan fungsi khusus masing-masing pin agar tidak terjadi konflik yang dapat menyebabkan sistem gagal booting atau perangkat tidak bekerja sebagaimana mestinya.

 

 

 

 

Dalam praktik, hasil dan kendala yang ditemui bisa berbeda tergantung perangkat, konfigurasi, versi library, dan sistem yang digunakan.

Posting Komentar

0 Komentar