兼容 ChromeOS - 鼠标规范 v1.0

版本:1.0.1
上次更新时间:2024 年 1 月 31 日

图例

产品动词 开发操作
“必须” 强制性产品要求
“应该” 可选建议
“可以” 建议条件

概览

本规范文档介绍了与 ChromeOS 兼容的鼠标满足的条件。本规范不适用于 WWCB 产品,也不适用于与 Chromebook 一起设计和认证的产品。

本文档仅适用于鼠标,不包括触控板或轨迹球。

安全性要求

固件更新程序

  • 如果无线鼠标支持蓝牙,则应支持固件更新。
  • 如果无线鼠标支持 2.4 GHz 加密狗,则应支持固件更新。
  • 鼠标应通过 fwupd 执行固件更新。
    • 说明:这样做可以让用户在标准 ChromeOS 更新期间(通常是每 6 周)无缝更新。
    • 注意:如果未来发现漏洞,请务必能够修补外围设备。注意:系统将阻止具有已知漏洞的外围设备与 ChromeOS 设备连接。
    • 注意:不支持蓝牙的有线鼠标或 2.4 GHz 加密狗无需支持固件更新。

连接性

  • 无线鼠标必须支持使用以下任一或全部选项与 ChromeOS 设备连接:
    • 蓝牙
    • 2.4 GHz 无线加密狗

2.4 GHz 无线加密狗

附带 2.4 GHz 无线接收器(加密狗)的鼠标会自动与该接收器配对(且仅能与其配对)。需要用户执行操作(在设备上或通过应用)才能将鼠标与其他接收器配对或将新鼠标与现有接收器配对。以下要求详细介绍了此功能。

  • 2.4 GHz 无线鼠标与接收器打包在一起,接收器必须支持通过 USB-A 或 USB-C 连接到 ChromeOS 设备。
  • 2.4 GHz 无线鼠标与接收器打包在一起,那么鼠标必须与接收器一起自动配对。
  • 与接收器打包在一起的 2.4 GHz 无线鼠标必须仅与包装盒的接收器自动配对。
  • 2.4 GHz 鼠标可以允许用户将该鼠标与其他接收器配对。
  • 接收器可以允许用户将另一个 2.4 GHz 鼠标与接收器配对。
  • 鼠标可以依赖于应用来由用户发起与其他接收器配对。
  • 接收器可以依赖于应用来由用户发起与其他鼠标配对。
  • 如果应用需要更改鼠标/接收器配对,则必须在 ChromeOS 上运行。
  • 如果使用配对应用,配对应用应为 ChromeOS 原生应用。
    • 注意:Chrome 扩展程序通常用于支持硬件和配件的配置。
  • 设备可以依赖使用 WebUSB 或 WebHID 的渐进式 Web 应用 (PWA) 进行自定义。
  • 如果使用配对应用,配对应用可以是使用 WebUSB 或 WebHID 的 Web 应用。
  • 如果通过扩展实现配对,该扩展必须仅有权访问 USB 端口。

蓝牙

  • 如果无线键盘支持蓝牙,无线键盘必须符合 ChromeOS 兼容蓝牙的要求中的要求。具体而言,请参阅以下部分:
    • 通用蓝牙要求
    • 蓝牙输入设备要求

连接器

