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.

[参考译文] CC2651R3:以编码 PHY 连接时意外的 rxPhy = 0x03、而不是 0x04 (multi_role 示例、SDK 7.10.02.23)

Guru**** 2644745 points

Other Parts Discussed in Thread: CC2651R3SIPA

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1585255/cc2651r3-unexpected-rxphy-0x03-instead-of-0x04-when-connected-in-coded-phy-multi_role-example-sdk-7-10-02-23

器件型号: CC2651R3

您好:

不同应用  SimpleLink CC13xx/CC26xx SDK 7.10.02.23 通信 多角色 示例:

C:\ti\simplelink_cc13xx_cc26xx_sdk_7_10_02_23\examples\rtos\LP_CC2651R3SIPA\ble5stack\multi_role

当连接了不同的器件时、我们将尝试读取 PHY (rxPhy 和 txPhy):

  • 机器到智能手机 (M2Sp): 使用进行连接 1M PHY

  • 机器对机器 (M2M): 使用进行连接 编码的 PHY

使用的代码:

大小写 GAP_LINK_RESIDEND_EVENT:

  Uint16_t connHandle =((gapEstLinkReqEvent_t*) pMsg)->connectionHandle;
  HCI_LE_ReadPhyCmd (connHandle);
  休息;
}

案例 HCI_COMMAND_COMPLETE_EVENT_CODE:

  hci Evt_Cmd 完成_ t * pMyMsg =(hci Evt_Cmd 完成_ t *) pMsg;
  开关 (pMyMsg->cmdopode)
  {
    case HCI_LE_READ_PHY:
    {
      uint8_t *pData = pMyMsg->pReturnParam;
      uint16_t connHandle = build_uint16 (pData[1]、pData[2]);
      uint8_t txPhy = pData[3];
      uint8_t rxPhy = pData[4];
      休息;
    }
  }
}

观察结果:

当我检查调试器中的值时:

相匹配 呈指数衰减 观测 结果
机器Left right arrow智能手机 0x01 (1M PHY) 0x01 没错
机器Left right arrow机器 0x04(编码 PHY) 0x03  意料之外

根据 PHY 定义:

#define LL_PHY_1_Mbps 0x01 
#define LL_PHY_2_Mbps 0x02
#define LL_PHY_CODEED  0x04

该值0x03与任何定义的 PHY 不匹配

问题:

为什么HCI_LE_ReadPhyCmdrxPhy = 0x030x04使用编码的 PHY 连接时返回、而不是返回?
这是预期行为还是表示混合 PHY 模式?

我随附了屏幕截图、其中显示了连接期间的变量值。
M2M_rxPhy.png

谢谢你。

 

 

 

 

 

 

 

 

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

    您好!

    您请求的 HCI 命令的返回值不由 Texas Instruments 定义、而是由蓝牙规范定义。
    特别是 第 4 卷 E 部分第 7.8.47 章。 蓝牙规范的 LE READ PHY 命令读取 以下内容:

    因此、当您发送 HCI ReadPhyCmd 命令时、0x03 是预期的返回值。
    您找到的定义可能是 TI 定义的、并在内部用于其他计算。 但是、当直接发送 HCI 命令时、0x03 确实是 LE 编码 PHY 连接的正确返回值。

    此致、
    L é a.