如何在运行时修改扫描响应中的设备名称

3个帖子/ 0个新
最后发表
jknorr
离线
最后看到:3年7个月前
加入:2016-09-30 11:57
如何在运行时修改扫描响应中的设备名称

我的应用程序中的BLE设备(基于DSPS)从连接到UART的主机读取设备名称。读取操作在启动时开始,需要几秒钟。设备名在app.c中的app_easy_gap_non_connectable_advertise_start_create_msg()和app_easy_gap_undirected_advertise_start_create_msg()函数中读取到目前为止我是正确的。在我看来,这些函数在初始化期间只被调用一次。是否有任何方法设置或更改设备名称扫描响应后的初始化?

谢谢你的帮助。

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

嗨jknorr,

在运行时可以像更改广告字符串一样更改扫描响应数据,这意味着必须停止广告更改数据,然后使用更新后的数据重新开始广告。DSPS应用程序没有更新其广告数据的机制,因此设备只是用NVDS结构中的数据启动广告过程,而这些数据是由user_config.h函数填充的。因此,为了更新扫描响应数据,你必须在特定条件下停止广告(通常它是一个计时器,但它可以是任何你想要的),并在扫描响应数据中设置一个新的消息在gapm_start_advertise结构。您可以在ble_app_barebone示例中找到一个示例(该示例用于更改广告数据,但同样的过程也适用于扫描响应数据)。在user_barebone.c文件中检查user_app_adv_start()函数。

由于MT_dialog

jknorr
离线
最后看到:3年7个月前
加入:2016-09-30 11:57
你好,

你好,
这是工作!
谢谢你的帮助。