通过 USB 类型 C ConnEx 测试 USB 类型 C 系统

本主题提供了自动测试系统、设备、使用 USB Type-C 连接器的扩展坞及其与 Windows 操作系统的互操作性的指南。 可以测试属于以下类别之一的硬件:

  • 系统:台式机、笔记本电脑、平板电脑、服务器或手机运行具有公开 USB Type-C 端口的 Windows 操作系统版本的 SKU。
  • 扩展坞:公开多个端口的任何 USB Type-C 设备。
  • 设备:具有可连接到系统或扩展坞的 Type-C 端口的任何 USB 设备。 此类别包括传统的 USB 设备,以及支持 USB Type-C 规范中定义的附件和备用模式的设备。

规范和过程

MUTT Connection Exerciser Type-C (USB Type-C ConnEx) 硬件板是 Arduino 开发板的自定义防护板。 防护板提供四对一交换机,用于自动执行 USB 类型 C 方案的互操作性测试。

硬件要求

若要使用 USB Type-C ConnEx 版本 2 执行 USB Type-C 互操作性测试过程,需要:

  • 受测系统 (SUT)

    至少具有一个公开的 Type-C USB 端口的台式机、笔记本电脑、平板电脑、服务器或手机。

  • USB Type-C ConnEx

    该设备有一个公 USB Type-C 端口, (标记为 J1) SUT 连接到。 该设备还有另外四个 USB 端口, (标记为 J2J3J4J6) 设备可以连接到这些端口,作为外围设备连接到 SUT。 设备监视从 SUT 中提取的安培数和电压。 可以从 MCCI 购买必要的硬件。

    USB Type-C ConnEx 连接练习器设备的图片。

  • 外围 USB 设备

    具有可连接到 SUT 的 USB 类型 C 端口的任何 USB 设备。 此类别包括传统的 USB 设备和支持 USB Type-C 规范中定义的附件和备用模式的其他设备。

  • Micro-USB 到 USB A 电缆

    你将使用此电缆将 USB Type-C ConnEx 连接到电脑进行电源和通信 (如果你的 SUT 有 USB A 端口,你将在这里) 连接它。

  • 代理控制器

    如果 SUT 没有 USB A 端口,可以使用代理来控制 USB Type-C ConnEx 以运行测试。 代理控制器应是辅助台式电脑或笔记本电脑。

    代理控制器将 (与移动 SUT) 通信到微控制器,以使用辅助 USB 端口加载固件。

旧版本的硬件要求

若要使用 USB Type-C ConnEx 版本 2 执行 USB Type-C 互操作性测试过程,需要:

  • 受测系统 (SUT)

    至少具有一个公开的 Type-C USB 端口的台式机、笔记本电脑、平板电脑、服务器或手机。

  • Arduino Mega 2560 R3

    Arduino Mega 2560 R3 用作测试设置的微控制器。

    Arduino Mega 2560 R3 板的图片。

  • Arduino Mega 2560 R3 微控制器的电源适配器

  • USB Type-C ConnEx

    防护板有一个公 USB Type-C 端口, (标记为 J1) SUT 连接到。 防护板还有另外四个 USB 端口, (标记为 J2J3J4J6) 设备可以连接到这些端口,作为外围设备连接到 SUT。 防护板监视从 SUT 中提取的安培数和电压。 可以从 MCCIJJG Technologies 购买此开发板。

    USB Type-C ConnEx 板的图片。

  • USB A 到 B 电缆

    你将使用此电缆将电脑连接到微控制器,以便更新微控制器上的固件以运行测试。

  • 外围 USB 设备

    具有可连接到 SUT 的 USB 类型 C 端口的任何 USB 设备。 此类别包括传统的 USB 设备和支持 USB Type-C 规范中定义的附件和备用模式的其他设备。

  • USB 充电器

    支持 USB Type-C 当前要求和可选的 USB 电源传送的 USB 类型 C。 还需要适用于 J6 的 USB Micro-B 充电器。

  • 代理控制器

    USB Type-C ConnEx 可以通过使用代理运行测试来控制。 代理控制器可以是以下实体之一:

    • 辅助台式电脑或笔记本电脑。

      代理控制器与移动 SUT(微控制器)通信以加载固件。

    • 使用辅助 USB 端口进行 SUT。

    • 使用 3.5 毫米音频插孔进行 SUT。

      在此设置中,需要:

      • DTMF 防护,用于在具有单个 USB Type-C 端口的 SUT 上运行测试。 在固件的初始闪存完成后,DTMF 提供通过音频插孔从单端口设备控制防护层的功能。

        DTMF 防护板的图片。

      • 用于将 DTMF 防护板连接到 SUT 的 4 引脚公对公音频电缆。 这允许 SUT 在测试期间控制 USB Type-C 防护板。

        4 引脚公对公 3.5 毫米音频电缆的图片。

