720模块C_SDK版本使用合宙后台进行固件升级指南
720模块支持FOTA远程升级,正常AT版本可以使用AT+UPGRADE来手动进行远程升级。720模块C_SDK版本不支持此命令,现在demo是从FTP服务器下载固件来进行升级的。导致无法使用lua物联云平台进行升级。
本文主要介绍的是720模块C_SDK如何使用lua物联云平台(https://iot.openluat.com) 进行远程升级。
升级方式:与现有demo从FTP服务器下载固件方法类似,需要建立http客户端get或post对应的获取到的获取到的url来下载固件进行升级。
Url需要参数:http://iot.openluat.com/api/site/firmware_upgrade?project_key&imei&device_key=&firmware_name=LUAT_AT_Luat_AirM2M_720H_LTE_AT&version&iccid&pwrcause=0&netsta=0,causetyp=0,rejectcause=0&fatalinfo=0
ProductKey: luat物联云平台中产品信息中的 ProductKey;
例:ProductKey=O9XU3rv3h62wL9vYETGVW5yDwWsoPnTF
imei: AT+CGSN查询的imei号
例:868575021833902 imei=868575021833902
version: AT+VER版本中的版本号
例:AirM2M_720H_V1132_LTE_AT version=1.0.1132
iccid:AT+ICCID查询出来的ICCID号
例:+ICCID: 898600f1121054884508iccid=898600f1121054884508
2、连接http服务器
使用http客户端连接上述生成的url服务器时
2.1 成功会读取数据进行下载
2.2 连接错误会返回对应的HTTP错误码
http错误码,详细错误码参考 https://baike.baidu.com/item/HTTP%E7%8A%B6%E6%80%81%E7%A0%81/5053660?fr=aladdin
2.3 HTTP连接成功,升级失败返回失败原因值{"code": 27, "msg": "\u5df2\u662f\u6700\u65b0\u7248\u672c"}
3 :无效的设备。找不到设备。
17:无权限。
25:无效的项目
26:无效的固件
27:已经是最新版本。通过了前面的检查,但版本号已是最新,或没打开升级开关、没指定imei等。
3、下载数据存储位置
连接http服务器成功后再接收数据是,将读到的数据使用iot_fota_download()函数下载到指定区域。具体可参见C_SDK代码demo_fota.c中FTP服务器下载逻辑
4、固件升级
下载固件完成后调用iot_fota_done()来进行升级,升级时会重启设备进行固件烧写。具体可参见C_SDK代码demo_fota.c中升级逻辑
注意:远程升级文件名需要修改成类似这种LUAT_AT_1.0.1314_Luat_AirM2M_720H_LTE_AT,然后放到服务器上。服务器上的版本号必须比本地版本号要大