【WPC】Qi-v1.3.3-comms-protocol

文章目录


前言

无线充电是无需物理导线连接,通过电磁场隔空传递电能的技术,其中Qi基于电磁感应技术,使用发射端(Tx)线圈通高频交流电产生交变磁场为接收端(Rx)线圈感应磁场生成电流,整流后为电池供电。

本文介绍Qi-v1.3.3-comms-protocol的内容。

一、概述

当用户将功率接收器置于功率发射器的操作体积内时,两者开始通信,以配置和控制功率传输。功率信号为所有通信提供载波。Qi Specification Communications Physical Layer 定义了数据位、数据字节和数据包的低层格式。Qi Specification Communications Protocol定义了数据包的载荷及其在功率控制协议中的使用。

(一)、协议阶段

Qi 规范定义了两种通信协议。

基础协议(Baseline Protocol):Qi 功率等级 0 规范 1.0 版引入的原始协议,仅使用功率接收器到功率发射器的通信。

扩展协议(Extended Protocol):Qi 功率等级 0 规范 1.2 版增加,支持双向通信和增强的异物检测(FOD)功能。Qi 规范 1.3 版增加了数据传输流功能和认证选项。

如下图所示,通信协议包括多个阶段。基础协议中没有协商阶段。

Ping 阶段。功率发射器尝试与功率接收器建立通信。在此之前,它通常会执行测量,以确定是否存在可能在功率传输过程中损坏或发热的物体(如银行卡、硬币或其他金属)。这些测量在不唤醒功率接收器的情况下进行。关于此类测量的限制,参见 Qi Specification Power Delivery。

注:功率发射器通常将关于检测到的金属是异物还是友好金属的结论推迟到协商阶段,在从功率接收器获得设计信息之后。关于推荐方法的详细信息,参见Qi Specification Foreign Object Detection。

配置阶段。功率接收器向功率发射器发送基本标识和配置数据。双方使用此信息创建基础的功率传输合同。此外,功率发射器和功率接收器决定继续使用基础协议还是扩展协议。

注:功率接收器只有在实现扩展协议的情况下,才能使用增强型 FOD、数据传输流和认证等功能。

协商阶段。此阶段在基础协议中不存在。功率发射器和功率接收器建立包含额外设置和限制的扩展功率传输合约。功率接收器还向功率发射器提供设计信息,后者可以在切换到功率传输阶段之前使用这些信息完成 FOD。关于此信息的详细信息,参见Qi Specification Foreign Object Detection。

功率传输阶段。这是功率实际传输到功率接收器负载的阶段。在扩展协议中,功率发射器和功率接收器在此阶段开始时执行系统校准。关于校准的详细信息,参见Qi Specification Foreign Object Detection。此阶段可能会偶尔中断,以重新协商功率传输合约的某个元素。但在重新协商期间,功率传输继续进行。

(二)、功率传输合约

功率传输合约是一组管理功率传输的设置和限制的集合。它由功率接收器(PRx)建立,功率发射器(PTx)在配置阶段接收所有必要信息以复制该合同。

两种合约类型:

基础功率传输合约元素:

扩展功率传输合约额外元素:

1、负载功率等级协商

功率接收器能够以多种目标功率等级运行。为了确定最合适的功率等级,功率接收器会与功率发射器协商一个保证负载功率(Guaranteed Load Power)值。

Potential Load Power(潜在负载功率):PTx 理论最大输出(如 15W),固定不变。

Negotiable Load Power(可协商负载功率):PTx 当前实际可输出(受温度、供电限制,≤潜在负载功率)。

Requested Load Power(请求负载功率):PRx 根据自身需求(如 8W/12W)提出的目标功率。

PRx 可以使用 GRQ/cap 数据包从 PTx 获取潜在负载功率和可协商负载功率。

PRx 可以使用 SRQ/gp 数据包向 PTx 发送请求负载功率。

如果请求负载功率 ≤ 可协商负载功率,则功率等级协商成功,双方将请求负载功率作为保证负载功率存储在其功率传输合约中。

PTx 能够支持的负载功率取决于多个因素:发射器和接收器的设计、接收器在有效充电区中的位置、发射器的电源、接收器的负载、工作温度。

注:PRx可能试图消耗超过保证负载功率的功率,PTx可能提供超过保证负载功率或潜在负载功率的功率。但在这些情况下,系统操作是未定义的。

2、示例

下表提供了功率传输合约的示例。在扩展协议中,初始功率传输合约包含基础功率传输合约的元素加上扩展功率传输合约的元素。

离开配置阶段时基础功率传输合约示例:

进入协商阶段时扩展功率传输合约示例:

离开协商阶段时扩展功率传输合约示例:

  • 如果功率接收器在扩展协议中没有请求 CAP 数据包,则其功率传输合约副本中的潜在负载功率保持未知。

(三)、数据包类型

虽然功率发射器通过施加数字 Ping(在 Ping 阶段结束时)启动通信协议,但功率接收器驱动协议其余阶段的执行。这意味着功率接收器发起所有数据包通信,功率发射器等待被明确邀请才发送数据包或响应模式。

注:尽管是功率接收器驱动通信协议,但功率发射器可以在任何时候调整功率等级或完全停止功率传输,如果它认为这对确保系统安全运行是必要的。

功率接收器可以发送四种数据包:

状态更新(Status update):功率发射器不需要回复这些数据包。

功率控制(Power control):功率发射器响应这些数据包调整功率等级。

简单查询(Simple query):让功率发射器回复响应模式(ACK、NAK、ND、ATN)。

数据请求(Data request):让功率发射器回复完整的数据包。

注:基础协议仅使用状态更新和功率控制数据包。

功率发射器不应响应遭受通信错误的数据包。原因是数据包损坏可能导致功率发射器提供错误类型的响应,从而混淆功率接收器。缺乏响应是向功率接收器发出的明确信号,表明出现问题,应重新发送数据包。

(四)、高层消息与数据传输流

协议中大多数通信的目的是配置和控制功率传输。然而,扩展协议还支持数据传输流(Data Transport Stream),可以在功率发射器和功率接收器之间传递高层消息(通常与功率传输无关)。此类消息的示例包括认证消息,功率发射器和功率接收器可以使用这些消息以防篡改的方式验证彼此的凭证。

注:认证的目标是确保功率发射器和/或功率接收器已通过独立测试,证明安全运行。

功率接收器到功率发射器的数据传输流由一系列简单查询数据包组成,这些数据包的载荷携带高层消息数据。功率接收器可以在功率传输阶段的任何时间启动数据传输流。相反,当功率发射器有高层消息要发送给功率接收器,并确保后者可以处理该消息时,它可以通过响应传入的简单查询数据包(在功率传输阶段)以 ATN 响应模式来引起功率接收器的注意。这向功率接收器发出信号,使其发送一系列数据请求数据包,使功率发射器能够发送数据传输流。

(五)、兼容性

下表总结了 Qi Specification Communications Protocol 先前版本与 1.3 版之间的主要差异(与新的数据传输流和认证功能相关的差异除外)。功率发射器和功率接收器应检查对方的版本号以适当处理这些差异。

二、功率接收器和功率发射器的标识

功率接收器通过以下信息向功率发射器标识自身:

功率接收器符合的 Qi 规范版本。

标识功率接收器制造商的功率接收器制造商代码(PRMC)。

用于在有效充电区中有多个功率接收器中区分特定接收器的基本设备标识符。

可选的扩展设备标识符,提供额外信息。

可选的无线功率 ID(WPID)。

在扩展协议中,功率接收器可以请求功率发射器向接收器标识自身,提供以下信息:

功率发射器符合的 Qi 规范版本。

标识功率发射器制造商的功率发射器制造商代码(PTMC)。

功率发射器证书。

注:在基础协议中,功率接收器无法从功率发射器检索 PTMC。但这并不意味着后者没有关联的 PTMC。WPC 的产品注册要求功率发射器的制造商提交列出 PTMC 的自我声明表。

功率发射器不得以任何限制功率接收器设计自由的方式使用 PRMC。同样,功率接收器不得以任何限制功率发射器设计自由的方式使用 PTMC。

PRMC 和 PTMC 的目的是使同一制造商的功率发射器和功率接收器能够更容易地识别专有(PROP)数据包。

三、Ping 阶段

在 Ping 阶段开始时,功率发射器尚不知道其有效充电区内是否存在功率接收器。功率接收器也不知道功率发射器,因为其系统通常因缺乏功率信号而处于非活动状态。

下图显示了 Ping 阶段的各个阶段。在前三个阶段(虚线箭头),功率接收器未激活。此外,功率发射器应确保其在这些阶段使用的任何信号不会唤醒功率接收器。在第四阶段(虚线箭头),功率发射器尝试唤醒功率接收器。在最后阶段(实线箭头),功率接收器开始通信。

在发起数字 Ping 以征求功率接收器的响应之前,功率发射器应经过以下阶段:

检测物体。为此,功率发射器可以使用模拟 Ping 或各种替代方法。Qi Specification Power Delivery提供了若干示例。

可选地应用 NFC 标签保护,如Qi Specification NFC Tag Protection所定义。

收集有助于判断除功率接收器外是否存在异物的信息。为此,功率发射器可以使用通常称为pre-power FOD 的各种方法。Qi Specification Foreign Object Detection 定义了这些方法。

在执行上述步骤并确定其有效充电区内可能存在功率接收器后,功率发射器发起数字 Ping 以征求功率接收器的响应,该响应要么是信号强度(SIG)数据包,要么是结束功率传输(EPT)数据包。如果没有此类响应,功率发射器停留在 Ping 阶段,并应重复上述步骤。

注:采用多线圈以实现更大定位自由度的功率发射器通常使用不同线圈多次发起数字 Ping。通常,此类发射器在从功率接收器收到 SIG 数据包后中止协议,直到确定用于功率传输的最佳线圈。 Qi Specification Power Delivery 提供了此方法的示例。

(一)、Ping 阶段状态图

在大多数状态下,功率发射器或功率接收器可以发送或接收数据包。根据此数据包,功率发射器和功率接收器切换到下一个状态。在通信错误的情况下,功率发射器和功率接收器可以切换到不同的状态。功率传输协议提供了将功率发射器和功率接收器重新同步到相同状态的机制。

某些状态转换仅适用于功率发射器或仅适用于功率接收器,如其标签所示。这些转换大多与错误条件相关,如超时或接收到的数据包中包含意外内容。此外,某些状态转换列出了多个条件。满足其中任何一个条件都足以沿着该转换进入下一个状态。

适用于功率发射器和功率接收器双方的状态转换描述使用数据包发送方的视角。这些转换的数据包接收方视角就是正确接收到数据包。如果数据包接收方未正确接收到数据包,则应用与适当超时相关的转换。

下图所示的状态图适用于基础协议和扩展协议。

1、从状态 0 的转换

状态 0 是协议的第一个状态。功率发射器在完成其上电初始化功能后切换到该状态。在此状态下,功率发射器尝试检测功率接收器、NFC 标签和异物的存在。可能的转换包括:

PTx:模拟 Ping:发射器已尝试使用模拟 Ping 或替代方法检测物体。

PTx:NFC 标签检测:发射器已尝试检测有效充电区中的 NFC 标签。

PTx:数字 Ping:发射器已找到可能包含接收器的物体,因此已发起数字 Ping。

PTx:检测到异物:发射器已检测到异物或 NFC 标签,阻止其发起数字 Ping。

PTx:无功率:发射器已发现无法维持向接收器的功率传输。

2、从状态 1 的转换

状态 1 是功率接收器主动参与的第一个协议状态。可能的转换包括:

SIG:接收器已发送 SIG 数据包。

PRx:EPT:接收器已发送 EPT 数据包。

PTx:EPT:发射器已收到 EPT 数据包。

PTx:非法数据包:发射器已收到 SIG 或 EPT 以外的数据包。

PTx:Ping 超时:发射器在数字 Ping 超时 t_ping 之前未检测到数据包的起始。

PRx:无响应:在特殊情况下,接收器可能选择不响应数字 Ping。

3、从状态 F 的转换

在状态 F 中,功率发射器解决协议执行中可能发生的任何故障条件。功率发射器可以从其他任何协议阶段进入此状态,特别是当:收到 EPT 数据包;来自接收器的数据包超时;检测到协议错误(例如收到意外数据包);因内部原因决定中止协议(例如在多线圈上执行连续数字 Ping 时)。

进入状态 F 后,功率发射器应在时间窗口 t_terminate 内移除功率信号。

PTx:故障已解决:功率传输已解决故障条件,准备重新开始执行协议。

(二)、Ping 阶段时序

下表提供了应用于 Ping 阶段的时序约束概览。

关于Analog Pings的时序细节以及其他该电源发射器可用于探测物体的特性,请参阅 Qi Specification Power Delivery 部分。

1、功率接收器检测

功率发射器应在用户将功率接收器置于其有效充电区内的 t_detect 时间内发起数字 Ping。

注:黑线表示功率信号,初始为零,当功率发射器发起数字 Ping 时增加。功率发射器在发起数字 Ping 之前可能会施加模拟 Ping。这些模拟 Ping 将显示为黑线从零电平的短暂偏离。

2、功率接收器唤醒

如果功率接收器打算与功率发射器通信,应在功率发射器发起数字 Ping 后的 t_wake 时间内发送 SIG 数据包。如果功率接收器不打算与功率发射器通信,应在发起数字 Ping 后的 t_wake 时间内发送 EPT 数据包,或不响应。

注:发射端可多次发送数字 Ping,以扩大接收端的摆放自由度。因此,接收端应对这类数字 Ping 保持一致地回复 SIG 数据包。

3、数字 Ping 超时

如果功率发射器在 t_ping 时间内未检测到数据包的起始,应在 t_terminate 时间移除功率信号。数字 Ping 超时的起始点是功率信号的施加。

4、结束功率传输(EPT)数据包

无论数据包中包含的结束功率传输代码是什么,功率发射器应从 EPT 数据包结束起的 t_terminate 时间内移除功率信号,并切换到 Ping 阶段的状态 F。移除功率信号后,功率发射器应从 EPT 数据包结束起的 t_nextping 时间内发起第一次数字 Ping。t_nextping 的值取决于 EPT 数据包中包含的值。

在发送第一个 EPT 数据包之后,只要功率信号存在,功率接收器就应继续发送 EPT 数据包。

