到2020年,多達385億設備將連接入網。這些設備都一定會采用某種無線標準,在智能手機或平板電腦等客戶端和設備之間傳輸數據。
藍牙(Bluetooth)希望成為開發者的首選無線協議。為了實現這一目標,藍牙技術聯盟發布了一款全新的開發者工具,能夠最大程度幫助開發者簡化開發,幫助他們更輕松地為產品集成藍牙功能。
BluetoothDeveloper Studio本質上是一個集成型的開發者環境,讓開發者能夠輕松地將藍牙功能集成到你可以想象到的任何設備。Bluetooth Developer Studio內有開發案例和教程,以及由藍牙工作組中25,000多家公司提交的設備配置文件資源庫,能夠幫助開發者為用例創建配置文件。
藍牙技術聯盟開發者項目總監何根飛(Steve Hegenderfer)先生在接受ARC采訪時表示:“Bluetooth Developer Studio是一款開發工具。我們已經看到藍牙低功耗技術應用的巨大吸引力和成長空間。從開發者的角度,它是非常具有可塑性的?!?/p>
藍牙開發:讓創建服務和功能更輕松
在基礎的層面上,藍牙開發是非常簡單的概念。例如,當開發者想把Beacon等設備連接到其他設備上時,Beacon就被稱為外圍設備(peripheral device),另一端的電腦(個人電腦、智能手機、平板電腦等)就被稱為中心設備(central device)。兩者之間的關系就相當于計算機發展早期采用的典型的“服務器 - 客戶端”模型(或主設備/從設備)。
外圍設備的功能(包括連接至中心設備)是由藍牙的“服務”和“特性”所定義的。用不同的服務和特性組合去定義設備功能,就是“配置文件”。
何根飛先生表示:“最終,創建任何無線產品都涉及到很多因素。Bluetooth Developer Studio真正想要做的就是從元器件的角度解決問題?!?/p>
在藍牙開發的層次結構上,任何服務都包括多種特性。例如Beacon需要近距的服務、電池服務等等。有些Beacon可能有多達8種不同的服務,其功能都是由若干特性來定義的。
兩臺設備之間服務與特性之間的關系可以用藍牙的通用屬性配置文件(GATT)來定義。
何根飛先生表示:“服務和特性就像是藍牙的結構單元,藍牙將此描述為GATT,也就是通用屬性。用藍牙的技術語言來講,是GATT描述服務。對于某種特定的用例,那些服務都有他們的特性。那些也就是描述服務的屬性。它們包含更多的原數據來描述屬性,但通常是通過描述數值的形式體現。”
BluetoothDeveloper Studio:創建藍牙應用的平臺
BluetoothDeveloper Studio是如何幫助開發者簡化開發,為設備和App添加藍牙功能的呢?
首先,開發者可以借助Bluetooth Develope Studio的簡單設計,采用GATT來構建藍牙配置文件。對于大多數設備,執行任何功能的代碼都能在Bluetooth Develope Studio中的資源庫里找到。如果開發者想要創建已經存在的功能,就可以采用任何“已采用的配置文件(adopted profile)”。Bluetooth Develope Studio讓開發者們能夠使用資源庫中的代碼,或采用簡單的拖拽機制來構建配置文件。
若某一特定類型的功能無法在資源庫內找到,開發者還可以在BluetoothDeveloper Studio中構建自定義配置文件(customprofile)。
何根飛先生表示:“所有用例都是建立在通用屬性之上的,都具有互操作性。因此,在資源庫中可以找到全部已采用的配置文件(adopted profiles)—經藍牙技術聯盟驗證發布為業界標準用例的服務和特性—以及自定義配置文件?!?/p>
建立了配置文件、服務和特性之后,BluetoothDeveloper Studio還提供一系列插件,讓開發者能在任何設備或芯片組上輕松地添加功能,這都與直接在板上調試功能會有些不同。
BluetoothDeveloper Studio中的插件能為芯片創建導出功能的代碼,包括高通、德州儀器、博通、Arduino、Raspberry Pi等的芯片。這樣開發者即使不是熟悉每一種芯片的專家,也能夠創建藍牙設備。
何根飛先生表示:“藍牙應用場景都是類似的,但實際在芯片或固件上的實施就會有所不同了。所有的主流芯片和模組制造商都提供各種插件,但具體還是要取決于你正在構建的用例- 所有的服務和特性 - 然后生成用于目標平臺的代碼?!?/p>
以上是對于服務器端而言。BluetoothDeveloper Studio 也提供適用于iOS和安卓的插件,為客戶端的App導入功能。
總而言之,Bluetooth Developer Studio能做的是為藍牙在設備和App中的應用構建管道,讓藍牙更輕松地應用于任何平臺、固件和軟件。當然BluetoothDeveloper Studio不會編寫產品或App現實功能的代碼。
設備或App的應用情境還是需要開發者自己進行編碼,明確服務和特性。例如,如果需要App執行“亮燈”的功能,那么所寫的編碼就要能夠告訴服務:如果按鍵,就亮燈。
何根飛先生表示:“開發藍牙的架構時,開發者都需要為實際的情境編寫代碼。這部分不是BluetoothDeveloper Studio的工作?!?/p>
除了涉及服務和特性的GATT,以及面向固件和軟件平臺的插件,Bluetooth Developer Studio還包括測試工具,其可用于模擬藍牙集成的功能。
-
藍牙
+關注
關注
114文章
5809瀏覽量
170192 -
網絡
+關注
關注
14文章
7553瀏覽量
88732
發布評論請先 登錄
相關推薦
評論