固件管理

更新时间:2023-01-29 09:27:16下载pdf

本文介绍如何在 涂鸦 IoT 开发平台 上管理自定义固件。

背景信息

为进一步提高客户自助化开发能力,解决客户固件无法进行 OEM 等场景,涂鸦 IoT 开发平台上线了客户固件管理,主要支持平台开发者可以自行管理产品开发中自定义上传的固件,通过控制上架范围方式,完成客户固件产品 OEM/复制/转移的管理需求。

适用范围

本文介绍固件管理相关流程,主要适用于常通过产品 OEM 和复制场景进行产品开发的平台客户。产品 OEM 具体流程,请参考 创建 OEM 产品

名词解释

名词 说明
自定义固件 指平台开发者在涂鸦 IoT 开发平台自定义上传的固件,由开发者自行维护更新。
涂鸦固件 指由涂鸦开发、提供给平台开发者开发时选择的固件,由涂鸦官方维护更新。
厂商固件 指在其它涂鸦平台开发者中通过 OEM 或复制方式创建的产品获得的固件,由固件厂商维护。
固件类型 分为生产固件、用户区固件和升级固件。其中生产固件和用户区固件主要用于涂鸦工厂生产烧录使用,仅针对使用涂鸦生产的产品需上传。
升级固件主要用于设备远程更新(即固件升级 OTA)使用,对所有产品生效。
固件所属者 指具备管理该固件的账号,分为以下两种情况。
  • 情况 1:
    • 在产品开发中进行固件创建,固件归属于当前 PID 所属的账号空间。
    • 在我的产品中创建的固件,归属于当前登录账号的空间。
    • 在客户的产品中创建的固件,归属于当前产品 PID 和固件创建人所属账号空间,其中客户的产品一般来源于 OEM、复制和企业间授权获得的客户产品。
  • 情况 2:在固件管理中进行固件创建,固件归属于当前账号空间。

操作说明

固件管理主要用于管理 客户自定义上传 的固件,包含固件的新增、编辑、删除以及上下架管理。

其中上下架管理,主要用于控制固件版本是否可用,如需要进行设备远程更新(即 OTA 固件升级),则需要在固件管理中完成 新固件版本 的新增和上架后,再前往固件升级页面新建固件升级并选择对应版本,此时即可进行设备远程更新推送。

前提条件

您已经创建了至少一个产品。详情请参考 创建产品

场景 1:客户自定义固件管理

产品开发 页签中,进入开发流程,选择 硬件开发 页面,首先选择云端接入方式和接入硬件,再单击 新增自定义固件 为硬件新增固件。

固件管理

在产品开发中新增自定义固件或固件管理中新建的自定义固件,一共分为三步:

第一步:新增固件(生成固件 key)

  1. 填写固件基本信息,确认并生成固件 key,固件管理中将产生一条记录。其中固件 key 主要用于后续固件升级维护。

    固件管理
  2. (建议选择)进行固件生产属性配置,如需要 涂鸦进行生产烧录固件使用生产凭证(Token)和涂鸦上位机自己烧录,则必须填写生产配置信息。如果您选择的芯片平台不支持开启,代表涂鸦的生产体系暂不支持该芯片平台,您可以通过工单或者在线客户联系涂鸦工程师咨询。

    固件管理

第二步:上传生产固件(新建固件版本)

  1. 完成固件 key 的创建后,开发者需进行固件开发,开发完成后,将新建一个固件版本并上传有效的固件文件(这里主要指生产固件)。单击 新增固件版本 进行新增固件版本并上传固件文件。

    固件管理

    一般在产品开发中,主要上传生产固件和用户区固件。每上传一个固件文件(即新建固件版本),会维护为一个版本。

  2. 在弹出页面,根据提示,完成固件版本的信息填写。

    固件管理

第三步:固件版本上架,设置允许使用范围

固件版本创建完,默认为未上架状态,可以根据流程指导进行固件上架。

默认新建固件版本完成后,固件版本会有一个状态标识,分为两个状态:

固件管理
  • 未上架(默认):表示该固件版本暂时无法使用,期间产品开发暂不支持领取或采购云端授权码,需要完成上架操作后才能领取和购买。
  • 已上架:表示该固件版本可以被产品使用。
    • 若上架生产固件和用户区固件,则允许在产品开发中选择。
    • 若上架升级固件,则允许在固件升级中选择。

单击 更换编辑,可以对固件进行上架或者编辑操作。

固件管理

固件上架功能业务流程说明

固件管理

固件上架主要用于管理共同使用同一个固件 key 的产品,是否支持范围内账号或 PID,使用新的固件版本进行固件升级或产品开发选择。

