Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/dsyx/docs.silabs.com_zh/llms.txt

Use this file to discover all available pages before exploring further.

对于任何实现无线标准化技术的设备,RF 测试是产品发布前的必要环节,需要仔细评估和验证互操作性规范符合性及通信法规合规性。本文档介绍如何使用 Silicon Labs 软件工具和专用测试设备,对搭载 Bluetooth-enabled EFR32xG SoC 或 BGM/MGM Module 的硬件执行 Bluetooth RF PHY(Physical Layer)评估。RF 参数验证使用 DTM(Direct Test Mode) 协议,该协议在 Bluetooth Core Specification versions 5.x, Volume 6, Part F 中定义。

DTM 基础

DTM 提供了两种 RF PHY 测试方法:

HCI 命令方式(Upper Tester)

通过 SoC 或 Module 的标准 HCI 接口输入特殊 HCI 命令,启动和停止 DUT 上的无线电测试

2-Wire 直连方式

通过专用的 2-wire UART 连接,自动化测试仪直接访问和控制 DUT,适合商用 Bluetooth 测试仪
DTM 协议规定了 DUT 对命令的反馈机制:
  • 对给定命令的确认响应
  • 测试停止时报告的数据包计数信息
DTM 测试系统组成
  • DUT(Device Under Test):被测设备,运行支持 DTM 的固件
  • Upper Tester(上层测试器):控制和配置 DUT 的 host 系统(如运行 BGTool 的 PC)
  • Lower Tester / RF PHY 测试器:实际进行 RF 测量的实验室仪器(如频谱分析仪、信号发生器或商用 Bluetooth 测试仪)
EFR32xG SoC 和 BGM/MGM Module 支持上述两种测试方法。2-wire 链路为类 UART 连接,参数如下:
  • 无流控制
  • 波特率:1200 – 115200 bps
  • 传输格式:8N1(8 个数据位、无奇偶校验、1 个停止位)

DTM 测试用例

DTM 启用了一组 RF PHY 测试用例,由 Bluetooth SIG 在 TCRL Release Table 中定义。测试用例标识符中:
  • RF-PHY 表示 RF-PHY 测试目的
  • TRM 表示发射器测试
  • RCV 表示接收器测试
发射器测试用例(TRM)
测试用例 ID测试内容
RF-PHY/TRM/BV-01-COutput power(输出功率)
RF-PHY/TRM/BV-03-CIn-band emissions, uncoded data at 1 Ms/s(带内发射)
RF-PHY/TRM/BV-05-CModulation Characteristics, uncoded data at 1 Ms/s(调制特性)
RF-PHY/TRM/BV-06-CCarrier frequency offset and drift, uncoded data at 1 Ms/s(载波频率偏移与漂移)
RF-PHY/TRM/BV-08-CIn-band emissions at 2 Ms/s
RF-PHY/TRM/BV-10-CModulation Characteristics at 2 Ms/s
RF-PHY/TRM/BV-13-CModulation Characteristics, LE Coded (S=8)
接收器测试用例(RCV)
测试用例 ID测试内容
RF-PHY/RCV/BV-01-CReceiver sensitivity, uncoded data at 1 Ms/s(接收灵敏度)
RF-PHY/RCV/BV-03-CC/I and Receiver Selectivity Performance(选择性性能)
RF-PHY/RCV/BV-04-CBlocking Performance(阻塞性能)
RF-PHY/RCV/BV-05-CIntermodulation Performance(互调性能)
RF-PHY/RCV/BV-06-CMaximum input signal level(最大输入信号电平)
RF-PHY/RCV/BV-07-CPER Report Integrity(误包率报告完整性)
RF-PHY/RCV/BV-08-CReceiver sensitivity at 2 Ms/s
RF-PHY/RCV/BV-10-CBlocking performance at 2 Ms/s
RF-PHY/RCV/BV-27-CReceiver sensitivity, LE Coded (S=8)
要完成规范中的全部接收器测试,除频谱分析仪外,还需要两个外部信号发生器来提供完整的干扰信号。

测试方法一:使用 BGTool 进行测试

BGTool 是最简单的 RF PHY 测试方法,使用运行 BGTool 的 PC 作为 Upper Tester。

前提条件

  • SoC 或 Module 配置为 NCP(Network Co-Processor)mode 运行
  • 安装了 Bluetooth > Feature > Test 组件以添加 DTM 命令

DTM 命令参考