​注:连续的 EPT 数据包,其结束原因码字段可以不一样。

5、功率接收器复位

在移除功率信号后的 t_noppower 时间窗口内,功率发射器不得施加模拟 Ping 或发起数字 Ping。

在功率发射器移除功率信号后的 t_reset 时刻,功率接收器应丢弃功率传输合约。

​如果在功率接收器丢弃功率传输合约之前功率信号重新出现,它可以从中断时的状态继续执行协议。

注:t_noppower 时间窗口尤其适用于采用多线圈以实现更大摆放自由度的功率发射器中连续数字 Ping 的场景。

6、非法数据包

在接收到非法数据包后,功率发射器应在 t_terminate 时间内移除功率信号。

注:如果在 Ping 阶段接收第一个数据包的时间超过接收 SIG 或 EPT 数据包所需的时间,功率发射器应将该数据包视为非法数据包,并在等待接收该数据包剩余部分之前就移除功率信号。

四、配置阶段

配置阶段是协议的一部分,其中:

功率接收器向功率发射器标识自身身份。

功率接收器和功率发射器建立基线功率传输合约。

功率接收器和功率发射器确定功率传输中要使用的协议变体。

在配置阶段,功率发射器和功率接收器继续使用数字 Ping 的参数运行。这意味着,只有当用户在操作区内移动功率接收器时,功率发射器和功率接收器中的功率和电流水平才会发生变化。

注意:多线圈功率发射器可以在执行新的数字 Ping 使用不同线圈配置之前,进入配置阶段以获取功率接收器的标识数据。这使得此类功率发射器能够区分位于其操作区内的多个功率接收器。有关此方法的示例,请参见 Qi Specification Power Delivery 部分。

下图总结了配置阶段的数据流。功率接收器使用标识(ID)数据包和可选的扩展标识(XID)数据包来标识自身。它使用可选的功率控制保持(PCH)数据包和配置(CFG)数据包提供用于功率传输合约的数据。在最后一步,功率发射器确认扩展协议(如适用)。

(一)、配置阶段状态图

下图所示的状态图适用于BPP和EPP。

1、从状态 2 的转换

在状态 2,功率接收器向功率发射器标识自身。可以从该状态进行以下转换。

ID:功率接收器已发送一个 ID 数据包,其 Ext 位设置为 ZERO。

ID/x:功率接收器已发送一个 ID 数据包,其 Ext 位设置为 ONE。

PTx: illegal data packet:功率发射器已收到一个非 ID 的数据包。

PTx: next-timeout:功率发射器在下个数据包超时 t_next 之前未检测到来自功率接收器的数据包开始。

PTx: 中止:功率发射器可能因内部原因中止协议的进一步执行。例如,多线圈功率发射器可能会在多个线圈上执行数字 Ping,以确定为功率传输的最佳线圈配置,在收到 SIG 数据包后中止协议。

当切换到 ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

2、从状态 3 的转换

在状态 3,功率接收器提供可选的扩展标识数据。可以从该状态进行以下转换。

XID:功率接收器已发送一个 XID 数据包。

PTx: 非法数据包:功率发射器已收到一个非 XID 的数据包。

PTx: 下一个超时:功率发射器在下个数据包超时 t_next 之前未检测到来自功率接收器的数据包开始。

PTx: 中止:功率发射器可能因内部原因中止协议的进一步执行。例如,多线圈功率发射器可能会在多个线圈上执行数字 Ping,以确定为功率传输的最佳线圈配置,在收到 ID 数据包后中止协议。

当切换到 ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

3、从状态 4 的转换

在状态 4,功率接收器向功率发射器提供基线功率传输合约的要素。可以从该状态进行以下转换。

PCH:功率接收器已发送一个 PCH 数据包。

PTx: PROP:功率发射器已收到一个 PROP 数据包。功率发射器应忽略所有不支持的 PROP 数据包,但仍将其计入可选数据包的数量中。

注意:该状态图并未规定功率接收器在配置阶段发送专有数据包。要求功率发射器忽略所有专有数据包,是为了将来协议增强时,功率接收器可能可以在配置阶段发送专有数据包。但目前尚无此类增强协议的计划。

PTx: 保留:功率发射器已收到一个保留的数据包。功率发射器应忽略所有保留的数据包,但仍将其计入可选数据包的数量中。

CFG/bp:功率接收器已发送一个 CFG 数据包,其 Neg 位设置为 ZERO。这意味着功率接收器仅支持基线协议。

CFG/ep:功率接收器已发送一个 CFG 数据包,其 Neg 位设置为 ONE。这意味着功率接收器同时支持基线协议和扩展协议。

PTx: illegal data packet:功率发射器已收到一个未列在状态 4 任何转换中的数据包。

PTx: illegal value:功率发射器接收到的 PCH 数据包中,其功率控制Hold-of时间超出了允许范围。或者,功率发射器接收到的 CFG 数据包不符合CFG (0x51;简单查询)中定义的格式。

PTx: next-timeout:功率发射器在下一个数据包超时 t_next 之前,未检测到来自功率接收器的数据包开始。

PTx: abort:功率发射器可能因内部原因中止协议的进一步执行。例如,一个多线圈功率发射器可能会在多个线圈上执行数字 Ping,以确定为功率传输的最佳线圈配置,并在接收到标识(ID)或扩展标识(XID)数据后中止协议。

PTx: CFG/ep:不支持扩展协议的功率发射器,无论 CFG 数据包中 NEG 位的值如何,都应切换到状态 5。在特殊情况下,即使功率接收器表明其支持扩展协议,一个支持扩展协议的功率发射器也可能决定继续使用基线协议(即不发送 ACK 响应模式)。

注意:在这种情况下,功率接收器会经过状态 6 进入基线协议的功率传输阶段。

当切换到 ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

4、从状态 5 的转换

在状态 5,功率发射器验证收到的 CFG 数据包的Count字段。功率接收器无条件执行Ready转换。可以从该状态进行以下转换。

Ready:功率接收器和功率发射器切换到基线协议的功率传输阶段。在切换之前,功率发射器应验证 CFG 数据包的计数字段是否与在状态 4 中收到的 PCH、PROP 和保留数据包的数量匹配。

PTx: invalid count:功率发射器已收到一个 CFG 数据包,其Count字段与在状态 4 中收到的可选数据包数量不匹配。

当切换到 ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

5、从状态 6 的转换

在状态 6,功率发射器决定是使用基线协议还是扩展协议。可以从该状态进行以下转换。

ACK:功率发射器已同意继续使用扩展协议。

注意:即使功率发射器支持扩展协议,它也可能决定使用基线协议而不发送 ACK。

注意:如果功率发射器以 ACK 响应 CFG 数据包,它将切换到扩展协议的协商阶段。但是,如果功率接收器没有正确接收到 ACK,它会超时并切换到基线协议的功率传输阶段。结果,功率发射器和功率接收器之间会出现操作阶段不匹配。但是,当功率接收器在功率传输阶段发送其第一个数据包(例如 CE 数据包)时,功率发射器会发现不匹配,并也切换到基线协议的功率传输阶段。或者,功率发射器可以切换到 ping 阶段的状态 F(并移除功率信号)来解决不匹配问题。

PTx: invalid count:功率发射器已收到一个 CFG 数据包,其Count 字段与在状态 4 中收到的可选数据包数量不匹配。

PRx: response-timeout:功率接收器在其响应超时 t_response timeout 之前未检测到对其 CFG 数据包的 ACK 响应,这大概是因为功率发射器不支持扩展协议。

PRx: NAK/ND/ATN:功率接收器收到了意外的响应。

当切换到 ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

6、示例

多线圈功率发射器中的最佳线圈选择:

下图提供了多线圈功率发射器执行多个数字 Ping 以选择最佳功率传输线圈的通信序列示例。

在下图示例中,功率发射器重复地经历状态 0(执行数字 Ping)、状态 1(接收 SIG 数据包)、状态 2(存储信号强度值并中止数字 Ping)和状态 F(解决问题,这里指为下一个数字 Ping 选择不同的线圈)。最终,功率发射器从多个线圈收集了足够数量的信号强度值。然后它选择最佳的功率传输线圈用于最终的序列,在该序列中它将继续接收直到 CFG 数据包。

在下图示例中,功率发射器检索 ID 数据包(除了 SIG 数据包之外),以便区分可能位于其操作区内的多个功率接收器。

(二)、配置阶段时序

下表概述了适用于配置阶段通信和其他行为的时序约束。

1、通用约束

功率接收器应在紧邻的前一个数据包结束后的 t_Silent 时刻开始传输下一个数据包的前导码。

注意:Qi Specification Communications Protocol 中的大多数图并未明确显示前导码。定义数据包开始和结束的参考时间请参见 Qi Specification Communications Physical Layer。

2、连续数据包

功率接收器应在紧邻的前一个数据包结束后的 t_start 时刻开始发送下一个数据包。在 ping 阶段发送的 SIG 数据包计为前一个数据包。定义数据包开始和结束的参考时间请参见 Qi Specification Communications Physical Layer。

如果功率发射器在 t_next 时刻尚未检测到数据包开始,则应在 t_terminate 时刻移除功率信号。

3、配置(CFG)数据包

功率发射器应在简单查询数据包或数据请求数据包结束后的 t_response 时刻开始传输其响应。

如果功率接收器在简单查询或数据请求数据包结束后的 t_responsetimeout 时刻之前未检测到响应模式或数据包的开始,它应切换到基线协议的功率传输阶段。

4、数据包中的非法值

功率发射器应在收到包含非法值的数据包后的 t_terminate 时刻移除功率信号。

5、illegal数据包

功率发射器应在收到非法数据包后的 t_terminate 时刻移除功率信号。

五、协商阶段

协商阶段是扩展协议的一部分,在该阶段中,功率发射器和功率接收器可以对功率传输合约进行更改。该阶段有两种形式:

协商阶段:紧跟在配置阶段之后,用于创建初始的扩展功率传输合约。它也用于完成功率传输前的异物检测功能。协商阶段的长度不受限制。

重协商阶段:可以在功率传输阶段多次中断插入,通常用于调整功率传输合约的单个元素。在重协商阶段中,FOD/qf、FOD/rf 和 SRQ/rpr 数据包是非法的。功率传输阶段中 CE 数据包的约束限制了重协商阶段的长度。

功率接收器使用询问方式协商对扩展功率传输合约元素的更改:功率接收器发送一个简单查询数据包,功率发射器回复一个响应模式。例如,功率接收器可以询问功率发射器是否支持某个特定的功率水平,功率发射器回答ACK或NAK。

如果功率发射器和功率接收器无法成功协商出新的功率传输合约,它们可以中止协商阶段并切换到功率传输阶段,而不对功率传输合约做任何更改。

中止协商阶段意味着功率传输阶段继续使用基线协议和基线功率传输合约。

中止重协商阶段意味着切换回扩展协议的功率传输阶段,且功率传输合约保持不变。

注意:中止协商阶段并切换到基线协议的功率传输阶段,意味着除非终止功率传输并从选择阶段重新开始,否则之后无法进行重协商。

除了简单查询外,功率接收器还可以使用数据请求数据包从功率发射器检索更多信息。例如,功率接收器可以请求功率发射器提供其身份(GRQ/id)、其能力(GRQ/cap)及其扩展能力(GRQ/xcap)。

注意:功率发射器的 ID 数据包提供有关其符合的 Qi 规范版本的信息。在尝试使用数据传输流功能之前,功率接收器应验证版本号至少为 1.3。

下图总结了协商阶段的数据流:

功率接收器使用 FOD 状态(FOD) 数据包告知功率发射器其存在对参考功率发射器选定属性的影响。功率发射器可以使用此信息配置其异物检测功能,如Qi Specification Foreign Object Detection。

功率接收器可以可选地使用通用请求(GRQ) 数据包在功率发射器标识(ID) 数据包中检索功率发射器制造商的身份。

功率接收器和功率发射器使用 GRQ/cap 和 GRQ/xcap 数据包(推荐)以及一个或多个特定请求(SRQ) 数据包构建扩展功率传输合约。

为确认扩展功率传输合约并结束协商阶段,功率接收器使用 SRQ/en 数据包。

注意:下图并未暗示协商阶段中使用数据包的任何特定必需顺序或出现次数(SRQ/en 数据包除外)。

功率接收器可以在协商阶段的任何时候发送 EPT 数据包以断开与功率发射器的连接(上图未显示)。

(一)、功率传输合约的可协商元素

功率发射器和功率接收器可以协商功率传输合约的以下元素:

1、Reference Power 参考功率

CFG 数据包提供初始参考功率等级。

为了与仅支持基线协议的功率发射器兼容,该值最高为 5 W。

注意:功率传输合约中 5 W 的参考功率等级对应于 CFG 和 SRQ/rp 数据包中的值 10。RP8 和 RP 数据包被限制为报告最高为参考功率等级两倍的接收功率水平。因此,打算在 10 W 目标功率等级下运行的功率接收器应协商接近 10 W 的参考功率等级(例如,在 SRQ/rp 数据包中使用值 20)。

2、FSK 极性和调制深度

CFG 数据包提供初始 FSK 属性。

功率接收器应选择在协商阶段优化 FSK 通信的初始属性。

在协商阶段后期,功率接收器可以调整 FSK 属性以优化功率传输阶段的 FSK 通信。

注意:当功率接收器在功率传输阶段遇到通信问题时,应重新协商 FSK 属性。

3、Received Power reporting data packet 接收功率报告数据包

扩展协议使用 16 位接收功率分辨率。

由于初始功率传输合约将此元素设置为 8 位,因此有必要在协商阶段使用 SRQ/rpr 数据包更新此元素。

4、Guaranteed Power 保证功率

功率接收器可以使用两种方法协商适当的保证负载功率等级。

推荐方法:请求 CAP 数据包以确定功率发射器愿意协商的最高等级。

替代方法:使用试错法,通过 SRQ/gp 数据包请求多个等级,直到功率发射器同意所请求的等级。

Qi Specification Power Delivery提供了确定适当保证负载功率等级的方法的详细信息。

注意:替代方法会使功率接收器副本中的功率传输合约的潜在负载功率等级保持未知。因此,功率接收器不应使用此方法。

5、Re-ping delay 重 Ping 延迟

如果功率接收器预期需要暂时中断功率传输,它可以设置重 Ping 延迟。

