Cy_BLE_StoreBondingData一直返回INVALID PARAMETER

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lvji_2284726
Level 2
Level 2
10 replies posted 5 replies posted First question asked

使用PSOC6做BLE Bonding处理,按照下面的方式调用Cy_BLE_StoreBondingData函数,发现函数返回值一直error,

                        /* Store bonding data to flash only when all debug information has been sent */   

                        if(cy_ble_pendingFlashWrite != 0u)

                        {  

                            bleApiResult = Cy_BLE_StoreBondingData();   

                            DebugPrintf("Store bonding data, status: %x, pending: %x \r\n", bleApiResult, cy_ble_pendingFlashWrite);

                        }

请问是什么原因导致该函数一直返回错误值。

0 点赞
1 解答
ShipingW_81
Moderator
Moderator
Moderator
500 replies posted 250 solutions authored 250 replies posted

同时启用EEPROM组件和BLE可能会出现类似问题,EEPROM默认空间跟BLE保存bonding list的空间是重合的 - .cy_em_eeprom section,有两种解决办法 -

1. 将EEPROM操作和BLE host分别放到两个核

2. 或者在ee_eeprom空间自定义不同的段,修改BLE_Config.c文件中cy_ble_flashStorage数组放置位置为该段。

可以参考下列文档,如何将两个核EEPROM空间分来或者不对任一核分配EEPROM空间 - Manage Working Flash Space for Both Cores of PSoC® 6 – KBA224173

在原帖中查看解决方案

0 点赞
5 回复数
ShipingW_81
Moderator
Moderator
Moderator
500 replies posted 250 solutions authored 250 replies posted

lvji_2284726

你的测试工程是官方示例代码,还是自己的code?测试硬件是CY8CKIT062-BLE DVK? 具体的版本是哪个?

我们有的示例代码是按类似的方式调用该API,如 ce212742​,你是否用的是这个code?

另外需要注意要在组件配置框Security Settings勾选Bonding requirement才能使用该函数。

0 点赞

我跟踪代码发现,Cy_BLE_StoreBondingData函数里面调用了Cy_BLE_StoreStackData函数,

Cy_BLE_StoreStackData返回值一直是INVALID PARAMETER,请问知道这是什么原因吗?

0 点赞

还有我的工程里面启用了Emulated EEPROM功能,这个功能会影响BLE Bonding功能吗?

0 点赞
ShipingW_81
Moderator
Moderator
Moderator
500 replies posted 250 solutions authored 250 replies posted

同时启用EEPROM组件和BLE可能会出现类似问题,EEPROM默认空间跟BLE保存bonding list的空间是重合的 - .cy_em_eeprom section,有两种解决办法 -

1. 将EEPROM操作和BLE host分别放到两个核

2. 或者在ee_eeprom空间自定义不同的段,修改BLE_Config.c文件中cy_ble_flashStorage数组放置位置为该段。

可以参考下列文档,如何将两个核EEPROM空间分来或者不对任一核分配EEPROM空间 - Manage Working Flash Space for Both Cores of PSoC® 6 – KBA224173

0 点赞
lvji_2284726
Level 2
Level 2
10 replies posted 5 replies posted First question asked

我的测试工程是参考CE212742,自己开发的工程,测试硬件是CY8CPROTO-063-BLE,

组件配置框Security Settings里面Bonding requirement已经勾选了

0 点赞