Pernah nggak sih lo pengen ngontrol ESP32 tapi lokasinya jauh dari router WiFi? Atau lo cuma butuh komunikasi jarak dekat yang irit baterai? Nah, BLE Gateway adalah solusinya.
BLE Gateway adalah perangkat (bisa ESP32) yang bertindak sebagai jembatan antara perangkat Bluetooth Low Energy (BLE) dan jaringan internet (atau cloud). Jadi ESP32 lo tetap bisa dikirim perintah dari smartphone via BLE, tanpa perlu koneksi WiFi sama sekali.
Di ekosistem Chat AIoT, BLE Gateway memungkinkan lo mengontrol perangkat IoT dari jarak dekat tanpa harus repot mengatur WiFi. Cukup sambungkan smartphone lo ke ESP32 via Bluetooth, kirim perintah, dan perangkat lo merespons.
Untuk testing sederhana, sambungkan LED ke GPIO 2 (bawaan ESP32) via resistor 220 Ohm. Gak perlu wiring ribet karena komunikasi lewat udara (BLE).
Skema:
Copy-paste kode ini ke Arduino IDE, lalu upload ke ESP32 lo.
#include#include #include #define SERVICE_UUID "4fafc201-1fb5-459e-8fcc-c5c9c331914b" #define CHARACTERISTIC_UUID "beb5483e-36e1-4688-b7f5-ea07361b26a8" bool ledState = false; class MyCallbacks: public BLECharacteristicCallbacks { void onWrite(BLECharacteristic *pCharacteristic) { std::string value = pCharacteristic->getValue(); if (value.length() > 0) { if (value[0] == '1') { ledState = true; } else if (value[0] == '0') { ledState = false; } digitalWrite(2, ledState ? HIGH : LOW); } } }; void setup() { Serial.begin(115200); pinMode(2, OUTPUT); digitalWrite(2, LOW); BLEDevice::init("ESP32_BLE_Gateway"); BLEServer *pServer = BLEDevice::createServer(); BLEService *pService = pServer->createService(SERVICE_UUID); BLECharacteristic *pCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID, BLECharacteristic::PROPERTY_READ | BLECharacteristic::PROPERTY_WRITE ); pCharacteristic->setCallbacks(new MyCallbacks()); pService->start(); BLEAdvertising *pAdvertising = pServer->getAdvertising(); pAdvertising->start(); Serial.println("BLE Gateway siap! Tunggu koneksi..."); } void loop() { delay(1000); }
Setelah kode diupload, buka aplikasi Chat AIoT di smartphone lo. Cari perangkat bernama "ESP32_BLE_Gateway", lalu sambungkan. Kirim karakter '1' untuk menyalakan LED, dan '0' untuk mematikan.
Lo juga bisa menggunakan aplikasi nRF Connect untuk testing. Cari perangkat, sambungkan, lalu tulis nilai pada karakteristik yang tersedia.
Di Chat AIoT, BLE Gateway tidak hanya bisa kirim 1 byte, tapi juga bisa mengirim data sensor (suhu, kelembaban) dan menerima notifikasi. Ini sangat cocok untuk aplikasi smart home tanpa WiFi atau remote control di area parkir/garasi yang jauh dari router.
Selain itu, BLE Gateway bisa diintegrasikan dengan Genk Mesh (LoRa) untuk komunikasi jarak jauh. BLE menangani komunikasi lokal (smartphone ke ESP32), sedangkan LoRa menangani komunikasi antar-node (ESP32 ke ESP32).
Dengan BLE Gateway, lo bisa bikin perangkat IoT yang super irit dan praktis tanpa ribet WiFi. Cocok untuk proyek smart home, kontrol peralatan, atau monitoring sensor di jarak dekat.
Selamat mencoba! Kalau ada kendala, tanyakan di komunitas Chat AIoT.