暂时中断功率传输的一个示例原因是:功率接收器打算使用 NFC 通信,而功率信号可能会干扰 NFC 通信。

(二)、更新功率传输合约

功率接收器和功率发射器都应跟踪已更改的功率传输合约元素。一种方法是双方都复制功率传输合约,并仅对其中一个副本应用更改。示例如下表所示。

当功率接收器使用 SRQ/en 数据包退出协商阶段或重协商阶段时,它会比较两个副本,统计两个副本之间不同的元素数量,并将此计数作为 SRQ/en 数据包的参数。在上表的示例中,计数为 4。

当功率发射器验证其具有相同的更改次数(通过比较自己的两个副本)后,它应确认(ACK) SRQ/en 数据包。此外,当它从功率传输阶段收到数据包时,应开始使用包含更改的副本作为新的功率传输合约。

当功率接收器收到 SRQ/en 数据包之后的 ACK 响应模式时,应开始使用包含更改的副本。

当中止协商阶段时,功率发射器和功率接收器都继续使用不包含更改的副本,即继续使用现有的功率传输合约。

(三)、异物检测支持

在协商阶段,功率接收器向功率发射器提供设计信息,功率发射器可使用这些信息来确定其操作区内是否存在异物。

功率接收器应发送 FOD/qf 和 FOD/rf 数据包来提供此信息。有关推荐方法的详细信息,请参见 Qi Specification Foreign Object Detection。

(四)、Wireless power ID

除了功率接收器在配置阶段提供的标识数据外,它还可以发送其唯一的无线功率 ID(使用 WPID/hi 和 WPID/lo 数据包)。功率发射器可将此无线功率 ID 用于各种目的。

注意:WPC 目前不管理无线功率 ID 的唯一性。因此,该功能的任何使用都是专有的。

(五)、NFC 标签保护支持

在协商阶段,功率接收器可以请求 GRQ/xcap 数据包,以确定:

功率发射器是否支持 NFC 标签保护。

它是否已执行 NFC 标签保护。

它是否在操作区内检测到 NFC 标签。

功率接收器也可以执行 NFC 标签保护。有关所涉及的协议步骤的具体细节,请参见 Qi Specification NFC Tag Protection。

(六)、协商阶段状态图

下图的状态图仅适用于扩展协议。

1、从状态 7 的转换

状态 7 是协商阶段的主要状态。在此状态下,接收器可以发送数据包来协商扩展功率传输合约的各项属性。此外,它还可以发送数据包以实现其他杂项功能。此状态下可能的转换如下:

SRQ:接收器已发送 SRQ 数据包。接收器在协商阶段必须至少发送一个 SRQ/rpr 数据包。在重协商阶段不得发送 SRQ/rpr 数据包。

FOD:接收器已发送 FOD/qf 或 FOD/rf 数据包。接收器在协商阶段必须同时发送 FOD/qf 和 FOD/rf 数据包。在重协商阶段不得发送 FOD/qf 或 FOD/rf 数据包。

WPID:接收器已发送 WPID/hi 或 WPID/lo 数据包。接收器要么发送全部两个 WPID 数据包,要么一个都不发送。

PROP:接收器已发送一个 PROP 数据包。

PTx: reserved:发射器已收到一个保留数据包。

PRx: EPT:接收器已发送 EPT 数据包,请求发射器移除功率信号。

GRQ:接收器已请求发射器发送一个特定数据包。

SRQ/en:接收器已发送 SRQ/en 数据包以最终确定协商后的功率传输合约。

PTx: EPT:发射器已收到一个 EPT 数据包。

PRx: aborted negotiation:此转换适用于四种情况:

接收器未能成功终止重协商阶段,导致控制误差间隔 t_interval 或接收功率间隔 t_receive 超时。接收器应切换至扩展协议的功率传输阶段。

接收器已发送 SRQ/en 数据包以结束重协商阶段,但未收到 ACK 响应模式,此时功率传输合约中已协商的元素可能在接收器与发射器之间存在差异。因此,接收器应在下一个重协商阶段中重新协商这些元素。

接收器收到对一个或多个 FOD/qf 或 FOD/rf 数据包的 NAK 响应模式。接收器应切换至基线协议的功率传输阶段。

接收器收到的响应模式违反了本规范的要求。接收器应切换至功率传输阶段,且不更新功率传输合约。

接收器在协商阶段检测到不可恢复的错误(例如,未能在合理时间内成功结束协商阶段)。

PTx: CE/RP/RP8:发射器已收到 CE 或 RP8 数据包,表明接收器已中止协商阶段。或者,发射器已收到 RP 数据包,表明接收器已中止重协商阶段。发射器应丢弃对功率传输合约的所有更改,并切换至功率传输阶段。

PTx: negotiation-timeout:发射器在协商超时时间 t_negotiate 内未检测到来自接收器的数据包起始位。

PTx: illegal data packet:发射器收到了一个未在状态 7 的任何转换中列出的数据包。

当切换至 Ping 阶段时,发射器进入状态 F(并移除功率信号)。

2、从状态 8 的转换

在状态 8,发射器发送适当的响应模式以响应简单查询数据包。此状态下可能的转换如下:

ACK/ATN/NAK/ND:发射器已回复最近接收到的数据包。如果收到的数据包是保留数据包或不受支持的 PROP 数据包,发射器应回复 ND。

在重协商阶段,如果最近收到的数据包是 SRQ/rpr、FOD/qf 或 FOD/rf 数据包,发射器应发送 ND。

PRx: response-timeout:接收器在响应超时时间 t_response timeout 内未检测到对其简单查询数据包的回复,这通常是因为发射器未正确接收到该数据包。

3、从状态 9 的转换

在状态 9,发射器发送适当的数据包以响应 GRQ 数据包。此状态下可能的转换如下:

CAP/XCAP/ID/PROP:发射器已使用请求的数据包回复了 GRQ 数据包。

NULL:发射器返回了 NULL 数据包,因为请求的数据包不是 CAP、ID 或 PROP 数据包。

PRx: response-timeout:接收器在响应超时时间 t_response timeout 内未检测到对其 GRQ 数据包的回复,这通常是因为发射器未正确接收到它。

4、从状态 10 的转换

在状态 10,发射器发送适当的响应模式以响应 SRQ/en 数据包。此状态下可能的转换如下:

ACK:发射器已验证:

已收到并确认了一个 SRQ/rpr 数据包。

已收到并确认了 FOD/qf 和 FOD/rf 数据包。

SRQ/en 数据包中的计数值等于功率传输合约中已更改的元素数量。

切换至功率传输阶段后,它将使用更新后的功率传输合约。

NAK:发射器判定不满足发送 ACK 响应的条件。它将丢弃对功率传输合约的所有更改(并停留在协商阶段)。

PRx: ND/ATN:接收器应中止协商阶段,丢弃对功率传输合约的所有更改,并继续执行基线协议的功率传输阶段。或者,接收器应中止重协商阶段,丢弃对功率传输合约的所有更改,并继续执行扩展协议的功率传输阶段。

PRx: response-timeout:接收器在响应超时时间 t_response timeout 内未检测到对其 SRQ/en 数据包的回复,这通常是因为发射器未正确接收到它。此超时会导致运行阶段不匹配:接收器停留在协商阶段,而发射器已切换至功率传输阶段。接收器应通过重复发送 SRQ/en 数据包直至收到 ACK 或 NAK 响应来解决此不匹配。在重协商阶段,重复发送 SRQ/en 数据包可能导致违反发送 CE 和/或 RP/0 数据包的定时约束。

5、示例

(1)、推荐的协商方法

下图展示了一个协商阶段的数据包序列示例。带下划线的数据包在协商阶段是强制性的,所有其他数据包是可选的。

在此示例中,接收器使用 GRQ/id 数据包作为协商阶段的第一个数据包,其目的是确定发射器的版本是否支持 FOD/rf 数据包。接着,接收器发送 FOD/rf 和 FOD/qf 数据包,以帮助发射器区分异物和友好金属。发射器确认了这两个数据包,意味着它未检测到异物。随后,接收器发送以下数据包:

一个 SRQ/rpr 数据包,将功率传输合约中的接收功率分辨率设置为 16 位。

一个 GRQ/cap 数据包,以获取发射器的能力(如潜在负载功率等级 PL(pot) 和可协商负载功率等级 PL(neg) )。

一个 GRQ/xcap 数据包,以获取发射器的附加能力(如其 NFC 标签保护信息和状态)。

一个 SRQ/rp 数据包,以设置适当的参考功率等级 Pr(ref) 。

一个 SRQ/gp 数据包,以请求特定的保证负载功率等级 PL(req) (基于从 CAP 数据包获得的信息)。

一个 SRQ/en 数据包以退出协商阶段。在此示例中,计数值为 3,因为更新了功率传输合约中的三个元素:接收功率分辨率、参考功率等级和保证负载功率等级。

(2)、替代协商方法(不推荐)

下图展示了协商保证负载功率等级的替代方法示例。

序列中的前四个数据包与前一示例相同。接收器没有获取发射器的能力,而是使用试错法来确定合适的保证负载功率等级,发送以下数据包:

第一个 SRQ/gp 数据包选择 8W 的保证负载功率等级,发射器接受。

第二个 SRQ/gp 数据包选择更高的 12W 保证负载功率等级,发射器也接受了。

一个 SRQ/rp 数据包将参考功率等级设置为 14W。

一个 SRQ/en 数据包退出协商阶段。与前一示例类似,尽管序列中更新了两次保证负载功率等级,但计数值仍为 3。

(3)、因 FOD 触发而中止至基线协议

下图展示了一个中止的协商序列示例,其中发射器通过对 FOD/qf 或 FOD/rf 数据包回复 NAK 响应模式,表明其检测到了异物,因此接收器决定继续使用基线协议。为避免发射器移除功率信号,接收器切换至基线协议的功率传输阶段。

注意:在后续阶段,功率发射器会继续执行FOD,并且在必要时仍可移除电源信号。

(4)、运行阶段不匹配的解决

下图展示了一个协商序列示例,其中接收器在 SRQ/en 数据包的 ACK 响应因损坏而超时。在这种情况下,接收器重复发送 SRQ/en 数据包,直到正确收到发射器的 ACK,然后才切换至功率传输阶段。发射器在确认第一个 SRQ/en 数据包后已切换至功率传输阶段。

注意:一旦功率接收器发送了SRQ/en数据包并因响应超时而停止接收,该协议不允许功率接收器回退至基线协议。

原因在于功率发射器可能已经切换至扩展协议的功率传输阶段。然而,功率接收器可以通过发送适当的 EPT 数据包重新启动功率传输来回退至基线协议。

(5)、接收器发起的重协商

下图展示了一个重协商序列示例,其中接收器快速更新功率传输合约的一个元素,然后恢复功率传输阶段。

(6)、发射器发起的重协商

下图展示了一个由发射器发起的重协商序列示例。在该示例中,功率传输合约中的保证负载功率等级为 12W,系统在约 13W 的接收功率等级下运行。当发射器因即将过热而需要接收器降低功耗时,它通过对一个 RP/0 数据包回复 ATN 来请求通信许可。接收器通过发送 DSR/poll 数据包授予此许可,使发射器能够发送其 CAP 数据包。由于该数据包中报告的可协商负载功率等级低于功率传输合约中的保证负载功率等级,接收器发起重协商阶段以更新功率传输合约中的保证负载功率等级。

(7)、重复重协商

下图展示了一个重复重协商序列的示例。在发射器为避免过热而降低功率水平后,接收器可以使用此类序列来确定是否有可能再次获得更高的保证负载功率等级。接收器多次尝试提高功率传输合约中的保证负载功率等级。每次尝试失败后,接收器都会切换回功率传输阶段,以满足 CE 数据包超时 t_interval 的约束。由于未对功率传输合约进行更改,接收器在序列中的第一次和第二次重协商阶段结束时未使用 SRQ/en。

(8)、重协商至更高功率等级

下图展示了一个重协商阶段示例,其中接收器尝试更新功率传输合约中的保证负载功率等级。在此示例中,发射器拒绝了该更新。拒绝的原因可能是发射器需要一些时间来重新配置其电源。当发射器准备好批准该请求时,它通过对一个 RP/0 数据包回复 ATN 来请求通信许可。随后,接收器使发射器能够发送其 CAP 数据包,接收器将此作为信号,重新尝试协商保证负载功率等级。

(9)、重协商失败的解决(推荐方法)

说明: 本节仅适用于接收器在发送一个或多个 SRQ/en 数据包之后、收到 ACK 响应模式之前中止重协商阶段的情况。

下面展示了重协商序列示例,其中通信错误可能导致发射器和接收器的功率传输合约之间出现不匹配。在下图的数据包序列中,最初发生不匹配是因为发射器发送了 ACK 响应模式并开始使用新的功率传输合约,而接收器未正确收到该响应模式,因此继续使用旧的功率传输合约。为解决不匹配,接收器应根据需要尽可能多次地重新发送其 SRQ/en 数据包,以获得响应模式。接收器为了解决重协商失败,可以违反 CE 和 RP 数据包的定时约束。然而,如果在重传 SRQ/en 数据包五六次后仍无法获得响应模式,接收器应发送 EPT/rep 数据包以重新开始功率传输。

注意:在接收到 EPT/rep 数据包后重新启动功率传输时,功率发射器应抑制可能引起用户干扰的用户界面事件,以免引起用户警觉。功率接收器也应采取同样的措施,以静默方式解决该问题。

作为示例的详细说明:在下图中,发射器接收到 SRQ/en 数据包并发送 ACK 响应模式。随后,它返回到功率传输阶段并开始使用负 FSK 极性。然而,接收器未收到 ACK 响应模式,因此继续停留在重协商阶段。由于它知道功率传输合约可能存在不匹配,它在等待接收响应模式时开始交替使用负 FSK 极性和正 FSK 极性。当接收器使用正 FSK 极性时,它收不到响应模式,于是发生新的通信错误。但是,当它使用负 FSK 极性时,它可以正确接收到响应模式,除非存在进一步的通信错误。

当结束一个更改了 FSK 通信信道属性的重协商阶段时出现通信错误,接收器在解决失败时应交替使用信道的新属性和旧属性。原因是丢失的 ACK 响应模式也可能是由 SRQ/en 数据包本身的通信错误导致的。

