Bluetooth 周期性廣播

Periodic Advertising

周期性廣播(Periodic Advertising)是 Bluetooth 5.0 才引入的,5.0 同時還引入了擴展廣播(Extended Advertising),周期性廣播正是擴展廣播的一個應用。

擴展廣播比傳統(tǒng)廣播(Bluetooth 4.0)的數(shù)據(jù)量多了 8 倍,可傳輸數(shù)據(jù)量由 31 字節(jié)增長到了 255 字節(jié),現(xiàn)在我們來看看為什么可以這樣。

廣播通道

傳統(tǒng)廣播的廣播通道只有 37,38,39 這三個,而擴展廣播使用了兩組廣播通道:

  • 主要廣播通道(primary advertising channel)
  • 次要廣播通道(secondary advertising channel)

主要廣播通道也使用 37,38,39 這三個在 Bluetooth 4.0 定義的廣播通道,次要廣播通道則使用剩余的 37 個通道。

擴展廣播 PDU

  • ADV_EXT_IND - 主要廣播通道,支持不可連接的,定向掃描的事件。
  • AUX_ADV_IND - 次要廣播通道上廣播數(shù)據(jù)的第一個片段,不可連接的、定向掃描的。
  • AUX_SYNC_IND - 次要廣播通道,用于周期性廣播,以一定間隔發(fā)送不定向的數(shù)據(jù)包。
  • AUX_CHAIN_IND - 發(fā)送剩余的數(shù)據(jù)。

傳統(tǒng)廣播事件

Bluetooth 4.0 設備的廣播事件分為兩部分:廣播間隔(advInterval)和廣播延時(advDelay)。

廣播間隔是指兩個相鄰廣播事件的間隔,范圍為 20 ms ~ 10 s 。同時為了避免廣播事件收到干擾和物理通道碰撞的影響,每個廣播事件的末尾處有一個 0 ~ 10 ms 的廣播延時,該延時是一個偽隨機數(shù)。具體流程可以參考下圖:

考慮這樣一個場景:一個觀察者(observer)想要一直監(jiān)聽一個廣播者(broadcaster)的消息,因為每個廣播事件的末尾處加了一個 0 ~ 10 ms 的隨機延時,它就不知道廣播者什么時候開始打廣播,因此就只能把接收窗口開的盡量大,消耗更多的能量去監(jiān)聽。但如果觀察者是一個電源受限的設備,這又該怎么辦呢?是否有一種辦法讓觀察者能夠與廣播者同步,這樣兩者就能夠同時喚醒,廣播者發(fā)送廣播數(shù)據(jù),觀察者接收廣播數(shù)據(jù),這樣能量的消耗就能降到最低,這就是周期性廣播的能力。

周期性廣播

上圖描述了周期性廣播的整體流程。

最開始的灰色區(qū)域內(nèi),廣播設備在主要廣播通道發(fā)送 ADV_EXT_IND 包,手機(掃描設備)開啟掃描窗口監(jiān)聽。ADV_EXT_IND 內(nèi)攜帶了

  • AUX_ADV_IND 在次要廣播通道內(nèi)的哪一個通道傳輸
  • AUX_ADV_IND 選擇哪一個 PHY,1M PHY, 2M PHY, 或者 1M Coded PHY
  • AUX_ADV_IND 什么時候在次要廣播通道上出現(xiàn)

這樣手機就知道在什么時候,什么地點(channel)能夠收到 AUX_ADV_IND 包了。AUX_ADV_IND 又提供了第一個 AUX_SYNC_IND 出現(xiàn)的信息

  • AUX_SYNC_IND 出現(xiàn)的時刻(offset time)
  • 周期性廣播的間隔
  • 周期性廣播生命周期內(nèi)使用的 secondary channel map
  • 接入地址(Access Address),等等

有了這些信息,手機就和廣播者同步了,就能夠同時喚醒,廣播者發(fā)送數(shù)據(jù),手機接收數(shù)據(jù)。

  • AUX_SYNC_IND 攜帶了周期性廣播的數(shù)據(jù)。

Periodic advertising sync transfer (PAST)

PAST 是 Bluetooth 5.1 引入的,周期性廣播時掃描者與廣播者有一個同步的過程,但是有一些掃描設備不想耗費這些能量去進行同步,想要借助其他已經(jīng)同步的設備來同步廣播者,這就是 PAST 引入的原因。

可以參考下圖理解:


參考:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 藍牙廣播 藍牙從機設備正常工作時會以一定頻率發(fā)送廣播包,告知周圍設備可以來連接自己(connectable),或者...
    張志中閱讀 1,276評論 0 2
  • 說明:原作者寫的不錯,所以自己收藏。原作者https://blog.csdn.net/weixin_4460672...
    昨天剩下的一杯冷茶閱讀 3,762評論 0 0
  • 本文涉及如下BLE問題: BLE設備是如何被發(fā)現(xiàn)的 如何快速的找到BLE設備或者如何降低廣播階段的功耗 BLE廣播...
    美好的2020閱讀 1,707評論 0 1
  • Bluetooth SIG為了鼓勵會員逐步棄用藍牙核心規(guī)格舊版本藍牙標準并轉(zhuǎn)而使用新的藍牙核心規(guī)格版本藍牙標準以提...
    張志中閱讀 1,292評論 0 2
  • 廣播流程(理論過程) 藍牙有三個廣播信道37,38和39,主機在這個三個信道上掃描是否存在從機廣播廣播數(shù)據(jù),并可以...
    張志中閱讀 2,759評論 0 3

友情鏈接更多精彩內(nèi)容