Commit 78ac8727e2a5bd7a59459effa29f570bb1dc6bb1
Merge branch 'master' of http://120.78.57.84/lee/Protocol
Showing
2 changed files
with
36 additions
and
87 deletions
通讯协议-教育新版-基站部分usb json.md
... | ... | @@ -155,89 +155,28 @@ |
155 | 155 | # 二, 功能协议 |
156 | 156 | |
157 | 157 | ## 2.1 固件升级类协议 |
158 | + | |
158 | 159 | ### 2.1.0 固件升级类的流程: |
159 | -- step1: 上层软件发送固件升级指令信息: | |
160 | +usbjson协议 固件升级类流程:完全沿用现有mqtt模式下的固件升级流程: | |
161 | +- step1:上层软件发送固件升级指令 | |
160 | 162 | - 升级对象(基站,键盘,字库...) |
161 | - - 固件字节数 | |
163 | + - 固件的url地址 | |
162 | 164 | - 固件crc32 |
163 | - - 其他 | |
164 | -- step2: 基站回复表示收到命令,开始为固件升级做准备 | |
165 | -- step3: 基站发送数据申请信息: | |
166 | - - 固件起始位置 | |
167 | - - 固件数据长度 | |
168 | -- step4: 上层软件根据基站申请读取对应数据发送给基站; | |
169 | - - 固件起始地址 | |
170 | - - 固件数据长度 | |
171 | - - 数据数据 | |
172 | -- 重复step3,step4直到基站获取到全部固件数据 | |
173 | -- step5: 基站发送固件升级完成信息,通知上层可以退出固件升级模式 | |
174 | - - 升级对象 | |
175 | - | |
176 | - | |
177 | -### 2.1.1 固件升级协议 | |
178 | -#### 2.1.1.1 setFwUpdateState | |
179 | - | |
180 | -- **功能描述**:固件升级 | |
181 | -- **参数说明** | |
165 | +usbjson模式下,此处的url 无任何用处; | |
166 | +- step2: 基站获取文件长度 | |
167 | + - usbjson 模式下需要补充协议 | |
168 | +- 基站按需获取固件数据段 | |
169 | + - usbjson模式下需要补充协议 | |
170 | +- 基站报告升级完成 | |
182 | 171 | |
183 | -|参数名|类型|限制|是否必填|说明| | |
184 | -|---|---|---|---|---| | |
185 | -|fun|string|-|是|指令名称| | |
186 | -|dataTag|string|-|否|数据包标识,可为空字符串| | |
187 | -|baseSn|string||是|基站的出厂编码| | |
188 | -|data|object|-|是|传送参数的对象| | |
189 | -|+state|string||是|状态<br>"start"-开始升级<br>"stop"-停止升级 | |
190 | -|+partition|string||是|"base_fw" 基站固件 <br> "base_fw_bk" 基站备份固件 <br> "keypad_fw" 键盘固件<br> "front" 字库文件| | |
191 | -|+file len|uint||是|升级固件文件的大小(字节数),10进制数字| | |
192 | -|+version|string||是|待升级的基站固件版本| | |
193 | -|+crc|uint||是|固件CRC校验码,10进制数字| | |
194 | -<!-- |+time|string||是|时间,yyyyMMddHHmmss| | |
195 | -|+verCode|string||是|内部主题校验码,时间+固定key加密| --> | |
196 | 172 | |
197 | -- **示例代码** | |
198 | -```json | |
199 | -{ | |
200 | - "fun":"setFwUpdateState", | |
201 | - "dataTag":"1", | |
202 | - "baseSn":"2024061101", | |
203 | - "data":{ | |
204 | - "state":"start", | |
205 | - "partition":"base_fw", | |
206 | - "file_len":12000, | |
207 | - "version":"1.0.3", | |
208 | - "crc":1429319861 | |
209 | - } | |
210 | -} | |
211 | -``` | |
212 | - | |
213 | -#### 2.1.1.2 fEvtFwUpateState | |
214 | -- **功能描述**:返回升级状态 | |
215 | -- **参数说明** | |
173 | + | |
216 | 174 | |
217 | -|参数名|类型|限制|非空|说明| | |
218 | -|---|---|---|---|---| | |
219 | -|fun|string|-|是|指令名称| | |
220 | -|dataTag|string|-|否|数据包标识,可为空字符串| | |
221 | -|baseSn|string||是|基站的出厂编码| | |
222 | -|data|object|-|是|传送参数的对象| | |
223 | -|+state|string||是|状态<br>"start"-开始升级<br>"stop"-停止升级 <br>"complete"-完成升级 | |
224 | -|+msg|string||否|返回的失败原因 | |
175 | +### 2.1.1 usbjson固件升级补充协议 | |
225 | 176 | |
226 | -- **示例代码** | |
227 | -```json | |
228 | -{ | |
229 | - "fun":"fEvtFwUpateState", | |
230 | - "dataTag":"1", | |
231 | - "baseSn":"2024061101", | |
232 | - "data":{ | |
233 | - "state":"start", | |
234 | - "msg":"error msg" | |
235 | - } | |
236 | -} | |
237 | -``` | |
238 | 177 | |
239 | -#### 2.1.1.3 sEvtReqeustFwData | |
240 | -- **功能描述**:返回升级状态 | |
178 | +#### 2.1.1.1 sEvtReqeustFwData | |
179 | +- **功能描述**:申请固件文件数据段信息 | |
241 | 180 | - **参数说明** |
242 | 181 | |
243 | 182 | |参数名|类型|限制|非空|说明| |
... | ... | @@ -246,8 +185,8 @@ |
246 | 185 | |dataTag|string|-|否|数据包标识,可为空字符串| |
247 | 186 | |baseSn|string||是|基站的出厂编码| |
248 | 187 | |data|object|-|是|传送参数的对象| |
249 | -|+offset|uint||是|数据段的起始地址 | |
250 | -|+len|uint||是|数据段长度 | |
188 | +|+range_start|uint||是|数据段的起始 | |
189 | +|+range_end|uint||是|数据段结束 | |
251 | 190 | |
252 | 191 | - **示例代码** |
253 | 192 | ```json |
... | ... | @@ -256,15 +195,15 @@ |
256 | 195 | "dataTag":"1", |
257 | 196 | "baseSn":"2024061101", |
258 | 197 | "data":{ |
259 | - "offset":0, | |
260 | - "len":5 | |
198 | + "range_start":0, | |
199 | + "range_end":5 | |
261 | 200 | } |
262 | 201 | } |
263 | 202 | ``` |
264 | 203 | |
265 | 204 | |
266 | -#### 2.1.1.4 fwDataInfo | |
267 | -- **功能描述**:返回升级状态 | |
205 | +#### 2.1.1.2 fwDataInfo | |
206 | +- **功能描述**:发送指定数据段信息 | |
268 | 207 | - **参数说明** |
269 | 208 | |
270 | 209 | |参数名|类型|限制|非空|说明| |
... | ... | @@ -273,9 +212,10 @@ |
273 | 212 | |dataTag|string|-|否|数据包标识,可为空字符串| |
274 | 213 | |baseSn|string||是|基站的出厂编码| |
275 | 214 | |data|object|-|是|传送参数的对象| |
276 | -|+offset|uint||是|数据段的起始地址 | |
277 | -|+len|uint||是|数据段长度,指十六进制字节个数 | |
278 | -|+data|string||是|数据段,十六进制字符串 | |
215 | +|+file_len|uint||是|固件文件总长度,指十进制字节个数 | |
216 | +|+range_start|uint||是|数据段的起始 | |
217 | +|+range_end|uint||是|数据段结束 | |
218 | +|+fw_data|string||是|数据段,base64编码,减少数据长度 | |
279 | 219 | - **示例代码** |
280 | 220 | ```json |
281 | 221 | { |
... | ... | @@ -283,9 +223,10 @@ |
283 | 223 | "dataTag":"1", |
284 | 224 | "baseSn":"2024061101", |
285 | 225 | "data":{ |
286 | - "offset":0, | |
287 | - "len":5, | |
288 | - "data": "bc1234ffff" | |
226 | + "file_len":15647, | |
227 | + "range_start":0, | |
228 | + "range_end":5, | |
229 | + "fw_data": "bc1234ffff" | |
289 | 230 | } |
290 | 231 | } |
291 | 232 | ``` | ... | ... |
通讯协议-教育新版-表决器部分.md
... | ... | @@ -2694,6 +2694,14 @@ ACK格式: |
2694 | 2694 | | 1 | CMD | 类型<br> 46:键盘授权 踢出授权| |
2695 | 2695 | | 1 | LEN | 长度 1 | |
2696 | 2696 | | 1 | | |
2697 | +#### 5.5.2.12 设置键盘离线关机时间 | |
2698 | + | |
2699 | +| **字节** | **标识符** | **描述** | | |
2700 | +| --- | --- | --- | | |
2701 | +| 1 | CMD | 类型<br> 47:离线关机时间| | |
2702 | +| 1 | LEN | 长度 2 | | |
2703 | +| 2 | TIME | 关机时间单位 1S <br>键盘内置最小10S 防止设错| | |
2704 | + | |
2697 | 2705 | #### 5.5.2.13 指定答题 |
2698 | 2706 | |
2699 | 2707 | 正常单体的指定答题 | ... | ... |