在下图的示例中,最初没有不匹配,因为发射器没有收到终止重协商阶段的 SRQ/en 数据包。然而,由于接收器无法区分这种情况与上图中的示例,它开始交替使用负 FSK 极性和正 FSK 极性。这一决定导致了不匹配的发生:发射器返回到功率传输阶段并开始使用负 FSK 极性,而接收器停留在重协商阶段,直到它收到 ACK 响应模式(它最终收到了)。

(10)、重协商失败的解决(替代方法)

说明: 本节仅适用于接收器在发送一个或多个 SRQ/en 数据包之后、收到 ACK 响应模式之前中止重协商阶段的情况。

下图展示了一个中止的重协商序列示例,该示例导致发射器和接收器的功率传输合约之间出现不匹配。在第一次重协商阶段,接收器请求发射器将保证负载功率等级更改为 12W。由于通信错误,接收器未收到确认发射器已更新其功率传输合约的 SRQ/en 数据包的 ACK 响应模式。由于 CE 数据包的定时约束,接收器无法重传其 SRQ/en 数据包。因此,接收器在不更改其功率传输合约的情况下中止了重协商阶段,从而导致两个功率传输合约之间出现不匹配。

为了修复不匹配,接收器在发送 CE 数据包后立即开始一个新的重协商阶段。在此示例中,接收器重复其将保证负载功率等级更改为 12W 的请求。由于发射器已经在其功率传输合约中更改了保证负载功率等级(它已在初始重协商序列中对 SRQ/en 数据包发送了 ACK 响应模式),因此在第二次重协商序列中发射器发送了 NAK 响应模式。接收器可以将此作为信号,更改其功率传输合约中的保证负载功率等级,从而解决因通信错误而产生的不匹配。为了完全确定,接收器进行第三次重协商序列,并再次重复其对 12W 保证负载功率等级的请求。由于其功率传输合约中的保证负载功率等级已设置为 12W,它使用 SRQ/en 数据包中的计数值零终止了重协商序列。由于发射器的功率传输合约中也包含 12W 的保证负载功率等级,且未发生任何更改,因此发射器在此重协商序列中发送了 ACK 响应模式。

(七)、协商阶段时序

下表概述了协商阶段中通信及其他动作的时序约束。

接收器在响应模式开始前可用于确定工作频率 fop 的周期数为 Ncycles =3⋅fop,其中 fop 以千赫兹为单位。例如,在 fop = 125kHz 时,Ncycles =375。

1、连续数据包

接收器应在紧邻的前一个数据包结束后的 t_silent 时刻开始发送下一个数据包的前导码。

接收器应在紧邻的前一个响应模式或发射器数据包结束后的 t_start 时刻开始发送下一个数据包。对 CFG 数据包发送的 ACK 响应计作前一个响应模式。

如果发射器在 t_negotiate 时刻仍未收到数据包,它应在 t_terminate 时刻移除功率信号。

2、简单查询和数据请求数据包

发射器应在简单查询数据包或数据请求数据包结束后的 t_response 时刻开始发送其响应。

如果接收器在简单查询或数据请求数据包结束后的 t_responsetimeout 时刻仍未检测到响应模式或数据包的起始,则应假定发射器未收到其数据包。在这种情况下,它应至少重试发送其简单查询或数据请求数据包一次。如果在两次重试后仍未检测到响应模式,则应中止协商阶段并继续执行基线协议的功率传输阶段。或者,如果在两次重试后仍未检测到响应模式,则应中止重协商阶段并继续执行扩展协议的功率传输阶段。

注意: 当接收器未能检测到响应模式或发射器数据包时,存在发射器和接收器后续通信发生冲突的风险。发射器和接收器应采取以下预防措施以防止此类冲突:

(接收器)延迟发送下一个数据包,直到预期失败的响应模式或发射器数据包结束之后。

(接收器)持续监控 FSK 通信信道,并在没有正在进行中的 FSK 通信时才发送下一个数据包。

(发射器)持续监控功率信号以寻找传入的数据包,并在检测到前导码后中止任何 FSK 通信。

3、结束功率传输数据包

无论 EPT 数据包中包含的结束功率传输代码为何,发射器均应在该数据包结束后的 t_terminate 时刻移除功率信号,并切换至 Ping 阶段的状态 F。移除功率信号后,发射器应在 EPT 数据包结束后的 t_nextping 时刻发起第一次数字 Ping。

t_nextping 的值取决于 EPT 数据包中包含的值。

在发送第一个 EPT 数据包后,只要功率信号存在,接收器就应继续发送 EPT 数据包。

注意: 连续的 EPT 数据包在其 End Power Transfer Code 字段中可以包含不同的值。

4、非法数据包

发射器应在接收到非法数据包后的 t_terminate 时刻移除功率信号。

5、FOD 宽限期窗口

当满足以下条件时,发射器应在 t_FOD 时刻移除功率信号:

发射器已对一个或多个 FOD/qf 或 FOD/rf 数据包回复了 NAK 响应模式,表明其检测到了异物;

并且接收器未响应于第一个 NAK 响应模式而切换至基线协议的功率传输阶段。发射器接收到 RP8 数据包是一个明确的指示,表明接收器已进行了此切换。

下图显示了一个 RP8 数据包到达过晚,以至于发射器无法在 FOD 宽限期窗口 t_FOD 内收到它。因此,发射器移除了功率信号。

六、功率传输阶段

功率传输阶段是协议中实际向接收器负载传输功率的部分。功率传输按照协商阶段创建的功率传输合约中的条件进行。接收器通过发送控制误差数据来控制功率等级,该数据是接收器目标工作点与实际工作点之间偏差的度量。发射器和接收器旨在将控制误差数据驱近至零,此时系统正以其目标功率等级运行。关于功率控制的详细信息,请参见 Qi Specification PowerDelivery 部分。

除了控制误差数据外,发射器和接收器还交换旨在促进异物检测的信息。接收器定期报告其接收到的功率量------接收功率等级,发射器可以发出是否检测到异物的信号。功率传输阶段推荐的异物检测方法是功率损耗核算。在这种方法中,发射器将接收器报告的接收功率等级与其传输的功率量------传输功率等级------进行比较,当差值超过阈值时向接收器发出信号。关于功率传输阶段异物检测的详细信息,请参见 Qi Specification Foreign Object Detection 部分。

如果情况需要,发射器或接收器可以请求重新协商功率传输合约。此类情况变化的示例包括:

接收器需要(显著)高于先前协商的功率。

发射器检测到其运行效率较低。

发射器因工作温度升高而不再能够维持当前功率等级(或者相反,在充分冷却后允许接收器以更高功率等级运行)。

发射器和接收器可以在整个功率传输阶段通过发起数据流来交换应用级数据。一个重要的常见应用是身份验证,双方可以以防篡改的方式验证对方的凭证。

例如,接收器可能希望验证发射器的凭证,以确保其可以信任后者在较高功率等级下安全运行------拥有适当的凭证意味着已通过合规性测试。

因此,推荐的功率传输方法是:从低功率等级开始(例如在负载功率

PL≤5W 时),并在成功完成身份验证协议后才将功率控制到更高等级。

注意: 建议发射器和接收器首先协商一个用于低功率等级的功率传输合约,并在成功身份验证后重新协商一个用于更高功率等级的功率传输合约。

下图总结了上述功率传输阶段的数据流。

接收器通常每秒发送多次控制误差数据包。它通常每1.5秒发送一次接收功率数据包(基线协议中为RP8,扩展协议中为RP)。

在扩展协议中,发射器可以通过回复一个注意响应模式来响应RP数据包,以请求发送数据包的权限。

发射器和接收器可以使用数据流响应、发射器能力和重协商数据包来发起对功率传输合约中某一元素(通常是保证负载功率等级)的重协商。最后,它们可以使用辅助数据控制、辅助数据传输和DSR数据包来交换应用层数据。

(一)、功率传输状态图

下图分别显示了适用于基线协议和扩展协议的状态图。 除了扩展协议中可用的附加功能外,两者之间还存在一些差异:

在基线协议中,功率传输阶段紧随配置阶段之后。在扩展协议中,功率传输阶段紧随协商阶段之后。

在基线协议中,接收器使用短的 RP8 数据包。在扩展协议中,接收器使用长的 RP 数据包。

1、来自状态 11 的转移

状态 11 是功率传输阶段的主要状态。在此状态下,功率接收器可以发送数据包以控制功率并提供数据流传输功能。以下转移可能从此状态发生。

注意:关于在功率传输阶段的某些阶段使用数据包的限制,请参阅 Qi Specification Foreign Object Detection。

CE:功率接收器已发送一个 CE 数据包。

RP8:功率接收器已发送一个短的 RP8 数据包。

注意:此转换仅存在于基线协议中。

RP/4:功率接收器已发送一个 RP/4 数据包。

注意:此转换仅存在于扩展协议中。

CHS:功率接收器已发送一个 CHS 数据包。

PROP:功率接收器已发送一个 PROP 数据包。功率发射器应忽略所有不支持的 PROP 数据包。

注意:对于功率发射器确实支持的专有数据包,它可以根据该专有数据包的预期用途,转换到状态 13 或状态 15。

PRx: EPT:功率接收器已发送一个 EPT 数据包,请求功率发射器移除功率信号。功率接收器应设置一个适当的错误代码,以使功率发射器能够采取适当的纠正措施。

PTx: reserved:功率发射器应忽略所有保留的数据包。

PTx: EPT:功率发射器已收到一个 EPT 数据包。

PTx: comms-loss-timeout:功率发射器在相关超时时间之前,未能正确接收到来自功率接收器的 CE、RP8 或 RP 数据包。

PTx: illegal data packet:功率发射器已收到一个未在状态 11 的任何转换中列出的数据包。

注意:当用户快速将一个功率接收器替换为另一个时,功率发射器可能会收到非法数据包。在此情况下,另一个功率接收器从 Ping 阶段开始协议,通常发送以下数据包序列:SIG --- ID --- CFG --- ...。为避免因过高的功率信号损坏功率接收器,如果功率发射器检测到功率接收器被替换,应尽快停止功率传输。

RP:功率接收器已发送一个 RP 数据包。

注意:关于 RP 数据包其他模式的用途,请参阅Qi Specification Foreign Object Detection。

ADC:功率接收器已发送一个 ADC 数据包,以控制数据流传输的传输。

ADT:功率接收器已在功率接收器到功率发射器数据流中发送了一个 ADT 数据包。

PTx: SRQ/en:功率发射器已收到一个用于结束协商阶段的 SRQ 数据包。在状态 13,它应发送一个 ACK 响应模式。

注意:仅当发生操作阶段不匹配(功率接收器仍处于协商阶段)时,功率发射器才会收到此数据包。

DSR:功率接收器已发送一个 DSR 数据包,以推进功率发射器到功率接收器的数据流。

NEGO:功率接收器已发送一个 NEGO 数据包,以请求许可进入重新协商阶段。

PTx: action-timeout:功率发射器未观察到功率接收器针对以下情况采取预期行动:

对一个被 NAK 的 RP 数据包。

对一个简单查询数据包的 ATN 响应。

一个响应 DSR 数据包(例如 DSR/ackADT)而发送的功率发射器数据包。

一个重新协商请求。

注意:功率发射器可以通过响应 DSR 数据包发送 CAP 数据包,来请求功率接收器启动重新协商阶段。

当切换到 Ping 阶段时,功率发射器进入状态 F(并移除功率信号)。

2、来自状态 12 的转移

在状态 12,功率发射器根据接收到的控制误差数据调整功率等级。功率接收器等待,直到功率发射器完成功率等级的控制。关于功率控制的详细信息,请参阅 Qi Specification Power Delivery 。以下转换可能从此状态发生。

Ready:功率发射器已完成功率等级的调整。

注意:功率接收器可以使用一个定时器来确定功率发射器何时完成功率等级的调整,因为用于调整功率等级的时间窗口长度是固定的。

3、来自状态 13 的转移

在状态 13,功率发射器发送适当的响应模式,以回复一个简单查询数据包。以下转移可能从此状态发生。

ACK/NAK/ND:功率发射器已回复接收到的数据包。

ATN:功率发射器已请求功率接收器的注意,例如,因为它有数据包要发送。

注意:当给出此回复时,功率发射器应忽略接收到的数据包的内容,因为它无法给出恰当的 ACK、NAK 或 ND 响应。功率接收器应在稍后重传其数据包(例如,在它给予功率发射器发送其数据包的机会之后)。

PRx:响应超时。 功率接收器在响应超时时间 t_responsetimeout 之前未检测到对其简单查询数据包的回复,推测是因为功率发射器未正确接收到该数据包。

4、来自状态 14 的转移

在状态 14,功率发射器发送适当的响应模式,以回复一个简单查询数据包。以下转移可能从此状态发生。

ACK:功率发射器已同意切换到协议的重新协商阶段。

ATN:功率发射器已请求功率接收器的注意,例如,因为它有数据包要发送。功率接收器和功率发射器均应保持在功率传输阶段。

PRx: response-timeout:功率接收器在响应超时时间前未检测到回复,推测是因为功率发射器未正确接收到 NEGO 数据包。

注意:如果功率接收器未收到 ACK 响应模式,则功率发射器和功率接收器的操作状态之间会发生不匹配。当功率接收器发送其下一个 CE 或 RP 数据包时,它们会自动重新同步其状态,因为如协商阶段所定义,后两种数据包都会导致重新协商阶段中止。

NAK/ND:功率接收器应忽略这些响应模式并保持在功率传输阶段。

5、来自状态 15 的转移

在状态 15,功率发射器发送适当的数据包,以回复一个数据请求数据包。以下转换可能从此状态发生。

ADC/ADT/CAP:功率发射器已用一个其自行选择的适当数据包回复了 DSR 数据包。

NULL:功率发射器已返回 NULL 数据包,因为它不支持所请求的数据包。

注意:NULL 数据包的主要用途是回复 DSR/ack 数据包(功率接收器用此数据包确认关闭功率发射器到功率接收器数据流),此时功率发射器没有更多数据要发送。

PROP:功率发射器已发送响应它能识别的 PROP 数据包。

PRx: response-timeout:功率接收器在响应超时时间前未检测到对其数据请求数据包的回复,推测是因为功率发射器未正确接收到该数据包。

PRx: reserved:功率接收器已收到一个保留的数据包。它应忽略此数据包的内容。

6、示例

(1)、基线协议

