Skip to main content

OTA 升级操作说明

先上传固件包,再创建升级计划:平台可主动推送任务给在线设备,也可等设备主动拉取;升级结果在固件详情的批次与任务里核对。


1、名词解释​

名词白话解释
OTAOver-The-Air,远程把固件推到设备并升级,不用现场拆机刷包。
固件包要升级的文件(整包或差分)及元数据:产品、版本、签名、下载地址等。
整包完整固件。设备按目标版本升级;定向场景下允许对已是目标版本的设备重推(联调常用)。
差分只含相对「源版本」的增量。设备当前版本必须等于源版本,否则跳过不下发。
产品名称固件绑定的产品模型标识;升级范围按该产品下的设备筛选。
模块名称设备内多模块时区分(如主控 / 通信模组);可空,视设备协议而定。
目标版本升级完成后设备应报到的版本号。
源版本差分包专用:允许打补丁的当前版本(实现字段常叫待升级/源版本)。
签名 / 签名算法上传后自动生成 MD5 或 SHA256,设备下载后校验,防篡改、防损坏。
升级计划 / 批次针对某个固件开的一次「运单」:圈定谁升、怎么推、重试与超时;生成批次号如 B…。
升级任务批次下每一台设备的一条任务(待推送 → 升级中 → 成功/失败等)。
静态升级对当前圈定的设备开一次批次;可立即或定时开始/结束。
动态升级策略持续生效:后续满足条件的设备(或仅新设备)会陆续进入升级。
全部设备该产品下所有网关与直连设备(提示文案以页面为准)。
定向升级手工勾选具体设备,适合灰度、单台联调。
云端主动推送是:平台对在线设备下发 ota.push;否:设备需主动 ota.get 拉任务。
推送速率每分钟最多推多少台,避免 MQTT/设备被打满(千台规模常建议约 60 台/分)。
队列分片设备数较多时按「每片台数」切块入队下发(≥100 台常走 Redis 队列)。
TraceID贯穿下发与设备上报的追踪号,排障时在日志里搜它。

2、OTA 逻辑(先看懂再操作)​

把 OTA 想成寄快递:

  1. 备好包裹:上传固件,绑定产品、版本、签名
  2. 开运单:创建升级计划(静态/动态、全部/定向、推送策略)
  3. 通知设备:主动推送,或等设备来拉取
  4. 设备干活:按 URL 下载 → 校验签名 → 烧录 → 上报进度/版本
  5. 看签收:批次统计、设备列表状态、日志 TraceID

全屏打开 OTA 逻辑图

推荐最短路径(一次性批量):

上传整包固件 → 固件详情 → 新建升级计划 → 静态 + 全部/定向 → 立即执行 + 主动推送 → 看批次成功数


3、入口在哪里​

管理端菜单:OTA 升级管理(固件包列表为主入口;也可从固件「详情」进入批次与任务)。

页面 / 弹窗干什么
固件列表增删改查固件包、打开详情
新增/编辑固件上传文件、选产品、版本与签名
固件详情看升级汇总;管理升级批次 / 升级任务
创建升级计划两步:选择设备 → 升级策略
批次详情设备列表进度 + 批次基础信息/策略只读
日志详情按设备 / TraceID 查 OTA 日志

产品侧:固件「产品名称」只挂网关、直连类产品模型;子设备是否纳入「全部设备」以创建计划时的提示与实现为准(当前全部设备提示为「网关和直连设备」)。


4、边界与注意点​

边界说明
产品绑定固件必须选产品模型;计划只作用于该产品下设备
差分源版本差分包必须填源版本;设备当前版本不符则跳过不下发
整包 + 全部/分组无版本或已是目标版本通常跳过;定向整包可重推已达标设备
主动推送=否平台不下发推送,只等设备拉取;设备需支持 ota.get
定时窗口静态定时:开始距现在至少约 5 分钟、最多 7 天;结束距开始至少 1 小时、最多 30 天(可不设结束)
大批量≥100 台常入队列分片;请设合理推送速率,避免打满 Broker
覆盖已有任务默认关;打开才会覆盖设备上未完成的旧升级任务
动态「仅对新设备」是:主要跟后续新上报版本的设备;否:当前满足条件 + 后续都覆盖
与告警无关OTA 失败不会自动等同于告警规则;需另配监控/告警时请走规则引擎

5、操作步骤​

5.1 固件包列表​

打开 OTA 固件管理:刷新、新增、删除、搜索;表中可看包类型、产品、版本、签名、地址、大小等。

OTA 固件列表

行操作:编辑、删除、详情。

5.2 新增固件​

点「新增」,填写:

  1. 包类型:整包 / 差分
  2. 固件名称、产品名称(必选产品模型)
  3. 模块名称(可选)
  4. 目标版本;若选差分,填写源版本
  5. 签名算法:MD5 / SHA256
  6. 固件文件:选择文件上传;签名与大小自动生成
  7. 描述(可选)→ 保存

支持常见后缀如 .bin / .zip / .tar.gz 等(以页面上传控件为准)。

整包示例如下:

新增固件(整包)

选 差分 时会多出必填的 源版本(设备当前版本须与此一致才会下发):

新增固件(差分 · 含源版本)

5.3 固件详情与新建升级计划​

打开某条固件的「详情」:

  • 顶部:固件元数据(名称、版本、类型、签名等)
  • 汇总卡:总升级设备数、成功、失败、进行中
  • Tab:升级批次 / 升级任务
  • 点 新建升级计划

固件详情

步骤一:选择设备​

  • 升级方式:静态升级 / 动态升级
  • 升级范围:全部设备 / 定向升级
    • 全部:提示将升级该产品下所有网关和直连设备
    • 定向:表格勾选设备后再下一步

创建升级计划 · 选择设备

步骤二:升级策略​

  • 执行时间(静态):立即执行 / 定时执行(定时需填开始、可选结束)
  • 云端主动推送升级:是 / 否
  • 高级策略(按规模调整):
    • 推送速率(台/分钟)
    • 队列分片(台/片)
    • 失败重试间隔与重试次数
    • 升级超时时间(分钟)
    • 覆盖已有任务
    • 动态升级时:是否「仅对新设备生效」

确认后点 确定创建。

立即执行示例如下:

创建升级计划 · 升级策略(立即执行)

选 定时执行 时需配置开始时间(距当前至少约 5 分钟、最多 7 天),结束时间可选(距开始至少 1 小时、最多 30 天;不填表示不强制结束):

创建升级计划 · 升级策略(定时执行)


6、发布后如何核对​

6.1 批次列表与批次详情 · 设备列表​

固件详情 → 升级批次:看批次号、升级方式、范围、成功/失败计数、状态(如已完成)。

进入批次详情 → 升级设备列表:

  • 顶部计数:总数、待推送、已推送、升级中、成功、失败、已取消
  • 每台:当前版本、目标版本、状态、状态详情(如 OTA upgrade success, rebooting)
  • 日志:打开该设备 OTA 日志

批次详情 · 升级设备列表

6.2 批次基础信息​

同一弹窗切到 批次基础信息:只读查看批次 ID、方式、范围、状态、开始时间,以及推送/重试/超时等策略快照。

批次详情 · 基础信息

6.3 日志详情​

按时间、设备 ID、TraceID、摘要、结果等排查下发与上报是否对得上。无数据时先确认任务是否已真正下发、设备是否在线并上报。

OTA 日志详情


7、怎么选配置(速查)​

场景建议
同产品全量升一版整包 + 静态 + 全部设备 + 立即 + 主动推送
先灰度几台整包/差分 + 静态 + 定向勾选
夜间窗口升级静态 + 定时执行(设开始/结束)
新接入设备自动跟上动态升级(按需「仅对新设备」)
设备侧自己拉任务主动推送选 否(设备需支持拉取)
带宽/Broker 压力大降低推送速率、增大分片、分批定向
只打补丁且版本链清晰差分并严格核对源版本

下一步​