淺談 BLE(Bluetooth Low Energy低功耗藍牙)Android、iOS

因過去主要都在使用BLE開發IoT相關的應用程式,這篇將會很簡單的介紹BLE的特性,如果任何地方有見解,在敬請指教!






低功耗藍牙也許大家聽了都很陌生,其實已經使用於很多智能的穿戴式設備上,如:小米手環、Apple手錶、體重機等等,在智慧型手機上搭配上藍芽功能已經接近100%了。

然而在IoT物聯網應用中,已經趨近成熟的階段了,也許很多人跟我有同樣的疑問,到底什麼是IoT,如同字面上IoT(Internet of Things)運用於網路上的事物,延伸下去運用至讓生活更便利更智慧的概念上,如:智慧家庭、智慧城市、智慧照護、智慧醫療等等。

在物聯網設備上比較耳熟能響的就莫屬Beacon了,也許光介紹Beacon就能再開一篇了,Beacon可以應用的在百貨公司、零售業更精準的行銷、收集數據、廣播訊息、室內定位應用等等就衍生而出了,範圍太廣泛了,連停車、上班打卡等等都可以,如何運用就要靠公司的走向未來的規劃是什麼了。


淺談 BLE(Bluetooth Low Energy低功耗藍牙)Android、iOS
BLE是什麼

簡單來說BLE(Bluetooth Low Energy)相較於傳統的藍牙BT,以低功耗方式快速搜索、連接、傳輸,由於低功耗的關係,所以經常用在各種常見的穿戴式設備上,BLE傳輸距離約100公尺,傳統藍牙約30公尺。缺點:傳輸速率較低。

BLE架構

淺談 BLE(Bluetooth Low Energy低功耗藍牙)Android、iOS - BLE 架構
簡單敘述每一層的含義:
Physical Layer (物理層):1Mbps自適應跳頻GFSK(高斯頻移鍵控),運行在不須額外申請許可的2.4GHz頻段上,屬於硬體部份。

Link Layer (鏈路控制層):RF(無線射頻)控制器,控制設備在準備(standby)、廣播(broadcast)、監聽/掃描(scan)、初始化、連接,這五種狀態中其中一種,屬於硬體部份。

HCI :標準藍芽事件及通知層,對外部硬體提供控制的接口,如:USB、SPI等。

Logical Link Control and Adaption Protocol (L2CAP):負責連接和事件。

Security Manager (SM):實現安全連接與數據加密。

Attribute Protocol (ATT):負責檢索所有數據的傳輸。

Generic Attribute Profile (GATT):具體實現數據的傳輸。它定義了兩個 BLE 設備為Service和Characteristic進行通信。特別注意的是GATT連線是一次只能連接一個。一個BLE設備只能同時被一個中心(Central)連接。一但被連接,BLE設備就會馬上停止廣播,其他中心(Central)就看不到週邊(Peripheral)設備了。當連接斷線,就會開始廣播。

Generic Access Profile (GAP):控制設備連接和廣播。GAP使設備被其他設備看見。定義四種功能。Peripheral和Central:兩個BLE裝置連線後,所去通信溝通。Broadcaster和Observer:兩個BLE裝置”非”連線狀態,所去通信溝通,一個丟一個收or一個丟多個收。

Application (APP層):PROFILE和應用組成。

BLE工作原理簡敘

BLE 主要是分為中心(Central)週邊外圍(Peripheral)兩種設備。

週邊(Peripheral):會自動產生資料或訊息後持續發出廣播(advertisement)。

中心(Central):則是一直掃描(Scan),監測附近是否有BLE裝置可供接收資料或是連接。



延伸閱讀:BLE AndroidBLE iOS