Logo Universitas

Universitas ASA Indonesia


Program Studi: Teknologi Informasi
Mata Kuliah: Internet of Things
SKS: 3 (Tiga)
Dosen Pengampu: Istiqomah Sumadikarta, S.T., M.Kom.
Beranda Mundur Maju

Pertemuan 9: Praktik Pemrograman Mikrokontroler ESP32

Tujuan Pembelajaran

1. ESP32

Pengenalan ESP32

ESP32 adalah mikrokontroler yang dilengkapi dengan WiFi dan Bluetooth, dikembangkan oleh Espressif Systems. Modul ini sangat populer dalam pengembangan IoT karena performanya yang tinggi dan biaya yang terjangkau.

Pinout ESP32

Spesifikasi ESP32

Fitur Spesifikasi
CPU Dua inti Tensilica Xtensa LX6, hingga 240 MHz
RAM 520 KB SRAM internal
WiFi 802.11 b/g/n
Bluetooth v4.2 BR/EDR dan BLE
GPIO Hingga 34 pin
ADC/DAC 12-bit ADC, 2 × 8-bit DAC

PIN ESP32

ESP32 memiliki pin multifungsi (GPIO) yang dapat digunakan sebagai digital input/output, ADC, PWM, UART, SPI, dan I2C.

Pinout ESP32

Komunikasi Wired ESP32

ESP32 dapat berkomunikasi dengan perangkat lain melalui I2C (Inter-Integrated Circuit), SPI (Serial Peripheral Interface), dan UART (universal asynchronous receiver-transmitter). Protokol ini umum digunakan untuk menghubungkan sensor dan aktuator.

2. WiFi

Istilah pada WiFi

3. WiFi ESP32

ESP32 sebagai Access Point

ESP32 bekerja dengan memancarkan sinyal WiFi agar diterima oleh perangkat lain (Smartpone, Laptop, dll.). SSID (nama Wifi) dan password yang diberikan dapat dikonfigurasi melalui program yang diupload pada ESP32. Mode ini biasa digunakan saat ESP32 bertindak sebagai penyedia data jaringan lokal.

ESP32 sebagai client

ESP32 bertindak sebagai station atau penerima sinyal Wifi yang dipancarkan oleh perangkat lain (Router, Access Point, dll.) sehingga ESP32 harus menyesuaikan SSID dan password sesuai dengan router yang dikoneksikan. SSID (nama Wifi) dan password dapat dikonfigurasi melalui program yang diupload pada ESP32 sesuai dengan router/access point yang akan dihubungkan. ESP32 akan menerima alamat IP dari router tersebut. Mode ini lebih fleksibel karena dapat digunakan saat ESP32 bertindak sebagai penyedia data, maupun pengirim data ke jaringan lokal dan internet.

Praktikum

Simulasi koneksi WIFI pada ESP32

1. Buatlah rangkaian ESP32 seperti berikut ini:

Simulasi ESP32 Wokwi

2. Buat kode program seperti berikut ini:

#if defined(ESP8266)
#include 
#elif defined(ESP32)
#include 
#endif

#define WIFI_SSID           "Wokwi-GUEST"
#define WIFI_PASSWORD       ""
#define SERIAL_DEBUG_BAUD   115200
#define LED 2
// the Wifi radio's status
int status = WL_IDLE_STATUS;

void InitWiFi()
{
  Serial.println("Connecting to AP ...");
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("Connected to AP");
}
void reconnect() {
  status = WiFi.status();
  if ( status != WL_CONNECTED) {
    WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
    while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.print(".");
    }
    Serial.println("Connected to AP");
  }
}
void setup() {
  // initialize serial for debugging
  Serial.begin(SERIAL_DEBUG_BAUD);
  Serial.println();
  InitWiFi();
  pinMode(LED, OUTPUT);
}
void loop() {
  delay(1000);
  if (WiFi.status() != WL_CONNECTED) {
    reconnect();
  }
  else {
    Serial.print("WiFi sudah terkoneksi dengan ");
    Serial.println(WIFI_SSID);
    Serial.print("IP: ");
    Serial.println(WiFi.localIP());
    digitalWrite(LED, HIGH);
    delay(1000);
    digitalWrite(LED, LOW);
    delay(1000);
  }
}

3. Jalankan simulator

Simulasi ESP32 Wokwi

5. Challenge

Buatlah simulasi esp32 scan koneksi wifi dengan tekan button kemudian dengan indikator led menyala jika berhasil.

Simulasi ESP32 Wokwi

Komponen Utama

No Komponen Label Fungsi
1 ESP32 Devkit-C V4 esp Mikrokontroler utama yang mengendalikan LED dan membaca input tombol
2 LED Merah led1 Indikator visual yang menyala saat tombol ditekan
3 Resistor 220Ω r1 Membatasi arus ke LED agar tidak rusak
4 Push Button btn1 Saklar input untuk mengendalikan LED
5 Resistor 10kΩ r2 Resistor pull-down agar pembacaan tombol stabil

Koneksi Antar Komponen

Komponen Pin Komponen Terhubung ke Pin ESP32 Keterangan
LED Merah Anoda (+) ESP32 GPIO2 Kontrol LED
LED Merah Katoda (–) Resistor 220Ω GND Pembatas arus
Push Button Kaki kiri ESP32 5V Sumber logika HIGH
Push Button Kaki kanan ESP32 GPIO12 Input tombol
Resistor 10kΩ Satu ujung Push Button kaki kanan GPIO12 Menarik input ke LOW saat tombol dilepas
Resistor 10kΩ Ujung lain ESP32 GND Pull-down

Penutup

Pada pertemuan ini, Anda telah mempelajari konsep dasar ESP32, spesifikasinya, serta cara menghubungkan ESP32 ke jaringan WiFi sebagai client.

Daftar Pustaka

  1. Espressif Systems. ESP32 Datasheet
  2. Wokwi Documentation. Link
  3. Arduino WiFi Library. Link

Glosarium Istilah

ESP32
Mikrokontroler dengan WiFi dan Bluetooth, populer untuk IoT.
SSID
Nama unik yang mengidentifikasi jaringan WiFi.
Access Point
Perangkat yang menyediakan jaringan WiFi.
Client
Perangkat yang terhubung ke Access Point untuk mengakses jaringan.
IP Address
Alamat unik perangkat dalam jaringan komputer.
Beranda Mundur Maju