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.

[参考译文] CC2564C:将器件置于 Rx 模式以接受 FCC/CE 认证

Guru**** 2390955 points
Other Parts Discussed in Thread: CC2564C

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1273956/cc2564c-putting-the-device-in-rx-mode-for-fcc-ce-certification

器件型号:CC2564C

大家好、

这是一个长期开放的票。 如何将器件置于 RX 模式以及如何确保器件处于 RX 模式。 我们需要使用 VS 命令获得一个正确的示例或步骤 来执行该操作。

我们要实现的是处于 RX 模式的器件 A 和处于 TX 模式的器件 B。   

设备 A 应该能够 打印 从设备 B 接收到的数据。

作为最低要求、 我们至少应该能够 从器件 B 获得器件 A 上收到的数据包的数量。  

请帮助我们进行设置。  

谢谢!

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

    尊敬的 Vishnuprasad:  

    您可以使用 TI 提供的 HCITester 工具来设置此方案。 附件提供了一些文档、说明如何设置器件以便使用 HCI 命令读取传入的数据包。 通过使用 HCITester、您可以通告两个器件并使它们彼此连接。 尝试使用生产线指南将广播设备设置为传输数据包、并将第二个设备设置为读取传入数据包。 我还随附了 有关 HCI 命令的 CC256x 文档。

    e2e.ti.com/.../6560.swra751.pdf

    e2e.ti.com/.../CC256x-Production-Line-Testing-Guide-_2D00_-Texas-Instruments-Wiki-_2800_1_2900_.pdf

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

    Andy、您好!

    我尝试了我们的应用程序代码中与生产线测试指南中提到的相关的命令。

    由于我们无法访问产品上 BT 芯片的 HCI 端口(定制板)、因此我们将使用堆栈发送命令。

    我在此附上函数。

    下面附加了用于启动 BER 表的函数

    void DRPb_BER_Meter_Start(){
    
       int    ret_val;
       Byte_t Length;
       Byte_t Status;
       Byte_t OGF;
       Word_t OCF;
       Byte_t CommandBuffer[30];
       Byte_t ReturnBuffer[12];
    
       /* Before continuing, make sure the input parameters appears to be   */
       /* semi-valid.                                                       */
       if((RF_BTStackID)){
    
    	  /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    	  BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[0], 0x00); // Frequency_Channel
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[1], 0x00); //Reserved
    	  ASSIGN_HOST_WORD_TO_LITTLE_ENDIAN_UNALIGNED_WORD(&CommandBuffer[2], 0x1234); //BD_ADDR
    	  ASSIGN_HOST_DWORD_TO_LITTLE_ENDIAN_UNALIGNED_DWORD(&CommandBuffer[4], 0x12345678); //BD_ADDR
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[8], 0x01);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[9], 0x01);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[10], 0x1B);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[11], 0x00);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[12], 0xE8);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[13], 0x03);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[14], 0xFF);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[15], 0x01);
    	  ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[16], 0x01);
    
    	  Length  = sizeof(ReturnBuffer);
    	  OGF     = COMMAND_OGF(0xFD8B); //#define DRPb_BER_Meter_Start                    ((Word_t)(0xFD8B))
    	  OCF     = COMMAND_OCF(0xFD8B); //#define DRPb_BER_Meter_Start                    ((Word_t)(0xFD8B))
    	  ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 17, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
       }
    
    }
    

    下面随附了 整个 BER 测试的代码(从此处调用仪表启动)。

    void Get_BT_BER_Result(){
    	int    ret_val;
    	Byte_t Length;
    	Byte_t Status;
    	Byte_t OGF;
    	Word_t OCF;
    	Byte_t CommandBuffer[30];
    	Byte_t ReturnBuffer[65];
    
    	/* Before continuing, make sure the input parameters appears to be   */
    	/* semi-valid.                                                       */
    	//MAX_BLE_Channel = 39
    	if((RF_BTStackID)){
    		DRPb_BER_Meter_Start();
    
    	   osDelay(10000);
    	  /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    	  BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    	  ReturnBuffer[63] =55;
    	  Length  = sizeof(ReturnBuffer);
    	  OGF     = COMMAND_OGF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                     ((Word_t)(0xFD13))
    	  OCF     = COMMAND_OCF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                     ((Word_t)(0xFD13))
    	  ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 0, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
    
    	  if(ret_val == 0){
    		  ProdDisplay(("Get_BT_BER_Result\n"));
    		  ProdDisplay(("%d\n",ReturnBuffer[63]));
    		  for(int i =0;i<Length;i++){
    			  ProdDisplay(("%d: %d\n",i,ReturnBuffer[i]));
    		  }
    	  }else{
    		  ProdDisplay(("Get_BT_BER_Result Failed\n"));
    	  }
    
    	   osDelay(10000);
    		  /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    		  BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    		  ReturnBuffer[63] =55;
    		  Length  = sizeof(ReturnBuffer);
    		  OGF     = COMMAND_OGF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                     ((Word_t)(0xFD13))
    		  OCF     = COMMAND_OCF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                     ((Word_t)(0xFD13))
    		  ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 0, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
    
    		  if(ret_val == 0){
    			  ProdDisplay(("Get_BT_BER_Result\n"));
    			  ProdDisplay(("%d\n",ReturnBuffer[63]));
    			  for(int i =0;i<Length;i++){
    				  ProdDisplay(("%d: %d\n",i,ReturnBuffer[i]));
    			  }
    		  }else{
    			  ProdDisplay(("Get_LE_BER_Result Failed\n"));
    		  }
    
    		   osDelay(10000);
    			  /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    			  BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    			  ReturnBuffer[63] =55;
    			  Length  = sizeof(ReturnBuffer);
    			  OGF     = COMMAND_OGF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                      ((Word_t)(0xFD13))
    			  OCF     = COMMAND_OCF(0xFD13); //#define HCI_VS_DRP_Read_BER_Meter_Result                      ((Word_t)(0xFD13))
    			  ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 0, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
    
    			  if(ret_val == 0){
    				  ProdDisplay(("Get_BT_BER_Result\n"));
    				  ProdDisplay(("%d\n",ReturnBuffer[63]));
    				  for(int i =0;i<Length;i++){
    					  ProdDisplay(("%d: %d\n",i,ReturnBuffer[i]));
    				  }
    			  }else{
    				  ProdDisplay(("Get_BER_Result Failed\n"));
    			  }
    	}
    }

    在发送器侧  

    void Start_Continuous_TX_RX(unsigned int RF_BTStackID,Byte_t Freq_Channel){
    	   int    ret_val;
    	   Byte_t Length;
    	   Byte_t Status;
    	   Byte_t OGF;
    	   Word_t OCF;
    	   Byte_t CommandBuffer[30];
    	   Byte_t ReturnBuffer[12];
    	   BD_ADDR_t BD_ADDR;
    	   Byte_t TXMode = 0x00;
    
    	   ASSIGN_BD_ADDR(BD_ADDR, 0x12, 0x34, 0x56, 0x78, 0x12, 0x34);
    
    	   VS_Set_Bluetooth_Address(RF_BTStackID,BD_ADDR);
    
    	   if(Freq_Channel == 0xFF){
    		   TXMode = 0x00;
    		   Freq_Channel = 0x00;
    	   }else{
    		   TXMode = 0x03;
    	   }
    
    
    
    	   /* Before continuing, make sure the input parameters appears to be   */
    	   /* semi-valid.                                                       */
    	   if((RF_BTStackID)){
    
    	      /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    	      BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[0], 0x03); //DOnt pushh
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[1], 0x00);
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[2], 0xFF);
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[3], 0x01); //Packet_Type
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[4], 0x03);
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[5], 0x00);
    	      ASSIGN_HOST_WORD_TO_LITTLE_ENDIAN_UNALIGNED_WORD(&CommandBuffer[6], 0x001B); //Packet_Length
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[8], 0x0F);
    	      ASSIGN_HOST_BYTE_TO_LITTLE_ENDIAN_UNALIGNED_BYTE(&CommandBuffer[9], 0x01);
    	      ASSIGN_HOST_WORD_TO_LITTLE_ENDIAN_UNALIGNED_WORD(&CommandBuffer[10], 0x01FF);
    
    	      Length  = sizeof(ReturnBuffer);
    	      OGF     = COMMAND_OGF(0xFD85); //#define HCI_VS_DRPb_Tester_Packet_TX_RX
    	      OCF     = COMMAND_OCF(0xFD85); //#define HCI_VS_DRPb_Tester_Packet_TX_RX
    	      ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 12, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
    
    	   }
    }

    仍然保持此状态、我得到的 BER 结果为零。

    您是否可以在设置中执行测试并共享 HCI 日志? RX 侧和 TX 侧

    希望 尽快解决此问题。

    谢谢!

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

    Andy、您好!

    我将在这里附加发送器侧和接收器侧的 HCI 日志。  

    您能检查日志吗、让我知道哪里出了问题吗?

    我们使用的是最新的 Buetopia v5.1.1。

    e2e.ti.com/.../RECEIVER_5F00_TEST_5F00_LOGS_5F00_V1.zip

    等待您的响应。

    谢谢!!

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

    尊敬的 Vishnuprasad:

    让我就此向我的一位同事咨询。 我明天会回来与您联系。  

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

    Andy、您好!

    感谢您的 更新。

    等待您的团队响应以解决问题。

    谢谢!

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

    您好 Vishnu:

    这对我来说是第一个,但我会尽力帮助尽我所能。

    CC2564C 的相应测试指南位于 https://www.ti.com/lit/an/swra749/swra749.pdf

    从而获得连续 RX、请遵循第5.3节

    连续 TX 为5.1

    很遗憾、由于我们将发送原始 HCI 命令、记录器工具不会提供任何帮助。 唯一有用的可能是 HCI 的 UART 布线、但正如您上面所说的、您无法访问它们。 我也会出去到下周二。

    此致!

    罗格利奥

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

    您好:Rogelio、

    感谢您的答复。

     我们能够验证的连续 TX。

    问题是当我们将其置于连续 RX 模式时。  测试机构喜欢看到 BER 结果,这就是我要在这里努力实现的。

    您是否可以仅检查日志并告诉我如何执行 BER 测试? 您可以使用从 HCI 测试仪工具提供的命令进行交叉验证。

    (根据我从 CC2564C 架构中的理解、 即使您是通过 HCI 测试仪发出命令也是如此。 它将 使用 BT-logger 工具在 BT_DBG 引脚中提供调试日志)

    除此之外、请咨询您的设置、了解 BER 测试是否适合您。 只是为了阐明生产线测试文档中提到的步骤是正确的。

    谢谢!

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

    Andy、您好!

    罗格利奥正在休假、您能帮我解决这个问题吗?

    我可以与你们密切合作。

    对于更快的分辨率邮件甚至 Skype 也是不错的。

    由于我们没有 CC2564C 开发套件、您能否在实验室中设置该系统?

    我希望尽快对其进行排序、因为这对于认证至关重要。

    等待您的响应。

    谢谢!

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

    Andy、您好!

    您能帮助我们解决这个问题吗?

    非常紧急。

    谢谢!

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

    你好  ,RogelioD,

    是否有更新?

    我们正等待着复苏。

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

    您好、TI!

    这是 TI 这样享有声誉的公司所无法预料的。

     到目前为止,将近两周的时间,解决方案仍然不明确。

    我们正处于产品测试阶段、这是需要尽快排序的非常关键的事情。

    请理解情况并提供一些支持。

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

    尊敬的 Vishnu:

    我将接管该线程、我将运行该测试、并在明天为您获取一些日志。  

    很抱歉耽误你的时间、

    罗格利奥

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

    您好:Rogelio、

    感谢理解情况。 等待你的回应。

    我们还想对 BT 和 BLE 进行 Rx 测试。

    谢谢!

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

    您好 Vishnu:

    我在2个器件之间运行测试、得到的行为与测试结果保持返回0的行为相同。 我会继续研究此事,并于星期一跟进。

    此致!

    罗格利奥

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

    您好:Rogelio、

    感谢您的努力和更新。

    等待有关这方面的更多更新。  

    谢谢!

    维什努普拉萨德

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

    尊敬的 Vishnu:

    只是想跟进,我仍在做这件事,明天再碰一下基地。

    此致、

    罗格利奥

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

    尊敬的 Vishnu:

    等待一些反馈。 我明天跟进。

    感谢您的耐心等待

    罗格利奥

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

    您好:Rogelio、

    有任何更新?

    有什么解决方法吗?

    它正变得越来越延迟。 这是意料之外的。

    我想了解一下我们预计何时可以修复此问题的最新信息。

    在最坏的情况下、

    如果您仍然不知道如何解决此问题、请分享 TI 用于获得 CC2564C 模块 FCC 认证的固件(希望它通过 FCC 认证)。

    谢谢!

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

    尊敬的

    有任何更新?

    我在过去5天没有收到任何更新。

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

    尊敬的 

    这对于 TI 没有这样的回复感到非常失望。

    如果 需要修复、请告知我们、需要采取哪些措施。  请理解、这个问题非常关键。

    谢谢!

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

    尊敬的 Vishnu:

    我正在寻找脚本,不幸的是,我没有找到他们的运气。 我将继续尝试进行测试、并尝试找到所需的 HCI 命令的正确顺序。 您是否有办法访问蓝牙测试仪?

    此致!

    罗格利奥

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

    尊敬的 

    感谢您分享此状态。  

    但我不确定这 将如何解决。   

    您是否可以在旧版本的 Service Pack 上尝试此操作???

    可能在4.2更新之前?

    在 TI 认证模块时、可能需要返回到较旧的服务包。  

    这会有帮助吗? 您能不能再看一下。

    除非有有效的样本、否则我认为我们无法解决这个问题。  

    请用力推动、   由于此问题、生产已经延迟了一个多月。

    谢谢!

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

    尊敬的 Rogelio D:

    是否有更新?

    生产仍在进行中。

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

    尊敬的 Vishnu:

    我已经能够使用最新的服务包运行 BER 测试。

    e2e.ti.com/.../BER-Test.lgr

    以下是用于运行测试的脚本。 您将需要使用堆栈来实现它。

    首先设置 TX。

    # Set BD address
    BD_ADDR="123456781234"
    
    Send_HCI_VS_Write_BD_ADDR 0xFC06, BD_ADDR
    Wait_HCI_Command_Complete_VS_Write_BD_ADDR_Event 5000, any, HCI_VS_Write_BD_ADDR, 0x00
    
    Send_HCI_Write_Scan_Enable 0x00
    sleep 1000
    Send_HCI_VS_DRPb_Enable_RF_Calibration 0xFD80, 0x01, 0x00000000, 0x01
    Wait_HCI_Command_Complete_VS_DRPb_Enable_RF_Calibration_Event 5000, any, HCI_VS_DRPb_Enable_RF_Calibration, 0x00
    Sleep 1000
    
    # Sent Tx Packets
    Send_HCI_VS_DRPb_Tester_Packet_TX_RX 0xFDCC, 0x00, 0, 0, 0x5, 0x5, 0, 339, 7, 1, 0x01FF
    

    然后设置 RX

    $l10
    count = 0
    #DH5 
    Send_HCI_VS_DRPb_BER_Meter_Start 0xFD8B, 0, 0, 0x341278563412, 1, 0x5, 339, 500, 0x1FF, 0x1
    Wait_HCI_Command_Complete_VS_DRPb_BER_Meter_Start_Event 5000, any, HCI_VS_DRPb_BER_Meter_Start, 0x00
    
    #
    $l11
    Sleep 100
    count++
    
    Send_HCI_VS_DRP_Read_BER_Meter_Status 0xFD5B
    Wait_HCI_Command_Complete_VS_DRP_Read_BER_Meter_Status_Event 5000, any, HCI_VS_DRP_Read_BER_Meter_Status, 0x00, &synched, &finished, any, &total_bits, &bit_errors, &packets
    if finished== 0 then
    	if synched == 0 then
    		log"not synced yet %d count",count
    		#Fail "no SYNC"
    	else
    		log"not finished yet %d packets, count %d",packets,count
    	endif
    	goto $l11
    else
    	BER = 1000000*bit_errors/total_bits
    	log"BER is %d e-6 (%d bits out of %d)",1000000*bit_errors/total_bits,bit_errors,total_bits
    	if BER > 100 then
    		Fail "BER is too high"
    	else
    		pause "Finished"
    	endif
    	
    endif
    
    #pause""
    goto $l10
    
    
    
    

    需要注意的是、请确保两个器件上的 BD 地址相同。 确保 ACL 数据包类型和数据包长度相同。

    我期待您的跟进。

    此致、

    罗格利奥

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

    尊敬的 

    感谢您的努力和最新消息。

    由于我们不使用 HCI 工具、因此我们从 Bluetopia 堆栈发送 RAW 命令。

    我想确认以下详细信息

    1)"Sleep 1000"-这是指1000ms 延迟还是必须从堆栈调用任何 SLEEP 函数?

    我们正在检查此情况、并将很快向您更新。

    同时、请检查 BLE 的相同 RX 测试。

    谢谢!

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

    尊敬的

    HCI_VS_SCRUC_RX Pb_Tester_Packet_显示操作码(0xFDCC)、

    其中、与所有 TI 文档中一样、它是0xFD80、请确认该函数的操作码。

    谢谢!

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

    您好:Rogelio、

    请分别共享 RX 侧和 TX 侧的完整日志。

    谢谢!

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

    尊敬的

    我现在能够在 BT 上运行 RX 测试。

     I 所使用的命令是 HCI_VS_CL200_ISTR, Pb_Tester_Packet_ 带有操作码 0xFD85 而不是  0xFDCC。  

    请确认这是相同的、我们使用的服务包是  c256xc_bt_spv1.5。

    另外、我在 RX 端附加了日志、以便进行验证。

    e2e.ti.com/.../BER-Test_5F00_Bluarmor.zip

     

    非常感谢大家的支持、这在过去的2到3年里一直是挂起的。

    我希望您在此平台上提供更多支持。

    现在、主要待处理的是 BLE 端的 RX 测试。  

    希望问题也能很快得到解决。

    谢谢!

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

    尊敬的 Vishnu:

    Im 很高兴我们能够取得进展来解决这个问题,然而,看看你的日志,它似乎没有工作,它应该. 例如、您上次拨打 Read_BER_BER_759 Meter_Status 号线、但在呼叫之后的15分钟内、您仍能获得结果。  

    进行了比较。

    这可能是由于我使用 HCI 测试仪与您使用 bluetootopia 堆栈发送这些 HCI 命令所造成的差异。

    睡眠1000实际上只是1000ms 的延迟。

    我仔细检查了一下、实际上使用了0xFDCC 操作码(这是用于 Wilink 器件的操作码、 但 cc2564c 和 Wilink 在 FW 中共享一些 HCI 命令、因此在此处起作用是合理的)我会使用 FD85、因为它们是具有相同参数的相同命令。

    关于 Reciever_Test RX 测试、我假设您的意思是 HCI_LE_BLE 0x201d  

    结果没有 VS HCI 命令、因为此测试属于 BT Core 规范的一部分。

    第 F 部分:2

    e2e.ti.com/.../Core_5F00_v5.1.pdf

    此致、

    罗格利奥

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

    您好@RogelioD:

    感谢您查看 RX 测试结果。

    HCI_VS_DRP_READ_BER_HCI_EVM Meter_Status 只需要调用一次该命令、还是以1秒的间隙循环调用该命令?

    以下是我用于读取结果的函数。 它将形成一个循环20次。

    void Get_BT_BER_Result(Byte_t Freq_Channel){
    	int    ret_val;
    	Byte_t Length;
    	Byte_t Status;
    	Byte_t OGF;
    	Word_t OCF;
    	Byte_t CommandBuffer[30];
    	Byte_t ReturnBuffer[65];
    
    	/* Before continuing, make sure the input parameters appears to be   */
    	/* semi-valid.                                                       */
    	//MAX_BLE_Channel = 39
    	if((RF_BTStackID)){
    		DRPb_BER_Meter_Start(Freq_Channel);
    
    	  for(int i =0 ;i<20; i++){
    
    		   osDelay(10000);
    			  /* Format the HCI VS DRPB Tester Con Tx Command.                  */
    			  BTPS_MemInitialize(CommandBuffer, 0, 30);
    
    			  ReturnBuffer[63] =55;
    			  Length  = sizeof(ReturnBuffer);
    			  OGF     = COMMAND_OGF(0xFE2A);
    			  OCF     = COMMAND_OCF(0xFE2A);
    			  ret_val = HCI_Send_Raw_Command(RF_BTStackID, OGF, OCF, 0, (Byte_t *)CommandBuffer, &Status, &Length, ReturnBuffer, TRUE);
    
    			  if(ret_val == 0){
    				  ProdDisplay(("Get_BT_BER_Result\n"));
    				  ProdDisplay(("%d\n",ReturnBuffer[63]));
    				  for(int i =0;i<Length;i++){
    					  ProdDisplay(("%d: %d\n",i,ReturnBuffer[i]));
    				  }
    			  }else{
    				  ProdDisplay(("Get_LE_BER_Result Failed\n"));
    			  }
    
    	  }
    
    	}
    }

    我将使用1秒轮询来更新结果。

    您能否介绍执行 BLE RX 测试的过程您能否为我提供分别在 RX 和 TX 上执行的命令序列?

    谢谢!

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

    尊敬的 

    至于您的疑虑、

    " Im 很高兴我们能够继续解决这个问题、然而、从您的日志来看、它似乎没有正常工作。 例如、您上次呼叫 Read_BER_BER_759 Meter_Status 号线、但即使在呼叫15分钟后、您仍能获得结果。"  

    如果另一端继续 TX 传输、就会发生这种情况。  

    通过我对您的日志的分析、得出的结果如下所示、

    在您的测试设置中、RX 最初已进入测试模式。

    36832 21:55:03.262 +0:15:58.772 0x000EB746 0x000E852D HCI_VS_DRPb_BER_HCI--> Meter_Start

    一段时间后、只有 TX 被启动。

    接收到的第一个 TX 发生在   

    44750 21:57:50.982 +0:18:46.492 BER 结果:总位数1356000、总位数错误79307

    大约需要 2到3分钟。

    请确认这不是问题。

    谢谢!

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

    您好:Rogelio、

    任何 有关 BLE RX_TESTING 的更新。

    谢谢

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

    尊敬的 Vishnu:

    在与我们团队的一些 BLE 专家交谈后、他们提到要获得资格认证、必须使用蓝牙测试仪进行 BLE 测试、但是、我将研究如何在不使用测试仪的情况下进行一些初步的 PER 测试。 我们会在周一进行随访、并提供任何结果。

    此致、

    罗格利奥

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

    您好:Rogelio、

    感谢您的努力。

    正在等待更新。

    谢谢!

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

    尊敬的 Vishnu:

    您将需要添加对蓝牙测试仪 UART 线路的访问权限、才能获得 BLE 的 FCC 射频认证。

    测试仪将从此处运行所需的命令。

    此致!

    罗格利奥

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

    尊敬的

    您可以在设置 DK 或其他工具中运行测试、并向我提供 BT 的日志吗?  

    如上所述、这将有助于引脚不会暴露在外、但无论需要发送什么命令、我们都可以实施、因为这4线 HCI UART 连接到我们从现在开始运行测试的另一个 ST uC。

    请提供操作码和操作数、只需共享 HCILOGS (表单 BT_DEBUG 引脚)、其余的我应该能够在此处管理。  

    请在设置中运行 BLE RX_Test 并共享日志、我将从日志中确定命令。

    谢谢!

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

    尊敬的 Vishnu:

    然后继续、在测试仪上运行测试、并为您获取 Logger 日志。 我试着在明天之前有它,但可能是星期五,因为我必须为测试者安排时间。

    此致!

    罗格利奥

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

    您好:Rogelio、

    有任何关于此的更新吗?

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

    尊敬的 Vishnu:

    我已经在蓝牙测试仪上运行测试、并为您获取日志。

    连接到下面

    e2e.ti.com/.../BLE-TEST.lgr

    第一 组命令是测试仪验证与器件的连接。

    下一个正在运行测试。 我跑了两次。

    此致、

    罗格利奥

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

    您好:Rogelio、

    感谢您努力收集日志、将检查此内容并恢复。

    此致!

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

    您好@RogelioD:

    从您共享的日志来看、BLE RX 测试似乎没有成功。

    您能否确认 RX 测试通过了测试?

    日志明确指出不允许使用命令,并且接收到的数据包 为0。

    我想获得 RX 测试通过位置的日志。

    此外、在您共享的日志上、它仅显示一侧 RX 端。 则可能需要这些日志。

    谢谢!

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

    尊敬的 Vishnu:

    抱歉、我在运行测试时跳过了一个步骤、因为我想向您展示测试程序发送的命令。 您的确需要启用 BLE 并设置测试模式、否则将不允许使用该命令。 我在下面提供了新日志。

    e2e.ti.com/.../0654.BLE-TEST.lgr

    此致!

    罗格利奥

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

    尊敬的 Rigelio:

    谢谢您的博客。

    在这里、我也没有看到 RX 测试通过的部分。

    您能否共享 BLE RX 测试通过的日志?

    同时、我们将尝试使用这些日志、但请共享 RX 测试通过的日志。

    谢谢!

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

    尊敬的 Vishnu:

    运行测试时、我无法访问 CC2564C EVM 的测试端口、因此测试未通过、但是、这与运行测试所需的 HCI 命令无关。 我可以尝试获取一些新硬件来获取、但需要在下周获得。

    此致!

    罗格利奥

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

    您好:Rogelio、

    将尝试使用您提供的日志。 但我也希望尽快从您身边获得日志、以便我可以在这里进行验证。

    我认为 BT 日志可以从 BT_DBG 引脚(独立于用于 HCI 命令通信的4线 UART)获取。

    另一方面、AFH 是否也在 BLE 端的 cc2564C 中实施?

    我知道 ACL 和 eSCO 具有 AFH(自适应跳频)。 BLE、因此未提及。

    谢谢!