Connection parameters update request is always rejected by iOS

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
IoVo_297831
Level 4
Level 4
First like received

Hi,

   

In our application, we want to change the connection parameters and the CyBle_L2capLeConnectionParamUpdateRequest function is called with the desired parameters.
The central is an iphone and it always rejects the request.
I have followed the constraints we can find here but the continues rejecting the request.
I even tried to request the same parameters but the iphone inists rejecting the request.

   

The desired parameters are:
Minimum Connection Interval: 20ms
​Maximum Connection Interval: 20ms
​Slave Latency: 1
​Supervision Timeout: 5000ms
Is there anything against constraints with the above parameters for Apple devices?
​Apple documentation refers that no related API exists to manage connection parameters update request.
If the request has valid parameters, then it should be accepted.
It is critical to change the connection interval.
Any ideas?

   

Thank you in advance,
Best Regards,
Yiannis

0 Likes
1 Solution
IoVo_297831
Level 4
Level 4
First like received

...found it.
The constraint Minimum Connection Interval + 20 ms ≤ Interval Maximum Slave Latency ≤ 4
is actually:
Minimum Connection Interval + 20 ms ≤ Interval Maximum
Slave Latency ≤ 4

View solution in original post

0 Likes
2 Replies
IoVo_297831
Level 4
Level 4
First like received

...found it.
The constraint Minimum Connection Interval + 20 ms ≤ Interval Maximum Slave Latency ≤ 4
is actually:
Minimum Connection Interval + 20 ms ≤ Interval Maximum
Slave Latency ≤ 4

0 Likes
Anonymous
Not applicable

Here is the link to the updated release of BLE advertising and connection parameters guidelines from Apple. https://developer.apple.com/library/content/qa/qa1931/_index.html

It changed from connection interval minimum of 20ms to 15ms. You will also find there the link to the complete document.