软件要求

请确保满足以下要求:

  • SUT 必须具有要用来测试互操作性的 Windows 操作系统版本。

  • 代理控制器必须Windows 10运行。

  • 代理控制器上下载并安装最新的 MUTT 软件包。 包是一套工具,用于通过 USB Type-C ConnEx 运行测试。 它包括用于更新固件、在外围端口之间切换以及发送用于模拟测试用例的请求的实用工具。 它还包含测试驱动程序包,用于测试总线、其控制器和连接到总线的设备的功能。

  • 对于基于 UCSI 的系统,我们强烈建议使用一些其他设置进行测试,以帮助发现 UCSI 固件 bug。 此设置将使 UCSI 固件问题可发现,强烈建议仅用于测试目的。 请参阅此博客文章中的 调试 USCI 固件故障

  • 安装测试工具需要提升的命令窗口。

    若要打开提升的命令窗口,用户必须是代理控制器上的 管理员 组的成员。 若要打开提升的命令提示符窗口,请创建用于 Cmd.exe 的桌面快捷方式,选择并按住 (或右键单击) Cmd.exe 快捷方式,然后选择“ 以管理员身份运行”。

USB Type-C ConnEx 工具

下面是 MUTT 软件包中特定于 USB Type-C ConnEx 的工具

工具 说明
ConnExUtil.exe 用于练习 USB Type-C ConnEx 功能的命令行工具。
CxLoop.cmd 连接每个端口并断开连接一次。
CxStress.cmd 随机压力脚本。
CxPower.cmd 捕获一段时间内 (电压和安培) 的电源数据,并将输出发送到 CSV 文件。

有关所有其他工具的信息,请参阅 MUTT 软件包中的工具

最新版本入门

请遵循此过程来设置测试环境。