上图提供了基线协议功率传输阶段的一个通信序列示例。圆圈中的数字指向该图中定义的状态。

矩形表示从这些状态发送的数据包。序列从状态 11 开始,功率接收器在此状态下发送一个 CE 数据包。接下来,系统进入状态 12,功率发射器在此状态下根据需要调整其线圈电流。当调整准备就绪时,系统进入状态 11,该过程可以重复。功率接收器发送的大多数数据包由 CE 数据包组成。至少每隔几秒,功率接收器会发送一个 RP8 数据包,完成后返回状态 11。在序列末尾,功率接收器开始发送 EPT/cc 数据包,表示它已准备好结束功率传输。

(2)、扩展协议

上图提供了扩展协议功率传输阶段的一个通信序列示例。在最上面两行,发生了初始的两点功率等级校准;详细信息请参阅Qi Specification Foreign Object Detection。在位置 (a),初始校准准备就绪。随后,功率接收器发送 CE 和 RP/0 数据包以维持功率传输,直到它准备好结束功率传输,此时它开始发送 EPT/cc 数据包。

(二)、数据传输流

数据流用于将应用层数据从数据流发起方传递到数据流响应方。Qi 规范 1.3 版本支持两种应用:

认证,如 Qi Specification Authentication Protocol 中所定义。

专有(通用)应用。

1、数据传输流格式

功率接收器和功率发射器可以通过数据流传递应用层数据。数据流由具有以下结构的一系列数据包组成:

(1)、一个打开数据流的初始 ADC 数据包。

数据流中包含的消息类型。

数据流中的数据字节数。

(2)、包含实际消息的一系列 ADT 数据包。

(3)、一个关闭数据流的最终 ADC/end 数据包。

注意:其他数据包(如 CE 数据包)可以与数据流的数据包交织在一起。这些数据包不属于数据流的一部分。

注意:数据流中的数据字节数最大限制为 2047 字节。

一个功率发射器------以及隐含地一个功率接收器------在同一时间最多只能打开一个传出数据流和一个传入数据流。在确认了初始的 ADC 数据包并接收到第一个 ADT 数据包后,数据流的接收方应认为该数据流处于打开状态,直到出现以下情况之一:

(1)、它已对最终的关闭 ADC 数据包发送了 ACK 响应,或

(2)、数据流中的下一个 ADT 或 ADC 数据包发生超时。

数据流发起方可以在发送完打开 ADC 数据包中所指示的数据字节数之前,通过发送 ADC/end 提前关闭数据流。在这种情况下,数据流响应方应丢弃在数据流中收到的所有数据字节。

注意:数据流发起方可以拒绝打开传入的数据流,直到它关闭了其传出的数据流。

下图显示了两个包含两个 ADT 数据包的专有数据流示例。功率接收器和功率发射器也通信了图中灰色的数据包,但这些数据包不属于数据流的一部分。然而,其中一些数据包支持数据流的持续流动,如下表所示。

注意:在数据流中选择传输的 ADT 数据包大小时,功率发射器和功率接收器应确保不违反 CE 和 RP 数据包的时序要求。

2、数据模型

下图显示了用于将应用层消息从数据流发起方传递到数据流响应方的典型分层架构。该架构包括一个提供专门功能(如认证)的应用层,以及一个提供消息通信手段的传输层。

应用层消息从数据流发起方传输到数据流响应方的典型过程如下:

(1)、数据流发起方的应用层创建消息并将其存储在缓冲区中。

(2)、应用层将其缓冲区中的消息提交给传输层。

(3)、传输层将消息存储在其本地缓冲区中。

(4)、传输层尝试使用数据流将消息发送给数据流响应方。

传输层可以根据需要重传数据流中的任何一个数据包,以处理通信错误或数据流响应方报告的错误。它应将重传次数限制在最多四次。此外,它应向应用层反馈消息是否成功传输。

(5)、当数据流发起方关闭数据流时,数据流响应方的传输层认为消息接收完整,并将其转发给其应用层。

传输层应提供 67 字节或更大的缓冲区大小。

3、ADT 奇/偶头机制

为确保数据流的完整性,功率发射器应使用 ACK 响应模式确认正确接收到数据流中的所有 ADT 数据包。功率接收器应使用 DSR/ack 数据包达到相同目的。ADT 数据包及其确认都可能因功率信号上的噪声而丢失。例如,在传输数据包或响应模式期间发生的突然负载变化可能导致功率信号变化,从而阻碍通信。为了帮助系统从此类通信错误中恢复,数据流中的 ADT 数据包交替使用奇头和偶头。如果接收方连续看到两个或更多具有相同头部的 ADT 数据包,它就知道由于通信错误发生了重传。

下图的状态图针对功率接收器到功率发射器数据流说明了此机制。

注意:从起始状态到 n = 0 状态的 ACK 转换代表了对打开数据流的 ADC 数据包的确认。

图中的变量 n 和 m 表示要发送或接收的数据流中下一个 ADT 数据包的序列号。功率发射器和功率接收器不共享这些变量;各自持有自己的副本。具体而言:

在功率接收器中,变量 n 表示要发送的下一个 ADT 数据包的序列号,

在功率发射器中,变量 n 表示要接收的下一个 ADT 数据包的序列号。

同样地,在功率发射器中,变量 m 表示要发送的下一个 ADT 数据包的序列号,

在功率接收器中,变量 m 表示要接收的下一个 ADT 数据包的序列号。

通信错误可能导致功率接收器和功率发射器的变量值不同(例如,功率发射器的变量 n 值可能比功率接收器的变量 n 值大 1)。奇/偶头机制使功率发射器和功率接收器能够将其变量恢复为相同的值。

(1)、来自蓝色偶状态的转移

在蓝色偶状态,功率接收器发送下一个偶头 ADT 数据包。以下转移可能从此状态发生。

注意:蓝色偶状态对应于状态 11。虚线部分代表了从状态 11 可能发生的其他转移。例如,传输 CE 数据包就是这样一个转移。

注意:数据流中的第一个 ADT 数据包使用偶头(n = 0)。

ADT(even):功率接收器已在其打开的数据流中发送了第 n 个偶头 ADT 数据包。

注意:如果功率发射器未正确接收到 ADT 数据包(例如由于通信错误),它不会执行该转移。此时,功率发射器和功率接收器之间的同步丢失。下面的示例显示了基于奇/偶机制的纠正措施如何恢复同步。

PTx: ADT(odd):功率发射器已收到一个奇头 ADT 数据包。

注意:如果功率接收器因通信错误未收到对上一个偶头 ADT 数据包的 ACK,功率发射器可能在此状态下收到奇头 ADT 数据包。它应丢弃先前收到的奇头数据包中的数据,用当前奇头数据包中收到的数据替换。

(2)、来自蓝色奇状态的转移

与蓝色偶状态相同,但将偶和奇互换。

(3)、来自黑色偶状态的转移

在黑色偶状态,功率发射器发送适当的响应模式,以回复传入的 ADT 数据包。以下转移可能从此状态发生。

注意:黑色"偶"状态对应于的状态 13。

ACK:功率发射器已确认正确接收到偶头 ADT 数据包。

ATN:功率发射器已请求通信许可,因为它有数据包要发送。

注意:发送 ATN 响应模式会导致功率接收器稍后重新发送其偶头 ADT 数据包,因为它没有收到 ACK。

NAK:功率发射器已表示它无法处理该 ADT 数据包。

注意:如果功率发射器因通信错误未正确接收到 ADT 数据包,它不应发送响应。

PRx: response-timeout:功率接收器在响应超时时间 t_responsetimeout 前未检测到响应模式。

(4)、来自黑色奇状态的转移

与黑色偶状态相同,但将偶和奇互换。

++n states:

功率发射器和功率接收器将其局部变量 n 加一,并进入下一个状态。

--n 状态:

如果 n=0,功率发射器应丢弃从传入数据流接收到的所有数据,关闭该数据流,并发送 ND 响应模式。

否则,功率发射器将其局部变量 n 减一,并进入下一个状态。

注意:从起始状态到 m = 0 状态的 DSR/ack 转换代表了对打开数据流的 ADC 数据包的确认。

(5)、来自灰色偶状态的转移

在灰色偶状态,功率发射器发送下一个偶头 ADT 数据包。以下转移可能从此状态发生。

注意:灰色偶状态对应于状态 15。虚线部分代表了功率发射器已发送 ADT 以外的其他数据包;详细信息请参见状态 15。

注意:数据流中的第一个 ADT 数据包使用偶头(m = 0)。

ADT(even):功率发射器已在其打开的数据流中发送了第 m 个偶头 ADT 数据包。

注意:功率发射器发送此数据包是为了响应来自蓝色奇状态的功率接收器的 DSR/ack 数据包,或者为了响应来自蓝色偶状态的 DSR/poll 数据包。

注意:如果功率接收器未正确接收到 ADT 数据包(例如由于通信错误),它不会执行该转移。此时,功率发射器和功率接收器之间的同步丢失。下面的示例显示了基于奇/偶机制的纠正措施如何恢复同步。

PRx: ADT(odd):功率接收器已收到一个奇头 ADT 数据包。

注意:如果功率接收器因通信错误未收到对先前 DSR/ack 数据包的回复,功率接收器可能在此状态下收到奇头 ADT 数据包。它应丢弃先前收到的奇头数据包中的数据,用当前奇头数据包中收到的数据替换。

Response-timeout------仅限功率接收器:功率接收器在响应超时时间 t_response 前未检测到 ADT 数据包。

(6)、来自灰色奇状态的转移

与灰色偶状态相同,但将偶和奇互换。

(7)、来自蓝色偶状态的转移

在蓝色偶状态,功率接收器发送适当的 DSR 数据包,以回复传入的 ADT 数据包。以下转移可能从此状态发生。

注意:蓝色偶状态对应于状态 11。虚线部分代表了从状态 11 可能发生的其他转移。例如,传输 CE 数据包就是这样一个转移。

DSR/ack:功率接收器已确认正确接收到最后一个 ADT 数据包或 ADC 数据包。

注意:第一个 DSR/ack 数据包确认了打开数据流的 ADC 数据包。

DSR/nak:功率接收器已表示它无法处理最后一个接收到的 ADT 数据包。

DSR/poll:功率接收器已邀请功率发射器发送一个数据包。

注意:当功率接收器在等待接收功率发射器对先前 DSR 数据包的回复时发生超时后,应发送 DSR/poll 数据包。

(8)、来自蓝色奇状态的转移

与蓝色偶状态相同,但将偶和奇互换。

++m 状态

功率发射器和功率接收器将其局部变量 m 加一,并进入下一个状态。

--m 状态

如果 m = 0 ,功率接收器应丢弃从传入数据流接收到的所有数据,关闭该数据流,并发送 DSR/nd 数据包。

否则,功率接收器将其局部变量 m 减一,并进入下一个状态。

4、示例

(1)、专有的功率接收器到功率发射器数据流

第一个示例包含一个 8 字节的专有功率接收器到功率发射器数据流,其中包含两个 ADT 数据包。

为了展示重新同步机制的工作原理,位置 (b) 和 (d) 的红叉表示未正确接收的数据包。

注意:上图在数据流打开期间显示了带有偶和奇的状态 11、12 和 13。可以根据其颜色编码确定一个偶或奇状态是状态 11、12 还是 13。

当功率接收器打开数据流时,功率发射器和功率接收器都将它们的局部变量 n 初始化为零。

在转移 (a),功率接收器传输流中的第一个 ADT 数据包。

在转移 (b),功率发射器确认了偶 ADT 数据包并将其局部变量 n 加一。然而,ACK 响应模式丢失,导致功率发射器和功率接收器的状态(以及它们的 n 值)失去同步。

在转移 ©,功率发射器检测到功率接收器重传了先前的 ADT 数据包,因为它在处于奇状态时收到了一个偶头 ADT 数据包。因此,它将 n 减一并回到黑色偶状态,从那里确认重传的 ADT 数据包。这恢复了与功率接收器状态(以及 n 值)的同步。

同步一直保持到下一个通信错误,即转移 (d) 处,功率接收器的 ADT 数据包丢失。

这次没有发生同步丢失,因为丢失的 ADT 数据包也导致在位置 (e) 处没有响应(响应超时)。

在位置 (f),功率发射器对来自功率接收器的奇 ADT 数据包回复 NAK,推测是因为它繁忙。

注意:功率发射器正确接收了奇 ADT,但它很忙,无法处理其内容。如果功率发射器太忙而无法接收数据包,它应保持沉默,直到它准备好再次接收数据包。功率接收器可以按照位置 (d) 和 (e) 所示的方式解决此情况。

在经过一段适当的延迟(期间功率接收器发送了一些 CE 数据包以及一个 RP/0 数据包)后,功率接收器在位置 (g) 再次重新发送奇 ADT 数据包。从那个位置开始,数据流在没有进一步通信错误或延迟的情况下成功完成。

注意:由功率接收器决定延迟的长度。如果它重试发送数据包的速度太快,可能会发现功率发射器多次忽略或 NAK 其 ADT 数据包。

(2)、专有的功率发射器到功率接收器数据流

第二个示例包含一个 9 字节的专有功率发射器到功率接收器数据流,其中包含三个 ADT 数据包。与前面的示例类似,当功率发射器打开数据流时,功率发射器和功率接收器都将它们的局部变量 m 初始化为零。

注意:下图在数据流打开期间显示了带有偶和奇的状态 11、12、13 和 15。可以根据其颜色编码确定一个偶或奇状态是状态 11、12、13 还是 15。

在转移 (a),功率发射器传输流中的第一个 ADT 数据包。

功率接收器的响应在位置 (b) 丢失,导致功率发射器和功率接收器状态失去同步。m 值也失去同步,因为功率接收器在确认了偶 ADT 数据包后将其 m 值加一,而功率发射器由于未收到确认而没有这样做。

在转移 ( c),功率接收器发送一个 DSR/poll 数据包,因为它没有收到对 DSR/ack 数据包的响应。此 DSR/poll 数据包邀请功率发射器再次发送其 ADT/偶数据包。

在转移 (d),功率接收器在奇状态下收到了先前的(偶头)ADT 数据包。因此,它将其局部变量 m 减一并回到蓝色偶状态。这恢复了与功率发射器状态(以及其 m 值)的重新同步。

