OTA简介¶
1.固件升级OTA是什么?¶
A:OTA英文全称是Over-the-Air Technology,即空间下载技术的意思。OTA升级是远程空中对设备WiFi,MCU模块进行固件升级,修复bug或新增功能使您的设备更加完善。
2.什么样的用户才可以进行OTA操作?¶
A:个人注册账号创建的产品;企业注册账号创建的产品,拥有管理员权限的所有用户。
3.产品有什么版本?OTA又有哪些版本?¶
A:产品的版本是由设备接入机智云平台所使用的接入协议决定,目前有v1,v3,v4版本。而设备的ota方式有v1,v3,v4,v4.1。
4.一个完整的OTA升级流程包括哪些操作?¶
A:分别是添加固件、验证固件、添加规则、开始推送、设备升级、推送完成(查询结果)。
5.wifi固件升级与mcu固件升级有什么区别?¶
A:固件升级方式上无区别,仅是硬件上不同升级模块的区分。
创建新固件¶
6.添加固件时,我该如何选择用哪一个推送方式?¶
A:推送方式主要由设备所用的GAgent模块决定。对于v1v3版本系统默认无需选择。对于v4版本产品,您可以从GAgent的软件版本号前四位上区分OTA推送方式。
例如:
GAgent_00MX3162_04000008_15050712.bin
00MX3162为硬件版本号
04000008为软件版本号
(前四位)0400对应v4 OTA版本。
(前四位)0402对应v4.1 OTA版本。
7.v4与v4.1版本OTA有什么区别?¶
A:v4版本是通过验证软件版本号来判定固件是否为同一系列,v4.1是通过验证软硬件版本号来区分是否为同一系列固件。固件属于同一系列的,优先升级至更高版本固件。
8.添加固件时硬件版本号、软件版本号该如何输入?应注意哪些?¶
A:GAgent命名是有固定标准的,名称由GAgent、硬件版本名称、软件版本、发布日期、特殊标记信息三部分组成。软硬件版本号也是固定的。
例如:GAgent_00MX3162_04000008_15050712.bin
00MX3162为硬件版本号
04000008为软件版本号
注意事项: ota version=v4时,填写需升级设备当前旧的软硬件版本号。ota version=v4.1时,填写目标升级新版本的软硬件版本号。请确保填写的软硬件版本号正确,否则无法在云端搜索到目标设备进行升级。
验证固件¶
9.为什么不能直接进行固件推送,而是要先验证固件?(同固件必须进行验证才能大规模推送,这一步是否可以选择跳过)¶
A:因为OTA固件升级是一个具有一定危险性的操作,任何操作失误(包括无意的和恶意的)或者固件问题都有可能造成设备的大面积瘫痪,带来巨大损失。验证固件步骤是为了确保将要大规模推送时的固件是安全可用的,最大限度降低推送风险,防止意外损失的出现,所以此步骤不可跳过。
10.验证固件时,当被验证设备如果不在线,固件验证能否成功?¶
A:不能。验证固件时只支持设备在线验证,即已经激活并成功连上云端。如果被验证固件不在线,则无法推送。若推送后设备掉线,同样会导致固件验证失败。
11.如何定义固件验证成功?¶
A:固件验证成功的标准是在指定时间内设备升级成功,并將新固件版本信息成功上传至云端。
12.验证固件时,推送完成以后,有时候会显示“设备固件推送升级失败,你可以返回重新尝试”,但是实际上已经有设备推送成功了。为什么提示会这样?¶
A:固件验证成功的标准是在指定时间内设备升级成功,并將新固件版本信息成功上传至云端。
可参考固件验证成功的定义,出现这种情况有几种可能:
1)超过网页设定的时间后才升级成功;
2)设备升级成功,但在上传新固件版本信息时出现异常;
3)设备升级后重启,无法连上云端。
13.为什么验证固件的界面会等待很久?如果验证固件的弹出界面长时间没有反应,该如何处理?¶
A:因为OTA的流程较长,需要通知设备端,设备收到通知需要下载固件,并要进行重启,所以验证固件时,推送后的等待时间会较长。 如果推送结果长时间没有反应,可能是某个流程出现问题,需要您手工验证固件是否有下载成功。
14.验证固件从发起验证开始,大概要等待多长时间?¶
A:如果设备在线,应该在1分钟左右。期间需要等待wifi模组的重启。
设备升级¶
15.OTA是如何筛选目标设备的?¶
A:必须条件,
1)设备的pk与所属的产品的pk一致;
2)设备的软硬件版本号和固件的软硬件一致(v4,v4.1);
3)设备在云端有记录;
4)设备不是注销状态;
16.为什么在设备运行状态里能看到某个设备在线, 但是在固件升级里添加规则的时候却没找到这个在线的设备?¶
A:软硬件版本号必须完全匹配,否则云端找不到相应的目标设备。
17.V4版本OTA时,为什么添加了很多固件,但添加规则时检测不到旧固件信息?¶
A:因为对于v4,有同一系列的定义。何为同一系列固件呢?即软硬件版本号及固件类型一致。检测到的旧固件必须是同一系列已验证固件才会显示出来。
18.V3版能升级到V4版吗?¶
A:因协议版本变动较大,暂不支持跨产品版本升级
19.为什么V4版本升级的时候需要创建两个固件,但V41版本只需要创建一个固件?¶
A:因为新注册的设备上线,会请求一次OTA并上传firmware id。如果设备上传的fid在云端中找到对应固件并且固件是已验证的或者有升级请求(ota_req_id) 则设定当前上传的fid。否则为None,无法进行后续升级。创建的第一个固件是为了生成可用的fid,第二个固件才是真正的目标升级固件。
20.按地区的推送时,为什么只出现部分省市可选?¶
A:这个列表是由已上线设备上报数据的地理位置产生的,云端会记录ip地址,并根据ip地址判断设备所在地区。
推送完成¶
21.为什么状态中会出现“已暂停”?¶
A: 此处的“已暂停”并不是通常意义上的停止OTA推送,而是创建的规则有个有效期的设置,若时间周期有效但未到推送时间段则会显示为“已暂停”。
22.固件已推送完成,为什么界面上还显示推送中¶
A:需要点击状态旁边的手动刷新按钮
查看明细¶
23.批量推送所有设备,如果有一部分设备不在线,下面的设备全部是否即包含了在线设备,也包含了离线设备?离线设备什么时候才能升级?¶
A:该界面的全部数量是包含了所有符合条件的已激活设备,包括在线离线设备。离线设备在重启后才能进行升级。
24.批量推送固件时,推送成功率如何计算才准确?¶
A:需要去除离线的设备数,离线设备如果已出厂,是需要设备重启后,获取到有最新版本才有会触发OTA。