iOS 18.5 Pairing - IPhone SE

Segger running S112  & nRF5_SDK_17.1.0

With the board already paired/bonded to Android phone as keyboard and Mouse - Works well [mouse works and keypress work correctly]

Attempt to connect to iPhone SE running iOS 18.5, it will not pair, displaying a message pop up about  timing out.

Running nRF Connect on iPhone SE, it shows the advertisements correctly from board.

If I delete all the pairing/bonding from the board [there was only one - the Android phone]

Then pair/bond with the iPhone SE it works correctly.

  • In that SDK peer Manager handles bonding, and whitelisting is seems to be enabled in advertising in the examples we have given like in hids_keyboard or mouse. When the Android bonds, it is whitelisted, likely blocking the iPhone. Deleting bonds clears the whitelist, allowing the iPhone to connect.

    If you want to allow multiple phones, then disable the whitelist advertising flags in advertising_init()

    Change 

    init.config.ble_adv_whitelist_enabled = true; to 
    init.config.ble_adv_whitelist_enabled = false
  • Turns out this was a bit of a red-herring "If I delete all the pairing/bonding from the board [there was only one - the Android phone]. Then pair/bond with the iPhone SE it works correctly"

    It was all to do with the bonding process to Apple products

Related