iOS 蓝牙连接 connectionSupervisionTimeout 是720ms 还是 2~6s

对比

  1. HCI可以看到iPhone作为主设连接外设时,可以看到:
    connection Event Interval = 30ms;
    connection Slave Latency = 0;
    connection Supervision Timeout = 720ms;
  2. 但苹果官方文档《 Accessory Design Guidelines for Apple Devices 》里41.6章里要求:
    Supervision Timeout from 2 seconds to 6 seconds.

原因

这里720ms是iPhone作为主设connect时设定的connectionParameter,但是蓝牙协议允许外设来根据实际情况协商

connection Supervision Timeout以满足需求,故《 Accessory Design Guidelines for Apple Devices 》文档在此时约束了外设协商的 Supervision Timeout from 2 seconds to 6 seconds.

Supervision Timeout 的大小影响能耗及连接健壮性,需根据应用场景灵活设置此值来达到平衡,coreBluetooth API并未提供方法来修改connect的参数设置,故一般让机硬件来修改此Connection Parameter

参考

  1. coreBluetooth报错: Error Domain=CBErrorDomain Code=6 \"The connection has timed out unexpectedly.\"
  2. 《Accessory-Design-Guidelines》
  3. iOS蓝牙 Connection Parameters 关键参数说明
相关推荐
QuantumLeap丶19 分钟前
《Flutter全栈开发实战指南:从零到高级》- 13 -状态管理GetX
android·flutter·ios·前端框架
從南走到北4 小时前
JAVA国际版二手车交易二手车市场系统源码支持Android+IOS+H5+APP
android·java·ios
ajassi20005 小时前
开源 Objective-C IOS 应用开发(九)复杂控件-tableview
ios·开源·objective-c
2501_915106326 小时前
iOS性能调优的系统化实践,从架构分层到多工具协同的全流程优化指南(开发者深度版)
android·ios·小程序·架构·uni-app·iphone·webview
uiop_uiop_uiop6 小时前
iOS arm64e hook MGCopyAnswer got Crash or Only Partial results got hooked
macos·ios·cocoa
~~李木子~~9 小时前
贪心算法实验1
算法·ios·贪心算法
大炮走火9 小时前
iOS在制作framework时,oc与swift混编的流程及坑点!
开发语言·ios·swift
马拉萨的春天12 小时前
iOS中如果一个大图500M直接加载显示会崩溃,那么如何设置加载显示呢?
macos·ios·cocoa
0***1412 小时前
Swift资源
开发语言·ios·swift
z***I39412 小时前
Swift Tips
开发语言·ios·swift