Apple Advertising interval min max

Hello,

I’m having trouble understanding Apple’s requirements for the advertising interval.

https://developer.apple.com/accessories/Accessory-Design-Guidelines.pdf

52.5 Advertising Interval
The accessory should first use the recommended advertising interval of 20 ms for at least 30 seconds.
If it is not discovered within the initial 30 seconds, Apple recommends using one of the following longer
intervals to increase chances of discovery by the device:
● 152.5 ms
● 211.25 ms
● 318.75 ms
● 417.5 ms
● 546.25 ms
● 760 ms
● 852.5 ms
● 1022.5 ms
● 1285 ms

From what I understand, I need to set both the minimum and maximum values to 32 (20 ms) for 30 seconds, and then to 338 (211.25 ms).
However, the API states that the minimum and maximum values should not be the same.

/** Minimum Advertising Interval (N * 0.625 milliseconds)
* Minimum Advertising Interval shall be less than or equal to the
* Maximum Advertising Interval. The Minimum Advertising Interval and
* Maximum Advertising Interval should not be the same value (as stated
* in Bluetooth Core Spec 5.2, section 7.8.5)
* Range: 0x0020 to 0x4000
*/
uint32_t interval_min;

/** Maximum Advertising Interval (N * 0.625 milliseconds)
* Minimum Advertising Interval shall be less than or equal to the
* Maximum Advertising Interval. The Minimum Advertising Interval and
* Maximum Advertising Interval should not be the same value (as stated
* in Bluetooth Core Spec 5.2, section 7.8.5)
* Range: 0x0020 to 0x4000
*/
uint32_t interval_max;

What should the min/max values be to comply with Apple’s guidelines?

Thanks!

Parents
  • Hi,

    Using the same value is allowed ("should" is different from "shall"). This the exact text from the specification:

    The Advertising_Interval_Min shall be less than or equal to the
    Advertising_Interval_Max. The Advertising_Interval_Min and
    Advertising_Interval_Max should not be the same value to enable the
    Controller to determine the best advertising interval given other activities.

    If you want a specific interval, it will work and is acceptable to use the same for min and max.

Reply
  • Hi,

    Using the same value is allowed ("should" is different from "shall"). This the exact text from the specification:

    The Advertising_Interval_Min shall be less than or equal to the
    Advertising_Interval_Max. The Advertising_Interval_Min and
    Advertising_Interval_Max should not be the same value to enable the
    Controller to determine the best advertising interval given other activities.

    If you want a specific interval, it will work and is acceptable to use the same for min and max.

Children
No Data
Related