1. 程式人生 > >藍芽協議中LQ和RSSI的原理及應用場景

藍芽協議中LQ和RSSI的原理及應用場景

本文轉自http://www.wowotech.net

在藍芽協議棧的物理層,有這樣兩個比較有用的引數:LQI和RSSI。它們都是通過接收端,判斷當前無線環境的質量(鏈路質量),以指導後續的動作。但這兩個數值的計算原理和使用場景又有很大的差別。

LQI (Link Quality Indication),是當前接收到的訊號的質量的一種度量。所謂的接收到訊號的質量,是接收器通過接收到的訊號和理想訊號之間的錯誤累積值估算的。例如,如果使用FSK或者GFSK調製方式,接收器可以將每個bit的頻率和期望的頻率比較,累積一定數量的symbols(例如64個),就得到了錯誤累積值。由此可知,由於LQI的測量和調製方式有關,因此它可以相對地給出當前的鏈路質量(質量越好,LQI的值越小,反之越大)。

RSSI(Received Signal Strength Indication),是訊號強度的指示,而不關心訊號的質量(quality)或者正確率(correctness)。LQI不關心實際的訊號強度,但訊號質量卻和訊號強度有關,因為越強的訊號,越不容易受到干擾,在接收端的表現就是“正確率”較高、LQI較低、訊號質量較好。

下面用一些典型的場景來說明LQI和RSSI的應用:

  • 訊號較弱,noise較強的時候,RSSI低、LQI高
  • 訊號較弱,但基本沒有noise時,RSSI低、LQI低
  • 非常強的noise(例如干擾器),可以造成高RSSI、高LQI(也就是說,RSSI高也不說明訊號一定好)
  • 訊號非常強,noise較低,RSSI高、LQI低
  • 如果訊號過強(導致接收飽和),也可能造成高RSSI和高LQI

注:如果你熟悉Linux的Bluez,可以通過如下命令檢視LQI和RSSI:

 1: hcitool rssi <BT ADDR>
 2: hcitool lq <BT ADDR>