Search code examples
iosbluetooth-lowenergyheadset

Concurrent usage of BLE and BT ()


I have developed a BLE peripheral application which sends deta (huge amount for BLE i.e 1-20 MB) to a central device (other than iOS) in each request. It works well in both foreground and background state.

However, I am facing a problem when connect a BT headset to my iPhone, play songs over BT headset and then tried to send data over BLE. In that case I am facing bellow ambiguous results:

  • data sending not working from very beginning.
  • after sending 30% (approx) data perfectly, it is not sending data anymore.
  • after sending some data, BLE gets disconnected.
  • sometimes song playing in Headset sounds broken.

It is not working in foreground state and of course not in background state too.

Above all things, my feature is not working anymore when BT headset is connected and in song-play state. Even 1 MB of data not sending.I have tested my app in iOS 9.3.5, 10.2, 10.2.1 beta. And use several headset to ensure headset not creating the problem.

Does BLE and BT not work simultaneously when both send/receive huge payload ? Please let me know, why this kind of scenario happens ?

Thanks in advance.


Solution

  • Concurrent use of BT and BLE might slow down the data rate, sometimes we may hear some noise in BT headset, however, the disconnecting during data transfer was an iOS bug especially for iPhone 6S Plus which is fixed from iOS 10.3 beta.