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.