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

iOS do not connect actively after peering with IRK

Hi, All

sdk v7.2, IOS 9.1

I know after peering with IRK, iOS will connect 51822 actively. There're some issue in my project. It's not certain happen.

At most of time, iOS can connect device automatically after disconnection. But some time, it can't. So i do the job below:

  1. I can't see connection event in nrf51822 by log.

  2. Toggle BT switch of iOS is useless.

  3. Reading the bonding information. peering information still exist.

  4. Tap the device name in Setting->Bluetooth->myDevice, it will connect device, in BLE_GAP_EVT_SEC_INFO_REQUEST event, device_instance_find return Success as Peer's diversifier is equal.

  5. after manual connection, iOS can connect automatically on next disconnection.

i have no idea what is the mechanism of iOS active connection ? And how to make iOS connect device actively? Does anybody has an answer/solution for this?

[ADD] Thanks, Petter! It takes time to make this problem happen.

step1: while it happen, sniffer trace on wireshark. i try to make device advertising slow and fast, but iOS do not connect. see the attachment. Abnormal.pcapng

step2: i use app(lightblue) to connect device. it connects, but no pair diaglog appear. ConnectManually.pcapng

step3: after step2, it can reconnect automatically . DisconnectManually&ReconnectAuto.pcapng

In my project, device is advertising in BLE_GAP_ADV_TYPE_ADV_IND. I wonder is that advertising with whitelist could do any help?

Related