烧录授权

更新时间:2024-11-20 02:14:51下载pdf

通过涂鸦开发者平台免开发方案成功生成固件,或使用自定义开发方案生成固件并上传到涂鸦开发者平台后,下一步需要对模组进行烧录授权。

方式说明

不同开发板或模组的烧录流程会不一样,本文将详细讲解 3 种不同的烧录授权方式:

准备工作

烧录授权所需工具如下:

第一步:注册 PMS 账号

访问 涂鸦智慧生产管理系统,在账号注册页面选择个人开发者,按照系统指引注册账号。填写相关信息后,您会收到涂鸦发送的审核成功邮件。

第二步:安装生产解决方案

  1. 登录 涂鸦 PMS 系统

  2. 登录成功后,选择 知识库管理 > 软件下载 > 生产解决方案,下载 生产解决方案

    烧录授权
  3. 双击下载的 生产解决方案 安装包,会出现以下警告,单击 更多信息

    烧录授权
  4. 单击 仍要运行

    烧录授权
  5. 根据自身需求,设置程序安装的位置,建议不要有中文路径。

  6. 完成安装后,启动 生产解决方案。登录账号和密码与您创建的涂鸦 PMS 系统的账号和密码相同。

    烧录授权
  7. 单击 云模组

    烧录授权

第三步:下载原厂烧录工具

单击 bk_writer_gui.exe 下载博通(Beken)原厂工具。

方式一:自定义开发烧录授权

此方案适用于 发布阶段,使用自定义开发方式创建的产品,需要先将编译好的固件上传到涂鸦开发者平台,获取生产凭证(Token)后,再使用 云模组 工具进行烧录授权。

模组需要完成授权才能连接云端。授权完成的模组如果需要烧录开发好的固件或更改后的固件,请参考下文 方式三:使用原厂工具烧录

第一步:上传固件

  1. 进入 涂鸦开发者平台,单击已开发的产品,找到 硬件开发

  2. 按照下图指示,单击 新增自定义固件,再填写相关固件信息。

    参数名称 描述
    固件标识名 固件标识名 必须和编译时的 apps 下的工程文件夹的名称保持一致。也就是说,如果这里的固件标识名填写为 wifi_one_light,那么上传的固件应为 SDK 包中 apps 目录下的 wifi_one_light 文件夹中编译所生成的固件。
    Flash 大小 Flash 大小16Mbit,也就是 2M 大小。关于不同模组的 Flash 大小,请参考具体的 联网模组文档
    说明
    • 1 byte(字节) = 8 bits(位)
    • 16 Mbit ÷ 8 = 2M
    没有被 ② 的框圈到的参数 使用默认设置。
    烧录授权
  3. 相关信息填写完成后,单击 上传固件,进入下一步,开始上传固件。进行如下操作之后,单击 保存

    参数名称 描述
    固件版本 需要和编译时输入的版本号对应一致。
    生产固件 上传包含 QIO 的 bin 文件。
    用户区固件 上传包含 UA 的 bin 文件。
    升级固件 上传包含 UG 的 bin 文件。
    运行模式 运行模式选择 QIO
    烧录授权
  4. 单击 进行固件上架

    烧录授权
  5. 选择 不限范围,单击 确认上架

    • 选择 不限范围 是方便个人开发者管理产品。
    • 如果是公司将要量产的产品,请根据您的实际需求设置允许使用范围。
    烧录授权

第二步:获取生产凭证(Token)

将固件上传到涂鸦开发者平台,成功上架后,就可以免费领取激活码。使用激活码通过 云模组 工具进行烧录授权。

  1. 单击 免费领取激活码

    烧录授权
  2. 交付方式选择 生产凭证,单击 提交订单

    • 生产凭证 : 产测授权工具 烧录授权 功能读取的凭证编码,可自动抓取指定数量的授权码,随固件一起逐个写入设备。需上传生产固件至涂鸦开发者平台。

    • 授权码清单 : 写着每一个授权码 UUID 及相关信息的表单,需自行逐个写入设备。

    • 生产凭证-仅授权 : 产测授权工具 独立授权 功能读取的凭证编码,无需固件,即可对设备进行逐个授权。

      烧录授权
  3. 单击 去订单列表页看看

    烧录授权
  4. 确认订单信息是否正确。确认无误后,单击 下载生产凭证

    烧录授权
  5. 解压下载好的生产凭证,打开 Token_information.txt 文件,并复制生产凭证。

  6. 云模组 工具中输入生产凭证,并选择工位 烧录授权

    烧录授权

    如果出现 获取 Token 失败,没有操作权限 的错误,请参考下文 获取 Token 失败,没有操作权限 中的解决办法。

    烧录授权

第三步:烧录授权

  1. 云模组 工具上根据按照箭头的指引,输入生产凭证后按下回车键,选择工位为 烧录授权,并单击 确定

    烧录授权
  2. 按照下表通过 USB 转 UART 工具,把三明治开发板与电脑连接起来。

    USB 转 UART 引脚 三明治 SoC 开发板引脚
    VCC VCC
    GND GND
    TX RX
    RX TX
  3. 选择烧录的串口,单击 运行,然后马上给模组断电再上电或按下复位按键使模组重启,开始对模组进行烧录授权操作。

    • 重启模组时,不要直接将串口工具从电脑上拔掉,避免造成烧录失败。建议拔掉再插上模组与串口工具连接的 VCC 和 GND 的杜邦线。
    • CBU 的三明治 SoC 开发板自带 CH304 串口芯片。在单击 运行 后,按下开发板上 USB 口复位按键即可重启芯片,开始烧录授权。
    烧录授权
  4. (可选)如果在烧录授权过程中出现 进入产测失败 的错误,可能是因为该开发板在上一次烧录授权时已经累计连接到网络超过 15 分钟。设备此时关闭了产测功能,才导致无法进入产测,出现授权失败的情况。解决办法可参考下文 进入产测失败

    烧录授权

