Air724模块远程脚本(补丁)的使用技巧

远程脚本(补丁)的使用技巧

此功能在1.9.5版本固件以后提供。最新固件下载地址: 下载点我
DTU更新程序消耗的流量:

  • DFOTA一般大小,几十KB-几MB不等,还有可能失败变砖
  • 远程补丁大小一般为几百B - 几十KB

使用此功能,用户可以上传一个脚本文件到平台,平台像配置参数一样将脚本植入到DTU,设备启动后运行此脚本,使用此功能后无需升级固件就能更新功能,超轻量。

DTU会检测脚本Hash,只有脚本文件发生变化了才会下载文件

开发调试

使用远程脚本功能前,首先需要在本地调试好用户自己写的脚本。
首先新建一个测试脚本命名为remotedbg.lua(可以自定义文件名),测试脚本内容如下:

require "log"
require "default"

-- 这一句非常重要,名称和文件一致就行。
module("remotedbg", package.seeall)

-- 需要使用deafult里面的其他变量
print(default)
-- 可以使用的有
print(default.getDtu())
print(default.getRecvBuff())
print(default.getWriteBuff())
print(default.getFlowCount())
print(default.getIs8910())
print(default.getLbs)

local dtu = default.getDtu()
log.info("remote-test",dtu.version)

-- 定义全局变量或者函数,在default里面可以用任务调用
function testGlobal()
	print("test")
end
-- 测试任务
sys.timerLoopStart(function()
    log.info("remote-Hellow world:", _G.collectgarbage("count"))-- 打印占用的RAM
    log.info("remote-Hellow DevelopLinK", rtos.get_fs_free_size())-- 打印剩余FALSH,单位Byte
end, 3000)

接下来在default.lua里面启动调试脚本

require "remotedbg"

然后观察运行效果是否和预期一致。

远程下发

  1. 进入DTU管理平台,打开文件列表,上传刚才的调试文件。
  2. 选择要配置的DTU或者分组,选择补丁功能,选择刚才上传的脚本文件,点击确认保存配置。
  3. 设备固件记得删除刚才测试用的require "remotedbg"语句,重新上电。
  4. 上电后设备自动下载脚本文件,并启动,观察效果。
  5. 如果需要更新脚本,重新上传脚本,然后非常重要上传文件后一定需要重新打开DTU或者分组配置,点击补丁,重新选择文件并保存

技巧

在远程脚本里面使用default.lua里面的函数或者变量:


-- 这一句非常重要,名称和文件一致就行。
module("remotedbg", package.seeall)

-- 已经引出的接口有

-- 需要使用deafult里面的其他变量
print(default)

-- 可以使用的有
print(default.getDtu())
print(default.getRecvBuff())
print(default.getWriteBuff())
print(default.getFlowCount())
print(default.getIs8910())
print(default.getLbs)
-- 全局函数
-- function write(uid, str)
print(default.write)
-- function read(uid, idx)
print(default.read)
-- 还可以自定义全局变量或者函数,然后在default的任务或者其他功能里面调用。
-- 定义一个全局函数
function testGlobal()
    print("test")
end

-- 在其他脚本里面调用
remotedbg.testGlobal()


对物联网技术感兴趣请加入我们交流群,欢迎各种技术交流,
QQ群: 830407941
对我们产品感兴趣请查看淘宝:DEVELOPLINK
Air724核心板

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值