Toggle navigation
首页
(current)
问答
文章
话题
商城
登录
注册
Air720X\72XUG\72XUH 系列模块空中升级完全指南
空中全固件升级是Air720的一个重要功能,解决了量产产品在外出现问题无法人工进行固件升级的痛点。本文整理了其他相关一些空中升级的相关文章,加以修改整合,做出一个比较全面的教程以及说明,希望可以解决广大Air720开发者在使用空中升级功能时遇到的各种问题。
> Air720系列空中采用全固件升级的方式,即将完整固件(.bin文件)包放到服务器中,模块通过查询方式得到空中升级的指令,然后下载整个固件包(大约5MB),下载到本地flash内部后,再重启进行更新。如果中途失败会重新进行更新动作,如果下载固件过程不完整,则不会进行更新。所以不需要担心空中升级失败导致的模块变砖问题。 Air720(AT固件)空中升级分为模块端AT指令触发升级和自动升级2种方式。 Air720(Lua固件)空中升级一般是模块开机后,自动连接服务器,请求升级。(本文以720H模块,合宙服务器为例) --------- # **AT固件:** # 1:模块端AT指令触发升级: ## 1.1 合宙IoT平台配置[(点击此处进入)](https://iot.openluat.com/ "点击此处进入") ### 1.1.1登录平台,查询模块是否在自己账户项目下: 客户向合宙采购4G模块时,如果采购人员没有告知合宙这批模块放在iot.openluat.com上的哪个产品下,则合宙会以**采购人的手机号为账号,默认密码888888**,创建一个“Air720X标准模块”的产品,此次采购的所有模块都会放在这个产品下。 ![](/static/editormd/php/../uploads/5_33713.png) ![](/static/editormd/php/../uploads/5_10691.png) ### 1.1.2配置流程 #### 1.1.2.1依次点击进入产品->固件升级->升级配置,页面如下 ![](/static/editormd/php/../uploads/5_80120.png) #### 1.1.2.2以720H模块为例,登录官网[下载最新固件](http://www.openluat.com/Product/4g/Air720H.html "官网") ![](/static/editormd/php/../uploads/5_30096.png) #### 1.1.2.3固件解压后,将bin文件上传至IOT平台 ![](/static/editormd/php/../uploads/5_94831.png) ![](/static/editormd/php/../uploads/5_12302.png) #### 1.1.2.4当全项目升级为否时,需要添加待升级模块IMEI号,步骤如下图所示 ![](/static/editormd/php/../uploads/5_98349.png) 成功添加后: ![](/static/editormd/php/../uploads/5_67942.png) ## 1.2模块端AT指令触发(若确认模块在IoT平台账号项目下,可省略AT+UPGRADE="KEY","XXXX"指令) ### 1.2.1模块端通过USB端口,依次发送以下AT指令,在前一条指令返回正常的情况下,发送下一条,完整流程如下图所示 ![](/static/editormd/php/../uploads/5_48497.png) ![](/static/editormd/php/../uploads/5_31314.png) ### 1.2.2模块端通过串口2,依次发送以下AT指令,在前一条指令返回正常的情况下,发送下一条,完整流程如下 指令触发->下载固件->刷机重启等全部过程如下: ![](/static/editormd/php/../uploads/5_71719.png) ![](/static/editormd/php/../uploads/5_56564.png) ### 注:1.2.1和1.2.2可根据实际情况选择合适的方式,触发指令相同,仅输出有部分区别 ## 1.3升级常见问题和处理办法 ### 1.3.1获取produckey,登录IOT平台->进入项目->产品信息 ![](/static/editormd/php/../uploads/5_66744.png) ### 1.3.2升级异常时,可通过URC上报+UPGRADENID ERROR CODE,或者AT+UPGRADE?指令查询固件下载结果,进一步处理 AT+UPGRADE? 返回+UPGRADE: state, [error code, http respone, fota error cause] OK ![](/static/editormd/php/../uploads/5_63430.png) ![](/static/editormd/php/../uploads/5_14672.png) # 2:自动升级 ## 2.1自动FOTA是模块定期向后台发送升级请求,来获取新固件进行更新的,大致流程如下: ![](/static/editormd/php/../uploads/5_69646.png) # 3:备注 1. 客户可以通过IOT平台查看升级成功数量,失败日志等信息 2. 客户若是使用自己的服务器来进行空中升级,用户在自己服务器放好bin文件,模块端执行 AT+UPGRADE="URL","http://xxxx.bin" AT+UPGRADE 模块只支持通过该URL执行http get获取固件bin 3. 升级过程中若模块断电、重启导致升级失败,可重新升级 4. 模块手动触发升级时,若频繁从同一个版本请求(目前默认一小时内6次,24小时内10次),IOT平台设备状态会自动更改为禁止升级,需要在平台设备列表手动解除 # **Lua固件:**(以720H模块,合宙服务器为例) # 1.登录IOT平台[点此进入]( https://iot.openluat.com/ "点此进入"),创建产品,查询模块是否在本人IOT账户下 ## 1.1若账户下没有产品,可新建产品,并进入产品,获取ProductKey ![](/static/editormd/php/../uploads/5_16868.png) ![](/static/editormd/php/../uploads/5_13096.png) ![](/static/editormd/php/../uploads/5_87808.png) ## 1.2 ![](/static/editormd/php/../uploads/5_59602.png) # 2.设备端代码修改 例如: 设备端本地烧录的旧固件版本信息为: core:Luat_V0019_ASR1802 main.lua中PROJECT:LUAT_IOT_SERVER_UPDATE main.lua中VERSION:1.0.0 模块型号:Air720H 远程升级的新固件版本信息为: core:Luat_V0026_ASR1802 main.lua中PROJECT:LUAT_IOT_SERVER_UPDATE main.lua中VERSION:2.0.0 模块型号:Air720H ## 2.1修改main.lua,配置新固件版本信息,支持升级功能 打开脚本main.lua文件,按照注释,根据自己的需要修改PROJECT、VERSION、PRODUCT_KEY,并加载远程升级功能 ![](/static/editormd/php/../uploads/5_30530.png) ![](/static/editormd/php/../uploads/5_34234.png)
注:设备每次开机,执行update.request()之后,网络准备就绪之后,模块会自动连接服务器,执行升级功能。
# 3.通过Luatools生成升级包 ![](/static/editormd/php/../uploads/5_46526.png) 生成的升级包文件默认存放在:Luatools工具目录下的 “量产文件生成默认文件夹\4G远程升级文件” ![](/static/editormd/php/../uploads/5_78628.png) # 4.IOT平台配置 ## 4.1 ![](/static/editormd/php/../uploads/5_63531.png) ## 4.2添加IMEI(IMEI由模块包装获取,或由trace中获取),配置升级模块 ![](/static/editormd/php/../uploads/5_50322.png) 添加成功后 ![](/static/editormd/php/../uploads/5_75863.png) # 5.运行1.0.0版本软件的模块开机,会自动连接合宙服务器请求升级。 ![](/static/editormd/php/../uploads/5_99175.png) # 注:升级成功后,模块会自动重启,运行新版本,可在IOT平台查询升级日志,确认模块升级成功 ![](/static/editormd/php/../uploads/5_67014.png) # 6.备注 1. 关于空中升级原理,LUA版本空中升级(2G模块),循环升级等问题,参考http://oldask.openluat.com/article/916 2. 空中升级失败,错误码请参照本文AT固件升级介绍中 1.3.2部分 3. 目前模块支持同一账号,不同项目间升级,不支持跨账号升级 4. 如果需要定时执行升级功能等,请参考[https://wiki.openluat.com/doc/luatApi4G/#update](https://wiki.openluat.com/doc/luatApi4G/#update) 5. 72XUG/UH模块空中升级配置,上传固件如果失败,固件名要先重命名,再上传。比如:bin_file_20200529110544_AirM2M_720U_V584_LTE_AT.dfota.bin 固件名要重命名为AirM2M_720U_V584_LTE_AT.dfota.bin。 另外,版本号不需要修改,就用默认的0.0.0 ![](/static/editormd/php/../uploads/5_82529.png) 如有错误,欢迎指正!
发表于 2019-11-20 19:44
阅读 ( 6113 )
分类:
默认分类
0 推荐
收藏
你可能感兴趣的文章
相关问题
0 条评论
请先
登录
后评论
盛夏
7 篇文章
作家榜
»
技术销售Delectate
43 文章
陈夏
26 文章
国梁
24 文章
miuser
21 文章
晨旭
20 文章
朱天华
19 文章
金艺
19 文章
杨奉武
18 文章
×
发送私信
发给:
内容:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!