iOS蓝牙接收外设数据自动中断

一、错误原因

在做iOS设备作为central,与蓝牙外设连接,接收蓝牙外设传输的数据时发生蓝牙中断。

在- (void)centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(nullable NSError *)error方法报Code=6 "The connection has timed out unexpectedly错误。

二、解决办法

找了好久在https://developer.apple.com/library/content/qa/qa1931/_index.html发现苹果对蓝牙固件参数有以下控制

最后想硬件工程师要了 Interval Min  Interval Max  Slave Latency  connSupervisionTimeout这几个参数值,在苹果提供的验证表格下发现如下图Interval min

参数不符合,最后让硬件工程师修改后 让他们重新给你烧个固件,就不会再出现这个问题了

原文地址:https://www.cnblogs.com/yang-shuai/p/8391223.html