繁体   English   中英

低功耗蓝牙-双方都获得RSSI吗?

[英]Bluetooth Low Energy - get RSSI for both sides?

我现在专注于Android,但是我相信这些问题的答案适用于任何操作系统,它们只会使用不同的功能来获取数据。

建立BLE连接后,可以通过BluetoothGatt.readRemoteRssi()来“读取所连接的远程设备的RSSI”。

第一个问题:我是否正确理解了此功能,它使我的Android设备接收到的信号强度(从远程BLE设备传输)恢复了,对吗? 我认为这是让我烦恼的函数名称,该名称不应该只是readRssi()吗? readRemoteRssi()使我认为某个地方有一个伴随函数readLocalRssi()。

第二个问题:假设我正确理解了该功能,那么蓝牙内置的任何功能都可以让我问“远程BLE设备对RSSI的看法是什么?” 换句话说,在Android设备正在传输的信号中,有多少到达远程BLE设备?

以后添加

根据我得到的答案,显然我并不能很好地解释自己。 让我再试一遍。

远程BLE设备正在以一定的功率发送信号,那些无线电波向各个方向传播,其中一些无线电波被我的移动设备接收。 我的移动设备测量这些波的强度,并报告为RSSI。 RSSI代表“接收信号强度指示器”,由于它是本地移动设备在进行接收,因此将功能命名为“远程”似乎很奇怪。 当然,RSSI会测量来自远程发送器的内容-否则,它不会很有用。

类似地,移动设备正在以一定的功率进行发送,并且那些无线电波在所有方向上都向外传播,并且其中一些无线电波被远程BLE设备接收。 那个远程BLE设备测量这些波的强度,这就是他的 RSSI。 我的第二个问题是询问蓝牙标准中是否有任何内容(例如预定义的特性,例如“电池电量”),让我的移动设备查询远程BLE设备并询问“嘿,伙计,您收到多少信号?”

am I understanding this function correctly, it is returning to me the strength of the signal
 (transmitted from the remote BLE device) that my Android device is receiving, right?

实际上,rssi是由ble芯片根据从远程设备接收到的广告数据包计算得出的。 我们不会直接从远程设备获取rssi值。

I think it's the function name that's throwing me off, shouldn't the name just be readRssi()?

不,我们实际上正在读取远程设备的rssi。

readRemoteRssi() makes me think there's a companion function readLocalRssi() somewhere.

没有这样的方法,因为在当前设备所连接的另一端确定了rssi。

assuming I am understanding the function correctly, is there anything built into Bluetooth that lets me ask "what is the remote BLE device seeing for RSSI?" In other words, of the signal that the Android device is transmitting, how much of that is reaching the remote BLE device?

是rssi。 它是根据接收到的广告包数相对于总包数来计算的。

注意:根据我的经验,我的一些答案是我的猜测。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM