OTA固件升级教程-Arduino中文社区 - Powered by Discuz! Archiver

机智宝 发表于 2017-3-1 18:32

OTA固件升级教程

机智云的OTA服务主要提供以下功能:

[*]OTA通知服务,即离线升级。当设备的固件程序有新版本发布,OTA 通知服务会推送升级通知到设备。
[*]OTA透传服务,即在线升级。设备固件程序通过M2M 消息服务透传到设备端。
[*]支持一个产品同时有多个推送
[*]支持wifi/mcu升级
[*]支持定向升级。可指定设备mac地址、区域、旧固件版本进行推送。
[*]支持定时推送。可自定义推送周期及推送时段。
[*]OTA进度统计分析


OTA升级流程Wifi产品OTA服务是在开发者中心网站上实现的,由5部分组成:分别是添加固件、验证固件、添加规则、开始推送、推送完成(查询结果)。OTA版本取决于产品版本及所用的GAgent,下面会分别加以说明。添加固件当推送方式为V4时,
如将设备的模块烧写的固件为:GAgent_00MX3162_04000006_15032717.bin,其中硬件版本号为:00MX3162,软件版本号为:04000006步骤一、进入【服务】固件升级(OTA)模块,点击【创建新固件】https://gizwits.kf5.com/attachments/download/512802/00156e1333433df0b38d620caa59659/步骤二、固件信息填写推送方式可选,同时增加软硬件版本号字段。硬件版本号+软件版本号+固件类型完全匹配视为同一系列固件,OTA升级需在同系列中进行。
[*]版本名称:自定义,由英文、数字及下划线组成
[*]固件类型:支持WiFi/MCU两种方式,选择WiFi
[*]推送方式:支持V4/V4.1两种方式,选择V4
[*]选择固件:上传目标升级固件GAgent_00MX3162_04000006_15041217.bin(wifi为bin文件,mcu为bin/hex文件),升级的固件与烧写的固件软硬件版本号需一致。
[*]硬件版本号:需升级设备当前GAgent硬件版本,由机智云统一分配
[*]软件版本号:需升级设备当前GAgent软件版本,由机智云统一分配
步骤三、点击【保存】,同一系列生成自增长的fid,此时固件为未验证状态注:请确保填写的软硬件版本号正确,否则无法在云端搜索到目标设备进行升级。https://gizwits.kf5.com/attachments/download/512816/00156e13415535f2cd5047fca74adb2/当推送版本为v4.1时,
备注:wifi与mcu类型添加固件流程一致,下面以添加mcu固件为例
当推送方式为V4.1时,步骤一、进入【服务】固件升级(OTA)模块,点击【创建新固件】

https://gizwits.kf5.com/attachments/download/512823/00156e1347cc776b2c995e502963b42/步骤二、固件信息填写硬件版本号+软件版本号前 4 个字节 +固件类型完全匹配为一系列固件,软件版本号后4个字节区分固件版本,OTA升级需在同系列中进行。
[*]版本名称:自定义,由英文、数字及下划线组成
[*]固件类型:支持WiFi/MCU两种方式,选择MCU
[*]推送方式:支持V4V4.1两种方式,选择V4.1
[*]选择固件:上传需要升级的固件(wifi为bin文件,mcu为bin/hex文件)
[*]硬件版本号:目标升级MCU硬件版本(即上传的),必须为8个字节
[*]软件版本号:目标升级MCU软件版本(即上传的),必须为8个字节
步骤三、点击【保存】,此时固件为未验证状态注:同一产品不可添加软硬件版本号完全相同的2个固件。https://gizwits.kf5.com/attachments/download/512827/00156e134ecec5e1ab694e2a646193d/验证固件出于安全性考虑,未验证通过固件不可进行OTA推送。验证固件不区分OTA版本,流程一致。在大批量升级设备之前,需要选择单台设备进行升级,并自行验证升级后的设备稳定性。若无异常,固件变为已验证状态,表示可以进行批量OTA升级。验证固件流程如下:步骤一、再次确认已上传的bin文件及信息填写无误(未验证固件还可编辑)步骤二、准备测试设备并让其连上云端步骤三、进入未验证固件的固件详情页面,点击【验证固件】,出现如下界面:https://gizwits.kf5.com/attachments/download/512835/00156e13558450d6a5cb1fd2cd2cf7c/步骤四、在输入框填写在线测试设备的MAC地址,找到目标设备后进入固件升级倒计时https://gizwits.kf5.com/attachments/download/523970/00156e8d2a27280cd45a2005e3da958/步骤五、测试设备成功升级后,出现再次确认界面。此时,为了谨慎起见,请你对升级成功后的设备做一个稳定性验证,确保升级后的设备能正常工作。如无异常,请手动勾选确认框。https://gizwits.kf5.com/attachments/download/523975/00156e8d2df835db908afb1185cca39/步骤六、点击【完成】按钮。至此验证固件完成,该固件变成已验证状态,不可再次编辑。https://gizwits.kf5.com/attachments/download/523983/00156e8d3114f98f287df7a1087a64e/添加规则通过添加不同的规则可以实现一个产品同时有多个推送请求,并可设置推送周期及时段,个性化定制推送服务。步骤一、在固件列表,点击已验证固件名称,进入【固件推送】页面https://gizwits.kf5.com/attachments/download/523989/00156e8d36d7cb7b4f9c64f26a5033a/步骤二、点击【添加规则】,支持“指定地区”和“指定MAC”两种推送方式设置推送条件1 指定地址:填入目标推送设备区域,如“广东省-广州市”或者指定MAC地址:填入目标推送设备地址,如有多个换行隔开2 指定旧固件版本:选择目标推送设备的旧固件版本3 目标设备:取条件1&2的交集,刷新后显示欲推送的目标设备数4 推送周期(UTC):设置推送规则有效日期5 推送时段(UTC):设置每日推送时段https://gizwits.kf5.com/attachments/download/523995/00156e8d3a4a8b701c40be5a5076527/步骤三、点击【保存】,生成新的规则及唯一的升级流水号。https://gizwits.kf5.com/attachments/download/523999/00156e8d3d844f9fb7a411db7094375/开始推送步骤一、已成功添加规则,点击对应规则的【开始推送】按钮https://gizwits.kf5.com/attachments/download/524001/00156e8d41a81f032195498767a7d42/步骤二、勾选相关协议,再次确认。此时升级请求已推送,对应规则状态会改变。备注:目标设备栏,当前升级成功设备数/目标推送设备数https://gizwits.kf5.com/attachments/download/524005/00156e8d4507d9ab793bf61b6fd1bf9/步骤三、在线设备或离线设备上线后会自动执行OTA升级,升级到最新固件,并將状态上报给云端。推送完成
步骤一、推送完成后,刷新界面,对应规则会变为“已完成”状态https://gizwits.kf5.com/attachments/download/524014/00156e8d49837ce58c864c1e1de0a10/步骤二、查看明细
点击【查看明细】链接,可查询单个设备升级详情,并可以导出当前所有设备升级情况https://gizwits.kf5.com/attachments/download/524020/00156e8d4c84fa82a79f01c7849a1a8/


820799882 发表于 2019-7-16 17:08

可以给arduino升级固件么
页: [1]
查看完整版本: OTA固件升级教程