一、藍牙MTU的簡介
BLE在連接過程中主從機會協(xié)商MTU的大小,BLE協(xié)議最大為520字節(jié),但不是所有手機都支持512字節(jié),大部分支持128字節(jié)。但是早期的手機和芯片端,都是默認20個字節(jié)的?;旧?020年以后的手機都可以設(shè)置為128個字節(jié)以上
二、詳細的方法說明以及測試
1、由主機發(fā)起請求設(shè)置MTU,從機支持BLE協(xié)議的最大字節(jié)(推薦開發(fā)者使用這種方式)。
可以理解為,MTU的大小跟藍牙芯片無關(guān),當(dāng)客戶在開發(fā)APP的時候,可以在APP端主動設(shè)置好MTU的大小,然后同步到藍牙芯片即可
2、因為我們目前標(biāo)準(zhǔn)的版本固件,也就是需要兼容老的手機,比如藍牙4.2版本及以下的
==》所以手機下發(fā)數(shù)據(jù),我們內(nèi)部都是20個字節(jié)進行拆包和分包的
==》如果需要大數(shù)據(jù)量的傳輸,可以聯(lián)系我們進行訂制的修改,這個我們可以配合修改的
==》修改MTU的大小,以及連接間隔、數(shù)據(jù)交互間隔等等參數(shù)
==》當(dāng)然也可以自己在手機端app去修改,就是主機可以申請修改MTU,范圍是23--517。申請之后,藍牙芯片這邊就可以同步了
三、KT6368A提升ble傳輸速率方法
BLE傳輸帶寬主要跟兩個要素有關(guān): 通信周期和每個通信點可傳輸?shù)臄?shù)據(jù)量。
1.通信周期: 安卓手機一般可支持到10ms,蘋果一般可支持到15ms
2.每個通信點可傳輸?shù)臄?shù)據(jù)量: 就是指每包的長度以及可以傳多少包
3.BLE理論帶寬傳輸計算如下:
按15毫秒通信周期,每次基本通信能發(fā)4包(發(fā)包個數(shù)取決于主機)
若PDU長為27, 即payload長是 20 byte,那傳輸速度是 (1000/15)204 約= 5K byte 速度。
若PDU長為251,即payload長是 244 byte,那傳輸速度是 (1000/15)2444 約= 63K byte 速度。(要雙方同時支持DLE和2M屬性)
四、實際測試截圖--改MTU和PDU的效果-藍牙調(diào)試寶
1、第一步,在app里面設(shè)置mtu為256 。因為測試app“藍牙調(diào)試寶”剛連接上,默認就是23
2、第二步,測試app往藍牙芯片下發(fā) 1024個字節(jié)的數(shù)據(jù)
3、實際的效果如下,可以看到藍牙芯片內(nèi)部是分4包數(shù)據(jù)收完的。
程序的修改,這個需要我們來修改,可以配合客戶去調(diào)試。但是必須要是產(chǎn)品開發(fā)階段才支持的。
另外,后面我們也做了測試:
實際的結(jié)論就是,和藍牙芯片內(nèi)部的程序,里面的PDU沒什么關(guān)系 。只要主機端設(shè)備申請修改了MTU
那么app往藍牙芯片發(fā)數(shù)據(jù),包數(shù)據(jù)的大小,就不再是20的限制了,可以是指定的MTU大小,但是為了兼容性更好,建議申請128個字節(jié)。
審核編輯:湯梓紅
-
藍牙芯片
+關(guān)注
關(guān)注
17文章
376瀏覽量
46050 -
BLE
+關(guān)注
關(guān)注
12文章
660瀏覽量
59413
發(fā)布評論請先 登錄
相關(guān)推薦
評論