业务流程说明(见上图):

  1. 账号 A 将自己账号下的包含固件 key1 的产品 PID1,通过复制产品或 OEM 产品至账号 B 和账号 C。
  2. 账号 B 和账号 C 接收复制或 OEM 链接,分别创建产品 PID2 和 PID3,此时两个产品都包含固件 key1 的 v1.0.0 版本。
  3. 当账号 A 对固件 key1 进行新的版本迭代,新建一个固件版本 v1.0.1。
  4. 若允许账号 B 和账号 C 都能使用此版本,则需要进行固件上架,上架范围设置为不限范围,则账号 B 和账号 C 将同时收到可用于固件升级的版本 v1.0.1。
  5. 若只允许账号 B 使用此版本,则上架范围设置为 B 即可,此时只有账号 B 将收到可用于固件升级的版本 v1.0.1。
  6. 以此类推,若固件 key1 被使用到 N 个客户的产品 PID 中,则可根据此范围控制。

上架范围白名单说明

指可以在固件升级和产品开发中选择使用当前上架固件版本的产品 PID 和客户清单,一般指通过产品 OEM 或产品复制方式获取到的固件 key 的企业客户。

上架功能影响范围说明

  • 上架后,在上架范围内,已上传生产固件的版本,使用该固件的产品将收到可选择更新通知,以及支持复制和 OEM。
  • 上架后,在上架范围内,已上传升级固件的版本,使用该固件的产品将收到新固件版本更新通知 。
  • 上架后,固件文件暂时不再支持修改,若需要修改,可停用下架后进行操作。
  • 产品开发中,新建固件版本(上传生产固件)后,必须完成上架操作,才能进行下单生产。

由于上架后,对应固件版本可以被 OEM 客户使用(若产品已发布),所以固件在调试期间建议设置为限制范围,避免有问题的固件被使用,造成不必要的问题。

第四步:查看固件管理列表

完成固件开发后,可以进入 设备管理 > 固件管理 > 我的固件,查看属于当前账号的固件信息。

固件管理

固件是否具备新增固件版本权限,取决于当前账号是否为该固件的所属者。

场景 2:针对有新版本固件,需要进行设备远程升级(即固件升级 OTA)

在实际工作场景中有新固件版本需升级时,开发者可前往 固件管理,进行新增固件版本操作(仅固件所属者可操作)。

基本流程

固件管理

第一步:新增固件版本

仅具备固件所属者权限的登录账号可进行新增固件版本。若新增固件版本按钮置灰,则表示当前账号不是该固件产品的所属人,此时需要联系产品所属人通过空间授权方式进行创建操作。

新建固件版本入口

入口 1(推荐):固件管理 列表页中,选择对应固件进行 新增固件版本 操作。

固件管理

入口 2:固件详情 页面中,选择对应固件进行 新增固件版本 操作。

固件管理

入口 3:固件升级 列表页中,选择对应固件进行 新增固件版本 操作。

固件管理

填写固件版本信息,上传对应固件文件

固件管理 固件管理

第二步:上架固件版本

固件上架时,需勾选对应的上架内容,根据不同上架内容会有不同使用范围:

  • 若选择上架升级固件,则使用该固件的客户,将在固件升级接收可升级的通知提醒,客户可用于固件升级。
  • 若选择上架生产固件,则使用该固件的客户,可在产品开发中第三步 硬件开发 中更新最新版本,用于生产。
    固件管理

第三步:新建固件升级

新固件版本已上架且包含升级固件,此时进入 固件升级 页面,对应产品固件将收到更新通知,单击 新建固件升级,进行设备远程更新规则设置。

固件管理 固件管理

新建规则完成后,我的升级 页签下方会生成一次升级记录,开发者可继续根据流程进行新版本固件设备远程更新验证和发布。

固件管理

场景 3:针对有新版本固件,出厂需要使用最新固件版本的产品

在实际工作环境中,需要用新版本固件作为设备出厂的版本,则需要进入产品开发步骤中,将对应固件配置版本更换为最新版本。

基本流程

固件管理

第一步:同场景 2 第一步

该步骤中,需同时上传生产固件和用户区固件文件。

第二步:同场景 2 第二步

该步骤中,需设置上架内容包含生产固件。

第三步:版本更换

新版本固件上架后,产品列表将接收到新版本更新通知,此时进入 产品开发 > 硬件开发,单击 更新 即可进行版本更换。

  • 产品列表

    固件管理
  • 硬件开发

    固件管理
  • 更新版本

    固件管理
  • 更新成功

    固件管理