ZPL ^HS 命令为接收缓冲区中的格式数提供了错误的值
ZPL ^HS command gives incorrect value for number of formats in receive buffer
我正在尝试获取 Zebra 打印机打印缓冲区中剩余的标签格式数量。正在使用 Zatar 云服务 访问打印机。为此,我是:
- 将打印机置于暂停状态
- 调用 ^HS 命令
- 查看响应字符串 1 中的第 5 个字段
根据 ZPL 文档,此字段是
number of formats in receive buffer
但是,这个值似乎不正确。每次我们在打印机暂停时调用它,该字段中的值都会增加。没有其他作业正在发送到打印机。
这是相同的响应输出:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,003,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
然后在短暂的间隔之后:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,026,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
以此类推:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,028,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
003的初始反应是正确的。但是我不明白为什么它会增加到 26 然后增加到 28。
为什么响应没有为接收缓冲区中剩余的格式提供正确的值?
接收缓冲区中格式数量差异的原因是打印机的访问方式。使用 Zatar 云服务而不是任何直接方法,例如 USB。
Zatar 云服务使用称为 Edgebox 的设备与打印机通信。 Edgebox 定期向打印机发送命令,正是这些命令在接收缓冲区中累积。
我正在尝试获取 Zebra 打印机打印缓冲区中剩余的标签格式数量。正在使用 Zatar 云服务 访问打印机。为此,我是:
- 将打印机置于暂停状态
- 调用 ^HS 命令
- 查看响应字符串 1 中的第 5 个字段
根据 ZPL 文档,此字段是
number of formats in receive buffer
但是,这个值似乎不正确。每次我们在打印机暂停时调用它,该字段中的值都会增加。没有其他作业正在发送到打印机。
这是相同的响应输出:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,003,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
然后在短暂的间隔之后:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,026,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
以此类推:
DEVICE_COMPLETED_SUCCESSFULLY - 030,0,1,0834,028,0,0,0,000,0,0,0
000,0,0,0,0,2,6,0,00000001,1,001
1234,0
003的初始反应是正确的。但是我不明白为什么它会增加到 26 然后增加到 28。
为什么响应没有为接收缓冲区中剩余的格式提供正确的值?
接收缓冲区中格式数量差异的原因是打印机的访问方式。使用 Zatar 云服务而不是任何直接方法,例如 USB。
Zatar 云服务使用称为 Edgebox 的设备与打印机通信。 Edgebox 定期向打印机发送命令,正是这些命令在接收缓冲区中累积。