I went through the process of migrating a custom app from SDK 14.2.0 to SDK 15.0.0 running on nRF52840 dev board, and I am having mixed results when pairing through nRF Connect.
When using 2 nordic dev boards (1 as central, 1 as peripheral) I can successfully pair using Just Works and also Passkey pairing. I can also successfully bond a Samsung galaxy S8 running android 8.0.0 to the peripheral server dev board using passkey pairing.
However, I am unable to pair to the peripheral server dev board using a Pixel 2 XL phone running Android 9. On the phone, nRF Connect log shows:
Connected to E7:66:...
Services discovered
Connection parameters update failed with status 19 (interval: 45.0ms, latency: 0, timeout: 5000ms)
Error 19 (0x13): UNKNOWN(19)
Connection terminated by peer (status 19)
Disconnected
Bonding failed
Debug output on the Peripheral side shows:
[00:00:00.000,030] <info> app: Fast advertising.
[00:00:00.062,744] <info> app: Connected as a peripheral.
[00:00:00.062,805] <info> app: BleMgr_Adv_Softdevice
[00:00:00.021,179] <info> app: ATT MTU exchange completed. MTU set to 247 bytes.
[00:00:00.000,335] <info> app: Data length updated to 251 bytes.
[00:00:00.045,288] <info> app: PHY update accepted. PHY set to 1 Mbps.
[00:00:00.037,597] <info> app: Conn Sec Params Req
[00:00:00.037,872] <info> app: PERIPHERAL: BLE_GAP_EVT_SEC_PARAMS_REQUEST
[00:00:00.037,933] <info> app: PERIPHERAL: BLE_GAP_EVT_PASSKEY_DISPLAY: passkey=446192 match_req=0
[00:00:00.017,883] <info> app: PERIPHERAL: BLE_GAP_EVT_LESC_DHKEY_REQUEST
[00:00:00.018,035] <info> app: BleMgr_Conn_Softdevice
[00:00:00.054,260] <info> app: Calling sd_ble_gap_lesc_dhkey_reply on conn_handle: 0
[00:00:00.076,293] <info> app: BleMgr_Conn_Timeout
[00:00:00.076,324] <info> app: Pairing Req Timed out
[00:00:00.076,324] <info> app: disconnect success
[00:00:00.035,552] <info> app: PM_EVT_CONN_SEC_FAILED due to err:4352
[00:00:00.035,583] <info> app: Disconnected: reason 0x16.
[00:00:00.035,614] <info> FCS: notif disabled @ 259
[00:00:00.035,644] <info> app: BleMgr_Conn_Softdevice
[00:00:00.036,254] <info> app: Fast advertising with whitelist.
Why does the Pixel 2 XL pairing fail, but the Samsung pairs successfully?