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.

[参考译文] WL1837MOD:HCITester:执行 BTS 文件时出错

Guru**** 2487425 points


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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1190181/wl1837mod-hcitester-error-when-executing-bts-file

器件型号:WL1837MOD
主题中讨论的其他器件:WL1837

背景:

  • 我正在尝试设置 HCITester 以进行蓝牙监管测试、但在执行 BTS 文件后立即发生超时错误。
  • 我已经按照 HCI 用户指南中的说明编辑了 BTS 代码: "将"HCI 命令数量"参数中的"0x00"值替换为"任何"。
  • 我当前运行的是嵌入式 Linux 平台、并 按照说明将 BTS 文件(TIInit_11.8.32.bts)传输到设备上的/lib/firmware。
  • 该器件通过串行端口连接。

一些问题:

  • 是否需要编辑器件上的 BTS 文件以匹配 HCITester 中使用的 BTS 文件?
  • 我需要在设备上添加任何其他文件、还是编辑任何其他配置来运行该文件?
  • 有什么关于如何修复我遇到的错误的想法吗?
  • 除了 HCITester 之外、是否有任何其他工具可以用于控制蓝牙以进行监管测试或执行任何终端命令?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您是否在 HCITester 和 Linux 平台上都出现了故障?

    使用 HCITester、您是否能够在加载 BTS 脚本之前连接到 COM 端口并发送命令?

    例如、如果运行"Send_HCI_VS_Get_System_Status 0xFE1F"

    Shlomi.

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

    尊敬的 Shlomi:  

    下面是运行  Send_HCI_VS_Get_System_Status 0xFE1F 后的屏幕截图

    下面是运行 BTS 脚本时的屏幕截图:

    BTS 脚本失败:

    以下是我的 COM 端口设置:

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

    此外、是否可以在 Linux 内发出用于蓝牙监管测试的命令? 我是否必须使用 hcitool 来发出这些命令?

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

    尊敬的 Essam:

    在我看来、BT_EN 似乎未置位、因此芯片中的 BT 部分已断电。

    无论如何、UART 应使用硬件流控制、并将其设置为 None。

    您是否确定它已打开?

    无法从线程中清楚地看出它是否通过 Linux 工作。 请澄清一下?

    基本上、您也可以从 Linux 执行 HCI 命令、但不太方便。

    在 Linux 中,您可以按照建议使用 hcitool。

    它有一些内置命令、但也是通用命令:

    命令 [parameters]向本地设备提交任意 HCI 命令。  ogf、ocf   参数 均为十六进制字节

    此致、

    Shlomi.

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

    尊敬的 Shlomi:

    启用硬件流控制选项后、问题仍然存在。

     

    我能够通过 hcitool cmd 发送命令 [参数]。 但无法确认它是否实际有效。  

    如何在 Linux 终端中手动加载初始化文件? 目前我 在/lib/firmware.中提供了该工具 或者它是否在器件启动时自动运行?

    谢谢。

    Essam

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

    将.bts 文件上传到/lib/firmware 目录后是否必须重新编译 Linux?

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

    Essam

    这似乎是您第一次尝试使 BT 正常工作。

    问题是、您是否希望尝试通过 HCITester 或 Linux 启用它。

    对于 Linux、它需要位于 /lib/firmware/ti-connectivity.下方

    此外、还需要触发 hciattend 实用程序、例如:'hciattend < The right /dev/tty > Texas 115200'。

    您可以在该论坛中看到许多线程、对其进行了解释。

    当然、还应更新 DTS 文件、以配置 BT_EN 引脚和 UART 引脚。

    此致、

    Shlomi.

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

    尊敬的 Shlomi:

    我将在 Linux 上试用它、并让您知道它是怎样的。

    我是否还必须更新 DTS 文件、以便通过 HCITester 工作?或者、如果我想使用 Linux、是否可以这样做?

    谢谢。

    Essam

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

    尊敬的 Essam:

    DTS 文件仅对于 Linux 是必需的。 它为平台设置所有 GPIO。

    HCITester 使用不同的路径、但为了使其工作、您需要控制 UART 线路和 BR_EN 线路、这些线路通常连接在主机处理器(平台)和 WiLink 芯片组之间。 通常需要进行 Linux 集成、然后您可以通过 Linux 手动控制这些线路、但如果您可以在外部控制这些线路、这并不是强制性要求。

    Shlomi.

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

    尊敬的 Shlomi:  

    本周、我将最终测试 Linux 方法。 您能否确认以下信息:

    • 蓝牙服务包有2个文件: TIInit_11.8.32和 TIInit_11.8.32BT4.2 。  如果我将两者都上传到 /lib/firmware/ti-connectivity,是否可以? 我假设 TIInit_11.8.32BT4.2用于蓝牙4.2?
    • 在上传到 /lib/firmware/ti-connectivity?之前、我是否需要对.bts 文件进行任何更改  
    • 我需要上传.bts 之外的任何其他文件、还是将任何文件指向.bts?

    谢谢!

    Essam

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

    您好!

    TIInit_11.8.32.bts 就足够了、因为另一个仅适用于 BT4.2。 应位于 /lib/firmware/ti-connectivity.下 不需要其他文件。

    如果使用115200波特率、则无需对 BTS 文件进行任何修改。 但是、如果要提高到3Mbps、则需要在 BTS 文件的开头添加一条命令以设置 BT 控制器中的波特率、但我们先从默认值115200开始并查看其运行情况。

    此致、

    Shlomi.

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

    Shlomi、我仍然收到一个超时错误。 请参阅以下内容:

    蓝牙启动并显示信息:  

    root@AM335x-EVM:~# hciconfig
    HCI0: 类型:主 总线:UART
        BD 地址:30:45:11:36:08:DD ACL MTU:1021:6 SCO MTU:180:4
        自行建立
        Rx 字节:3405 ACL:0 SCO:0事件:370错误:0
        TX 字节:64222 ACL:0 SCO:0命令:370错误:0
    root@AM335x-EVM:~# hciattached /dev/ttyS0 Texas 115200
    初始化超时。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    如果 hciconfig 为您提供 hci0实例、则意味着 BT 脚本已加载、因此在不切换 RESET 引脚本的情况下无法再次加载。

    可能在初始化过程中会自动加载 BT。

    例如、如果您将执行"hcitool scan"、则应看到扫描正在工作。

    此致、

    Shlomi.

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

    尊敬的 Shlomi:

    我明天将测试 HCI 命令。 同时、我的 FW 团队共享了 TI 连接目录中的所有文件:

    我注意到有多个.bts 脚本。 它们是否会干扰  TIInit_11.8.32?  

    对于微不足道的问题、很抱歉、我正在开发一款固件支持有限的现有产品。 谢谢!

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

    当然、无需担心。

    wl1837唯一适用的 BTS 文件是从11.8.32开始的 BTS 文件。

    所有其余版本均适用于同一系列的旧版本(即 wl12xx)。

    Shlomi.

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

    尊敬的 Shlomi:

    好消息。 我已经能够从命令行运行 hcitool 并在频谱分析仪上进行了测试。 不过、不确定为什么它在 HCITester 侧仍然出现故障。

    我需要帮助将这些命令转换为 hcitool 命令。 您能提供帮助吗?  

    经典蓝牙

    频率/通道:2480MHz/通道78

    调制:GFSK

    功率:最大输出功率

    数据速率:1 Mbps

    数据包类型:1DH5

    具有100%占空比的连续 Tx。

     

    BT LE

    频率/通道:2480MHz/通道39

    调制:GFSK

    功率:最大输出功率  

    数据速率:1 Mbps

    具有100%占空比的连续 Tx。

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

    您好!

    您能否打开此 URL?

    https://processors.wiki.ti.com/index.php/WL18xx_Bluetopia_PM_Bluetooth_RF_Testing#Continuous_TX_2

    它包含很多使用 HCI 测试仪执行 RF 测试的命令。

    请告诉我这是否足够了。

    此致、

    Shlomi.

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

    尊敬的 Shlomi:

    我在尝试打开您链接的页面时收到以下错误信息:

    您访问的页面不存在

    处理器 Wiki 已于2021年1月15日删除

    请告知。

    谢谢。

    Essam

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

    您好!

    可能这是内部情况。

    查看下面这一行的一些捕获。

    连续 TX (BT 经典)

    此非数据包连续传输包含 GFSK (BR)、π/4-DQPSK (2-EDR)或8DPSK (3-EDR)。

    将器件置于恒定 TX 模式的步骤和 HCI 命令为:

    第1步:

    运行初始化脚本。
    

    步骤2:

    #Set TxMode:0x0 =未调制单载波、0x1 = GFSK、0x2 = EDR2、0x3 = EDR3、0x4 = BLE、 0x5 = ANT
    TxMode = 1
    

    步骤3:

    Send_HCI_VS_DRPb_Enable_RF_Calibration_Enhanced 0xFDFB、0x1、0xFF、0x00000000、0x01
    WAIT_HCI_Command_Complete_VS_DRPb_Enable_RF_Calibration_Enhanced_Event 5000、 Any、HCI_VS_DRPb_Enable_RF_Calibration_Enhanced、0x00
    

    步骤4:

    SEND_HCI_VS_DRPb_Tester_Con_TX 0xFDCA、2402、TxMode、0、7、 0x00000000、0x00000000 //有关 TxMode 相关值、请参阅步骤2
    WAIT_HCI_Command_Complete_VS_DRPb_Tester_Con_TX_Event 5000、Any、HCI_VS_DRPb_Tester_Con_TX、0x00 

    HCI_VS_DRPb_Tester_Con_TX 的参数为:

    1.操作码

    • 0xFDCA
    连续 TX 模式的典型测试设置

    2.频率

    • F=2402 ~ 2479

    3.调制方案

    • 0=CW
    • 1=GFSK (BR)
    • 2=π μ C/4-DQPSK (2-EDR)
    • 3=8DPSK (3-EDR)
    • 4=BLE
    • 5=前

    4.测试模式

    • 0= PN9.
    • 1= PN15.
    • 2=Z0Z0
    • 3 =全部为1
    • 4=全部为0
    • 5=F0F0
    • 6=ff00

    5.功率级别索引

    • 0-7、其中0是最低、7是最高

    6.内部设置

    • 0x00000000

    7.内部设置

    • 0x00000000


    退出连续 TX

    停止连续 Tx 模式的 HCI 命令为:

    TX 停止 :

    Send_HCI_VS_Write_Hardware_Register 0xFF01、0x20014044
    、0x0010 WAIT_HCI_Command_Complete_VS_Write_Hardware_Register_Event 5000、Any、HCI_VS_Write_Hardware_Register、 0x00
    
    Send_HCI_VS_Write_Hardware_Register 0xFF01、0x20014048、0x0014
    WAIT_HCI_Command_Complete_VS_Write_Hardware_Register_Event 5000、Any、HCI_VS_Write_Hardware_Register、 0x00
    

    停止 PN 发生器:

    Send_HCI_VS_Write_Hardware_Register 0xFF01、0x2001900C、0x0000
    WAIT_HCI_Command_Complete_VS_Write_Hardware_Register_Event 5000、Any、HCI_VS_Write_Hardware_Register、 0x00 


    BT LE 测试模式

    以下是用于将器件置于 BT LE 测试模式的规范中的 HCI 命令 :

    发送器测试

    SEND_HCI_BLE_Transmitter_Test 0x201e、0x00
    、0x00、0 WAIT_HCI_Command_Complete_BLE_Transmitter_Test_Event 5000、任意 HCI_BLE_Transmitter_Test、0x00
    
    Send_HCI_BLE_Test_End 0x201f
    WAIT_HCI_Command_Complete_BLE_Test_End_Event 5000、任意、HCI_BLE_Test_End、0x00、0