我注意到有時RSSI值不正確。 我的代碼只需調用啓動掃描功能:onLeScan回調在Android上使用藍牙低功耗(BLE)掃描返回異常正的RSSI值
mBluetoothAdapter.startLeScan(mLeScanCallback);
,然後我讀了回調的結果,並保存在一個文件中的結果:
private static BluetoothAdapter.LeScanCallback mLeScanCallback =
new BluetoothAdapter.LeScanCallback() {
@Override
public void onLeScan(final BluetoothDevice device, final int rssi, final byte[] scanRecord) {
String objScanRec = bytesToHex(scanRecord);
outStr = rssi + ";" + objScanRec + ";" + device.getName() + ";" + beaconLocation + ";\n";
try {
Raw_log.write(outStr);
Raw_log.flush();
} catch (IOException e) {
e.printStackTrace();
}
// }
}
};
的問題是,我讀了積極的RSSI值,也如果信標處於固定距離。 例如我在離手機(或智能手錶)30釐米的燈塔處讀取了約-45的值,這些值是現實的,但值也在+80或+100左右(這是不現實的),這些值約爲測量值的20%。 有什麼我失蹤? 謝謝
我可能是錯的,但是這是電磁學是如何工作的?你無法得到確切的閱讀,因爲它們受到很多事物的干擾。 – dominik4142 2014-10-17 00:14:10
嗨,不,你沒有錯,RSSI值本質上是一個近似的衡量標準,並不穩定。但是我期望的是標稱值附近的振盪,比如從-45dBm到-35dBm,而不是正值,我也得到了100dBm(正值),這在智能手機中是不可能的(信號功率將達到幾百KW) [鏈接] http://www.rapidtables.com/convert/power/dBm_to_Watt.htm 但感謝您的評論 – Filartrix 2014-10-17 01:00:54
感謝您的鏈接!我剛剛檢查了關於rssi的維基百科詳情:它顯示了從天線吸收的功率。也許讀數來自WiFi /移動天線干擾藍牙?我知道這些是不同的頻率,但經過反彈或其他可能發生的事情後,可能會影響藍牙天線的工作方式? – dominik4142 2014-10-17 01:07:24