如何使樹(shù)莓派變身藍牙mesh Provisioner?
藍牙mesh在去年7月正式發(fā)布,至今已經(jīng)過(guò)去了一年多的時(shí)間。在過(guò)去的一年中,藍牙mesh的開(kāi)發(fā)者社區有哪些最新的更新?
本文引用地址:http://dyxdggzs.com/article/201811/394054.htm· 多家會(huì )員公司推出了面向開(kāi)發(fā)者的藍牙mesh SDK;
· 相關(guān)的開(kāi)源社區已經(jīng)提供了關(guān)于藍牙mesh和藍牙5的開(kāi)源項目;
· 相關(guān)會(huì )員公司提供了藍牙mesh 的IP解決方案;
· 現有的藍牙協(xié)議分析儀器供應商逐步支持藍牙mesh協(xié)議解析;
· 以及采用藍牙mesh的終端產(chǎn)品;
綜上所述,藍牙mesh的開(kāi)發(fā)者社區在過(guò)去的一年中有著(zhù)非??焖俚陌l(fā)展。對于藍牙mesh的開(kāi)發(fā)者,隨著(zhù)藍牙mesh的開(kāi)發(fā)者社區生態(tài)逐漸的完善,將會(huì )有越來(lái)越多的開(kāi)發(fā)者投入其中。如果大家要開(kāi)發(fā)藍牙mesh的產(chǎn)品或者是原型,首要的問(wèn)題就是需要有一個(gè)藍牙mesh的Provisioner,因為Provisioner負責為新加入的設備分配unicast address,網(wǎng)絡(luò )密鑰network key,設備密鑰 device key,IV Index等等這些重要的信息,那么如何能夠以最快的速度搭建一個(gè)藍牙mesh的Provisioner?任凱為大家提供一個(gè)自己的解決方案:在樹(shù)莓派3上面部署BlueZ,使其成為一個(gè)藍牙mesh的Provisioner。
有藍牙開(kāi)發(fā)經(jīng)驗的工程師應該都聽(tīng)說(shuō)過(guò)BlueZ,BlueZ是官方的Linux藍牙協(xié)議棧,從BlueZ v5.47開(kāi)始,BlueZ加入一款名為meshctl的工具。通過(guò)這款工具,開(kāi)發(fā)者可以通過(guò)PB-GATT 和GATT Proxy 的方式對于新加入的設備進(jìn)行provisioning以及相關(guān)的model configuration。在看到BlueZ支持藍牙mesh之后,我著(zhù)實(shí)激動(dòng)了好幾天,試圖在樹(shù)莓派3主板上部署BlueZ v5.49,但是有幾個(gè)障礙讓我感到困惑和掙扎,我花了大約兩周時(shí)間在互聯(lián)網(wǎng)上尋找解決方案,并與Linux專(zhuān)家討
論解決問(wèn)題并使其能夠正常工作。我解決的問(wèn)題可能是開(kāi)發(fā)人員必須面對的問(wèn)題,作為藍牙技術(shù)聯(lián)盟的開(kāi)發(fā)者關(guān)系經(jīng)理,我認為我有責任向開(kāi)發(fā)人員分享我的知識和經(jīng)驗。所以,我總結了我解決的問(wèn)題,收集了相應的信息,然后我為開(kāi)發(fā)人員編寫(xiě)了一個(gè)教程,希望開(kāi)發(fā)人員可以使用本教程來(lái)搭建一個(gè)屬于自己的藍牙mesh Provisioner。
本教程包括:
· 準備工作;
· 如何配置樹(shù)莓派3;
· 如何為BlueZ v5.49安裝依賴(lài)項;
· 如何獲取BlueZ v5.49源代碼;
· 如何在樹(shù)莓派3上編譯和安裝BlueZ;
· 如何重新編譯和安裝樹(shù)莓派3的內核為meshctl工具搭建運行條件;
· 如何驗證內核安裝;
最后,為開(kāi)發(fā)者附上教程的下載地址,希望開(kāi)發(fā)者們踴躍嘗試!
評論