This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SDK13.1 ancs bug

hello all:

I think sdk13.1 s132 has a bug about ANCS, ANCS works normally only in the following two cases

1、Both the phone side and the device side do not remember each other's information;

2、Both the phone side and the device side remember each other's information;

In addition to these two cases there are two cases that are not working properly

1、After the bonding is completed, forget the device information from phone side,When Re-connect the device , device will request a pair, but the phone does not respond,device has not response yet;ancs can't work.this case can work in SDK11.0,SDK9.1

2、After the bonding is completed,forget the phone information from device side ,when reconnect the device, ANCS can't work ;

  • Ok,I am looking for a solution to this problem,if I forget the bond informaion from IOS side (device had remember the IOS info), connect in next time, devciece side will recieve an event PM_EVT_CONN_SEC_CONFIG_REQ, The default way to deal with this event is reject pairing request from an already bonded peer.

    pm_conn_sec_config_t conn_sec_config = {.allow_repairing = false}; pm_conn_sec_config_reply(p_evt->conn_handle, &conn_sec_config);

    if you want to repair the IOS, you can do like this

    pm_conn_sec_config_t conn_sec_config = {.allow_repairing = true}; pm_conn_sec_config_reply(p_evt->conn_handle, &conn_sec_config);

    it can work normal.

Related