ESP32 Bluetooth Classic dengan Arduino IDE

Tujuan
- Memahami cara mengatur dan menggunakan ESP32 untuk komunikasi Bluetooth Classic.
- Mampu mengirim dan menerima data menggunakan Bluetooth.
Alat dan Bahan
- Modul ESP32
- Kabel USB untuk koneksi ke komputer
- Arduino IDE (pastikan sudah terinstal)
- Smartphone atau perangkat lain yang mendukung Bluetooth

Langkah-langkah
- Persiapan Lingkungan
-
- Install Arduino IDE jika belum terpasang.
- Tambahkan dukungan untuk ESP32 di Arduino IDE:
-
-
- Buka Arduino IDE, pergi ke File > Preferences.
- Tambahkan URL berikut di bagian “Additional Board Manager URLs”:
https://dl.espressif.com/dl/package_esp32_index.json - Pergi ke Tools > Board > Board Manager, cari “ESP32” dan instal.
-
- Pilih Board ESP32
-
- Pilih board yang sesuai dengan ESP32 Anda:
Tools > Board > ESP32 Dev Module (atau board lain yang sesuai).
- Pilih board yang sesuai dengan ESP32 Anda:
- Koneksi ESP32
-
- Hubungkan ESP32 ke komputer menggunakan kabel USB.
- Contoh Kode
-
- Salin dan tempel kode berikut ke dalam Arduino IDE:
#include "BluetoothSerial.h"
BluetoothSerial SerialBT;
void setup() {
Serial.begin(115200);
SerialBT.begin("ESP32_BT"); // Nama perangkat Bluetooth
Serial.println("Perangkat Bluetooth siap untuk dipasangkan");
}
void loop() {
if (SerialBT.available()) {
//Serial.write(SerialBT.read());
char incomingChar = SerialBT.read();
Serial.print("Diterima: ");
Serial.println(incomingChar);
}
if (Serial.available()) {
char outgoingChar = Serial.read();
SerialBT.print(outgoingChar);
Serial.print("Terkirim: ");
Serial.println(outgoingChar);
}
delay(20);
}
- Contoh Code Aplikasi
#include "BluetoothSerial.h"
#include "DHT.h"
#define DHTPIN 2 // Pin data DHT11
#define DHTTYPE DHT11 // DHT11 digunakan
DHT dht(DHTPIN, DHTTYPE);
// Check if Bluetooth configs are enabled
#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
#error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
#endif
// Bluetooth Serial object
BluetoothSerial SerialBT;
// GPIO where LED is connected to
const int ledPin = 25;
// Handle received and sent messages
String message = "";
char incomingChar;
String temperatureString = "";
// Timer: auxiliar variables
unsigned long previousMillis = 0; // Stores last time temperature was published
const long interval = 10000; // interval at which to publish sensor readings
void setup() {
dht.begin();
pinMode(ledPin, OUTPUT);
Serial.begin(115200);
// Bluetooth device name
SerialBT.begin("ESP32");
Serial.println("The device started, now you can pair it with bluetooth!");
}
void loop() {
unsigned long currentMillis = millis();
// Send temperature & humadity readings
if (currentMillis - previousMillis >= interval){
previousMillis = currentMillis;
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
temperatureString = String(temperature) + "C " + String(humidity) + "%";
SerialBT.println(temperatureString);
}
// Read received messages (LED control command)
if (SerialBT.available()){
char incomingChar = SerialBT.read();
if (incomingChar != '\n'){
message += String(incomingChar);
}
else{
message = "";
}
Serial.write(incomingChar);
}
// Check received message and control output accordingly
if (message =="led_on"){
digitalWrite(ledPin, HIGH);
}
else if (message =="led_off"){
digitalWrite(ledPin, LOW);
}
delay(20);
}
- Upload Kode
-
- Klik tombol Upload di Arduino IDE untuk mengunggah kode ke ESP32.
- Uji Koneksi Bluetooth
-
- Setelah pengunggahan selesai, buka aplikasi Bluetooth di smartphone.
- Cari perangkat dengan nama “ESP32_BT” dan lakukan pairing.
- Gunakan aplikasi terminal Bluetooth (seperti “Bluetooth Terminal”) untuk mengirim dan menerima data.
- Verifikasi
-
- Kirim karakter dari aplikasi terminal ke ESP32.
- Periksa Serial Monitor di Arduino IDE untuk melihat data yang diterima.
Catatan
- Pastikan baud rate di Serial Monitor disesuaikan dengan pengaturan di kode (115200).
- Jika ada masalah dalam koneksi, pastikan perangkat Bluetooth di smartphone aktif dan dalam jangkauan.
Penutup
Dengan mengikuti langkah-langkah di atas, Anda seharusnya dapat berhasil mengatur dan menggunakan ESP32 untuk komunikasi Bluetooth Classic. Jika ada pertanyaan atau kesulitan, jangan ragu untuk bertanya!








