指令集定义
本文档定义了 A 类接口的所有指令代码及其功能说明。
指令分类
A 类接口用于完成开锁记录及报警信息向云平台汇报,以下是完整的指令集。
指令列表
| 序号 | 指令代码 | 功能说明 | 详细文档链接 |
|---|---|---|---|
| 1 | 0x3001 | 添加用户 | 设备管理 |
| 2 | 0x3002 | 删除用户 | 用户管理 |
| 3 | 0x3003 | 修改用户 | 待补充 |
| 4 | 0x3004 | 恢复出厂设置 | 待补充 |
| 5 | 0x3005 | 开门 | 锁操作 |
| 7 | 0x300C | 清理用户 | 用户管理 |
| 8 | 0x300D | 转移锁 | 待补充 |
| 8.5 | 0x3010 | 设置酒店信息 | 外部文档 |
| 8.6 | 0x3011 | 拉黑卡片 | 外部文档 |
| 9 | 0x3021 | 获取锁密码列表 | 数据同步 |
| 10 | 0x3022 | 获取锁卡片列表 | 待补充 |
| 11 | 0x3023 | 获取锁指纹列表 | 待补充 |
| 12 | 0x3024 | 获取锁人脸列表 | 待补充 |
| 13 | 0x3025 | 获取锁掌静脉列表 | 待补充 |
| 14 | 0x302A | 获取锁设置列表 | 待补充 |
| 15 | 0x3030 | 通用扩展指令 | 扩展功能 |
| 16 | 0x3090 | 获取公钥 | 设备管理 |
| 17 | 0x3091 | 获取私钥和签名密钥 | 设备管理 |
| 18 | 0x30F0 | 校时 | 锁操作 |
| 19 | 0x3040 | 读取星锁状态信息 | 设备管理 |
| 19.5 | 0x3041 | 获取门锁功耗数据 | 设备管理 |
| 20 | 0x30E0 | OTA 升级开始 | 固件升级 |
| 21 | 0x30E1 | OTA 升级过程 | 待补充 |
| 22 | 0x30E2 | OTA 升级确认 | 待补充 |
| 22.5 | 0x30E8 | WiFi OTA 升级 | WiFi固件升级 |
| 23 | 0x30F3 | 退出领锁状态 | 设备管理 |
| 24 | 0x30F4 | 设备配网 | 星图WiFi配网 |
| 25 | 0x30F5 | 配网结果 | 星图WiFi配网 |
| 26 | 0x30F6 | 搜索 2.4G WiFi | 星图WiFi配网 |
| 27 | 0x30F7 | WiFi 搜索结果 | 星图WiFi配网 |
| 28 | 0x30F8 | 获取设备状态 | 星图WiFi配网 |
指令格式
所有指令遵循统一的数据包格式,详见 数据包格式。
请求包格式
包头(4字节) + 包类型(0x01) + 包序号(2字节) + 包标识(1字节) +
数据长度(4字节) + 数据块 + 校验位(2字节)应答包格式
包头(4字节) + 包类型(0x11) + 包序号(2字节) + 包标识(1字节) +
数据长度(4字节) + 数据块 + 校验位(2字节)包序号对应
应答包的序号与请求包的序号必须对应
功能模块分类
核心功能
基础的用户和设备管理功能:
0x3001- 添加用户0x3002- 删除用户0x3003- 修改用户0x3005- 开门0x300C- 清理用户0x30F0- 校时
数据查询
获取锁内各类数据:
0x3021- 获取锁密码列表0x3022- 获取锁卡片列表0x3023- 获取锁指纹列表0x3024- 获取锁人脸列表0x3025- 获取锁掌静脉列表0x302A- 获取锁设置列表0x3041- 获取门锁功耗数据
高级功能
固件升级、网关配网等高级功能:
0x30E0- OTA 升级开始0x30E1- OTA 升级过程0x30E2- OTA 升级确认0x30E8- WiFi OTA 升级0x30F4- 网关配网0x30F5- 网关配网结果0x30F6- 网关搜索 2.4G0x30F7- 网关搜索 2.4G 结果0x30F8- 获取网关状态
扩展功能
通过通用扩展指令实现的功能模块:
0x3030- 通用扩展指令(密码、卡片、指纹、人脸等模块)
使用示例
发送开门指令
c
// 构造开门指令包
struct Packet {
uint32_t header = 0xEF01EE02; // 包头
uint8_t type = 0x01; // 请求包
uint16_t seq = 1; // 序号
uint8_t flag = 0x00; // 明文
uint32_t length = ...; // 数据长度
uint8_t data[] = {
0x30, 0x05, // 指令码 0x3005
... // 其他数据
};
uint16_t crc = ...; // CRC校验
};