ESP32
ESP32 adalah board mikrokontroler yang lebih bertenaga dari Arduino Uno dan dilengkapi WiFi serta Bluetooth bawaan, sehingga menjadi pilihan utama untuk proyek Internet of Things (IoT). Di Noviot, ESP32 yang disimulasikan adalah board pengembangan ESP32 DevKit, lengkap dengan WiFi virtual, Web Server virtual, dan MQTT virtual.
GPIO: pin serbaguna
Pin-pin ESP32 disebut GPIO (General Purpose Input Output) dan dirujuk dengan nomornya, misalnya GPIO2, GPIO13, atau GPIO27. Seperti pin digital pada Uno, GPIO bisa menjadi INPUT atau OUTPUT, tetapi kemampuannya lebih kaya: banyak GPIO yang merangkap fungsi analog, PWM, dan sentuh sekaligus.
Perlu diingat, penomoran pada ESP32 adalah nomor GPIO, bukan nomor urut fisik di board. Saat menyambung kabel di Noviot, label pada board menunjukkan nomor GPIO yang harus kamu tulis di sketch.
ADC dan masukan analog
ESP32 memiliki ADC (Analog to Digital Converter) untuk membaca sensor analog dengan analogRead(), misalnya potensiometer dan LDR. Resolusi bacaannya lebih halus daripada Uno, dengan rentang nilai 0–4095. Tegangan kerja ESP32 adalah 3,3 volt, jadi pin-pinnya bekerja pada level 3,3V, bukan 5V seperti Uno.
PWM
Hampir semua GPIO ESP32 bisa menghasilkan sinyal PWM lewat fungsi analogWrite() maupun pengaturan kanal LEDC. Kemampuan ini dipakai untuk meredupkan LED, mengatur kecepatan motor, dan menghasilkan nada. Fleksibilitas ini membuat pengaturan keluaran analog di ESP32 terasa lebih bebas dibandingkan Uno yang pin PWM-nya terbatas.
Daya
| Pin | Fungsi |
|---|---|
| 3V3 | Sumber tegangan 3,3 volt untuk komponen |
| GND | Ground |
| VIN | Masukan tegangan dari sumber eksternal |
Seperti pada Uno, gunakan breadboard sebagai power hub bila banyak komponen berbagi jalur 3V3 atau GND.
WiFi virtual dan layanan IoT
Keistimewaan ESP32 di Noviot adalah layanan virtualnya. Sketch bisa terhubung ke WiFi virtual dengan WiFi.begin() dan menerima alamat IP virtual 192.168.4.2, tanpa jaringan asli. Di atas koneksi itu, ESP32 bisa menjalankan Web Server virtual yang halamannya tampil di panel pratinjau web, dan berkomunikasi lewat MQTT virtual dengan broker bawaan broker.noviot.local, lengkap dengan tab MQTT dan Dashboard IoT untuk grafik data sensor. Penjelasan lengkapnya ada di halaman WiFi Virtual ESP32, Web Server Virtual ESP32, dan MQTT dan Dashboard IoT.
| Label pin | ID pin | Peran |
|---|---|---|
D23 | GPIO23 | digital |
D22 | GPIO22 | digital |
TX0 | GPIO1 | digital |
RX0 | GPIO3 | digital |
D21 | GPIO21 | digital |
D19 | GPIO19 | digital |
D18 | GPIO18 | digital |
D5 | GPIO5 | digital |
TX2 | GPIO17 | digital |
RX2 | GPIO16 | digital |
D4 | GPIO4 | digital |
D2 | GPIO2 | digital |
D15 | GPIO15 | digital |
D13 | GPIO13 | digital |
D12 | GPIO12 | digital |
D14 | GPIO14 | digital |
D27 | GPIO27 | digital |
D26 | GPIO26 | digital |
D25 | GPIO25 | digital |
D33 | GPIO33 | digital |
D32 | GPIO32 | digital |
D35 | GPIO35 | digital |
D34 | GPIO34 | digital |
VN | GPIO39 | digital |
VP | GPIO36 | digital |
VIN | VIN | vin |
GND | GND1 | gnd |
GND | GND2 | gnd |
3V3 | 3V3 | vcc3v3 |
EN | EN | passive |