Artikel ini adalah rangkaian dari “Tutorial Arduino / Genuino 101”:
> Mengenal Lebih Dekat Genuino 101
> Menginstal Arduino IDE
> Membuat Program Genuino Pertama
> Menyalakan Buzzer Pada EMS Basic I/O Shield
> Menampilkan Angka Pada 7-Segment
> Memanfaatkan Infrared Detector pada EMS Basic I/O Shield
> Mengontrol Lampu LED Melalui Bluetooth
Pada artikel sebelumnya, kita sudah belajar mematikan atau menyalakan LED, Buzzer, dan menampilkan 7-Segment. Nah, pada tulisan kali ini kita akan menyalakan atau mematikan LED yang terdapat pada Intel Genuino 101 menggunakan aplikasi Android atau iOS.
Melalui aplikasi Android atau iOS, kita dapat memberikan perintah kepada Intel Genuino 101 dengan menggunakan koneksi Bluetooth Low Energy (BLE). Ketika perintah yang diberikan adalah 1 maka lampu LED akan menyala, sedangkan ketika perintah 0 maka lampu LED akan mati.
Pada program ini, kita membutuhkan library CurieBLE.h yang memberikan akses penuh untuk semua parameter, fitur, dan fungsi modul BLE dari Intel Genuino 101. Dengan BLE ini memungkinkan untuk berkomunikasi dengan smartphone, tablet, dan perangkat lainnya.
Pada program sederhana kali ini, BLE digunakan untuk menyambungkan dengan aplikasi pada smartphone dan mendapatkan nilai yang digunakan untuk menyalakan LED atau mematikan LED.
Untuk mulai membuat program menyalakan LED melalui Bluetooth, silahkan buka Arduino IDE kemudian buat file baru dengan memilih menu File->New atau dapat menggunakan CTRL+N. Selanjutnya silahkan ketik kode program (sketch) di bawah ini.
#include <CurieBLE.h> //library #define LED 13 // LED pada pin 13 BLEPeripheral blePeripheral; // BLE Peripheral Device BLEService ledService("19B10000-E8F2-537E-4F6C-D104768A1214"); // BLE LED Service // BLE Switch Characteristic - 128-bit UUID, diatur sendiri. BLEUnsignedCharCharacteristic switchCharacteristic("19B10001-E8F2-537E-4F6C-D104768A1214", BLERead | BLEWrite); void setup() { // LED sebagai output pinMode(LED, OUTPUT); // atur nama BLE & UUID sesuai keinginan: blePeripheral.setLocalName("LEDzone"); blePeripheral.setAdvertisedServiceUuid(ledService.uuid()); blePeripheral.addAttribute(ledService); blePeripheral.addAttribute(switchCharacteristic); // atur nilai awal switchCharacteristic.setValue(0); blePeripheral.begin(); } void loop() { BLECentral central = blePeripheral.central(); // jika client terhubung if (central) { while (central.connected()) { if (switchCharacteristic.written()) { if (switchCharacteristic.value()== char(1)) { // membaca nilai 1 digitalWrite(LED, HIGH); // LED menyala } else { digitalWrite(LED, LOW); // LED mati } } } } }
Pada sketch di atas, LED pada pin 13 sebagai OUTPUT sehingga LED akan menyala dan mati sesuai intruksi. Pada Universally Unique Idenfier (UUID), kita dapat mengaturnya sendiri. Seperti terlihat pada BLEService ledService(“19B10000-E8F2-537E-4F6C-D104768A1214”);, pada bagian depannya adalah 19B10000. Sedangkan untuk karakteristik, dapat kita ubah diubah menjadi 19B10001.
Jadi, ketika ingin menambah karakteristik atau misal menambah buzzer, atau 7-Segment, kita dapat mengubahnya menjadi 19B10002 (untuk buzzer), dan 19B10003 (untuk 7-Segment).
Pada fungsi void setup(), kita melakukan inisialisasi dan mengkonfigurasi peripheral BLE. Mulai dari nama perangkat Bluetooth untuk LED, dan konfigurasi layanan UUID. Serta mengatur nilai awal untuk program LED tersebut.
Sedangkan pada fungsi void loop(), akan memeriksa koneksi dengan BLE. Sehingga jika terhubung dengan central device atau client, akan membaca nilai yang diberikan berupa 1 untuk menyalakan LED, dan 0 untuk mematikan LED.
Nah, untuk mencoba program yang sudah dibuat, kita membutuhkan aplikasi android yang dapat terkoneksi dengan Intel Genuino 101 serta mempunyai tampilan untuk memberikan nilai pada program yang sudah dibuat.
Karena pada tulisan kali ini tidak membahas pembuatan aplikasi di Android, maka untuk mencoba program yang sudah dibuat, kita akan menggunakan aplikasi nRF Master Control Panel (BLE). Silahkan unduh aplikasi nRF Master Control Panel (BLE) untuk sistem operasi Android atau iOS.
Untuk menjalankan kode program di atas, ikuti tahapan di bawah ini agar tidak terjadi eror:
Nah, cukup mudah kan membuat program untuk mengontrol LED melalui Bluetooth menggunakan Android? Para pembaca dapat lebih mengeksplor terkait pemahaman koneksi menggunakan BLE.
* Artikel ini adalah rangkaian dari “Tutorial Arduino / Genuino 101“
Cisco mengungkapkan tiga kerentanan dalam layanannya. Ini dia penanganannya!
Ini ulasan mengenai keuntungan OptimalCloud Partner Platform, platform baru milik Optimal idM!
Google kenalkan dua koleksi baru dari Coral. Dua koleksi baru ini bakal menambah kemampuan pengembangan…
Raksasa Google baru saja mengembangkan sistem pemindaian kanker payudara berbasis kecerdasan buatan. Bagaimana hasilnya, berikut…
Meski dikenalkan bersamaan dengan Android 10 Beta, sampai kini Bubbles Notifications masih dalam tahap pengembangan.…
Samsung akan kembali memamerkan hasil program C-Lab ke ajang CES 2020. Ini dia proyek dan…