BLE Pairing fails with iOS 16 betas

  1. App is acting as BLE Peripheral
  2. The Bluetooth module is acting as BLE Central
  3. We have one "iPhone 12" with iOS 15.6.1.
  4. We have one "iPhone 13" and one "iPhone 13 Pro", both with iOS 16 beta 7.
  5. On previous stable versions of iOS 15 and below, pairing works fine.
  6. We see that a pairing request is sent from Central to Peripheral (app) on "iPhone 12" with iOS 15.6.1 and "iPhone 13" with iOS 16 beta 7.
  7. On one "iPhone 13 Pro", we don't get a pairing popup where as on iOS 15 we get the pairing popup. We looked at the bluetoothd logs and see that on iOS 16, it could be failing for following reasons:
default    23:06:40.830277+0530    bluetoothd    Read fMapEnabled : 0
error    23:06:40.830359+0530    bluetoothd    Denying connection attempt from device CC:C0:79:70:0D:2B. Is MAP enabled? Is MAP connected to some other device?

  1. sysdiagnose logs don't show any packets captured related to "ATT Receive" for iPhone 13 Pro where pairing fails. We want to understand what has changed in iOS 16 beta to cause this behaviour and if there is a way to fix this on the phone as upgrading the motorcycle ECU firmware would be a very time consuming process.

Replies

Have you found a solution yet? My iPhone 13 running iOS 16.4.1 will not pair with iPad Pro running the same OS. It just says that the iPad is unsupported?!? This renders apps using the MultipeerConnectivity Framework inoperative and worthless.