方式二:三明治开发板方式烧录授权

本方法仅适用于涂鸦三明治开发板的烧录授权。

在涂鸦开发者平台上,使用免开发方案创建的产品只能通过绑定三明治 SoC 主控板,在三明治开发套件中申请授权码的方式申请到生产凭证(Token)。如果账号没有绑定过三明治 SoC 主控板,只有涂鸦模组,既不能获取到免开发方案产品的 Token,也不能给模组烧录授权免开发方案的固件。

第一步:绑定三明治开发板

  1. 打开 涂鸦开发者平台

  2. 单击 产品 > 开发者工具 > 三明治开发板 > 绑定开发板

  3. 在弹窗中,输入开发板上的 ID 和密码,即可完成绑定。

    烧录授权

第二步:三明治开发板获取 Token

绑定完成后,根据下方图片指示的顺序进行操作,选择要烧录的产品,单击 申请新的授权码,便可成功申请到授权码。

烧录授权

第三步:烧录授权

  1. 复制从涂鸦开发者平台上获取到的授权码后,打开 云模组 工具。

    烧录授权
  2. 参考上文 烧录授权,进行操作。

方式三:使用原厂工具烧录

此方案适用于开发阶段。方案的特点是 授权一次,重复烧录。方案需要确保模组在烧录前已完成授权,且烧录时要注意选择的 Flash 区域,避免程序写入位置错误,导致程序无法正常运行。

在开发过程中,如果每次使用 云模组 工具对模组进行烧录授权,相对来说不太方便。如果模组已经完成授权,使用原厂工具进行烧录授权的方式,不但不会刷掉模组的授权信息,还可以达到 授权一次,重复烧录 的效果。

Beken 平台

使用此方法只能烧录应用区固件,无法给模组进行授权操作。可以使用该方法给已经授权过的模组进行烧录,避免每次更新代码生成固件后都要上传到涂鸦开发者平台使用 云模组 工具进行烧录授权。

  1. 按照下图步骤,在箭头 ① 所指向的烧录对象中,根据实际烧录的模组选择对应的芯片型号,可参考 具体的模组文档,确认模组使用的芯片型号。

  2. 单击箭头 ② 指向的 浏览 按钮,选择成功编译生成的包含了 UA 字样的 bin 文件(该文件就是应用区固件,这里选择的固件就是 wifi_one_light)。

  3. 在箭头 ③ 和箭头 ④ 指向的 起始地址 中填入0x00011000操作长度 中填入 0x00119000

  4. 在箭头 ⑤ 指向的位置选择正确的烧录串口,将箭头 ⑥ 指向的 通讯波特率 调整为最高,可以加快烧录速度。

  5. 单击箭头 ⑦ 指向的 烧录,给模组通断电或复位模组使模组重启,开始烧录。烧录完成后,更改后的代码就成功烧录到模组中。您可以不再使用 云模组 工具对该模组再次进行授权操作。

    烧录授权

常见问题

获取 Token 失败,没有操作权限

输入生产凭证是,出现获取 Token 失败:没有操作权限的提示。

烧录授权

解决办法
如果出现该错误,需要登录 PMS 系统,选择 生产管理 > 工单管理 > 生产凭证确认,输入生产凭证,并单击 确认。之后,回到 云模组 工具中输入该生产凭证,单击 确认,即可开始烧录授权操作。

烧录授权

抢总线失败错误

可能其它软件占用了烧录使用的串口。

解决办法
可以将烧录串口工具软件全部关闭,或直接插拔 USB 转 TTL 串口工具。

获取固件指纹错误

在仅授权的场景下,会出现 获取固件指纹错误 的情况,如下图显示。错误原因是由于模组内烧录的固件名称或版本号与授权的固件名称或版本号不一致。

解决办法

  1. 输入与模组固件名称和版本号一致的生产凭证(Token),再进行授权处理。

  2. 对该模组进行烧录授权处理(非仅授权)。

    烧录授权

进入产测失败

设备累计联网时间超过 15 分钟后,会关闭产测功能。在烧录授权过程中,如果出现 进入产测失败 的错误,并且日志中有 have actived over 15 min, not enter mf_init 字样的日志打印,说明设备关闭了产测功能。

解决办法
您需要先擦除 flash 中的相关数据才能授权成功。

烧录授权
  • 修改代码(通用方式)

    进入产测失败时,可以在 tuya_device.c 文件 pre_device_init() 函数内调用 mf_test_ignore_close_flag() ;函数,忽略产测关闭标志,从而避免因为产测关闭而无法通过授权。

    烧录授权
  • Beken 系列,使用原厂工具擦除相关数据

    打开 Beken 原厂提供的烧录授权 bk_writer 工具,按照下图步骤将箭头 ① 指向的 烧录对象 选项改为对应的芯片。关于模组芯片型号,参考涂鸦文档中心的相关模组规格书。

    三明治 SoC Beken 平台开发板介绍:

    • WB3S: 烧录对象选择 BK7231
    • CBU: 烧录对象选择 BK7231N
    • 起始地址:0x001EE000,操作长度:0x00012000

    选择开发板烧录串口,单击 擦除 Flash 按钮,重启模组,开始擦除内存数据。

    烧录授权