
下面列举几个常见的蓝牙断开连接原因1.reason 0x8连接超时根本原因在协商的的超时时间内没有按时回复 主机。①蓝牙中有任务导致交互数据的时有其他任务在阻塞式运行代码导致没能及时响应。通常建议单个任务的阻塞时长不要超过连接间隔一半以上的时间。②32K 时钟误差较大 导致广播时间、回复 响应时间变慢错过窗口32M晶振频偏收 发接收数据异常。如配置使用外部32K2.reason 0x13对方远程主动断开连接。3.reason 0x16本地主动断开连接。4.reason 0x3e信号差导致断开连接。错误码错误原因详细描述0x01未知HCI命令控制器不理解主机发送的HCI命令数据包操作码。所给出的操作码可能不对应于本文档中指定的任何操作码也不对应于任何特定于供应商的操作码或者该命令可能尚未实现0x02未知连接标识符从主机发送了一个命令该命令应该识别一个连接但该连接不存在或没有识别正确的连接类型0x03硬件故障控制器中的某些故障的方式无法用任何其他错误代码来描述。此错误代码所隐含的含义依赖于实现0x04PAGE超时由于页面超时配置参数而导致页面超时。此错误代码可能只出现在HCI_Remote_Name_Request和HCI_Create_Connection命令中0x05身份验证失败由于配对或身份验证过程中的结果不正确导致配对或身份验证失败。这可能是由于一个错误的密码或链接键0x06PIN或密钥丢失当配对因PIN丢失而失败或认证因密钥丢失而失败时将使用PIN或密钥丢失的错误代码0x07内存容量超出控制器内存不足无法存储新参数0x08连接超时给定连接的链路监视超时已超时或者给定广播的同步超时已过期0x09超过连接限制尝试创建另一个连接失败因为控制器已经达到其可以支持的连接数量的限制。0x0A对设备的同步连接限制超过控制器已达到可以达到对设备的同步连接数量的限制。设备可以支持的同步连接数取决于实现0x0B连接已存在当已经连接到该设备且不允许对同一设备进行多个连接时已尝试创建到该设备的新连接0x0C非法命令无法执行所请求的命令因为控制器目前处于此时无法处理此命令的状态。错误代码未知HCI命令有效的命令操作码0x0D因安全因素被拒接连接本次连接由于未满足安全要求而被拒绝如身份验证或配对0x0F连接被拒绝是由不可接受的BD_ADDR本次连接被拒绝因为该设备不接受BD_ADDR。这可能是因为该设备将只接受来自特定BD_ADDRs的连接0x10连接接受超时超过此连接尝试已超过连接接受超时0x11不支持的特性或参数值不支持HCI命令中的特性或参数值。此错误代码不得在LMP中用于PDU0x12无效的HCI命令参数至少有一个HCI命令参数无效0x13远程用户终止连接远程设备上的用户要么终止了连接要么停止了广播数据包0x14由于低资源而导致的远程设备终止连接远程设备由于资源不足而终止了连接0x15远程设备终止连接远程设备由于设备即将关机而终止连接0x16由本地主机终止连接本地设备终止连接、终止与广播器的同步或终止广播数据包0x17重复尝试控制器不允许身份验证或配对过程因为自上次身份验证或配对尝试失败后经过的时间太少0x18不允许配对设备不允许配对。例如当一个设备只允许在某些用户输入允许配对后的某个时间窗口内允许配对时0x19位置LMP PDU控制器接收到未知的LMP操作码0x1A不支持的远程功能远程设备不支持与发出的命令、LMP PDU或链接层控制PDU关联的功能0x1BSCO偏移被拒绝在LMP_SCO_LINK_REQ PDU中请求的偏移已被拒绝0x1CSCO时间间隔被拒绝在LMP_SCO_LINK_REQ PDU中请求的时间间隔已被拒绝0x1DSCO空气模式被拒绝在LMP_SCO_LINK_REQ PDU中请求的空气模式已被拒绝0x1E无效的LMP参数/无效的LL参数某些LMP PDU/LL控制PDU参数无效0x1F未指定的错误没有指定的其他错误代码适合使用0x20不受支持的LMP参数值/不受支持的LL参数值LMP PDU或LL控制PDU包含至少一个此时控制器不支持的参数值。这通常是在长时间的协商过程之后使用的例如在LMP_HOLD_REQ、LMP_SNIFF_REQ和LMP_ENCRYPTION_KEY_SIZE_REQ PDU交换期间。这可以被链路层使用例如在连接参数请求链路层控制过程中0x21不允许角色更改控制器此时不允许角色更改0x22LMP响应超时/LL响应超时LMP事务在LMP响应超时内未响应或LL事务在LL响应超时内未响应0x24LMP PDU不允许控制器发送了一个具有不允许的操作码的LMP PDU0x25加密模式不可接受此时所请求的加密模式不可接受0x26无法更改连接键由于使用了固定的单位密钥无法更改链接键0x27请求的QoS不支持不支持请求的服务质量0x28即时传递无法执行包含瞬间的LMP PDU或LL PDU因为这将发生的瞬间已经传递0x29不支持单元密钥配对无法请求单元密钥配对0x2A不同的事务冲突已启动了与正在进行的事务发生冲突的LMP事务或LL的过程0x2CQoS不可接受参数此时不能接受指定的服务质量参数但其他参数也可以接受0x2DQoS拒绝不能接受指定的服务质量参数应终止QoS协商0x2E不支持通道评估控制器无法执行通道评估因为不支持它0x2F安全度不足所发送的HCI命令或LMP PDU仅可在加密的链路上执行0x30参数超出强制范围请求的参数值超出了给定HCI命令或LMP PDU的强制参数范围并且收件人不接受该值0x32设备切换挂起设备切换正在挂起当HCI命令或LMP PDU因设备切换而不能被接受时可以使用此命令。这也可用于通知对等设备关于挂起的角色切换0x34保留SLOT冲突当前同步协商已终止协商状态设置为保留冲突0x35ROLE SWITCH失败已经尝试了一个角色开关但它失败了并恢复了原始的图片网结构。开关可能已经故障因为TDD开关或图片开关故障0x36扩展查询相应太大扩展查询响应的要求太大无法适应控制器支持的任何数据包类型0x37主机不支持的安全简单配对IO功能请求或响应被拒绝因为发送主机不支持安全简单配对即使接收链接管理器不支持0x38主机Busy—配对主机忙于另一个配对操作无法支持所请求的配对接收设备稍后应再次重试配对0x39连接拒绝到未找到合适的通道控制器无法计算通道选择操作的适当值0x3A控制器繁忙操作被拒绝因为控制器繁忙无法处理请求0x3B不可接受的连接参数远程设备由于一个或多个不可接受的连接参数而终止了连接或拒绝了一个请求0x3C广播超时固定时间的广播完成或者对于定向广播广播在没有创建连接的情况下完成0x3D由于MIC故障而终止的连接终止由于接收到的数据包上的消息完整性检查(MIC)失败连接或同步已终止0x3E连接未能被建立/同步超时连接未能建立/同步超时错误代码表明LL启动了连接或启动了对定期广播的同步但连接未能建立或链接层未能与第一次尝试的6个周期广播事件内的定期广播同步0x40时钟调整被拒绝时钟调整被拒绝但将尝试使用时钟拖动错误代码表明此时无法使用提供的参数对微型时钟进行粗调整。相反中心系统将尝试使用时钟拖动来移动时钟0x41未定义类型表示LMP PDU被拒绝因为类型0子映射当前未定义0x42未知广播标识符从主机发送了一个应该标识广播或同步句柄的命令但广播或同步句柄不存在0x43达到限制已达到请求的操作数量并表示活动已完成例如广播或扫描0x44被主机取消的操作主机向控制器发出的且仍未完成的请求已成功取消0x45包太长试图发送或接收超过允许的最大包长度的包