Slow packet transfer rate iOS BLE

166 Views Asked by At

The problem I've observed is that sending for example 100 packets took about 50 seconds which is much longer than expected.

If I tried sending packets without a delay, I realized that CBPeripheralManager updateValue:forCharacteristic:onSubscribedCentrals: returned BOOL value NO indicating packet was not sent, likely because underlying transmit queue is full.

I tried fixing this by resending the packet when queue space becomes available via peripheralManagerIsReadyToUpdateSubscribers, but it still takes around 30 seconds to send 100 packets - with no delay mechanism.

What do I need to consider or change if trying to reduce the duration to around 10 seconds as expected?

By the way, the connection parameters interval is set to 125 milliseconds with 0 latency.

0

There are 0 best solutions below