提高WiFi扫描速度

时间:2012-03-02 12:42:40

标签: android wifi driver rom

我遇到了问题。我正在开发一个扫描无线接入点/路由器的Android应用程序。我一直在测试几个设备,我的扫描速率为每秒2,1,0.5,0.1等。

我的目标是每秒达到10次扫描,因为路由器可以每秒发送10次信标。我们需要这个用于我们的应用程序。

是否有可能实现这一目标? Perhapse攻击rom并更换wifi驱动程序?我一直在寻找这个,但我在驱动程序中找不到关于这个频繁的任何内容。

使用的驱动程序是BCM4329驱动程序,我找不到BCM4329的任何数据表,所以很难搞清楚这一点。

提前致谢。 flitjes

4 个答案:

答案 0 :(得分:0)

我不熟悉驱动程序开发,但我知道它是计算机科学中最难的事情之一,所以除非你对linux内核开发有很好的了解,否则我会忘记它。

此外,您仍然需要扫描12个Wi-Fi频道,以确保您检测到所有接入点。接入点每100ms * 12个信道= 1.2秒广播信标。花费的时间少于此,您可能会错失接入点。

答案 1 :(得分:0)

您无需更改设备驱动程序中的任何内容,Android可让您扫描接入点。请参阅documentation

虽然请求许多扫描可能不会对电池寿命和应用程序的响应性有很大帮助...

答案 2 :(得分:0)

您认为信标速率为每秒10次是不正确的。这实际上是一个AP配置参数,尽管大多数情况下每秒默认10个。除此之外,AP不会同时发送信标,如果发生这种情况,则称为冲突,退避算法用于重传。此外,即使每秒扫描10次也不能确保捕获所有信标,就像之前的答案中指出的一样。

答案 3 :(得分:0)

如果您使用4339驱动程序,则无法在4339固件中修复驱动程序或android api中的扫描速率,扫描是关于所有通道&&根据80211规范,每个频道花费的时间,这是mac& amp; amp; PHY。在这种情况下你只需要获得信标,所以你应该使用被动扫描并使用固定频道&&你希望MaxChannelTime。

你必须要求broadcom找出你的问题才能解决问题,

IEEE 标准802.11-2012第978页 10.1.4.2被动扫描 如果ScanType参数指示被动扫描,则STA应监听扫描为no的每个通道 超过MaxChannelTime参数定义的最大持续时间。