我是Android新手,我的应用使用蓝牙从小型称重传感器放大器接收数据。虽然在某些设备(三星设备)中,BT信号强度(RSSI)按预期变化(从近距离的-20左右到10m处的-80左右),但在其他一些设备(至少是LG型号)中,RSSI很奇怪,在短距离内约为200(正值!)。我假设LG手机没有以dBm为单位提供RSSI值。在所有情况下,三星平板电脑和LG手机始终连接到同一远程设备(我的客户正在开发的放大器sample)。实际上我的问题是,在这种情况下,不同的Android设备(或不同的Android版本)对同一个API调用的响应不同是否正常。 最佳答案
我正在尝试使用蓝牙适配器实现室内位置跟踪系统。这个想法是带着安卓设备四处走动,并根据放置在房间周围的蓝牙适配器的信号强度计算你在房间中的位置。为了做到这一点,我决定使用机器学习来尽可能接近地将RSSI近似为距离,例如米。我大学的一位讲师告诉我,我正在寻找LibSVM,所以我一直在阅读。我看过这个tutorial并且似乎无法理解训练系统所需的数据。我将拥有的数据是:保存在数据库中的每个加密狗的位置(连同mac地址),x和y坐标离我的android设备最近的加密狗的接收信号强度指示器(RSSI)mac地址将用于查询特定加密狗的数据库我知道数据必须是SVM格式,但我有点不确定输入数据和输出数
我正在编写一个收集手机信号强度的Android应用程序。我在获取“当前”小区信号强度时遇到问题,但在获取“相邻”小区信号强度时没有任何问题。为了获取当前的手机信号强度,我创建了一个PhoneStateListener并实现了onSignalStrengthChanged回调。它有效,但不是很好。信号强度似乎几乎没有变化,分辨率只跳到几个数字。我会接受信号强度硬件的分辨率很粗糙的答案,但是当我使用TelephonyManager的getNeighboringCellInfo()方法时,它的效果要好得多。来自相邻小区的信号强度读数经常变化,并且它们具有更好的分辨率。那么,我怎样才能像获取相
我正在尝试检测wifi连接中的信号强度变化。我对应该在BroadcastReceiver中使用哪种方法感到困惑。使用getConnectionInfo()和getScanResults()之间有什么区别-然后我可以使用相关方法获取rssi值?例如:如果我使用getConnectionInfo(),那么稍后我将使用getRssi()。或者我可以使用getScanResults()和“level”属性。我使用Toast显示它们的值,它并不总是显示相同的值。当wificonn丢失时,getConnectionInfo().getRssi()显示-200,而result.level仍然显示其之
我对Android(2.0或2.1)上的蓝牙RSSI功能有疑问:创建蓝牙连接时获取RSSI值很容易,但是如何重复获取已激活连接的RSSI值?能够做到这一点非常重要,因为这可以让您确定蓝牙设备是彼此靠近还是远离,但我在AndroidAPI中找不到任何合适的函数调用。请懂AndroidRSSI的friend帮我解决这个问题?谢谢!亚历克斯 最佳答案 在HCI层,有一个从蓝牙芯片组读取蓝牙链路RSSI的命令(Read_RSSI_Command)。然而,它的实现可能因蓝牙芯片组而异。并且返回的值并不总是有用的,例如,如果最近几分钟没有数据包
目录MCC(移动国家代码)MNC(移动网络代码)dbm(功率绝对值)TAC(跟踪区代码)ECI(小区唯一标识)PCI(物理小区标识)BAND(频带)EARFCN(载波频点号)FREQ(频率)RSSI(信号强度)RSRP(参考信号接收功率)RSRQ(参考信号接收质量)SINR(信号与干扰加噪声比)MCC(移动国家代码)MCC:Mobile CountryCode,移动国家代码,MCC的资源是由国际电联(duITU)统一分配和管理,用于唯一识别移动用户zhi所属的国家,共3位。中国为460。MNC(移动网络代码)MNC(MobileNetworkCode,移动信号网络码)用于识别移动客户所属的移动
我正在尝试提高wifi扫描率,但是使用wifi.startscan方法并获取返回的列表结果的信息,我没有看到rssi每2秒更改一次。我的问题是是否有可能对rssi进行低速率扫描,如果可能的话我该怎么做。 最佳答案 扫描速度很慢,因为扫描需要很长时间。减少扫描时间的唯一方法是scanonasubsetofavailablefrequencies. 关于android-更快的WiFi扫描速率以获得rssi更改android,我们在StackOverflow上找到一个类似的问题:
我是android编程的新手,正在尝试从BLE设备获取rssi值以进行距离测量。我可以扫描并获取设备的名称和mac地址,但我已经尝试过代码来获取rssi但不能得到有用的结果,我也使用android开发者网站上的示例。有人可以给我正确的代码吗? 最佳答案 对此有两种解决方案。对于4.0和5.0设备可以使用不同的方法来搜索/扫描BLE设备。您没有提到您使用的是哪一种,因此请在下面添加这两种解决方案。1)对于Android4.4+至5.0,您必须通过BluetoothAdapter的startLEScan方法开始LE扫描,这会为您提供以下
我的应用程序需要不断获取蓝牙设备的RSSI值以进行一些距离-rssi近似,无需连接。但是,BluetoothAdapter的回调方法仅在设备扫描时获取一次RSSI。//DevicescancallbackprivateBluetoothAdapter.LeScanCallbackleScanCallback=newBluetoothAdapter.LeScanCallback(){@OverridepublicvoidonLeScan(finalBluetoothDevicedevice,finalintrssi,byte[]scanRecord){runOnUiThread(newR
对于我的项目,我需要估计智能手机和蓝牙模块之间的距离。估计不必非常精确。我只需要确定误差范围为50cm的距离。.我确实以10厘米的距离步长测试了两个蓝牙模块的RSSI。我为每个步骤测量了5次RSSI,并获得了5次测量的平均值。平均值如下图所示:红线和蓝线类似于两个蓝牙模块。您可以看到结果不是很线性。造成这种情况的原因之一是干扰,所以我寻找解决干扰问题的方法。我发现的两种方法是:信噪比(SNR):UnderstandingibeacondistancingiBeacon信号强度(rssi)与校准后的发射机功率(txPower)之比。txPower是rssi中已知的测量信号强度在1mete