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