When Connecting 9 BLE Devices To iPad 9th Generation, One Device Experiences Connection Failure.

It seems that the connection failure occurs when attempting to establish GATT connections with 9 BLE devices simultaneously. However, when connecting fewer than 8 or more than 10 devices, data can be received without issues.

Upon investigation, the following points have been identified:

  • This issue does not occur on iPad 10th generation.
    • The iPad 9th generation uses Bluetooth 4.2, while the iPad 10th generation uses Bluetooth 5.0, so this difference might be the cause.
  • The limitation is 9 devices per device, not per App.
    • The issue occurs even when trying to connect 8 BLE devices with App 1 and 1 BLE device with App 2.
  • It appears that the 9th device experiencing the connection failure is not receiving the result of the service discovery.
    • According to the PacketLogger logs, the connection itself is established, but the service discovery results are not returned.
  • When a 10th device is connected, the 9th device also connects successfully.
    • Once the 10th device connects, the service discovery results for the 9th device are returned.

The reproduction steps are as follows:

Device:

  • iPad 9th generation (iPadOS 17.6.1)

Procedure:

  • Prepare 9 BLE devices.
  • Connect each BLE device to the iPad one by one.
  • Data can be received from devices 1 through 8, but data cannot be received from the 9th device.

This is an interesting issue and warrants some investigation. To do so we will need some diagnostic and packet logs.

Best action at this point is filing a bug report about this to have that detailed info.

We will need a debug level sysdiagnose after reproducing the issue.

To do so, please first go to https://developer.apple.com/bug-reporting/profiles-and-logs/ and follow the instructions for Bluetooth for iOS to install a logging profile on your device. Then, once the logging profile is installed:

  • reproduce the problem, and include details about the conditions at the time
  • Once the problem is reproduced, follow the instructions at the above link to trigger a sysdiagnose and attach it to the bug report
  • make sure you include your app's Bundle ID, and any other information you find relevant

To file a bug report, you can use the Feedback Assistant.

Once you open the bug report, please post the FB number here for my reference.

If you have any questions about filing a bug report, take a look at Bug Reporting: How and Why?


Argun Tekant /  DTS Engineer / Core Technologies

When Connecting 9 BLE Devices To iPad 9th Generation, One Device Experiences Connection Failure.
 
 
Q