在转移 (e),功率发射器收到确认并继续处理流中的下一个(奇头)ADT 数据包。在转移 (f),下一个 ADT 数据包丢失,但由于功率接收器通过响应超时转换进入奇状态,因此没有发生去同步。

在转移 (g),功率接收器通过发送 DSR/poll 数据包使功率发射器能够继续数据流,从而使功率发射器能够重新发送丢失的奇头 ADT 数据包。

在转移 (h),功率接收器看到同步仍然正确。

在位置 (i),功率接收器收到最终的偶 ADT 数据包。然而,此时它太忙而无法处理其内容。因此,它延迟其 DSR/nak 数据包,直到在位置 (j) 它再次准备好从功率发射器接收数据包。

功率发射器在位置 (k) 重新发送偶 ADT 数据包,之后数据流成功完成。

(3)、打开数据流时从通信错误中恢复

下图分别显示了功率发射器和功率接收器如何在打开数据流时从通信错误中恢复。对于任一方向的数据流,有两种情况。第一种情况,数据流响应方未收到 ADC/auth 数据包,因此未采取任何行动。第二种情况,确认丢失,数据流响应方不认为数据流已打开。在这两种情况下,数据流发起方都会重新发送其 ADC/auth 数据包------可能需要多次------直到收到数据流响应方已打开数据流的确认。

(4)、关闭数据流时从通信错误中恢复

下图分别显示了功率发射器和功率接收器如何在关闭数据流时从通信错误中恢复。对于任一方向的数据流,有两种情况。第一种情况,数据流响应方未收到 ADC/end 数据包,因此未关闭数据流。第二种情况,数据流的接收方关闭了数据流,但其确认丢失。在这两种情况下,数据流发起方都会重新发送其 ADC/end 数据包------可能需要多次------直到收到数据流响应方已关闭数据流的确认。

注意:尝试关闭一个未打开的数据流不是错误。

(5)、功率发射器繁忙场景

下图显示了在功率发射器到功率接收器数据流中,当功率发射器繁忙并且在收到 DSR 数据包时没有可用数据时可能发生的四个数据包序列。

在序列 (a) 中,功率发射器发送 NULL 数据包,而不是数据流中的下一个偶头 ADT 数据包。功率接收器注意到中断,并在稍后的时间点通过发送 DSR/poll 数据包使功率发射器能够恢复发送 ADT 数据包。功率接收器可以在发送 DSR 数据包之前发送多个 CE、RP 或其他数据包。或者,它可以在发送 DSR 数据包之前等待功率发射器的 ATN 响应模式。

在序列 (b) 中,功率发射器接收并处理了 DSR/ack 数据包,但没有发送响应。功率接收器应将缺失的响应视为通信错误,并通过稍后发送 DSR/poll 数据包来恢复。当功率发射器恢复发送 ADT 数据包(从一个偶头 ADT 数据包开始)时,功率接收器了解到功率发射器确实接收并处理了那个没有响应的 DSR/ack 数据包。

在序列 © 中,功率发射器收到了 DSR/ack 数据包,但没有处理它。功率接收器应将缺失的响应视为通信错误,并通过稍后发送 DSR/poll 数据包来恢复。当功率发射器恢复发送 ADT 数据包(从一个奇头 ADT 数据包开始)时,功率接收器了解到功率发射器没有接收和处理那个没有响应的 DSR/ack 数据包。

在序列 (d) 中,功率发射器收到了 DSR/ack 数据包,但重新发送了奇头 ADT 数据包。这违反了规则。功率接收器应通过丢弃第一个收到的奇头 ADT 数据包中的数据、保留重新发送的奇头 ADT 数据包中的数据、切换回蓝色奇状态、将其 m 值减一并发送 DSR/ack 数据包来从此违规中恢复。

(6)、两个交错的数据流

下图提供了一个 8 字节的功率接收器到功率发射器数据流与一个 6 字节的"功率发射器到功率接收器"数据流交错的示例。

功率接收器在位置 (a) 打开其数据流。

功率发射器在位置 (b) 请求注意,并在功率接收器使用 DSR/poll 数据包使功率发射器能够发言时打开其数据流。

由于功率接收器未收到对其偶 ADT 数据包的确认,它在位置 © 重复此数据包。

在位置 (d),功率发射器没有更多信息要发送,因此它响应功率接收器发送的 DSR/ack 数据包(用于确认功率发射器已关闭其数据流)而回复 NULL 数据包。

(7)、认证

下图提供的示例显示了使用数据流执行认证协议的过程。

注意:为了清晰说明,上图仅显示了与数据流相关的数据包和响应,省略了介于期间的任何数据包。此外,该图没有显示系统所经历的状态,也没有显示作为数据流一部分的所有 ADT 数据包。

认证协议从功率接收器打开一个数据流向功率发射器发 GET_CERTIFICATE 消息开始。在关闭此数据流后,在位置 (a),功率接收器发送一个 DSR/poll 数据包,邀请功率发射器发送其证书链。如果功率发射器此时尚未准备好发送其证书数据,它可以回复一个 NULL 数据包。在这种情况下,功率接收器应在稍后重复其 DSR/poll 数据包。或者,功率接收器可以等待直到功率发射器发送 ATN 响应模式,该模式作为功率接收器发送 DSR/poll 数据包的触发信号。

在此示例中,功率接收器请求功率发射器在单个数据流中发送其证书链。或者,功率接收器可以在单独的数据流中使用多个 GET_CERTIFICATE 消息来分段检索功率发射器的证书链。

当功率发射器正在发送其证书链时,在位置 (b),功率接收器尝试打开一个专有数据流。然而,此功率发射器不支持并发的传出和传入数据流,因此回复 ND。功率发射器已有一个传入和/或传出数据流打开,或者不支持所请求的数据流类型。

因此,功率接收器将其专有消息延迟到位置 ©,即在 NULL 数据包指示功率发射器没有更多数据要发送之后。在专有消息之后,功率接收器继续认证协议并发送 CHALLENGE 消息。随后,它等待功率发射器发送 ATN 响应模式,这表示功率发射器已完成其密码计算。

最后,功率接收器发送 CHALLENGE_AUTH 消息以检索功率发射器的响应。关于认证协议的详细信息,包括如果认证失败应如何继续功率传输的建议,请参阅 Qi Specification Authentication Protocol,。

作为等待 ATN 响应模式的替代方法,功率接收器可以发送 DSR/poll 数据包来检查功率发射器是否已完成计算(只要功率发射器尚未准备好,它就会回复 NULL 数据包)。

(8)、数据传输流控制

在处理数据流时遇到不可恢复的错误的情况下,功率发射器和功率接收器可以发送 ADC/rst 数据包来重置并关闭所有打开的流,并重复发送 ADC/rst 数据包直到收到确认。当发送或接收 ADC/rst 数据包时,功率发射器和功率接收器都应丢弃与其传入和传出数据流相关的所有数据。下图提供了图形化说明。

(三)、功率传输阶段时序

下表概述了适用于功率传输阶段通信和其他操作的时序约束。

*适用于基线协议。

**当功率发射器和/或功率接收器在其 ID 数据包中报告版本 1.2 或更低时,也适用于扩展协议。

† 当功率发射器和功率接收器均在其 ID 数据包中报告版本 1.3 或更高时,适用于扩展协议。

‡ 仅当需要容纳功率发射器发送的数据包时,功率接收器才应使用 t_interval > 350 ms。

§ 对于 RP8 和 RP 数据包,将 t_window + t_offset - n - 0.5 ms 加到最小值上。其中,t_window 和 t_offset 表示 CFG 数据包中提供的窗口大小和窗口偏移值,n 表示数据包中前导码的位数。

¶ 关于协议功率损耗校准部分相关的时序,请参阅 Qi Specification Foreign Object Detection。

1、通用时序约束

接收器应在紧邻的前一个 CE 数据包结束后,延迟 t_delay + t_control 时间后,开始发送下一个数据包的前导码。其中 t_delay 代表功率传输合约中包含的功率控制保持时间。详见下图的说明。

对于紧邻的前一个数据包是任何其他类型的数据包或响应模式时,接收器应在该数据包或响应模式结束后,延迟 t_silent 时间后,开始发送下一个数据包的前导码。

关于定义数据包起始和结束的参考时间,请参见 Qi Specification Communications Physical Layer。

2、控制误差(CE)数据包

接收器应在功率传输阶段开始时,发送第一个 CE 数据包。它应在整个功率传输阶段持续发送 CE 数据包,且连续的 CE 数据包的起始时间间隔为 t_interval。即使在两个 CE 数据包之间接收器切换至重新协商阶段并返回,此 t_interval 约束也同样适用。

关于 CE 数据包时序,适用以下规则:

关于第一个 CE 数据包的发送,在基线协议中,功率传输阶段的参考起始时间是 CFG 数据包的起始时刻;在扩展协议中,参考起始时间是 SRQ/en 数据包的起始时刻。

时间间隔 t_interval 不必是恒定的,可以在限制范围内变化。

即使接收器在两个数据包之间发送了其他类型的数据包,这两个 CE 数据包仍被视为是连续的。

当接收器因通信错误而需要重复发送 SRQ/en 数据包时,它可以违反 CE 数据包的时序约束。

发射器应在时间窗口 t_active 内调整功率等级。该时间窗口起始于 CE 数据包结束后的 t_delay 时刻,其中 t_delay 代表功率传输合约中包含的功率控制保持时间。功率传输控制保持延迟的目的是为通信后线圈电流的稳定提供一个时间窗口。

发射器应从其接收到的最后一个 CE 数据包的起始时刻开始计时,在 t_timeout 时间后移除供电信号。因此,发射器应在每次收到 CE 数据包时,重置与 t_timeout 相关的定时器。

注:t_timeout 是功率传输阶段状态图中所示的comms-loss-timeout转换的一部分。

3、接收功率(RP 和 RP8)数据包

接收器应在功率传输阶段开始时,发送第一个 RP 或 RP8 数据包。它应在整个功率传输阶段持续发送 RP 或 RP8 数据包,且连续的 RP 或 RP8 数据包的起始时间间隔为 t_received。即使在两个 RP/RP8 数据包之间接收器切换至重新协商阶段并返回,此 t_received 约束也同样适用。

关于 RP 和 RP8 数据包的时序,适用以下规则:

关于第一个 RP 数据包的发送,在基线协议中,参考起始时间是 CFG 数据包的起始时刻;在扩展协议中,参考起始时间是 SRQ/en 数据包的起始时刻。

时间间隔 t_received 不必是恒定的,可以在限制范围内变化。

即使接收器在两个数据包之间发送了其他类型的数据包,这两个接收功率数据包仍被视为是连续的。

当接收器因通信错误而需要重复发送 SRQ/en 数据包时,它可以违反 RP 数据包的时序约束。

发射器应从其接收到的最后一个 RP 或 RP8 数据包的起始时刻开始计时,在 t_power 时间后移除供电信号。

注:

发射器应在每次收到 RP 或 RP8 数据包时,重置与 t_power 相关的定时器。

此超时是功率传输阶段状态图中所示的comms-loss-timeout转换的一部分。

接收器应在时间窗口 t_window 内确定其接收功率等级。该时间窗口起始于 RP 或 RP8 数据包开始之前的一个偏移量 t_offset 处,并且不得与紧随其后的数据包的前导码重叠。接收器在其 CFG 数据包中提供了 t_window 和 t_offset 的值。

发射器应在相同的时间窗口内确定其发射功率等级。详见 Qi Specification Foreign Object Detection。

4、终止功率传输(EPT)数据包

无论 EPT 数据包中包含的终止供电代码是什么,发射器均应在该 EPT 数据包结束后的 t_terminate 时间内移除供电信号,并切换至 Ping 阶段的状态 F。在移除供电信号后,发射器应从该 EPT 数据包结束时刻开始,延迟 t_nextping 时间后发起第一次数字 Ping。t_nextping 的值取决于 EPT 数据包中包含的值。

在发送了第一个 EPT 数据包后,只要功率信号仍然存在,接收器就应继续发送 EPT 数据包。

注:连续的 EPT 数据包在其End Power Transfer码字段中可以包含不同的值。

5、简单查询和数据请求数据包

发射器应从简单查询数据包或数据请求数据包结束时刻开始,在 t_response 时间内开始发送其响应。

如果接收器在简单查询或数据请求数据包结束后的 t_response timeout 时间内,未检测到响应模式或数据包的起始,它应假定发射器未收到其数据包。在这种情况下,它应至少重试一次发送其简单查询或数据请求数据包。

6、通信丢失超时(功率发射器)

这是一个复合超时,由 CE 数据包超时值 t_timeout 和 RP 或 RP8 数据包超时值 t_power 组成。

7、动作超时

(1)、收到 RP/0 报文后回复 NAK 对应的降功率规则

发射器可能在回复 NAK 给 RP/0 数据包时,表示其无法再支持已协商的功率等级(例如,因为环境温度升高)。

功率接收器应在收到对 RP/0 数据包的 NAK 响应模式后的 t_nak 时间内降低其功耗。在降低功耗后,接收器应使用 NEGO 数据包请求重新协商,以确定合适的功率等级。在切换到重新协商阶段之前,接收器应通过发送 DSR/poll 数据包,使发射器能够发送其 CAP 数据包。

如果接收器在 t_nak 时间内未能充分降低其功耗,发射器可以移除功率信号。

(2)、响应 ATN 响应后的 DSR 数据包

接收器应在收到对简单查询数据包的 ATN 响应模式后的 t_atn 时间内,发送一个 DSR/poll 数据包。

(3)、跟随 PTx 数据包的下一个 DSR 数据包

如下图所示,功率接收器应在从功率发射器(作为对前一个 DSR 数据包的响应)收到一个数据包后的 t_dsr 时间内,发送一个 DSR 数据包。以下例外情况适用:

功率发射器发送的是 CAP 数据包。在这种情况下,功率接收器可以发送 NEGO 数据包来代替 DSR 数据包。

功率发射器发送的是 NULL 数据包。在这种情况下,功率接收器不必发送 DSR 数据包。

注:下一个 DSR 数据包的目的是对功率发射器的数据包进行确认(ACK)或否定确认(NAK)。

注:当功率发射器有传出的数据流处于打开状态时,它不应以 ATN 响应 RP 数据包。

(4)、响应重新协商请求

功率发射器可以通过在响应 DSR 数据包时提供 CAP 数据包,来请求功率接收器发起重新协商阶段。如果此 CAP 数据包中的可协商负载功率等级 P_L(neg) 小于功率传输合约中的保证负载功率等级 P_L(gtd),即 P_L(neg) < P_L(gtd),则功率接收器应在收到 CAP 数据包后的 t_renegotiate 时间内降低其功耗。在此情况下,它应协商一个新的保证负载功率等级,使得 P_L(gtd) <= P_L(neg),或者发送 EPT/nul 数据包。如果功率接收器没有重新协商新的保证负载功率等级,功率发射器可以降低功率等级或移除功率信号。

8、非法数据包

功率发射器应在收到非法数据包后的 t_terminate 时间内移除功率信号。

9、数据流传输时序

数据流传输的发起者应以 t_dts 的时间间隔发送构成该数据流的数据包。

注:时间间隔 t_dts 不必是恒定的,可以在限制范围内变化。

如果数据流传输的接收者在 t_dstimeout 时间内未收到数据流中的下一个数据包,它应关闭该数据流并丢弃其中收到的所有数据。

七、功率接收器数据包

(一)、Auxiliary Data Control---ADC (0x25; simple query)

ADC数据包用于控制数据流传输。下表定义了ADC数据包的格式。

Request

设置为以下值之一:

0 --- ADC/end --- 关闭发往功率发射器的传出数据流。

2 --- ADC/auth --- 打开发往功率发射器的身份认证数据流。

5 --- ADC/rst --- 复位所有传入和传出的数据流。

注:所请求的动作包括:丢弃所有已从任何已打开的传入数据流中接收到的数据,然后关闭该数据流。同时还包括关闭任何传出数据流,但不发送ADC/end数据包。

0x10...0x1F --- ADC/prop --- 打开发往功率发射器的私有数据流。

注:WPC不管理这些值的使用。因此,功率接收器在使用私有数据流之前应验证功率发射器的类型和制造商。

所有其他值均为保留值,功率接收器不得使用。

Parameter

对于私有(ADC/prop)和身份认证(ADC/auth)数据流:数据流中的字节数。在ADC/end和ADC/rst数据包中,此字段设置为零。

Response Pattern

ACK:功率发射器已成功执行该请求。

NAK:功率发射器未执行该请求。

注:未执行请求的原因示例包括:功率发射器在已打开的传入数据流中已收到一个或多个ADT数据包;功率发射器有一个已打开的传出数据流,并且不支持同时进行传入和传出数据流;功率发射器正忙。

ND:功率发射器不支持所请求的数据流类型。

ATN:功率发射器请求通信权限。

注:如果功率发射器以ATN响应,则表示其未执行该请求。

(二)、Auxiliary Data Transport---ADT (multiple header codes; simple query)

ADT数据包承载在发往功率发射器的数据流中发送的应用层消息。下表定义了辅助ADT数据包的格式。ADT数据包大小从1到7字节可选,每种大小都有奇报头和偶报头两种版本。

Data

由相应的应用层定义。

Response Pattern

ACK:功率发射器已正确处理数据包中的数据。

NAK:功率发射器无法处理数据包中的数据。

注:当功率发射器繁忙或无法缓存数据时,可以使用此响应模式。

ND:功率发射器没有已打开的传入数据流。

ATN:功率发射器请求通信权限。

注:当使用此响应模式时,功率发射器应丢弃数据包中收到的数据。

(三)、Charge Status---CHS (0x05; status update)

CHS数据包提供负载中电池的充电等级。

注:功率接收器发送此数据包是可选的。

Charge Status Value

可为以下值之一:

0...100 --- 满充电等级的百分比。值为100表示电池已充满。

0xFF --- 负载不包含电池,或功率接收器无法获取充电等级数据。

所有其他值均为保留值,功率接收器不得使用。

(四)、Configuration---CFG (0x51; simple query)

CFG数据包提供基本配置数据:

基线协议中管理功率传输的所有参数。

扩展协议中使用的所有FSK通信参数。

功率接收器的额外能力。

功率接收器应将所有保留位设置为ZERO。功率发射器应忽略所有保留位。

Reference Power

注:功率接收器可以报告最高(但不包括)

的接收功率等级。功率接收器的接收功率等级应保持在此最高可报告等级以下,以避免发生误报的FOD事件。在扩展协议的协商阶段,功率接收器可以使用SRQ/rp数据包将参考功率等级重新配置为更高的值。

AI

表示支持(ONE)或不支持(ZERO)身份认证功能。

OB

表示支持(ONE)或不支持(ZERO)带外通信功能。

注:Qi规范1.3版本未定义带外通信通道。

Count

配置阶段中存在的可选数据包的数量。

注:所有可选数据包都计入计数,即使多次出现也是如此。

Window Size

应设置为t_window/4ms。此字段中的值至少为2,即t_window>=8ms。

注:接收功率窗口大小t_window和接收功率窗口偏移t_offset,确定了功率接收器测量其接收功率的时间窗口。这些值是功率传输合约的要素。

Window Offset

应设置为大于 n/8 的整数,其中 n 表示任何RP8或RP数据包中使用的最大前导码位数。

注:功率传输合约中的接收功率窗口偏移 t_offset 等于此字段中的值乘以4ms。

注:11位前导码的窗口偏移至少为2(即 t_offset = 8ms);16位前导码的窗口偏移至少为3(即 t_offset = 12ms);24位前导码的窗口偏移至少为4(即 t_offset = 16ms)。

Neg

表示支持(ONE)或不支持(ZERO)扩展协议。如果Neg位设置为ZERO,则AI、OB、Dup、Buffer Size、Pol和Depth field的所有位也应设置为ZERO。

注:CFG/ep表示Neg位设置为ONE,CFG/bp表示Neg位设置为ZERO。

Pol

FSK极性为正(ZERO)或负(ONE)。

Depth

要使用的FSK调制方式。

注:FSK极性和调制深度是功率传输合约的要素。

Buffer Size

用于接收数据流的传输层缓存的大小,缓存中的字节数等于 16 * 2n ,其中

n 为 Buffer Size 字段中包含的值。

Dup

表示支持(ONE)或不支持(ZERO)同时进行传入和传出数据流。

Response Pattern

ACK:

功率发射器已切换到扩展协议的协商阶段。仅在Neg位设置为ONE时使用。

注:功率接收器仍可决定切换到基线协议的功率传输阶段,而不是切换到协商阶段。

No response:

功率发射器已切换到基线协议的功率传输阶段。

注:即使功率发射器支持扩展协议且功率接收器已将Neg位设置为ONE,功率发射器也可能不响应ACK。

NAK, ND, ATN:

功率发射器不得使用这些响应模式。

注:当功率接收器收到这些响应模式之一时,将切换到基线协议的功率传输阶段。

(五)、Control Error---CE (0x03; power control)

CE数据包提供关于期望功率等级的反馈。

Control Error Value

是一个二进制补码有符号整数值,是功率接收器实际工作点与目标工作点之间偏差的相对度量。

正值表示实际工作点低于目标工作点,请求功率发射器增加功率信号。

负值表示实际工作点高于目标工作点,请求功率发射器降低功率信号。

(六)、Data Stream Response---DSR (0x15; data request)

DSR数据包用于维持来自功率发射器的数据流传输。

Type

设置为以下值之一:

0x00 --- DSR/nak --- 表示最后收到的功率发射器数据包已被拒绝。

0x33 --- DSR/poll --- 邀请功率发射器发送任意数据包。

0x55 --- DSR/nd --- 表示最后收到的功率发射器数据包不是期望的。

0xFF --- DSR/ack --- 确认最后收到的功率发射器数据包已被正确处理。

所有其他值均为保留值,功率接收器不得使用。

Response

功率发射器应以一个数据包回复。

(七)、End Power Transfer---EPT (0x02; power control)

EPT数据包提供停止功率传输的请求及其原因。如果检测到错误情况,功率接收器应发送此数据包并附上适当的原因。

注:EPT数据包被视为功率控制数据包,因为它请求功率发射器将功率水平更改为零。

End Power Transfer Code

请求停止功率传输的原因:

0x00 --- EPT/nul --- 当其他代码均不适用时使用。

0x01 --- EPT/cc --- 充电完成;用于指示电池已充满。

0x02 --- EPT/if --- 内部故障;在遇到内部逻辑错误时使用。

0x03 --- EPT/ot --- 过热;当(例如)电池温度超过限制时使用。

0x04 --- EPT/ov --- 过电压;当电压超过限制时使用。

0x05 --- EPT/oc --- 过电流;当电流超过限制时使用。

0x06 --- EPT/bf --- 电池故障;当电池无法充电时使用。

0x08 --- EPT/nr --- 无响应;当无法达到目标工作点时使用。

0x0A --- EPT/an --- 协商中止;当无法协商出合适的功率传输合约时使用。

0x0B --- EPT/rst --- 重新启动;用于重新启动功率传输。

注:通常,功率发射器在停止功率传输后和重新启动之前会进行异物检测。

0x0C --- EPT/rep --- 重新Ping;用于在指定延迟(重新Ping延迟

t_reping )后重新启动功率传输。功率发射器应抑制与重新启动功率传输相关的、可能分散用户注意力的用户界面事件。

注:功率接收器仅在已验证功率发射器符合Qi规范1.3或更高版本时,才应使用此EPT Code。典型用例是中断功率传输以在功率接收器产品和功率发射器产品之间建立NFC链路。

0x0D --- EPT/nfc --- 检测到NFC标签时使用。

0x0E --- EPT/ptxnfc --- 更多信息请参考Qi-v1.3.3-nfc-tag-protect。

所有其他值均为保留值,功率接收器不得使用。

下表提供了在EPT数据包之后直到下一次数字Ping的延迟时间 t_nextping 。

(八)、Extended Identification---XID (0x81; status update)

XID数据包包含额外的身份标识数据。

ExtendedDeviceIdentifier

提供关于功率接收器身份的额外信息。

(九)、FOD Status---FOD (0x22; simple query)

FOD状态数据包包含可帮助功率发射器在功率传输开始前确定是否存在异物的信息。

功率接收器应将所有保留位设置为ZERO。功率发射器应忽略所有保留位。

Type

设置为以下值之一:

0 --- FOD/qf --- FOD辅助数据字段包含参考品质因数

,四舍五入到最接近的整数。Qi-v1.3.3-fod 定义了如何确定参考品质因数。

1 --- FOD/qf --- FOD辅助数据字段包含参考谐振频率,编码为

,四舍五入到最接近的整数。Qi-v1.3.3-fod 定义了如何确定参考谐振频率。

注:值为零对应35.75 kHz至(但不包括)36.25 kHz范围内的参考谐振频率;值为255对应163.25 kHz至(但不包括)163.75 kHz范围内的参考谐振频率。

所有其他值均为保留值,功率接收器不得使用。

FOD Support Data

取决于类型字段中包含的值。

Response Pattern

Negotiation phase:

ACK:功率发射器认为其工作容积中不太可能存在异物。

NAK:功率发射器认为其工作容积中很可能存在异物。

注:关于如何将多个FOD状态数据包的响应模式组合成一个关于异物存在可能性的最终判断,请参见 Qi-v1.3.3-fod 。

ND:功率发射器不识别该类型值。

ATN:功率发射器不得使用此响应模式。

注:当功率接收器收到此响应模式时,将切换到基线协议的功率传输阶段。

Renegotiation phase:

ND:功率发射器应使用此响应模式。

ACK、NAK和ATN:功率发射器不得使用这些响应模式。

(十)、General Request---GRQ (0x07; data request)

GRQ数据包请求功率发射器以指定的数据包进行响应。

Requested Power Transmitter Data Packet

功率发射器数据包报头之一。

Response

功率发射器应以所请求的数据包进行响应。

注:如果功率发射器不支持所请求的功率发射器数据包,则响应NULL数据包。

(十一)、Identification---ID (0x71; status update)

ID数据包标识功率接收器。

Major Version

应设置为1。

Minor Version

在扩展协议中应设置为3,在基线协议中可设置为1、2或3。

Manufacturer Code

应包含功率接收器制造商向WPC注册的PRMC。

Ext

表示配置阶段中存在(ONE)或不存在(ZERO)XID数据包。

注:ID/x表示Ext位设置为ONE,ID表示Ext位设置为ZERO。

Basic Device Identifier

结合制造商代码,此标识符使多线圈功率发射器能够识别其工作容积中一组功率接收器内的特定功率接收器。为支持此识别功能,基本设备标识符应包含一个20位序列号。为保护用户隐私,功率接收器可动态生成基本标识符。但是,如果功率接收器动态生成此标识符,则在失去功率信号后两秒内不得更改它。

(十二)、Power Control Hold-off---PCH (0x06; status update)

PCH数据包配置接收CE数据包与功率发射器开始调整其线圈电流之间的延迟。参见功率传输阶段时序的 t_delay 。

注:功率接收器发送此数据包是可选的。

Power Control Hold-off Time

应设置为 t_delay/1ms,其中 t_delay 范围为 5ms 至(含) 100 ms。

注:功率接收器和功率发射器应将最后发送或接收的功率控制保持时间 t_delay 存储在功率传输合约中。

(十三)、Proprietary---PROP (multiple headers; multiple types)

Qi规范未定义私有数据包的格式

注:功率接收器发送私有数据包是可选的。WPC不管理这些数据包的使用。因此,功率接收器在使用私有数据包之前应验证功率发射器的类型和制造商。

在配置阶段,功率发射器应将所有私有数据包视为状态更新数据包。

在协商阶段和重新协商阶段,功率发射器应将所有不支持的私有数据包视为简单查询数据包,并以ND响应。

在功率传输阶段,功率发射器应将所有不支持的私有数据包视为状态更新数据包。

(十四)、Received Power---RP8 (0x04; status update)

RP8数据包报告接收功率等级。

注:RP8数据包仅属于基线协议的一部分。

Estimated Received Power Value

应设置为

注:1.0版本的功率接收器在此字段中存储的是整流功率值,而非估计接收功率值。

(十五)、Received Power---RP (0x31; simple query)

RP数据包报告接收功率等级。

注:RP数据包仅属于扩展协议的一部分。

功率接收器应将所有保留位设置为ZERO。功率发射器应忽略所有保留位。

Mode

指示如何解释接收功率值:

0 --- RP/0 --- 正常值。

1 --- RP/1 --- 第一个校准数据点。

