你好,
我正在做一个项目,其中的DA 14585设备是在扫描模式的整个时间。我们使用的是SDK 6.0.4。设备以发送功率为0dBm、发送功率为8dbm的发送间隔为500ms,捕获2台设备发送的BLE报文。从0米到14米的不同距离重复试验。抓包后,将接收到的rssi值按照链路上的公式转换为相应的dBm值https://support.dialog-semiconductor.com/convert-rssi-dbm.在分析结果时,观察到rssi的巨大范围,dBm值非常低,即使是短距离。例如,在0米距离处,以0dBm功率发送的设备的rssi转换成dbm的值接近-70,而以8dBm功率发送BLE包的设备的rssi转换成dbm的值为-69。范围也不是在数据表中指定的2db。请问在新的SDK版本中,转换公式是否不同,原因是否相同?
感谢和问候
Wisilica
设备:
嗨wisilica,
转换公式和计算的方式改变是在585年,您得到的是错误的报道值SDK发布错误,为了得到正确的值必须取代rf_rssi_convert()函数,而不是返回rssi_reg / 2取代,在返回((rssi_reg > > 1 u) -112 u);一旦你得到了,你应该能够得到正确的值而不需要额外的转换。
由于MT_dialog
你好,
根据方法建议,返回值已更改为return ((rssi_reg >> 1)-112);在rf_rssi_convert()。现在,在距离0米处,我们得到的值是i param->report。Rssi的范围为e6 ~ e7。这对应什么?是否需要其他转换?
谢谢
嗨wisilica,
不,不需要转换,修改后返回的值在dbm中是RSSI的实际值,0xE6表示-26dbm,如果你把它读成有符号的值。
由于MT_dialog
你好,
按照你的建议,我们已经修改了代码,并重复了测试。PFA是我们得到的rssi vs距离图。相对于距离,rssi不会线性下降。此外,每个病例的rssi都有10 - 15 dbm左右的偏移。请提出同样的原因。
谢谢
Wisilica
嗨wisilica,
RSSI是用dbm测量的,dbm是一个对数单位,RSSI和距离之间的关系不是线性的,如果这是你期望观察到的,你不会看到RSSI在直接类比中随着距离的增加而减少。此外,为了正确地测试这一点,您将必须执行屏蔽测量(移动)。
由于MT_dialog
你好,
随函附上对数分析。实际变化量与对数表示仍然存在差异。
请检查。
谢谢
Wisilica
嗨wisilica,
有相当多的公式来估计基于RSSI的距离,这是本论坛的范围,我建议在网上检查为了找到更多的细节,如果这是你想做什么。虽然你不能得到一个精确的读数和大多数的公式提供了距离的粗略估计,也关于图表,天线和系统一般都不是完美的,例如,接收信号的功率在所有频率中都不相同,为了准确,测试需要在屏蔽环境中进行,因为rssi值受到噪声的高度影响。
由于MT_dialog
你好,
我想知道,rssi返回的情况下DA 14580(SDK 5.0.4)是正确的,即rssi_reg/2。这个bug只存在于585 SDK 6.0.4,对吗?
谢谢
Wisilica
嗨wisilica,
是的,在这两个soc上的rssi计算是不同的,因为585携带不同的堆栈,如何在dbm中计算rssi在下面的链接中有文档,不,你不需要在580 SDK上应用那个补丁:
https://support.dialog-semiconductor.com/guide/faq-da1458x-software-peri..。(常见问题:如何读取和转换RSSI值为dBm)。
由于MT_dialog