CH592藍(lán)牙m(xù)esh+ble的長(zhǎng)數(shù)據(jù)接收問(wèn)題

在同時(shí)開(kāi)啟mesh和ble從機(jī)時(shí),節(jié)點(diǎn)接收配網(wǎng)器發(fā)送來(lái)的長(zhǎng)數(shù)據(jù)(數(shù)據(jù)長(zhǎng)度為20個(gè)字節(jié),配網(wǎng)器使用sig標(biāo)準(zhǔn)廣播長(zhǎng)度,每包有效數(shù)據(jù)8個(gè)字節(jié),因此長(zhǎng)數(shù)據(jù)會(huì)進(jìn)行底層分包發(fā)送)時(shí)會(huì)重啟,當(dāng)關(guān)閉ble從機(jī)時(shí),則可以正常接收,請(qǐng)問(wèn)這是什么原因?例程用的是adv_ali_light_with_peripheral。

mesh、ble的收發(fā)包都在BLE_MEMHEAP_SIZE這個(gè)宏定義劃分的內(nèi)存中申請(qǐng)。如果是內(nèi)存不足的問(wèn)題,可以做如下嘗試:

①嘗試加大BLE_MEMHEAP_SIZE的數(shù)值(注意要是4的倍數(shù))。

②將BLE的MTU改小,減小收發(fā)BLE數(shù)據(jù)時(shí)需要的內(nèi)存。

③減小BLE、mesh的發(fā)包隊(duì)列,預(yù)分配的緩存減小。image.png

image.png

image.png


針對(duì)BLE通信,可以先發(fā)1個(gè)字節(jié)的BLE數(shù)據(jù)包,看能否保持連接,應(yīng)用層發(fā)包負(fù)載字節(jié)數(shù)超過(guò)MTU也會(huì)導(dǎo)致通信問(wèn)題。

默認(rèn)代碼中char1~char4默認(rèn)通信數(shù)據(jù)長(zhǎng)度都是1,char5是5。

BLE從機(jī)例程中注意修改如下幾處

1.config.h中BLE_BUFF_MAX_LEN改為最大值251

2.gattprofile.h中SIMPLEPROFILE_CHARn_LEN(n=1~5)改為最大值243(char4默認(rèn)使用notify,協(xié)議開(kāi)銷少一個(gè)字節(jié),故MTU可以到244)

3.如果需要使用notify且發(fā)包負(fù)載大于20個(gè)字節(jié),peripheralMTU變量或者CH58xBLE_LIB.h中的ATT_MTU_SIZE需要被擴(kuò)大為最大負(fù)載+3即247(V208中只讀,只能修改peripheralMTU變量)

BLE主機(jī)如果是手機(jī)APP,要看APP的是否對(duì)MTU有調(diào)整。如果手機(jī)APP是BLE調(diào)試助手,連接后要在APP右上角修改MTU為251(最大值視情況而定)



你好,根據(jù)你給出的上述方案“①嘗試加大BLE_MEMHEAP_SIZE的數(shù)值(注意要是4的倍數(shù))。”我進(jìn)行了嘗試,發(fā)現(xiàn)若按照你所說(shuō)的加大方式依舊是無(wú)法解決問(wèn)題,但是進(jìn)行數(shù)值減少卻意外的解決了。如下圖:

image.png

請(qǐng)問(wèn)這樣修改是否還會(huì)帶來(lái)其他方面的影響?(目前我的系統(tǒng)運(yùn)行正常,但是當(dāng)快速發(fā)送長(zhǎng)數(shù)據(jù)時(shí)(間隔1-2s),偶爾還是會(huì)出現(xiàn)重啟線程),是否還有別的地方需要修改呢?感謝你的回復(fù)


加大BLE_MEMHEAP_SIZE還是會(huì)進(jìn)硬件錯(cuò)誤中斷,那么檢查一下mesh庫(kù)的版本。更新一下最新EVT,mesh庫(kù)版本1.76,用最新的SRC、HAL、及mesh庫(kù)文件測(cè)試看看。

CH592DS1.PDF - 南京沁恒微電子股份有限公司 (wch.cn)


嘗試使用最新版sdk依舊無(wú)法通過(guò)加大BLE_MEMHEAP_SIZE解決問(wèn)題,由于問(wèn)題只在收發(fā)分包長(zhǎng)數(shù)據(jù)時(shí)出現(xiàn),或者是帶應(yīng)答的配置(如配置分組)等需要應(yīng)答的消息,因此我懷疑是否和時(shí)長(zhǎng)有關(guān)?ble是否在某處有時(shí)長(zhǎng)需求,兩者因此出現(xiàn)不兼容情況?


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频