Chapter 2: Setup Development Environment
Sebelum mulai coding, kita perlu install tools yang diperlukan. Tutorial ini akan menggunakan Arduino IDE karena paling mudah untuk pemula.
Step 1: Download Arduino IDE
- Buka website arduino.cc/en/software
- Download Arduino IDE versi terbaru (2.x atau 1.8.x)
- Install sesuai OS Anda:
- Windows: Download .exe installer
- macOS: Download .dmg file
- Linux: Download AppImage atau gunakan package manager
Step 2: Install ESP32 Board Support
Langkah-langkahnya:
1. Buka Arduino IDE
2. Tambahkan ESP32 Board Manager URL
- Masuk ke
File→Preferences(atauArduino IDE→Settingsdi macOS) - Di bagian “Additional Boards Manager URLs”, paste URL berikut:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- Klik OK
3. Install ESP32 Board
- Masuk ke
Tools→Board→Boards Manager - Search:
esp32 - Pilih “esp32 by Espressif Systems”
- Klik
Install(tunggu hingga selesai, ~200MB)
Step 3: Install USB Driver (Windows Only)
Jika menggunakan Windows dan board Anda menggunakan chip CH340 atau CP2102, perlu install driver:
CH340 Driver:
- Download dari: sparks.gogo.co.nz/ch340.html
- Extract dan jalankan installer
- Restart komputer
CP2102 Driver:
- Download dari: silabs.com/developers/usb-to-uart-bridge-vcp-drivers
- Install sesuai petunjuk
- Restart komputer
macOS & Linux: Biasanya driver sudah built-in, tidak perlu install manual.
Step 4: Koneksikan ESP32 ke Komputer
- Ambil ESP32 board Anda
- Gunakan kabel USB (pastikan kabel support data transfer, bukan charging only)
- Colokkan ke komputer
Verifikasi Koneksi:
Windows:
- Buka
Device Manager - Cek di
Ports (COM & LPT) - Harusnya muncul
COM3atauCOM4(USB-SERIAL CH340)
macOS:
- Buka
Terminal - Ketik:
ls /dev/cu.* - Harusnya muncul:
/dev/cu.usbserial-xxxxxatau/dev/cu.SLAB_USBtoUART
Linux:
- Buka Terminal
- Ketik:
ls /dev/ttyUSB* - Harusnya muncul:
/dev/ttyUSB0
Step 5: Konfigurasi Board di Arduino IDE
Pilih Board
Tools→Board→ESP32 Arduino- Pilih: “ESP32 Dev Module” (universal, work untuk semua board)
- Atau pilih sesuai board Anda (misal: “NodeMCU-32S”)
Pilih Port
Tools→Port- Pilih port yang muncul (COM3, /dev/ttyUSB0, dll)
Setting Upload Speed
Tools→Upload Speed- Pilih: 115200 (safe speed untuk semua board)
Setting Flash Frequency
Tools→Flash Frequency- Pilih: 80MHz (recommended)
Setting Partition Scheme
Tools→Partition Scheme- Pilih: “Default 4MB with spiffs”
Step 6: Test Connection
Mari kita test apakah setup sudah benar:
- Buka Arduino IDE
- Pilih
File→Examples→01.Basics→Blink - Akan muncul sketch Blink (untuk Arduino Uno)
- Ubah line ini:
// Dari:
#define LED_BUILTIN 13
// Menjadi:
#define LED_BUILTIN 2
- Klik tombol Upload (icon panah ke kanan)
- Tunggu proses compile & upload
- Jika sukses, harusnya ada message:
Hard resetting via RTS pin...
- LED onboard di ESP32 harusnya berkedip!
Troubleshooting
Problem: Port Tidak Muncul
Solusi:
- Coba ganti kabel USB (pastikan bukan charging only cable)
- Install ulang driver
- Coba port USB lain di komputer
- Restart komputer
Problem: Upload Failed
Solusi:
- Hold tombol
BOOTdi ESP32 saat upload dimulai - Coba lower upload speed:
Tools→Upload Speed→115200atau57600 - Pastikan tidak ada serial monitor yang terbuka
- Check port apakah sudah benar
Problem: “Timed out waiting for packet header”
Solusi:
- Hold tombol
BOOTsaat muncul “Connecting…” - Atau tekan
EN(reset) button sambil holdBOOT - Coba gunakan upload speed lebih rendah
Optional: Install Libraries
Beberapa library yang akan berguna:
- WiFi - Sudah built-in
- HTTPClient - Sudah built-in
- DHT Sensor Library - Install via Library Manager
- Adafruit SSD1306 - Untuk OLED display
Cara install library:
Tools→Manage Libraries- Search nama library
- Klik Install
Kesimpulan
Sekarang development environment Anda sudah siap! Kita sudah:
✅ Install Arduino IDE ✅ Install ESP32 board support ✅ Install USB driver (Windows) ✅ Konfigurasi board settings ✅ Test upload program
Di chapter selanjutnya, kita akan membuat program pertama dari nol dan memahami struktur code ESP32.
Previous: ← Chapter 1 - Pengenalan ESP32 Next: Chapter 3 - Program Pertama (Blink LED) →