如何扫描ADV_NONCONN_UNDIR广告?

7个帖子/ 0个新
最后发表
puchuan
离线
最后看到:4年7个月前
加入:2016-07-12 04:32
如何扫描ADV_NONCONN_UNDIR广告?

嗨对话小组
我想用我的设备扫描我周围的所有信标,但我不能扫描所有。
我扫描的所有设备,他们的evt_type是ADV_CONN_UNDIR,但我想获得的设备类型是ADV_NONCONN_UNDIR。
你能帮我查一下吗?

我的客户端项目是DA1458x_DSPS_v_5.150.2.zip
/*********************************************************************/
静态const struct scan_configuration
/ / /操作的代码。
.code = GAPM_SCAN_PASSIVE,
///设备自带BD地址源
.addr_src = GAPM_PUBLIC_ADDR,
/ / /扫描间隔
.interval = 0 x1900,
///扫描窗口大小
.window = 0 x1900,
/ / /扫描模式
.mode = GAP_GEN_DISCOVERY,
///扫描过滤策略
.filt_policy = SCAN_ALLOW_ADV_ALL,
///扫描副本过滤策略
.filter_duplic = SCAN_FILT_DUPLIC_EN
};

Void user_on_adv_report_ind(struct gapm_adv_report_ind const * param) (struct gapm_adv_report_ind const * param)

Uint8 idx = 0;
Int8 len = 0;
Uint8 report_ret[64] = {'\0'};

/ /调试数据报告
arch_printf(“扫描装置:”);
Arch_printf ("%02x %02x %02x %02x %02x %02x",
param - > report.adv_addr.addr [5],
param - > report.adv_addr.addr [4],
param - > report.adv_addr.addr [3],
param - > report.adv_addr.addr [2],
param - > report.adv_addr.addr [1],
param - > report.adv_addr.addr [0]);

arch_printf (" \ r \ n ");
Arch_printf ("adv type = %d\r\n",param->report.evt_type);


/***************************************************************/

“参数- >报告。evt_type"总是0(ADV_CONN_UNDIR),我如何得到其他evt_type广告?
struct adv_report

/ / /事件类型:
/// - ADV_CONN_UNDIR:可连接的无向广告
/// - ADV_CONN_DIR:可连接定向广告
/// - ADV_DISC_UNDIR:可发现的无定向广告
/// - ADV_NONCONN_UNDIR:不可连接的无向广告
uint8_t evt_type;
///发布地址类型:public/random
uint8_t adv_addr_type;
/ / /广告地址值
struct bd_addr adv_addr;
///广告包中的数据长度
uint8_t data_len;
///广告包数据
uint8_t数据(ADV_DATA_LEN);
///发布报文的RSSI值
uint8_t rssi;
};

谢谢大家

设备:
MT_dialog
离线
最后看到:三个月两个星期前
工作人员
加入:2015-06-08 34
嗨puchuan,

嗨puchuan,

您无法扫描所有广告设备的事实是因为您的设备的.mode被设置为GAP_GEN_DISCOVERY,它只返回在有限或通用模式下发布的广告字符串。您必须使用GAP_OBSERVER_MODE来扫描所有类型的广告数据。

由于MT_dialog

puchuan
离线
最后看到:4年7个月前
加入:2016-07-12 04:32
嗨对话小组

嗨对话小组
我换了模式,问题解决得很好。谢谢你的帮助

wisilica
离线
最后看到:11个月,3个星期前
加入:2015-03-17 08:16
你好,

你好,
我使用了与上面相同的GAP_OBSERVER_MODE代码,仍然无法获得任何不可连接的广告。流程根本就没有出现在广告报告中。除了这些参数,我还需要初始化其他什么东西吗?我使用的是app_peripheral示例项目。

谢谢提前

MT_dialog
离线
最后看到:三个月两个星期前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

你得到了所有其他的广告指示,但不可连接的?

您是否将设备的角色配置为GAP_CENTRAL_MST或GAP_OBSERVER_SCA ?

由于MT_dialog

wisilica
离线
最后看到:11个月,3个星期前
加入:2015-03-17 08:16


做得很成功。谢谢你!

MT_dialog
离线
最后看到:三个月两个星期前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

如果上面的答案有用,请将答案标记为接受。

由于MT_dialog