在sdk15.3.0的一个ble的demo里,与手机配对,然后手机取消与设备配对,然后再连接设备居然连接不上,看了下代码在配对的handler里没看到PM_EVT_CONN_SEC_CONFIG_REQ这个事件,于是自己加了一个就可以了。用SDK12的时候在nordic官方论坛也看到过这个问题 代码如下:
static void pm_evt_handler(pm_evt_t const * p_evt)
{
switch (p_evt->evt_id)
{
case PM_EVT_CONN_SEC_CONFIG_REQ://重新连接
{
// Reject pairing request from an already bonded peer.
pm_conn_sec_config_t conn_sec_config = {.allow_repairing = true};
//允许再次配对
pm_conn_sec_config_reply(p_evt->conn_handle, &conn_sec_config);
}
break;
default:
break;
}
}
如果你遇到了跟我一样的问题就给我点个赞呗^ ^
本文介绍在使用SDK15.3.0的BLE示例中遇到的连接问题解决方案。当手机取消与设备配对后,再次连接失败。通过监听PM_EVT_CONN_SEC_CONFIG_REQ事件并允许重新配对,成功解决了该问题。
3191

被折叠的 条评论
为什么被折叠?