启动发射器测试。
test_dtm_tx(packet_type, length, channel, phy)
参数说明
packet_type数据包类型:PRBS9、11110000、10101010、test_pkt_carrier(连续未调制载波)、test_pkt_pn9(PN9 连续调制载波)
length数据包有效负载长度(最大 255 byte,LE Data Packet Length Extension)
channel测试信道
phyPHY 选择:1M、2M、125k Coded、500k Coded
DUT 收到命令后返回响应,随后触发 test_dtm_completed 事件表示测试已开始。通过 test_dtm_end 停止测试。注意:只有当 test_dtm_completed 事件跟随 test_dtm_end 命令时,事件的 number_of_packets 字段才携带实际发送的数据包数量。在 BGTool 命令区域直接输入示例:
sl_bt_test_dtm_tx(0,37,19,1)

BGTool 测试步骤

1

启动 BGTool 并验证连接

启动 BGTool,验证处于 NCP mode 的设备是否响应 Interactive view 中输入的命令。
2

切换到 RF regulatory test view

更换到 RF regulatory test view,点击 Open with the connected device
3

配置测试参数

在控制对话框中,使用滑块和单选按钮设置:
  • 传输功率级别(如需非默认功率,先更改后点击 Transmit power 旁的 Set 按钮)
  • 工作频率/信道
  • 数据包类型和长度
  • PHY 选择(1M、2M、Coded)
  • 选择执行发送或接收测试
4

启动和停止测试

配置完成后点击 Start test,测试将持续运行直到点击 Stop test。停止测试的唯一其他方法是复位设备或重启电源。
一旦开始 DTM 测试,常规的 Bluetooth LE 功能(广告、扫描、连接)将不可用,直到测试停止。

测试方法二:使用 DTM 2-Wire 固件进行测试

当有商用 Bluetooth 测试仪(如 Anritsu MT8852B)时,应优先使用此方法,因为专用测试仪速度更快,可提供自动化且精确的测试。

创建 DTM 固件项目

1

打开项目向导

在 Simplicity Studio 5 的 Launcher perspective 中,在 Debug Adapter 视图选择正确的 DUT(自动预填充 Target Board 和 Target Device),然后在 File 菜单选择 New > Simplicity Studio Project Wizard
2

确认目标配置

Target, SDK and Toolchain Selection 对话框中,检查目标硬件、SDK 版本和 toolchain 是否正确,点击 [NEXT]
3

选择 DTM 示例

Example Project Selection 对话框中,使用 Keyword 过滤器搜索 SoC – DTM,选中后点击 [NEXT]
4

完成创建

Project Configuration 对话框中保留默认值,点击 [FINISH] 创建 DTM 示例项目。

默认配置说明

示例应用的默认配置:
  • 2-wire 链路引脚:UART TX(扩展接头 pin 12)和 UART RX(扩展接头 pin 14)
  • UART 参数:115200 baud、8N1、无硬件流控制
如果这些设置适合您的 DUT,可直接使用示例应用。构建并烧录后,如果应用无法运行,可能是缺少 bootloader——可先从 Launcher perspective DEMOS 选项卡中烧录预编译的 demo(含 bootloader),然后再重新烧录 DTM 映像。

自定义 DTM 应用配置

如需更改 2-wire UART 的引脚或参数:
1

打开 Software Components

在项目的 .slcp 文件中,点击 Software Components 选项卡。启用 Configurable ComponentsInstalled Components 过滤器,在搜索框中输入 “stream”。
2

配置 IO Stream 组件

选中名为 exp 的 IO Stream 实现,点击 [Configure] 打开 Component Editor,在此处配置波特率、引脚和其他参数。更改将自动保存。
3

(可选)使用 Pin Tool

双击项目中的 <project name>.pintool 文件打开 Pin Tool。在 Configure 编辑器的 Pins 选项卡中选中引脚,下拉 Function 列表选择功能。Pin Tool 中的更改不会自动保存,需手动保存。
4

重新编译烧录

更改完成后,重新编译并烧录固件进行验证。

连接 Bluetooth 测试仪进行测试

安装 DTM 固件后,将 DUT 连线到 Bluetooth 测试仪(通过上层测试器接口 PC 软件进行控制):
1

建立与 DUT 的连接

使用正确的连接参数(RS232 接口,注意 TTL 逻辑电平转换需求)在测试仪软件中建立与 DUT 的连接。
2

运行测试套件

使用预设或自定义脚本运行一组测试。在 Script Setup 框中,Fixed Offset 字段可用于补偿功率损耗(如同轴电缆测试时)。
3

PER 测试(Packet Error Rate)

