公司購進藍芽模組oe-mesh1010sc01的藍芽mesh組網模組,在我手上耗時三個多月。這是一塊基於csr1010晶元上設二級的相容藍芽4.2低功耗ble以及mesh租完各功能的藍芽模組。它在智慧型燈控方面的確可靠性比較好,但是利用他來進行資料傳輸就比較狗血了。我們使用場景是:多個裝置組成mesh網路,其中乙個作為閘道器使用(常電),其他裝置為低功耗裝置(進行休眠)。
網上對於藍芽mesh都是在捧,缺少一些對於藍芽mesh真實分析的文章。目前我還是喜歡點對點通訊。
1.1 參考資料
這款藍芽在功耗方面,開啟後功耗在18ma左右。
1、開啟後使用過程必須在16秒以上,否則連續6次以上,模組會自動退出mesh網路。
2、**商提供的api實際並不支援進出低功耗,原因在於進入低功耗後,喚醒不了,只能通過物理復位。
3、物理復位後,模組會主動外發四條廣播資料。
4、連續傳送資料,有可能掉包,需要在重發,很難再協議上做可靠傳輸。
5、多個閘道器在同一mesh網內,收到錯亂的資料(閘道器a收到了應該發給閘道器b的資料),原因未明
對於問題1:我使能模組後,開啟20s時間
對於問題4:對於沒有應答的資料,一次最佳通訊量做了分析,對於沒有應答的,重發3遍。
對於問題5:只能在組網時,就把裝置分隔開
作為藍芽mesh的使用者,對其機理不了解,只能通過網路資料對其分析。根據網文知道,5.0之前藍芽的廣播通道只有3個,而mesh最基礎的理論就是基於藍芽廣播通道建立起來的無連線通訊。在5.0之後,廣播通道擴充套件到全部通道。
原創 一塊抹布引發的關於測試策略的思考
一 其實,這篇文章最開始的標題是 如何用乙個抹布一次清理完乙個落滿灰塵的工位 讀來讀去覺得有點繞,寫到最後也發現,哇,這個抹布好慘呀,就把標題改為 一塊抹布引發的 又感覺有標題黨的嫌疑,最終就確定了目前這個標題。言歸正傳,不知道讀到這的同學裡面有沒有槓精,做測試的話,我相信肯定有,不管怎樣,我先解釋...
IronPython的第一塊鱗片(補充)
昨天,帶著堅定的決心開始去摸索ironpython身上的每一塊鱗片了,而在前一篇post當中有乙個最經典的例子 出現了exception,以致於無法繼續下去。事實上,這樣的操作在python上面是一切ok的,另外一方面,如果你 將那幾行簡單的 寫入乙個.py檔案 譬如說hello.py 並且通過ir...
Leetcode 最後一塊石頭的重量
有一堆石頭,每塊石頭的重量都是正整數。每一回合,從中選出兩塊最重的石頭,然後將它們一起粉碎。假設石頭的重量分別為 x 和 y,且 x y。那麼粉碎的可能結果如下 如果 x y,那麼兩塊石頭都會被完全粉碎 如果 x y,那麼重量為 x 的石頭將會完全粉碎,而重量為 y 的石頭新重量為 y x。最後,最...