Mengendalikan LED yang terhubung dengan Arduino dari gadget Android (smartphone/tablet) dapat dilakukan dengan media Bluetooth. Cara ini merupakan salah satu cara termudah untuk mengkomunikasikan keduanya dibanding menggunakan (misalnya) kabel data. Protokol Bluetooth yang digunakan adalah Bluetooth serial port. Jadi, data dari Android akan ditransfer secara serial melalui Bluetooth dan akan diterima Bluetooth module di sisi Arduino, untuk kemudian diolah datanya apakah ada fungsi kontrol untuk menyalakan/mematikan LED. Sebagai percobaan, LED yang digunakan adalah LED internal yang telah terpasang secara default di papan Arduino (Uno).
Sebagai gambaran, berikut adalah skema rangkaiannya
Untuk sisi Arduino, saya menggunakan Bluetooth module HC-05. Modul ini port serialnya berada pada level TTL sehingga bisa langsung interfacing dengan Arduino. Selain itu ukurannya kecil, mudah dijumpai di pasaran dan harganya juga relatif murah. Konfigurasi pinout antara Arduino dan HC-05 adalah sebagai berikut :
Pin 8 Arduino <–> pin TxD HC-05
Pin 9 Arduino <–> pin RxD HC-05
Pin 5V Arduino <–> pin Vcc HC-05
Pin Gnd Arduino <–> pin Gnd HC-05
Untuk sketch handler-nya relatif sederhana, intinya adalah komunikasi serial antara Arduino dan modul HC-05. Anda bisa menggunakan pin serial hardware di pin 0 dan 1 atau bisa juga dengan mengemulasi pin digital menjadi pin serial menggunakan library SoftwareSerial.h. Nah, kali ini saya akan menggunakan cara yang kedua, karena pin serial default-nya (pin 0 dan 1) akan digunakan untuk memonitor pertukaran data serial menggunakan tools Serial Monitor di Arduino (menu Tools | Serial Monitor). Berikut adalah sketch handler untuk komunikasi Bluetooth dengan modul HC-05.
#include <SoftwareSerial.h>// impor library softwareserial SoftwareSerial BlueSer(8, 9); // RX, TX int led=13; int BluetoothData; void setup() { Â BlueSer.begin(9600); Â BlueSer.println("Bluetooth ready, tekan 1 or 0 utk on/off LED"); Â pinMode(led,OUTPUT); Â Serial.begin(9600); } void loop() { if (BlueSer.available()){ BluetoothData=BlueSer.read(); Serial.println(BluetoothData); Â Â if(BluetoothData=='1'){Â Â Â Â digitalWrite(led,HIGH); Â Â BlueSer.println("LED on"); Â Â } Â if (BluetoothData=='0'){ Â digitalWrite(led,LOW); Â Â BlueSer.println("LED off"); Â } } delay(100); }
Untuk penjelasan sketch di atas dapat Anda di artikel sebelumnya, Arduino Bluetooth Module HC-05 Sketch Handler
Berikutnya untuk sisi Android, untuk mudahnya installah aplikasi BlueTerm yang dapat Anda unduh di Play Store Google. Kegunaan aplikasi ini adalah sebagai terminal client yang dapat membangun sebuah komunikasi berbasis Bluetooth. Semua data yang keluar masuk melalui Bluetooth akan dapat dimonitor oleh aplikasi ini.
Setelah berhasil mengunduh dan menginstal aplikasi BlueTerm, cobalah untuk menjalankan aplikasi ini. Sebaiknya Anda turn on dulu fitur bluetooth di gadget Android Anda, karena aplikasi ini hanya bisa berjalan kalau bluetooth dalam keadaan ON. Berikutnya, jika sudah muncul layar biru, lihatlah status device yang terkoneksi di pojok kanan atas. Jika belum ada device yang terkoneksi, tekan tombol ‘klik kanan’/properties gadget Anda (biasanya tombol bagian bawah) untuk mencari dan mengkoneksikan device bluetooth. Jika Android mendeteksi banyak device bluetooth di sekitar Anda, pilih yang bernama ‘HC-05’. Jika sudah, Anda akan kembali ke layar biru dan periksa kembali status device yang terkoneksi di pojok kanan atas.
Jika sudah terkoneksi, seharusnya akan muncul tulisan sebagai berikut (jika tidak ada, restart kembali Arduino Anda). Selanjutnya tekan tombol 1 untuk menyalakan LED di pin 13 Arduino dan tekan tombol 0 untuk mematikannya.Â
Mudah, bukan? LED di sini hanya sebagai indikator saja, Anda dapat menggantinya dengan beban yang lain misalnya lampu, TV, motor listrik, lengan robot dll. Jadi Anda bisa mengendalikan semua beban-beban tersebut melalui gadget Android Anda. Selamat berkreasi …
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
Mas, mau tanya . kalo IC arduinonya dengan program ini mau dipindahkan ke board, apa saja yang harus diperhatikan ? saya sudah coba program ini di board arduino, berhasil , tapi ketika dipindah ke protoboard masih belum berhasil, kira2 kenapa ya mas ? vcc gnd sudah terhubung, cristal 16M sudah, kira2 kenapa ya mas ?
kristalnya udah dikasih kapasitor mas?
nah saya kasih kapasitor yang 220pF , ngaruh ya mas ? seharusnya berapa mas ? 22pF ?
kalo kapasitas tegangan di kapasitornya ngaruh ga mas ?
maksudnya ‘kapasitas tegangan’ gimana mas?
standarnya 22pF mas, selain itu saya belum pernah nyoba
okee mas terimakasih banyak
Kalau pakai modul esp 01 apakah bisa langsung dihubungkan ke arduinonya mas?
bisa mas
mas , kalau mau 2 led kaya gimana ya?
bikin semacam keyword utk masing-masing led. Di sisi arduino bikin parser untuk mendekode keyword tsb