This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2564:无辅助 HFP 自动连接

Guru**** 2589265 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/752429/cc2564-unassisted-hfp-autoconnection

器件型号:CC2564
您好!
我们将 STM32和 Bluetopia Stack 4.0.2.1用于我们的应用。 我们使用的是 BLE + HFP (无辅助)、它可以正常工作
好的。 我们希望将 HFP 设备自动连接到智能手机。  
我们的详细代码实施类似于、  
->打开设备电源
->初始化堆栈
->使设备可连接、可发现和简单安全配对。
->我们调用 API HFRE_Open_handsfree_Server_Port、成功后、我们将 SDP 记录添加到相同的端口号(1)上
  使用 HFRE_Register_handsfree_sdp_Record。
->我们使用智能手机配对了器件、并将该链接密钥和 BD Addr 信息存储在闪存中。 此配对  
  我们在每次重新启动时提供的信息。每当智能手机发出连接请求时、它都会成功连接。
  
要执行自动连接、我们按照以下步骤操作。
->打开设备电源
->初始化堆栈
->使设备可连接、可发现和简单安全配对
->我们调用 API HFRE_Open_handsfree_Server_Port、成功后、我们将 SDP 记录添加到相同的端口号(1)上
  使用 HFRE_Register_handsfree_sdp_Record。
->我们的智能手机 BD Addr 和 Link 密钥与我们一起使用、因此我们使用将 API HFRE_Open_Remote_Audio_Gateway_Port 称为
  智能手机 BD 地址 在这种情况下、我们有两种情况
  案例1:
如果我们使用端口 ID:1,则它会显示 etHFRE_Open_Port_Confirmation 事件,并显示端口状态错误2。
  案例2:
我们不知道我们需要使用哪个端口 ID。 我们已尝试使用端口 ID 2、然后它会提供 etHFRE_Open_Port_Confirmation  
     端口状态为0的事件。 大约30秒后、它会向我们提供关闭端口指示事件。
 请告诉我们我们的步骤有什么问题、以及我们在此次确认事件后需要做什么才能使连接生效?
  
此致
Rutvik Fadia
  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    您可以获取 FW 日志吗? 您是否正在保存链接密钥并将其重新用于重新连接?

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     

    您好 Hari、

     

    我已经提供了我们的开机初始化、配对、设备重启后的电话连接请求、设备的自动连接请求的固件日志。

    是的、我们将存储链接密钥并将其重复用于连接。

    /*开机时的初始固件日志*/

    端口号:1.

    HFRE_Open_handsfree_Server_Port:功能成功。

    HFRE_Register_handsfree_sdp_Record:功能成功。

    ****服务器端口已打开(AG 的 RFCOMM)并 注册 SDP 记录已完成*****

    GAP_Register_Remote_Authentication()成功。

    /*配对固件日志*/

    ****配对已开始*****

    远程设备 IO 能力:显示是/否、MIPTM

    远程设备的本地设备 IOCapability 请求(0x94652D76EBB8)

    GAP_Authentication_Response ()成功。

    atUserConfirmationRequest:0x94652D76EBB8

    自动接受:872098

    GAP_Authentication_Response ()成功。

    未处理的 GAP 验证事件。 11.

    atLinkKeyCreation:0x94652D76EBB8

    链接密钥:0xDE31ABAA76CE719C6BBB35EF693A6244

    链路密钥存储在本地。

    ****配对完成*****

    etHFRE_Open_Port_Indication、Port_ID:0x0001、板:0x94652D76EBB8。

    活动连接数:1.

    **** AG 与 RFCOMM 端口上的 HF 连接(服务级别连接建立已启动*****

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、CALL、false。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、CALLSETUP、0。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、service、true。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、SIGNAL、5.

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、Roam、false。

    ServerPortIndex:1,已连接  :false,IsInActiveSCO :false,IsInActiveAudio:false。

    ****收到远程设备(AG) 的当前指示灯状态  ****

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、BATTCCHG、5.

    etHFRE_Open_Service_Level_Connection_Indication、Port_ID:0x0001

    RemoteSupportedFeaturesValid           :对

    RemoteSupportedFeatures              :0x00000367

    RemoteCallHoldMultipartySupport          :0x00000000

    HFRE 启用呼叫线路识别

    HFRE 启用远程呼叫等待通知

    状态结果0

    ServerPortIndex :1,isconnected  : true,IsInActiveSCO : false,IsInActiveAudio : false。

    ****已使用远程设备(AG)*****打开服务级别连接

    /*Restart 后的日志如果我们从电话发起连接*/

    atLinkKeyRequest:0x94652D76EBB8

    GAP_Authentication_Response ()成功。

    etHFRE_Open_Port_Indication、Port_ID:0x0001、板:0x94652D76EBB8。

    活动连接数:1.

    **** AG 与 RFCOMM 端口上的 HF 连接(服务级别连接建立已启动*****

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、CALL、false。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、CALLSETUP、0。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、service、true。

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、SIGNAL、5.

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、Roam、false。

    ServerPortIndex:1,已连接  :false,IsInActiveSCO :false,IsInActiveAudio:false。

    ****收到远程设备(AG) 的当前指示灯状态  ****

    etHFRE_Control_Indicator_Status_Confirmation、Port_ID:0x0001、BATTCCHG、5.

    etHFRE_Open_Service_Level_Connection_Indication、Port_ID:0x0001

    RemoteSupportedFeaturesValid           :对

    RemoteSupportedFeatures              :0x00000367

    RemoteCallHoldMultipartySupport          :0x00000000

    HFRE 启用呼叫线路识别

    HFRE 启用远程呼叫等待通知

    状态结果0

    ServerPortIndex :1,isconnected  : true,IsInActiveSCO : false,IsInActiveAudio : false。

    ****已使用远程设备(AG)*****打开服务级别连接

    /*自动连接请求固件日志*/

    HFRE_Open_Remote_Audio_Gateway_Port 结果= 2

    atLinkKeyRequest:0x94652D76EBB8

    GAP_Authentication_Response ()成功。

    ATAuthenticationStatus:0 Board:0x94652D76EBB8

    未知/未处理的 GAP 事件:1.

    HFRE 打开端口确认事件:

    HFRE 端口 ID :2,端口打开状态:0

    etHFRE_CLOCK_Port_Indication、Port_ID:0x %、状态:0x0002。

     

    此致

    Rutvik Fadia

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Hari、

    是否有任何更新?

    此致
    Rutvik Fadia
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rutvik、

    我想、您需要使用由手机(远程设备)为 HFP 指定的 SPP 端口。 要获取此端口号、您可能需要对远程设备执行 SDP 检查并解析 HFP 端口号的响应。

    如果您有测试应用程序在 MSP432上尝试此操作、请发送测试应用程序、以便我们能够重现并进一步查看。

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Hari、

    我们已完成 SDP 查询并获得客户端端口 ID。 现在它正在工作。

    感谢您的支持。

    此致、
    Khodidas