上面的设置符合IOS的蓝牙连接规范,改规范如下:
The connection parameter request may be rejected if it does not comply with all of these rules:
Interval Max * (Slave Latency + 1) ≤ 2 seconds
Interval Min ≥ 20 ms
Interval Min + 20 ms ≤ Interval Max
Slave Latency ≤ 4
connSupervisionTimeout ≤ 6 seconds
Interval Max*(Slave Latency+1) * 3 < connSupervisionTimeout
------------------------------------------------------------------------------------
Interval Max = 800*1.25ms = 1000ms (√)
Interval Min = 80*1.25ms = 100ms (√)
Slave Latency = 0 (√)
connSupervisionTimeout =1000*10ms =10s (√)
----------------------------------------------------------------------------------------------------------------------------simple_peripheral.c
// Advertising interval when device is discoverable (units of 625us, 160=100ms) 当设备被发现时的广告间隔#define DEFAULT_ADVERTISING_INTERVAL 160
// General discoverable mode: advertise indefinitely 一般可发现模式:无限广告。
#define DEFAULT_DISCOVERABLE_MODE GAP_ADTYPE_FLAGS_GENERAL
【低功耗蓝牙的发现模式主要分为有限可发现模式和普通可发现模式】
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 80
// Maximum connection interval (units of 1.25ms, 800=1000ms) for automatic parameter update request 最大连接间隔(1.25ms, 80=100ms)自动参数更新请求。
#define DEFAULT_DESIRED_MAX_CONN