有线鼠标

  • 有线鼠标必须支持以下 USB 传输方式之一:
    • 鼠标 USB-C 型接口
    • 带 USB-A 型插头的强制使用线
    • 带 USB-C 型插头的强制数据线
  • 如果有线鼠标支持设备自带的 USB-C 接口,则 USB-C 接口必须符合第 4.5.1.3.2 节“接收器配置通道功能模型”的要求。
  • 如果有线鼠标支持设备上的 USB-C 型接口,则 USB-C 型接口必须符合图 4-9 CC1 和 CC2 的接收器功能模型要求。
  • 如果有线鼠标支持带 USB A 型插头的固定式数据线,则相应产品套装应包含符合要求的 USB C 型转 USB 3.1 标准 A 型插口适配器(USB C 型规范第 3.6.1 节)
  • 如果有线鼠标支持带 USB C 型插头的固定式数据线,则 USB C 型插头必须符合 USB C 型规范 第 4.5.2 节 CC 功能和行为要求

    • 注意:具体而言,关于直接连接设备或具有强制使用线缆的设备的规则。

    (这些设备应仅在引脚 A5 上应用和检测 CC 电压级)。

  • 如果有线鼠标支持带 USB-C 型插头的固定式数据线,则鼠标不得包含无源 USB C 型插口转 USB-A 适配器。

    • 说明:USB C 型规范第 2.2 节禁止使用 USB C 型插口转 USB A 适配器。
  • 如果商品套装包含 USB 数据线,该数据线应经过 USB-IF 认证

硬件和视觉设计

滚动机制

  • 鼠标可以具有滚动机制。
    • 注意:滚动机制包括滚轮、多点触控表面等。

按钮

  • 鼠标应能够通过两个单独的按钮或单个多点触控点击/触感反馈表面生成左键和右键点击操作。
  • 鼠标可以有用于执行通用键码库中列出的操作的按钮。

表面跟踪

  • 如果鼠标的每次安装费用是固定的,则鼠标的每次安装费用应等于 800 每次安装费用。
  • 如果鼠标的 CPI 是可变的,则鼠标的 CPI 选项应介于 800 到 1500 之间。

低电量模式

  • 当鼠标有一段时间没有活动时,鼠标应进入低功耗模式。
    • 注意:可通过降低扫描速率实现低功耗模式。
  • 当用户移动鼠标时,鼠标应在 30 毫秒内将移动事件传达给 ChromeOS 设备。
    • 说明:在用户体验下降之前,30 毫秒被视为一个不错的最长响应时间。

软件

供应商 ID 和产品 ID

  • 将鼠标悬停在所有协议上时报告的供应商 ID 必须属于制造商。
  • 鼠标报告的供应商/产品 ID 组合必须与其他鼠标模型不同。
  • 如果同一个鼠标模型存在多个变体,则这些变体应全部共用相同的 HID 描述符。
  • 如果同一鼠标模型的变体具有不同的 HID 描述符,则每个 HID 描述符变体都必须映射到唯一的产品 ID。

内核

  • 如果使用自定义内核驱动程序,必须将其签入上游 Linux
  • 如果使用自定义内核驱动程序,必须将其向后移植到 Chromium 操作系统内核 4.4 及更高版本。
  • 当鼠标关闭或断开连接时,内核必须从输入设备集合中移除鼠标。

按钮

  • 左侧按钮必须报告 BTN_LEFT。
  • 中间的按钮必须报告 BTN_MIDDLE。
  • 右侧按钮必须报告 BTN_RIGHT。
  • 如果鼠标包含具有默认功能的按钮,则鼠标必须使用 Linux 内核中所述的相应 KEY_ 或 BTN_ 代码来报告默认功能。
    • 鼠标应仅当按键实际位于鼠标上,或可以使用配置工具映射到鼠标的其中一个按钮时,才报告该按键
  • 鼠标不得报告完整的 104 键键盘界面。

充电

由于有线鼠标通常不需要充电,因此本节可以理解为仅适用于无线鼠标。

  • 如果鼠标使用可充电电池,则鼠标应支持使用 USB-C 或 Micro-USB 端口充电。
  • 如果鼠标包含 USB-C 充电器,该充电器应通过 USB-IF 认证。
  • 如果鼠标包含 USB-C 数据线,该数据线应经过 USB-IF 认证。

修订历史记录

日期 版本 备注
2024-02-01 1.0.1 新平台上的共和党
2023-05-19 1.0 初始合作伙伴网站发布内容