1. IOT平台升级指南

一. Lua版本

Lua版本的远程升级包含Core的升级和Lua脚本的升级,升级方式同样可以选择通过合宙官方iot平台升级,或使用自己的服务器来搭建升级服务

  1. IOT平台升级指南

  • 首先明确模块当前使用的Core版本和脚本版本,Core版本可以通过从USBAT口发送ATI查询,也可以通过LuaTask API(rtos.get_version())来获取当前版本,脚本版本可以通过查询全局变量VERSION获取(_G.VERSION)
  • 在这里插入图片描述 我这里打算将Core从V0018升级到V0019,将脚本版本从V1.0.0升级到V2.0.0
    脚本中需要设置全局变量PRODUCT_KEY,因为iot平台升级会用到这个KEY,这个KEY来自于iot平台中的产品信息中的ProductKey,还需要引入lib中的update,调用update.request()来请求升级服务器,根据lib中的注释可知如果我们使用iot平台进行升级,在request函数中可以不传入任何参数。(为了测试方便,在1.0.0的脚本中设置为开机就请求升级,而在2.0.0中为了防止反复升级去掉了升级代码)
PRODUCT_KEY = "XXXXXXXXXXXXXXXX"
require "update"
update.request()

  • 在脚本中添加一段循环打印Core版本和脚本版本的代码,用来观察我们的固件和脚本是否升级
sys.taskInit(function()
	while true do
		log.info("VERSION", rtos.get_version(), _G.VERSION)
		sys.wait(10000)
	end
end)

  • 使用Luatools生成要升级到的版本的远程升级文件,打开Luatools的项目管理窗口,选择我们要升级的版本的Core V0019和脚本V2.0.0,选择升级文件包含Core和脚本,点击生成量产文件。
    在这里插入图片描述

  • 量产文件生成后,默认保存在Luatools目录下
    在这里插入图片描述

  • 将V0019+V2.0.0的远程升级文件上传到iot平台,方法和上传AT远程升级文件一样

  • 将我们V0018+V1.0.0模块重启触发升级代码,重启之后观察打印,确实从V0018+V1.0.0升级到了V0019+V2.0.0
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vn0aSQgD-1625129653157)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20200825135912090_updateinfo.png "updateinfo")]

  • 恭喜你成功从V0018+V1.0.0版本通过合宙iot平台的FOTA的方式升级到了更新的V0019+V2.0.0版本!

2. 自定义服务器升级指南

  • 使用自己的服务器来升级Lua版本类似于使用自己的服务器来升级AT固件,由于使用自己的服务器缺少差分流程,所以需要我们手动进行差分

  • 分别生成V0018+V1.0.0和V0019+V2.0.0的远程升级文件
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DSz6wBW9-1625129653157)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20200825111812109_%E8%BF%9C%E7%A8%8B%E5%8D%87%E7%BA%A7%E6%96%87%E4%BB%B6.png "远程升级文件")]

  • 在doc的差分工具上分别上传V0018+V1.0.0和V0019+V2.0.0生成差分包
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nJ7L9Xqr-1625129653157)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20200825155640042_Lua%E5%B7%AE%E5%88%86.png "Lua差分")]

  • 和AT固件自定义服务器一样的方法,将下载得到的差分包放在公网服务器上,并开启HttpGet服务

  • 参考lib中update.lua中request方法的注释可知,如果要使用自定义服务器的话,需要在第二个url参数中传入自定义服务器上差分包的下载地址

require "update"
update.request(nil,"http://<ipaddress>:8000/ota.bin")

  • 将我们V0018+V1.0.0模块重启触发升级代码,重启之后观察打印,确实从V0018+V1.0.0升级到了V0019+V2.0.0
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JYGVzbEw-1625129653158)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20200825135912090_updateinfo.png "updateinfo")]

  • 从服务器终端也可以看到请求记录

  • 恭喜你成功从V0018+V1.0.0版本通过自己服务器搭建FOTA服务的方式升级到了更新的V0019+V2.0.0版本!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值