现有个项目要求cc2640能够扫描出100+个设备发出的广播包。我在SimpleBLEObserver例程上进行了测试,每次扫描只能扫到40,50个广播包,多次扫描的数据基本上是重复的,将近一半的设备广播包扫不出来。
板子是自制的,非官方板,ble stack版本2.0.0
100+个设备广播间隔为500ms
设备放置离cc2640很近
相关的定义修改:
#define DEFAULT_MAX_SCAN_RES 100
#define DEFAULT_DISCOVERY_ACTIVE_SCAN TURE
我应该怎么修改例程才能扫描出全部设备?
谢谢!
Yue TANG:
这个值不能设得太多。要看看 GAP_CentDevMgrInit( maxScanResponses )的返回值,是否true or false
Yue TANG:
类似问题供参考,只能是参考,这样的问题,估计没谁实测过。
https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/t/477769
da qin zheng sheng:
这个估计很难做到!
Yan:
回复 Yue TANG:
TY,
我看了下GAP_CentDevMgrInit( maxScanResponses )的返回值,是SUCCESS,这就不是memory的问题了吧。
另外我看例程默认的的scan interval 和 scan windows值分别是300ms,150ms
即:
GAP_GetParamValue(TGAP_CONN_SCAN_INT);GAP_GetParamValue(TGAP_CONN_SCAN_WIND);
这两个值需要修改吗?300ms,150ms会不会太长了?
Yan:
回复 da qin zheng sheng:
大秦正声,
请问这个的实现难在哪里呢?