Bluetooth kısa mesafeli haberleşmeler için geliştirilmiş, 2,4 – 2,48 GHz ISM bandını kullanan bir haberleşme protokolüdür. Bluetooth modülleri arasındaki iletişim mesafesi eğer arada bir engel yoksa yaklaşık 20 metredir. Geliştirilen yeni teknolojiler ile bu mesafe yaklaşık 100 metreye kadar arttırılmıştır. Bu yeni geliştirilen Bluetooth modülleri henüz Arduino projelerinde kullanılmamaktadır. Arduino projelerinde genellikle HC-05 veya HC-06 Bluetooth modülleri kullanılır. Biz de projelerimizde bu Bluetooth modüllerini kullanacağız.
HC-05 ve HC-06 Bluetooth modülleri özellik olarak hemen hemen birbirinin aynısıdır. Tek fark, HC-05 hem kendisine gelen bağlantı isteklerine cevap verirken hem de başka Bluetooth cihazlarına bağlantı isteği yollayabilmesidir. HC-06 Bluetooth modülü ise yalnızca kendisine gelen bağlantı isteklerini cevaplayabilir, başka bir Bluetooth modülüne bağlantı isteği yollayamaz. Kısacası HC-05 hem master (yönetici) hem de slave (köle) modunda çalışabilirken, HC-06 sadece slave (köle) modunda çalışabilmektedir.
HC-05 ve HC-06 Bluetooth modüllerinin ortak özellikleri aşağıda verilmiştir.
- 2,4 GHz haberleşme frekansı (ISM)
- Hassasiyet: ≤-80 dBm
- Çıkış gücü: ≤+4 dBm
- Asenkron hız: 2,1 MBps / 160 KBps
- Senkron hız: 1 MBps / 1 MBps
- Çalışma gerilimi: 1,8 - 3,6 V (Önerilen 3,3 V
- Akım: 50 mA
- Kimlik doğrulama ve şifreleme
Bluetooth modülü satın alınırken dikkat edilmesi gereken bazı noktalar vardır. Projede Bluetooth modülünün master modunda çalışması isteniyorsa HC-05 tercih edilmelidir. Modülün sadece slave modunda çalışması yeterliyse bu iki modülden birisi seçilebilir. Projede kullanım kolaylığı için breakout'a (kılıf) sahip Bluetooth modülü seçilmesi gerekir. Breakout kablolamada kolaylık sağlamaktadır. Proje mühendisinin işini daha da kolaylaştırmak için Arduino üzerine direkt takılabilen Bluetooth Shield'leri de bulunmaktadır.
Kılıfa (breakout) sahip olan (solda) ve olmayan Bluetooth modülü
Arduino üzerine doğrudan takılabilen Bluetooth Shield
Dikkat! Bluetooth modülleri 3,3 Volt ile çalışmaktadır fakat kılıfa (Breakout) sahip Bluetooth modülleri üzerinde genellikle voltaj regülatörü bulunmaktadır. Bu Bluetooth modülleri 3,3 V – 5 V arası gerilimde çalışmaktadır. Bluetooth modülünün üzerinde genellikle çalışma gerilimi yazmaktadır.
Bluetooth modülünün üzerinde VCC, GND, Rx ve Tx olmak üzerine 4 adet pin bulunmaktadır. Bu pinlerden VCC ve GND modülü beslemek için kullanılır. Arduino tarafından yollanan komutlar Bluetooth modülü tarafından alınabilmesi için, Arduino'nun Tx pini Bluetooth modülünün Rx ayağına takılmalıdır. Aynı şekilde Bluetooth'a gelen mesajların Arduino'ya aktarılması için, Arduino'nun Rx pini Bluetooth modülünün Tx pinine takılması gerekmektedir.
Bluetooth modülü her ne kadar 3,3 volt ile beslense bile Rx ve Tx pinlerindeki gerilim Arduino tarafından 5 volt düzeyine çekilebilmektedir. Bazı Bluetooth modülleri için 3,3 volt gerilimin üstü cihaza zarar verebildiği için, bu pinlerin daha önce öğrendiğimiz gibi voltaj bölücü (voltage divider) ile devreye bağlanmalıdır. Bu bağlantı şekli aşağıdaki uygulamada gösterilecektir.