新设置) (图片

配置将类似于此映像。 请注意,连接到电脑时,设备上的 Micro-USB 端口提供对 USB Type-C ConnEx 的控制。

在这些步骤中,你将连接硬件部分、更新微控制器上的固件并验证安装。

  1. 将 micro-usb 插入 ConnEx 的背面,将 USB A 插入代理控制器 (SUT(如果可用) )。

  2. 使用 USB Type-C ConnEx 固件更新设备。

    • 打开提升的命令提示符窗口。

    • 导航到 MUTT 软件包的位置,例如 C:\Program Files (x86) \USBTest\<arch>

    • 运行以下命令:

      ConnExUtil.exe –UpdateFirmware

  3. 使用设备背面连接的 USB Type-C 电缆插入 SUT。

  4. 将外设连接到标记为 J2、J3J4J6 的 USB 端口。

  5. 确保代理控制器上的设备管理器识别设备 (SUT(如果可用) )。

旧版本入门

请遵循此过程来设置测试环境。

USB Type-C ConnEx 配置的示意图。

配置应与此映像类似。 请注意,连接到电脑时,微控制器上的 USB Type-C 端口提供对 USB Type-C ConnEx 的控制。

在这些步骤中,你将连接硬件部分、更新微控制器上的固件并验证安装。 当连接到手机或平板电脑的音频端口时,DTMF 防护板提供对 USB Type-C ConnEx 的控制。

  1. 将微控制器连接到 USB Type-C 防护板。

    如果 USB Type-C ConnEx 未组装,请继续执行步骤 1。 如果 USB Type-C ConnEx 已组装,请继续执行步骤 2。

    注意

    必须仔细执行此步骤,因为针脚容易弯曲。

    1. 通过确保各板相互对齐,将 USB Type-C 防护板的引脚与微控制器上的接收器对齐。

      显示如何对齐 USB Type-C ConnEx 引脚的图片。

    2. 轻轻地将两块板压在一起。 注意不要弯曲防护罩上的针脚。

      显示如何组装 USB Type-C ConnEx 的图片。

      组装的单元应类似于下图:

      组装的 ConnEx-C 板的图片。

  2. 通过使用连接到代理控制器的 USB B () 或外部电源适配器,从连接的微控制器为 USB Type-C ConnEx 供电。 液晶显示器类似于下图:

    五秒钟后,液晶显示器会显示电流和电压。

    带电源的 USB Type-C ConnEx 图片,但液晶显示器上没有任何内容。

    液晶显示器上 4.27 V 和 -0.017A 的 USB Type-C ConnEx 的图片。

    如果未看到如上图所示的显示,请确保已正确组装单元。

  3. 使用 USB Type-C ConnEx 固件更新微控制器。

    • 打开提升的命令提示符窗口。

    • 导航到 MUTT 软件包的位置,例如 C:\Program Files (x86) \USBTest\<arch>

    • 运行以下命令:

      MuttUtil.exe –UpdateTabFirmware

  4. 将 SUT 插入到外接 USB Type-C 端口, (屏蔽上标记为 J1) 。

    谨慎 连接 SUT 时 ,J1 连接器需要额外的支持。 连接器不够坚固,无法承受设备或本身的重量。

    将受测系统附加 (SUT) 的图片。

  5. 将外设连接到标记为 J2、J3J4J6 的 USB 端口。

    连接到 USB Type-C ConnEx 的外围设备图片。

  6. 将代理控制器连接到微控制器。

    • 如果代理控制器是台式电脑或笔记本电脑,请通过 USB 建立连接。 将微控制器上的 USB Type-B 端口连接到代理控制器上的 USB 端口,如上图所示。
    • 如果代理控制器是移动 SUT,请使用音频端口建立连接。 对于此连接,需要 DTMF 防护板。
      1. 将 DTMF 防护板连接到组装的单元,如下图所示:

        DTMF 附件的图片。

      2. 使用 4 针公头对公音频电缆将防护板的音频端口连接到 SUT 上的音频端口。

        设置应类似于下图:

        使用 DTMF 附加受测系统的图像。

  7. 确保代理控制器上的设备管理器识别 USB Type-C ConnEx。

    1. 右键单击任务栏中的“开始”按钮,然后选择“设备管理器”。

    2. 展开 (COM & LPT) 节点的 端口,并记下微控制器使用的 COM 端口。 在此示例中,它连接到 COM 4。

      Windows 设备管理器中 USB Type-C ConnEx 的屏幕截图。

ConnExUtil.exe

下面是 ConnExUtil.exe 支持的用于控制 USB Type-C ConnEx 板的命令行选项。

用例 选项 说明
设备发现
列出连接到 USB Type-C ConnEx 的所有设备
/list 对于已连接 USB 的设备,此选项将列出设备实例路径。 对于已连接音频的设备,将显示“音频”。

要查看音频设备,请结合 /all 参数使用此选项。 列出从 1 开始的索引,它们可作为 /# 参数的输入。
设备选择
选择连接到 USB Type-C ConnEx 的所有设备,包括音频。
/all 可选。

如果不使用此参数,实用工具将选择已连接 USB 的设备。 只有在使用已连接音频的设备时,才使用此参数。 音频发现非常耗时,默认情况下处于禁用状态。
设备选择
选择连接到 USB Type-C ConnEx“n”的特定设备。
/# n 可选。
输入 n 是连接到 USB Type-C ConnEx 的可用设备的从 1 开始的索引,可以使用 /list 参数进行查看。 如果没有此参数,默认行为是在所有 USB Type-C ConnEx 板上运行每个命令。
设备命令 /setPortp 切换到指定的端口 p

通过指定数字 (1 – 4) 或按名称 (J2、J3J4J6) 来连接端口。

如果为 0,则断开所有端口。
设备命令 /getPort 读取当前连接的端口。
设备命令
读取安培/电压信息。
/volts

/amps

/version
读取当前电压。

读取当前安培。

读取设备版本。
设备命令
启用 SuperSpeed。
/SuperSpeedOn 为当前和将来的连接全局启用 SuperSpeed,直到发送了 /SuperSpeedOff 命令。

默认情况下 SuperSpeed 处于启用状态。

如果禁用了 SuperSpeed,并且端口 1 或端口 2 已连接,则此命令会触发 SuperSpeed 的重新连接。
设备命令
禁用 SuperSpeed
/SuperSpeedOff 为当前和将来的连接全局禁用 SuperSpeed,直到发送了 /SuperSpeedOn 命令。

如果启用了 SuperSpeed,并且端口 1 或端口 2 已连接,则此命令会在 SuperSpeed 行禁用的情况下触发重新连接。
设置命令延迟时间 /setDelay 设置命令延迟时间 t(以秒为单位)。

设置命令延迟时间将导致下一个 /setPort 或 /SuperSpeed{On/Off} 命令延迟 t 秒,其中 t 介于 0 到 99 之间。 这是一个一次性的设置,只会延迟下一个命令。 不支持在延迟计时器到期之前发送多个命令。
设置断开连接超时时间(以毫秒为单位) /setDisconnectTimeoutt 为下一个非零 /setPort 命令设置断开连接超时。 发生下一次连接事件时,端口将仅在断开连接之前保持连接 t 毫秒。 这是一个一次性的设置,只有下一个连接事件会自动断开连接。 允许的范围从 0 到 9999 毫秒。
批处理命令:
将功率测量值输出到 .csv 文件。
/powercsv 将当前功率度量值和时间戳追加到 power.csv 第一次运行将创建 power.csv。 在后续运行中,将数据追加到此文件。

重命名或删除该文件可启动全新数据捕获。 每次运行都会追加一行,格式如下: <index>、<time>、<volts>、<amps>

index 是通过运行 /list 提供的设备索引,因此可以同时监视多个设备。

time 是原始时间戳(以秒为单位)。

volts 和 amps 将记录到小数点后两位。

此数据可能会长时间捕获,并在电子表格应用程序中绘制出来,请参阅 cxpower.cmd 脚本。
批处理命令:
对主要功能运行单元测试
/test 测试设备的所有主要功能。 用于对设备功能进行基本验证。 如果此命令失败,请关闭设备电源并更新固件。
批处理命令:
端口切换序列的基本演示。
/demod 循环访问所有端口一次,每个端口有 d 秒延迟。

将每个端口上的端口号、电压和电流写入 demoresult.txt。

示例命令

连接到端口

connexutil.exe /setport 1

或者,使用印在开发板上的端口名称:

connexutil.exe /setport J3

断开所有端口的连接

connexutil.exe /setport 0

循环访问所有端口

for %p in (1 2 3 4)
do (
    connexutil.exe /setport %p
    echo Confirm device on port %p
    pause
)

用于控制 USB Type-C ConnEx 板的脚本

这些脚本使用 ConnExUtil.exe 支持的控制接口,通过命令行使用 USB Type-C ConnEx 运行顺序和压力类型测试。 所有这些脚本都支持可选的命令行参数 音频 ,以指示 USB Type-C ConnEx 板通过 3.5 毫米音频接口连接。 默认情况下,他们只会尝试使用 USB 连接的板。

简单连接和断开连接顺序:CXLOOP。Cmd

(1-4) 每个端口连接 SUT 并断开 SUT 的连接,并在每个端口上暂停,提示测试人员验证该端口上的连接。

随机连接和断开连接循环:CXSTRESS。Cmd

在无限循环中,在 0.0-5.0 秒的随机间隔内,随机连接和断开每个端口之间的 SUT。 连接到 USB Type-C 端口时,它将在该端口上随机启用或禁用 SuperSpeed 连接,并随机指示开发板以 0 - 999 毫秒的随机间隔在该端口上快速断开连接。

命令行参数 C 导致脚本仅在 USB 类型 C 端口和断开连接状态之间切换。 数字命令行参数将开关之间的最大随机间隔从默认值 5.0 秒重置为以秒为单位的输入值。 参数可以按任意顺序传递。

长时间运行的功率测量:CXPOWER。Cmd

每隔 2 秒将 USB Type-C ConnEx 报告的安培数和电压保存到输出文件 power.csv。 数据的格式设置为逗号分隔变量,如下所示:

index,time,volts,amps

indexConnExUtil.exe /list 命令提供的设备索引,因此可以同时监视多个设备。

time 是原始时间戳(以秒为单位)。

伏特安培 记录到 2 个小数位数。

捕获完成后,可将此数据发布到图表中,显示随时间推移的功耗,例如电池充电周期的功耗。 数字命令行参数将默认测量间隔 2 秒重置为输入值(以秒为单位)。

关于测试用例

USB Type-C 互操作性测试过程分为两个部分:功能测试 (FT) 和压力测试 (ST) 。 每个测试部分描述测试用例,并标识应用于测试的类别。 产品必须针对整个适用类别进行测试。 某些测试用例包含指向相关提示和提示的链接,以获取其他信息。 本部分重点介绍 USB 类型 C 功能和体验。 USB 类型 C 解决方案可能包含其他 USB 组件,例如 USB 集线器或 USB 控制器。 USB-IF 的 xHCI 互操作性测试过程 和 Windows 硬件认证工具包中介绍了 USB 集线器和控制器的详细测试。

这些测试用例基于用于 控制 USB Type-C ConnEx 板的 ConnExUtil 命令和示例脚本脚本。 测试用例引用脚本。 根据测试方案的要求自定义脚本。

压力测试部分介绍压力和边缘案例方案的过程,这些方案在一段时间内测试设备稳定性。 压力测试需要自定义设备 (SuperMUTT) 进行旧版 USB 验证, (非 USB 类型 C) 。 可通过即将推出的 USB Type-C 测试设备实现其他测试和自动化。

FT 案例 1:设备枚举

FT 案例 1:设备枚举的示意图。

端口 设备
J1 SUT。
J2 具有使用 USB Type-C 电缆连接的 USB Type-C 端口的电脑。
J3 USB 类型 C 充电器。
J4 USB 集线器 (超高速或高速) ,并连接下游的鼠标。
J6 使用 USB 类型 A 到 USB Micro-B 电缆连接的 USB 类型端口电缆的电脑。
  1. 关闭 SUT 电源。
  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。
  3. 将代理控制器连接到 USB Type-C ConnEx。
  4. 将外设连接到 USB Type-C ConnEx。
  5. 打开 SUT 并登录到 Windows。
  6. 在提升的命令提示符下,运行 CXLOOP。CMD 脚本。 脚本暂停时,确认新激活的外围设备可正常运行。
  7. 反转 USB Type-C 电缆的方向,并重复步骤 5 - 7。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

FT 案例 2:备用模式协商

FT 案例 2:备用模式协商的示意图。

端口 设备
J1 SUT。
J2 DisplayPort 到 USB Type-C 硬件保护装置。
J3 USB 类型 C 充电器。
J4 USB 集线器 (超高速或高速) ,并连接下游的闪存驱动器。
J6 使用 USB 类型 A 到 USB Micro-B 电缆连接的 USB 类型端口电缆的电脑。
  1. 关闭 SUT 电源。
  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。
  3. 将代理控制器连接到 USB Type-C ConnEx。
  4. 将外设连接到 USB Type-C ConnEx。
  5. 打开 SUT 并登录到 Windows。
  6. 在提升的命令提示符下,运行 CXLOOP。CMD 脚本。 脚本暂停时,确认新激活的外围设备可正常运行。
  7. 反转 USB Type-C 电缆的方向,并重复步骤 5 - 7。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

FT 案例 3:充电和供电 (PD)

FT 案例 3:充电和供电的关系图。

端口 设备
J1 SUT。
J2 无。
J3 USB 类型 C 充电器。
J4 USB 鼠标。
J6 USB Micro-B 充电器。
  1. 关闭 SUT 电源。

  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。

  3. 将代理控制器连接到 USB Type-C ConnEx。

  4. 将外设连接到 USB Type-C ConnEx。

  5. 打开 SUT 并登录到 Windows。

  6. 在提升的命令提示符下,运行 CXLOOP。CMD 脚本。 脚本暂停时,确认新激活的外围设备可正常运行。

  7. 反转 USB Type-C 电缆的方向,并重复步骤 5 - 7。

  8. 将 USB Type-C ConnEx 连接到端口 J2

    ConnExUtil.exe /setPort 2

  9. 如果 SUT 包含多个 USB 类型 C 端口,请使用 USB 类型 C 电缆连接同一系统上的两个 USB 类型 C 端口。

    确认 SUT 不会 (自身) 充电。

    确认电源的 LCD 读数符合壁式适配器的预期。

  10. 将连接到 J3 的 USB Type-C 充电器替换为其他制造商提供的另一个 USB Type-C 充电器。

    确认设备正在接收最新消息。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

FT 案例 4:角色交换

FT 案例 4:角色交换的示意图。

端口 设备
J1 SUT。
J2 具有使用 USB Type-C 电缆连接的 USB Type-C 端口的电脑。
J3 无。
J4 USB 闪存驱动器。
J6 使用 USB 类型 A 到 USB Micro-B 电缆连接的 USB 类型端口电缆的电脑。
  1. 关闭 SUT 电源。

  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。

  3. 将代理控制器连接到 USB Type-C ConnEx。

  4. 将外设连接到 USB Type-C ConnEx。

  5. 打开 SUT 并登录到 Windows。

  6. 在提升的命令提示符下,运行 CXLOOP。CMD 脚本。 脚本暂停时,确认新激活的外围设备可正常运行。

  7. 反转 USB Type-C 电缆的方向,并重复步骤 5 - 7。

  8. 将 USB Type-C ConnEx 连接到端口 J2

    确认角色交换。 LCD 屏幕上显示的 Amperage 指示电源角色。 如果 J1 是电源接收器,则为 +ve;如果 J1 是电源,则为 -ve

  9. 执行必要的步骤来交换数据角色,并确认每个系统的当前角色已更改。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

ST 案例 1:设备枚举

ST 案例 1:设备枚举的示意图。

端口 设备
J1 SUT。
J2 具有使用 USB Type-C 电缆连接的 USB Type-C 端口的电脑。
J3 USB 类型 C 充电器。
J4 USB 集线器 (超高速或高速) ,并连接下游的鼠标。
J6 使用 USB 类型 A 到 USB Micro-B 电缆连接的 USB 类型端口电缆的电脑。
  1. 关闭 SUT 电源。

  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。

  3. 将代理控制器连接到 USB Type-C ConnEx。

  4. 将外设连接到 USB Type-C ConnEx。

  5. 打开 SUT 并登录到 Windows。

  6. 在提升的命令提示符下,运行 CXSTRESS。CMD 12 小时。

    按 Ctrl-C 终止脚本。

  7. 执行 FT 案例 1:设备枚举中所述的步骤。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

ST 案例 2:充电和供电 (PD)

ST 案例 2:充电和供电的示意图。

端口 设备
J1 SUT。
J2 无。
J3 USB 类型 C 充电器。
J4 USB 鼠标。
J6 USB Micro-B 充电器。
  1. 关闭 SUT 电源。

  2. 将 SUT 连接到 USB Type-C ConnEx 上标记为 J1 的端口。

  3. 将代理控制器连接到 USB Type-C ConnEx。

  4. 将外设连接到 USB Type-C ConnEx。

  5. 打开 SUT 并登录到 Windows。

  6. 在提升的命令提示符下,运行 CXSTRESS。CMD 12 小时。 .

    按 Ctrl-C 终止脚本。

  7. 执行 FT 案例 3:充电和供电 (PD) 中所述的步骤。

有关与步骤 2 -4 相关的配置映像,请参阅 入门...

其他测试资源

以下功能测试可针对 USB 类型 C 进行改编,以改进传统的 USB 方案。

测试用例 说明 类别
系统启动 确认产品不会阻止正常的系统启动。 系统、扩展坞、设备
系统电源转换 测试系统的电源转换和从较低功率状态唤醒功能是否不受产品的影响。 系统、扩展坞、设备
选择性挂起 确认选择性挂起转换。 Dock、设备

以下压力测试可以改编自 SuperMUTT 测试文档,以扩展 USB 方案。

测试用例 说明 类别
系统电源转换 在重复系统电源事件后测试产品可靠性。 系统、扩展坞、设备
传输事件 生成多个传输和连接事件。 系统、扩展坞、设备
即插即用 (PnP) 生成各种 PnP 序列。 系统、扩展坞、设备
设备拓扑 使用产品测试一系列设备和拓扑。 系统、扩展坞、设备

验证测试结果

确认充电和电源

USB Type-C ConnEx 上的板载 LCD 显示 (伏特、安培和方向) 。 确认它符合插入并主动启用 USB Type-C ConnEx 的电源的期望。

显示 4.27 V 和 -0.017A 的 LCD 的图片。

确认桌面设备上的设备添加

  1. 确定设备连接到的 USB 主机控制器。
  2. 确保新设备显示在 设备管理器 中的正确节点下。
  3. 对于连接到 USB 3.0 端口的 USB 3.0 集线器,预期会看到两个集线器设备:一个以 SuperSpeed 枚举,另一个高速枚举。

确认桌面设备上的设备删除

  1. 在 设备管理器 中标识你的设备。
  2. 执行测试步骤,将设备从系统中删除。
  3. 确认设备不再存在于设备管理器中。
  4. 对于 USB 3.0 集线器,检查两个设备(SuperSpeed 和配套集线器)是否已删除。 在这种情况下,删除设备失败可能是设备故障,应该调查所有涉及的组件,以诊断出适当的根本原因。

确认设备功能

  • 如果设备是 USB 集线器,请确保集线器下游的设备正常运行。 验证其他设备是否可以连接到中心上的可用端口。
  • 如果设备是 HID 设备,请测试其功能。 确保 USB 键盘键入、USB 鼠标移动光标,并且游戏设备在游戏控制器的控制面板中正常运行。
  • USB 音频设备必须播放和/或录制声音。
  • 存储设备必须可访问,并且应该能够复制大小为 200MB 或更大的文件。
  • 如果设备具有多种功能(例如扫描 & 打印),请确保同时测试扫描和打印功能。
  • 如果设备是 USB 类型 C 设备,请确认适用的 USB 和备用模式是否正常工作。

使用 ETW 记录问题

请参阅 如何使用 Logman 捕获 USB 事件跟踪

报告测试结果

请提供以下详细信息:

  • 测试列表 (在测试失败之前执行) 的顺序。
  • 列表必须指定失败或通过的测试。
  • 用于测试的系统、设备、扩展坞或中心。 包括制造、型号和网站,以便我们可以根据需要获取其他信息。