[PSOC™] 关于CY8C6347LQI-BLD52之动态修改Scan Response Data相关问题

[复制链接]
 楼主| Burnon_FAE_2 发表于 2024-4-30 14:43 | 显示全部楼层 |阅读模式
问题现象:
目前需要动态调整Scan Response Data,发现了问题:
首先停蓝牙广播,更新广播数据,再开启广播这个过程,发现蓝牙广播成功停止,但是数据更新失败。Cy_BLE_GAPP_UpdateAdvScanData仍旧是CY_BLE_ERROR_INVALID_OPERATION;停广播后 Cy_BLE_StackGetBleSsState仍旧是DEEPSLEEP。并且这个函数的返回值不在SDK中定义的返回值列表中


解决方法:
Please refer to below code to change Scan Response:

cy_ble_configPtr-
>discoveryModeInfo[CY_BLE_PERIPHERAL_CONFIGURATION_0_INDEX].advData = &advdata;
cy_ble_configPtr-
>discoveryModeInfo[CY_BLE_PERIPHERAL_CONFIGURATION_0_INDEX].scanRspData =
&scanRspData;
/* Start Advertisement and enter discoverable mode */
Result = Cy_BLE_GAPP_UpdateAdvScanData(&cy_ble_configPtr-
>discoveryModeInfo[CY_BLE_PERIPHERAL_CONFIGURATION_0_INDEX]);
If (Result == CY_BLE_SUCCESS)
Cy_BLE_ProcessEvent();


Where advdata and scanRspData are custom adv/scan response data array.

The address of target data arrays can be directly assigned to cy_ble_configPtr-
>discoveryModeInfo[CY_BLE_PERIPHERAL_CONFIGURATION_0_INDEX].advData


If advertising is already on, Cy_BLE_GAPP_UpdateAdvScanData() can be
called. Otherwise, just call Cy_BLE_GAPP_StartAdvertisement after switching
data array point, and then Cy_BLE_GAPP_UpdateAdvScanData() can be called
inside it.



Belle1257 发表于 2024-5-22 14:20 | 显示全部楼层
动态修改Scan Response Data可以使设备在不同的场景下提供不同的信息。例如,可以根据设备的工作模式、状态或用户需求,动态修改Scan Response Data中的名称或其他数据,以提供更灵活和个性化的广播信息
Charlotte夏 发表于 2024-5-22 15:30 | 显示全部楼层
要实现动态修改Scan Response Data,可以采取使用蓝牙协议栈提供的API的方法调用吧
Carina卡 发表于 2024-5-22 16:32 | 显示全部楼层
其实可以根据MCU所使用的蓝牙协议栈,查阅相关的文档和API参考手册,了解如何动态修改Scan Response Data。通常,协议栈会提供相应的API函数,用于设置和更新Scan Response Data的内容
Allison8859 发表于 2024-5-22 17:39 | 显示全部楼层
如果MCU具有可编程的接口,可以通过编程方式修改Scan Response Data。这可能涉及到对广播数据包的构建和修改,以及对广播过程的控制
Emily999 发表于 2024-5-22 18:45 | 显示全部楼层
在动态修改Scan Response Data时,确保遵守蓝牙规范
Betty1299 发表于 2024-5-22 19:48 | 显示全部楼层
注意一下,在修改Scan Response Data时,需要遵守蓝牙规范,确保数据格式和内容符合规范要求
Betty996 发表于 2024-5-22 20:51 | 显示全部楼层
考虑功耗和性能:动态修改Scan Response Data可能会增加功耗和处理负担。在设计和实现过程中,需要综合考虑功耗和性能的平衡,以确保系统的稳定性和可靠性
alxd 发表于 2024-5-23 08:24 | 显示全部楼层
测试和验证:在实现动态修改Scan Response Data后,进行充分的测试和验证工作。确保修改后的数据能够正确地被扫描设备接收和解析
Estelle1999 发表于 2024-5-23 10:20 | 显示全部楼层
动态修改Scan Response Data可以为设备提供更灵活和个性化的广播信息
Carmen7 发表于 2024-5-23 12:00 | 显示全部楼层
具体的实现方法和步骤可能因MCU和蓝牙协议栈的不同而有所差异,建议参考相关的文档和技术资料,以获取更详细的指导和支持

结合国际经验 发表于 2024-6-30 18:37 | 显示全部楼层
在实现动态修改Scan Response Data后,进行充分的测试和验证工作。确保修改后的数据能够正确地被扫描设备接收和解析
更多操作
您需要登录后才可以回帖 登录 | 注册

本版积分规则

66

主题

100

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部

66

主题

100

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部