上层测试器通过 DTM 2-wire 命令将 DUT 配置为接收模式(步骤 1-2),然后发送设定数量的数据包(步骤 3),测试结束后(步骤 4)发送对应 DTM 命令,DUT 通过 2-wire 链路报告接收到的数据包数,测试仪据此计算 PER。
某些 Bluetooth 测试仪(如 Anritsu MT8852B)使用 RS232 接口连接 DTM 2-wire DUT,与设备 TTL 逻辑交接需要电平转换器。某些测试仪无法生成低于特定值(如 -90 dBm)的 RF 信号,可能需要使用衰减器进行接收灵敏度测试。

具体测试用例实施

输出功率测试(RF-PHY/TRM/BV-01-C)

使用 test_dtm_tx 命令,仅配置频率和输出功率参数。频谱分析仪通过兼容 RF 电缆连接到无线板的 RF 连接器进行功率测量。

调制特性测试(RF-PHY/TRM/BV-05-C 和 BV-06-C)

使用 test_dtm_tx 命令进行调制、频率偏移和漂移测量。根据测试规范可能需要更改有效负载的数据模式(1010 模式或 11110000 模式)。频谱分析仪通过 RF 电缆连接到 RF 连接器进行测量。

频谱测试(RF-PHY/TRM/BV-03-C)

使用 test_dtm_tx 命令进行带内发射测量。频谱分析仪用于测量无线电频谱,必须通过 RF 电缆连接到 RF 连接器。

接收器测试(RF-PHY/RCV 系列)

使用 test_dtm_rx 命令进行所有 sensitivity-based 和阻塞器测量。 在 BGTool 中:选择 Low energy receive,然后点击 Start test 按钮。 需要频谱分析仪和两个 RF 信号发生器验证接收器测试,均须通过 RF 电缆连接到 RF 连接器。如使用商用 Bluetooth 测试仪,可能需要添加外部信号发生器提供第二个干扰源或阻塞信号。

测试注意事项与参数说明

在使用典型 37 byte 有效负载的 1M PHY 传输测试期间,后续数据包传输以 625 µs 的间隔开始,数据包传输本身持续 376 µs,占空比约为 60.2%。数据包组成:报头(8 bit)+ 同步字(32 bit)+ 数据包类型字段(16 bit)+ 有效载荷(296 bit)+ CRC(24 bit)= 376 bit,以 1 Mbit/s 传输约 376 µs。根据 LE Data Packet Length Extension(Core Spec v4.2),最大有效负载可达 255 byte,实际占空比还取决于数据包间隔,需根据 Core Spec v4.2/v5.x, Volume 6, Part F, Chapter 4.1.6 计算。
当前 SDK 版本不支持配置 test_dtm_tx 发送固定数量的数据包。作为替代,可让设备仅在固定时间内传输:以 1M PHY + 37 byte 负载为例,数据包间隔为 625 µs,速率为 1600 packets/s,因此发送 N 个数据包所需时间 = N × 625 µs。
当用 test_dtm_tx 启动的测试停止时,test_dtm_completed 事件会报告测试期间实际发送的数据包数量。将发送数量与接收方实际接收数量比较,可用于精确估算 PER。注意:DTM 2-wire 通信响应不会报告已发送的数据包计数,此功能仅在 BGAPI 模式下可用。

自定义 SoC DTM 应用

客户可以基于 SOC-Empty 示例项目进行自定义,创建能够自动启动测试命令的独立应用:
  • 简单模式:在引导时自动启动特定测试命令,并在定时器到期或硬复位后终止
  • 远程控制模式:允许传入 Bluetooth LE 连接,远程设备通过写入专用 GATT characteristic 定义要启动的测试命令和运行时间
这种策略适合为测试室准备多个固件映像,每个映像包含启动特定测试的独立功能。

快速参考

测试场景推荐方法所需设备
快速功能验证BGTool + NCP 固件PC + WSTK
法规测试(自动化)DTM 2-Wire 固件 + 商用 Bluetooth 测试仪商用测试仪 + 电平转换器
发射功率/频谱BGTool 或 DTM 固件频谱分析仪
接收灵敏度/阻塞BGTool 或 DTM 固件频谱分析仪 + 2 个 RF 信号发生器
PER 测试DTM 2-Wire 固件商用 Bluetooth 测试仪

参考文档

  • Bluetooth Core Specification v5.x, Volume 6, Part F — DTM 协议定义
  • AN1259: Using the v3.x Silicon Labs Bluetooth® Stack in NCP Mode — NCP 固件基础
  • QSG169: Bluetooth® SDK v3.x Quick Start Guide — Bluetooth SDK 快速入门
  • UG434: Silicon Labs Bluetooth® C Application Developers Guide for SDK v3.x — Bluetooth C 应用开发指南

Build docs developers (and LLMs) love