2 --- RP/2 --- 额外的校准数据点。

4 --- RP/4 --- 正常值,但抑制响应模式。

注:如果FSK调制对功率接收器将功率信号控制到稳定水平的能力产生不利影响,则功率接收器可使用RP/4数据包。但是,由于RP/4数据包也抑制了功率发射器发送ATN响应模式的能力,功率接收器应尽量避免使用这些数据包。

所有其他值均为保留值,功率接收器不得使用。

Estimated Received Power Value

应设置为

Response Pattern

RP/0数据包:

ACK:功率传输可以在当前等级继续。

NAK:功率接收器应降低其功耗。

ND:功率发射器在功率传输阶段的此阶段不支持此模式。

ATN:功率发射器请求通信权限。

RP/1和RP/2数据包:

ACK:功率发射器已接受该校准数据点。

NAK:功率发射器未接受该校准数据点。

ATN、ND:功率发射器不得使用这些响应模式。功率接收器应将其视为NAK。

所有其他RP数据包(RP/4除外):

ACK和NAK:功率发射器不得使用这些响应模式。

ND:功率发射器在功率传输阶段的此阶段不支持此模式。

ATN:功率发射器请求通信权限。

(十六)、Renegotiate---NEGO (0x09; simple query)

NEGO数据包请求功率发射器进入重新协商阶段。

功率接收器应将所有保留位设置为ZERO。功率发射器应忽略所有保留位。

Response Pattern

ACK:功率发射器已切换到重新协商阶段。

ATN:功率发射器请求通信权限。功率接收器应保持在功率传输阶段。

NAK和ND:功率发射器不得使用这些响应模式。

注:功率接收器忽略这些响应模式并保持在功率传输阶段。

(十七)、Signal Strength---SIG (0x01; status update)

SIG数据包提供耦合度的度量。

Signal Strength Value

应设置为

,四舍五入到最接近的整数,其中:

U 是功率接收器内部一个适当的、可测量的且与耦合相关的量。

注:适当量的示例包括整流电压、开路电压和接收功率等级。

U (max)是 U 的最大期望值。

注:多线圈功率发射器使用信号强度值来选择用于功率传输的最佳线圈或线圈组合。因此,功率接收器应选择 U (max) 值,使得信号强度值在所有情况下都小于256。如果 U > U (max) ,则应设置信号强度值为255。

(十八)、Specific Request---SRQ (0x20; simple query)

SRQ 数据包用于接收端向发射端发送各类专用请求。

Request

下列请求值之一,见下表。

Parameter

特定于每个请求。

Response Pattern

如果请求字段包含一个保留值或一个功率发射端不支持的专有值,则功率发射端应以 ND 响应。

注: 当功率接收端收到任何其他响应模式时,它将中止协商(或重新协商)阶段。

1、SRQ/en---End negotiation: parameter field and responses

Parameter

一个计数,表示功率接收端在协商阶段或重新协商阶段中更改的功率传输合约元素的数量。

Response Pattern

ACK: 功率发射端已成功结束协商阶段,并已切换到扩展协议(Extended Protocol)的功率传输阶段。

NAK: 功率发射端未能成功结束协商阶段。功率发射端和功率接收端都应丢弃对功率传输合约的所有更改,并使用先前的功率传输合约重新开始协商阶段或重新协商阶段。

ND 和 ATN: 功率发射端不得使用这些响应模式。

注: 当功率接收端收到这些响应模式之一时,它将中止协商(或重新协商)阶段。

2、SRQ/fsk---FSK configuration: parameter field and responses

Parameter

应包含所请求的 FSK 调制极性和深度,如下表所示。

Pol

请求的 FSK 极性为正(ZERO)或负(ONE)。

Depth

请求的 FSK 调制深度。已定义的调制深度参见 Qi Specification Communications Physical Layer。

Response Pattern

ACK: 功率发射端已成功更新功率传输合约。

NAK、ND 和 ATN: 功率发射端不得使用这些响应模式。

注: 当功率接收端收到这些响应模式之一时,它将中止协商(或重新协商)阶段。

3、SRQ/gp---Guaranteed Load Power: parameter field and responses

Parameter

应包含所请求的保证负载功率等级,如下表所示。

Requested Load Power

应设置为

,示例:若接收端打算以7 W的目标功率等级运行,则应使用

Response Pattern

ACK:发射端已成功更新功率传输合约。

若请求负载功率等级小于或等于当前的可协商负载功率等级,即

,则发射端应接受该请求。

注:发射端在其CAP数据包中公布其可协商负载功率等级。

NAK:请求负载功率等级过高。发射端未更新功率传输合约。

ND和ATN:发射端不应使用这些响应模式。

注:当接收端收到这些响应模式之一时,将中止协商(或重协商)阶段。

4、SRQ/prop---Proprietary: parameter field and responses

Qi规范未定义SRQ/prop数据包的参数字段格式和响应。

5、SRQ/rcs---Recalibration support: parameter field and responses

Parameter

如下表所示,该字段中的所有位均为保留位。

Response Pattern

ACK:发射端支持在功率传输阶段进行重校准。

注:发射端不应使用此响应模式。该模式保留给Qi规范的未来版本使用。

NAK:发射端不支持重校准。

ND和ATN:发射端不应使用这些响应模式。

注:接收端在收到这些响应模式之一时将中止协商(或重协商)阶段。然而,由于SRQ/rcs在1.2.x版本的Qi规范中代表一个保留的请求值,接收端仍可能收到ND响应模式。为避免向后兼容性问题,接收端因此不应向此类发射端使用SRQ/rcs。

6、 SRQ/rep---Re-ping delay: parameter field and responses

Parameter

应包含新的重Ping延迟,如下表所示。

Re-ping Delay Value

应设置为

,其中

的范围为 200 ms 至(含)12.6 秒(即该字段中的值大于零)。

注:接收端和发射端应将最后一次发送或接收的重Ping延迟

存储在功率传输合约中。

Response Pattern

ACK:发射端已成功更新功率传输合约。

NAK:发射端拒绝了重Ping延迟值,且未更新功率传输合约。拒绝重Ping延迟值的原因包括:

该值无效(即为零);

该值不足以让发射端在执行下一次数字Ping之前完成其预功率FOD测量。

ATN和ND:发射端不应使用这些响应模式。

注:接收端在收到这些响应模式之一时将切换到基线协议的功率传输阶段;但接收端应考虑到符合1.2.x版Power Class 0规范扩展协议的发射端会因不支持此请求而回复ND。

7、SRQ/rp---Reference Power: parameter field and responses

Parameter

应包含新的参考功率等级,如下表所示。

New Reference Power

应设置为

,其中

为接收端预期上报的最高功率等级。

Response Pattern

ACK:发射端已成功更新功率传输合约。

NAK、ND和ATN:发射端不应使用这些响应模式。

注:接收端在收到这些响应模式之一时将中止协商(或重协商)阶段。

8、SRQ/rpr---Received Power reporting: parameter field and responses

Parameter

应设置为 0x31。

注:该值对应RP数据包的报头。

Response Pattern

Negotiation phase

ACK:发射端已成功更新功率传输合约。

ND:参数值不等于0x31。发射端未更新功率传输合约。

NAK和ATN:发射端不应使用这些响应模式。

注:接收端在收到这些响应模式之一时将中止协商(或重协商)阶段;

Renegotiation phase

ND:发射端应使用此响应模式。

ACK、NAK和ATN:发射端不应使用这些响应模式。

(十九)、Wireless Power ID---WPID (0x54, 0x55; simple query)

WPID/hi(0x54)和WPID/lo(0x55)数据包包含无线电源标识符(WPID)的两半部分。关于WPID的用途和使用方法,请参见Qi Specification, Communications Physical Layer。

WPID Segment

提供关于接收端身份的附加信息。WPID/hi数据包包含WPID的24个最高有效位,WPID/lo数据包包含WPID的24个最低有效位。

CRC

应使用CRC-16/AUG-CCITT算法计算。

注:CRC-16-CCITT计算使用多项式

,移位寄存器初始值为0xFFFF。WPID段中的值以最高有效位优先的方式移入该移位寄存器,随后跟随16个ZERO位。例如,WPID段值为0xABCDEF时,CRC值为0x30A8。

Response Pattern

ACK:CRC校验成功。

NAK:CRC校验失败。

ND:发射端不支持无线电源ID功能。

ATN:发射端不应使用此响应模式。

注:接收端在收到此响应模式时将中止协商阶段。

(二十)、保留

在配置阶段,发射端应将所有保留数据包视为状态更新数据包,并忽略其内容。

在协商阶段和重协商阶段,发射端应将所有保留数据包视为简单查询数据包,忽略其内容,并回复ND。

在功率传输阶段,发射端应将所有保留数据包视为状态更新数据包,并忽略其内容。

八、功率发射器数据包

下表列出了所有已定义的发射端数据包。

(一)、Auxiliary Data Control---ADC (0x25)

ADC数据包控制向接收端传输数据流。

Request

设置为以下值之一:

0 --- ADC/end --- 关闭向接收端的传出数据流。

2 --- ADC/auth --- 打开向接收端的认证数据流。

5 --- ADC/rst --- 重置所有传入和传出的数据流。

0x10...0x1F --- ADC/prop --- 打开向接收端的专有数据流。

注:WPC不管理这些值的使用。因此,发射端在使用专有数据流之前应验证接收端的类型和制造商。

所有其他值均为保留值。发射端不得使用这些值。

Parameter

对于专有(ADC/prop)和认证(ADC/auth)数据流:流中的数据字节数。对于所有其他ADC数据包,设置为零。

Next DSR data packet

DSR/ack:接收端已成功执行该请求。

DSR/nak:接收端未执行该请求,因为它已有传人和/或传出的数据流处于打开状态,或因其他原因忙碌。

DSR/nd(打开数据流时):接收端不支持所请求的数据流类型。

DSR/nd(保留的请求值):接收端不支持该请求。

DSR/poll:接收端未收到上一个发射端数据包。

(二)、Auxiliary Data Transport---ADT (multiple header codes)

ADT数据包承载发往接收端的数据流中的应用数据。ADT数据包大小从1到7字节可供选择。每个大小都有奇数报头和偶数报头两种版本。

Next DSR data packet

DSR/ack:接收端已正确处理数据包中的数据。

DSR/nak:接收端已收到上一个发射端数据包,但无法处理其中的数据。

注:接收端可在忙碌或无法缓存数据时使用此响应。

DSR/nd:接收端没有打开的传入数据流。

DSR/poll:接收端未收到上一个发射端数据包。

(三)、Data Not Available---NULL (0x00)

NULL数据包表示发射端没有其他数据包要发送。

(四)、Power Transmitter Capabilities---CAP (0x31)

CAP数据包提供关于发射端能力的信息。

Negotiable Load Power

应设置为

Potential Load Power

应设置为

Dup

支持同时进行传入和传出的数据流(ONE)或不支持(ZERO)。

AR

支持认证功能(ONE)或不支持(ZERO)。

OB

支持带外通信功能(ONE)或不支持(ZERO)。

注:Qi规范1.3版未定义带外通信通道。

Buffer Size

用于接收数据流的传输层缓冲区大小。缓冲区字节数等于16.2n,其中n为Buffer Size字段中的值。该字段的值应大于或等于1(即最小传输层缓冲区大小为32字节)。

注:最小所需缓冲区大小源自最大的可能认证请求。

WPID

支持无线电源ID功能(ONE)或不支持(ZERO)。

NRS

非谐振敏感位,特定于每个发射端设计。参加Qi Specification, Reference Designs。

Next DSR data packet (power transfer phase only)

如果接收端首先发送NEGO数据包,则不适用。

DSR/ack:接收端已将其功率传输合约更新为使用可协商负载功率与合约中已有的保证负载功率两者中的较低值。

DSR/nak、DSR/nd或DSR/poll:接收端不应使用这些数据包。但如果发射端收到这些数据包之一,应回复NULL数据包。

(五)、Power Transmitter Extended Capabilities---XCAP (0x32)

XCAP数据包提供关于发射端能力的附加信息。

在Qi规范1.3.3版中,对XCAP数据包和NFC标签保护的支持是可选的。更多信息请参见Qi Specification NFC Tag Protection。

TPS(Tag Protection Supported)

支持NFC标签保护(ONE)或不支持(ZERO)。

TDE

已执行NFC标签检测(ONE)或未执行(ZERO)。

TDS

NFC标签检测状态应设置为以下值之一:

0 --- 未检测到标签

1 --- 检测到单个标签

2 --- 检测到多个标签,或检测到一个标签和一个NFC移动设备(NMD)

注:3 --- 保留

Next DSR data packet (power transfer phase only)

DSR/ack:接收端已正确处理数据包。

DSR/nak、DSR/nd或DSR/poll:接收端不应使用这些数据包。但如果发射端收到这些数据包之一,应回复NULL数据包。

(六)、Power Transmitter Identification---ID (0x30)

ID数据包标识发射端的制造商。发射端不得在功率传输阶段发送此数据包。

Major Version

应设置为1。

Minor Version

应设置为3。

Manufacturer Code

应包含发射端制造商已在WPC注册的PTMC。

Next DSR data packet (power transfer phase only)

DSR/ack:接收端已正确接收到数据包。

DSR/nak、DSR/nd或DSR/poll:接收端不应使用这些数据包。但如果发射端收到这些数据包之一,应回复NULL数据包。

(七)、Proprietary---PROP (multiple headers)

Qi规范未定义专有数据包的格式。

注:发射端发送专有数据包是可选的。WPC不管理这些数据包的使用。因此,发射端在使用专有数据包之前应验证接收端的类型和制造商。

接收端应对所有不支持的PROP数据包回复DSR/nd数据包。

(八)、Reserved

接收端应对所有保留数据包回复DSR/nd数据包。

九、参考资料

Qi-v1.3.3

相关推荐
前行。,2 个月前
【WPC】Qi-v1.3.3-comms-physical
无线充电·wpc·qi
前行。,2 个月前
【WPC】Qi-v1.3.3-introduction
无线充电·wpc·qi
前行。,2 个月前
【WPC】Qi-v1.3.3-comms-glossary
无线充电·wpc·qi协议
Funing76 个月前
无线充电原理——SS拓扑、LCC-S拓扑、LCC-LCC拓扑
嵌入式硬件·电路分析·无线传输·无线充电