一、关于
Zqlink即智秋科技开源版设备间通信协议。
最新Zqlink协议内容请参考https://gitee.com/aizbot/zqlink
二、开源许可
Zqlink遵循BSD 3-Clause开源协议,这意味着您可以自由使用该协议,但需要满足一下几个前提:
- 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议
- 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议
- 未经许可,不可以用开源代码的作者/机构名字和原来产品的名字做市场推广
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
三、数据结构
- Zqlink传输时基本单位是消息帧,消息帧的结构如下:

| 名称 | 描述 |
|---|---|
| STX | 开始标志,帧头 |
| LEN | PAYLOAD数据长度 |
| SEQ | 包序号,可用于检测数据包的丢失,缺省值为0 |
| TID | 发送端ID号或系统ID号(可选) |
| RID | 接收端ID号或组件ID号(可选) |
| CMD | 消息命令 |
| PAYLOAD | 有效载荷,长度取决于LEN |
| CHECKSUM | 从LEN到PAYLOAD的异或校验值 |
- 针对不同的应用场景,Zqlink根据LEN长度的不同和有无ID号分为以下四个版本,以STX开始标志来判断数据包属于哪个版本
(1)版本A1数据格式(短数据 - 无ID):

(2)版本A2数据格式(短数据 - 有ID):

(3)版本A3数据格式(长数据 - 无ID):

(4)版本A4数据格式(长数据 - 有ID):

- 当使用CRC16或者其它校验时,可将其校验值放于PAYLOAD中最后几个字节
四、文件目录结构

- docs: 协议相关文档
- examples: 协议引用举例
- zqlink: 协议源码
本文介绍了Zqlink设备间通信协议的最新内容,包括其遵循的BSD3-Clause开源许可,详细的数据结构,以及不同版本(A1-A4)的特征。同时,还概述了协议的文件目录结构。
5177

被折叠的 条评论
为什么被折叠?



