USB-IF 认证

硬件供应商和设备制造商为 Windows 硬件认证计划提交准备 USB 设备和主机控制器的指南。

USB-IF 测试

USB 硬件(特别是 USB 设备或主机控制器)必须满足 USB-IF 的机电要求才能获得 Windows 认证。 USB-IF 认证涵盖对 USB 设备和主机控制器进行更深入的测试,并确保实现高质量。

早期版本的 Windows 硬件认证工具包要求制造商将其设备提交到 USB-IF 进行测试。 新版本的 HLK、USB-IF 测试要求允许制造商从 USB-IF 网站下载和运行测试,然后断言这些测试通过 HLK。 如果设备已通过 USB-IF 认证,请将设备的 USB-IF 测试 ID (TID)提供给 HLK。

即使 USB 设备通过当前Microsoft Windows 认证计划要求,其中许多设备也不符合 USB 规范。 最常见的示例包括:

  • 中心:通常失败,因为它们报告它们只有总线电源时具有外部电源。 虚假报告导致公共汽车上的电压条件无效。
  • 硬盘驱动器:通常失败,因为它们无法正确枚举,因为 USB 总线的电源消耗过多。 在许多情况下,这些硬盘驱动器需要非标准电缆才能正常工作。
  • 闪存驱动器:通常失败,因为它们无法正确处理描述符请求,导致设备挂起并失败Microsoft操作系统描述符。
  • 读卡器:通常失败,因为它们未进入选择性暂停状态。
  • 打印机:通常失败,因为它们不会从备用状态恢复。
  • 音频:通常失败,因为它们不会从备用状态恢复。

不合规的 USB 设备可能会导致用户体验不佳、公共关系困难、产品回报、产品支持呼叫量高,以及与发货产品中的服务 bug 相关的成本增加。

USB-IF 测试的 Windows HLK 要求

  • 设备(Device.Connectivity.UsbDevices.UsbifCertification):

    强烈建议使用 USB-IF 认证。 但是,Windows HLK 要求 Device.Connectivity.UsbDevices.UsbifCertification 不再需要 USB 设备的 USB-IF 认证。 要求规定设备可以经过 USB-IF 认证,或者可以在设备上运行 USB-IF 认证测试的子集。

  • 主机控制器(Device.BusController.UsbController.UsbifCertification

    USB 主机控制器制造商必须获得完整的 USB-IF 认证才能满足各自的 Windows HLK 要求。

  • Hubs (Device.Connectivity.UsbDevices.UsbifCertification

    USB 中心制造商必须获得完整的 USB-IF 认证才能满足各自的 Windows HLK 要求。

当系统制造商选择 USB 主机控制器以集成到其系统中时,应注意这些要求。 这些要求可以显著提高 USB 设备的客户体验。 它们可以帮助防止崩溃和挂起的关键原因,并减少排查和调试不符合问题所用的时间。

Windows 硬件认证提交选项

此图显示了如何获取 Windows 认证的过程流。

USB-IF 测试流程图。

可以使用以下方法之一提交 USB 设备以进行 Windows 认证资格以满足新的 USB-IF 测试要求:

  • USB-IF 认证

    USB-IF 授权的独立测试实验室 获取 USB-IF 认证,然后提交设备以获得 Windows 认证资格。 可以选择以下选项之一来获取设备或主机控制器的 USB-IF 认证:

    • 将设备提交到 USB-IF 授权的独立测试实验室进行测试。 有关如何查找实验室的信息,请参阅 USB-IF 授权的独立测试实验室。

      注意

      它通常需要经过授权的独立测试实验室 1 到 2 周来测试单个 USB 设备,以便符合 USB 规范。

    • 若要将 USB 设备提交到经授权的独立测试实验室进行 USB-IF 认证,制造商必须向实验室注册并具有有效的供应商 ID(VID)。

    设备成功通过 USB-IF 认证测试后,你对设备拥有以下权限:

    • 可以将 USB 徽标用于设备的小册子、包装和产品信息。
    • 可以在 USB-IF 集成器列表中列出。
    • 将设备带到 USB-IF 赞助的合规性研讨会。 每年在美国举办四个研讨会,一个研讨会在亚洲举行。

    设备通过 USB-IF 认证测试后,从测试实验室或车间收到测试 ID 号(TID)。 运行设备的其余 Windows HLK 测试时,请向 Windows HLK 提供此 TID 编号。

    在经过授权的独立测试实验室中测试和认证 USB 设备的成本可能因实验室而异。 一些授权的独立测试实验室为一些附属企业提供批量折扣或折扣。 在任何 USB-IF 赞助的合规性研讨会上,都无需测试并认证 USB 设备。 你必须是 USB-IF 的成员才能参加 USB-IF 赞助的合规性研讨会。

  • USB-IF 自测试

    下载 USB 命令验证程序测试工具和 USB 互操作性测试文档,并从 USB-IF 运行所需的测试。 然后提交设备以进行 Windows 认证资格。

    注意

    USB 主机控制器和集线器不符合 USB-IF 自测试选项的条件,必须获得完整的 USB-IF 认证。

    如果你决定使用 USB-IF 自测试选项获取 Windows 认证,则必须至少执行以下 USB-IF 测试:

    • USB 命令验证程序测试:USB 命令验证程序测试设备了解和接受常见 USB 命令的能力。
    • USB 互操作性测试:USB 互操作性测试面向设备与其他 USB 外围设备共存的功能和能力。

    这些测试在 Windows HLK 外部下载并运行。 这些测试必须仅在最新版本的 Windows 上运行(由 USB-IF 指定),即使为多个版本的 Windows 提交 USB 设备进行 Windows 认证资格。 测试结果适用于所有版本的 Windows 认证提交。

    以下步骤介绍如何执行所需的 USB-IF 测试,以限定设备进行 Windows 认证。

    1. USB 软件和硬件工具和互操作性测试文档下载 USB 命令验证程序测试工具(USB3CV)。

    2. 运行下表中指定的 USB 硬件的 USB-IF 测试:

      USB 版本 USB-IF 测试
      USB 2.0 在 xHCI 主机控制器后面附加设备,并在 USB 3.0 命令验证程序测试工具(USB3CV)中运行第 9 章测试 [USB 2.0 设备]。

      运行 USB-IF 完整和低速电气和互操作性合规性测试过程的 D.5 互操作性测试步骤部分中所述的步骤。
      USB 3.0 在 xHCI 主机控制器后面附加设备,并在 USB 3.0 命令验证程序测试工具(USB3CV)中运行第 9 章测试 [USB 3.0 设备]。

      按照 xHCI 互操作性测试过程文档中所述运行互操作性测试。
    3. 如果测试通过,请在 HLK 中输入字符串“SELFTEST”作为测试 ID(TID)输入到 USB-IF 认证验证测试。