Android上的高通蓝牙解决方案请求错误的连接参数,导致断开连接

Android上的高通蓝牙解决方案请求错误的连接参数,导致断开连接,android,bluetooth,bluetooth-lowenergy,qualcomm,Android,Bluetooth,Bluetooth Lowenergy,Qualcomm,我目前正在构建一个Android应用程序和SDK,以连接到一个定制的BLE板。Android端应该是外围设备,我的主板是主控板。Android端GATT服务器的创建完成后,我可以让我的板连接并配对,没有问题。如果我只是在主机端接受所有传入的连接参数更新,而不发送新的参数,那么大多数手机的连接都是稳定的 我现在发现的问题是,在采用高通蓝牙解决方案的手机上,高通芯片将通过发送“首选周期”为0来请求“无效”连接参数。这会导致连接中断,并每30秒重新连接一次 我认为这是高通公司方面的一个缺陷,因为只有当

我目前正在构建一个Android应用程序和SDK,以连接到一个定制的BLE板。Android端应该是外围设备,我的主板是主控板。Android端GATT服务器的创建完成后,我可以让我的板连接并配对,没有问题。如果我只是在主机端接受所有传入的连接参数更新,而不发送新的参数,那么大多数手机的连接都是稳定的

我现在发现的问题是,在采用高通蓝牙解决方案的手机上,高通芯片将通过发送“首选周期”为0来请求“无效”连接参数。这会导致连接中断,并每30秒重新连接一次

我认为这是高通公司方面的一个缺陷,因为只有当“间隔最小值”和“间隔最大值”相同时,“首选周期”才应为0。如果“最小间隔”与“最大间隔”不同,“首选周期”不得为0。我的设备内置的QCOM解决方案违反了该规则,导致断开连接

另一款采用Broadcom蓝牙解决方案的Android手机也要求“首选周期”为0,但具有相同的“间隔最小值”和“间隔最大值”,工作正常

是否有人知道如果可能,如何避免线路板端的连接中断,或者我是否可以在Android端采取任何措施来防止连接参数一起更新


提前谢谢

您是否有可以上传的蓝牙嗅探器日志或hci日志?是的,不幸的是,仅作为屏幕截图:因此,据我所知,您的电路板正在发送连接参数请求,而高通电话使用不正确的参数进行响应,导致您的电路板发送拒绝指示?您可以尝试发送连接参数请求,其中最小值等于最大值。。。但我不明白的是谁在30秒后执行断开以及为什么。好的,这是个主意,谢谢。据我所见,由于连接参数更新超时,Android手机将断开连接。由于参数不正确,我的电路板不接受/响应导致超时。谁是真正断开连接的人?由于发送了reject,因此应结束该过程,不会导致超时。您是否有蓝牙嗅探器日志或hci日志可以上传?是的,不幸的是,仅作为屏幕截图:因此,据我所知,您的电路板正在发送连接参数请求,而高通公司的手机使用不正确的参数进行响应,导致您的电路板发送拒绝指示?您可以尝试发送连接参数请求,其中最小值等于最大值。。。但我不明白的是谁在30秒后执行断开以及为什么。好的,这是个主意,谢谢。据我所见,由于连接参数更新超时,Android手机将断开连接。由于参数不正确,我的电路板不接受/响应导致超时。谁是真正断开连接的人?由于已发送拒绝,因此应结束该过程,而不会导致任何超时