使用带有ADV_SCAN_IND的信标参考设计

4个职位/ 0个新职位
最后发表
quangng
离线
最后看到:1年1个月前
加入:2015-10-29 22:03
使用带有ADV_SCAN_IND的信标参考设计

你好,

我正在制作一个基于DA14580_BEACON_3.40.6参考设计的小型信标应用程序。特别是,我希望广播机构在接收到来自观察者的扫描响应请求时,除了发送广告数据外,还发送扫描响应数据。所以我理解我必须在app_init_func()中设置app_advertise_mode为可扫描的无向广告事件(ADV_SCAN_IND),但我可以在SDK中找到任何这种PDU类型的宏。我如何设置广播(信标设备)来实现这一点?

另外,我希望使用自己的信标数据,而不是使用const struct nvds_data_struct (nvds.c文件)中定义的信标数据。我该怎么做呢?

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

嗨quangng,

尝试将扫描响应数据插入到广告字符串中,这将触发你想要的ADV_SCAN_IND PDU。尝试到信标参考设计你可以去app_dialog_beacon_proj.h和改变APP_SCNRSP_DATA_LENGTH 3(已经放置数据APP_SCNRSP_DATA)之后,为了看到你的设备去做广告app_sleep.h文件和注释掉以下代码片段在app_asynch_trm()函数:

If (app_advertise_counter == 1)

app_advertise_mode == GAPM_ADV_NON_CONN
ble_advtim_set (500);

信标引用可以填充来自不同来源的发布数据,无论是NVDS或flash,这取决于fw的配置,最后,发布信息的数据数组填充gapm_start_advertise_cmd的adv_data成员,所以这是你应该关注的地方。

由于MT_dialog

quangng
离线
最后看到:1年1个月前
加入:2015-10-29 22:03
嗨对话框的团队!

嗨对话框的团队!
关于信标示例项目
1.下面的代码片段在app_asynch_trm(在app_sleep.h文件)中做什么?为使扫描响应数据工作,为什么我们必须注释掉代码片段?

If (app_advertise_counter == 1)

app_advertise_mode == GAPM_ADV_NON_CONN
ble_advtim_set (500);

2.这个ble_advtim_set函数做什么?用于设置每个广告通道之间的广告间隔(37,38,39)。我修改了信标示例项目,将发布间隔设置为1000ms。从我的嗅探器日志数据中,我看到3个广告包几乎“同时”发送出去(首先是在通道37,然后是38,然后是39),然后1000ms之后同样的模式再次重复。

3.定义每个频道上的每个广告包之间的间隔(37,38,39)。这个间隔是由函数ble_advtim_set(500)定义的吗?

4.是否有可能修改软件,根据APP_BEACON_INT_MIN和APP_BEACON_INT_MAX定义的广告间隔,在每个信道上只发送一个广告包?(例如,阿包负载“A”频道37 - > 1秒- >阿包的有效载荷在38 - >频道“A”1秒- >阿包的有效载荷在39 - > 1第二频道“A”- >阿包负载“B”频道37 - > 1秒- >阿包的有效载荷在38 - >频道“B”1秒- - - - - - >阿包负载“B”频道39 - >…等

5.使用uart2驱动程序,当从UART Rx引脚(P0_5)接收到字符时,我们可以从扩展睡眠模式中唤醒信标设备吗?

我在这里附上了一个pdf文件来详细说明我的问题,关于广告间隔

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

嗨quangng,

1.信标广告模式是不可连接的,所以我们可以减少两个广告包之间的广告间隔时间,以节省一些电力,如果你尝试发送和接收(因为在你的情况下你将不得不听扫描请求包)每个间隔之间的时间不够打开接收器,所以系统不会做任何事情。

2和3。这就是ble_advtim_set所做的,它减少了每个广告频道之间的广告间隔。

4.是的,你可以在一个或两个通道中发布广告,这可以在gapm_start_advertise_cmd的配置中完成,在channel_map成员中,你可以有01->37 02->38 04->39通道

5.你可以在你的唤醒控制器中设置P05,当有人按下键盘上的一个键时,你会从uart中错过字符。

由于MT_dialog

主题锁定