固件烧录

更新时间:2024-08-05 05:47:33下载pdf

本文介绍如何将固件烧录至 THP23-X-D 开发板。

OTA 烧录

OTA 烧录有两种方式:平台 OTA 和本地 OTA。

平台 OTA

平台 OTA 升级步骤如下:

  1. 按照 固件管理,将固件上传至涂鸦开发者平台。
  2. 按照 固件升级,配置固件版本。
  3. 通过 App 触发升级。

本地 OTA

本地 OTA 升级步骤如下:

  1. 在电脑上安装 TFTP 服务器,并将固件放置于 TFTP 服务器的路径下。

  2. 通过 SSH 或者串口方式,登录 THP23-X-D 开发板的终端。

  3. 在开发板终端上,执行固件下载和升级命令。

    固件下载和升级的命令:

    root@SmartGateway:~# cd /tmp && \
    tftp <tftp 服务器 IP 地址> -g -l <固件的文件名> && \
    unpack -f <固件的文件名>
    

    示例:

    root@SmartGateway:~# cd /tmp && \
    tftp 192.168.1.128 -g -l tuyaos_gw_ssd202d_fw_UG_1.0.0.bin && \
    unpack -f tuyaos_gw_ssd202d_fw_UG_1.0.0.bin
    

全量烧录

全量烧录涉及写入整个 Flash,需在 Uboot 模式下进行。烧录前,建议备份设备出厂信息,烧录完成后再恢复。

数据备份

登录 THP23-X-D 开发板的终端,执行 nvram show 命令打印出厂信息,并保存至电脑文本文件。以下的 UUID 和 Authkey 为必选,其余为可选:

  • UUID:授权信息,设备唯一的识别 ID
  • Authkey:授权信息,平台为设备颁发的设备密钥
  • slave_mac1:Wi-Fi 接口的 MAC 地址
  • master_mac:有线接口的 MAC 地址
  • bsn:生产序号

固件烧录

  1. 通过串口连接至 THP23-X-D 开发板,执行 nvram set persist.uboot.enter on && nvram commit 命令,以便允许进入 Uboot 模式。

  2. 断电重启,在重启过程中不断按 Enter 键,以便进入 UBoot 模式。登录密码是 tygw@SSD20x

  3. 设置 UBoot 环境变量,配置板子的 IP 地址 ipaddr 和电脑(TFTP 服务器)的 IP 地址 serverip

  4. 解压缩全量固件的压缩包 tuyaos_gw_ssd202d_fw_PROD_*.tar.gz,将串口烧录的固件(ssd20x_256m_all.img.0ssd20x_256m_all.img.1)放置于 TFTP 服务器的路径下。

  5. 通过网线连接板子和电脑,执行固件下载和烧录命令。

  6. 断电重启。

    烧录命令示例:

    SigmaStar # setenv serverip 192.168.1.128
    SigmaStar # setenv ipaddr 192.168.1.2
    SigmaStar # nand erase.chip
    SigmaStar # tftp 0x21000000 ssd20x_256m_all.img.0
    SigmaStar # nand write 0x21000000 0x0 ${filesize}
    SigmaStar # tftp 0x21000000 ssd20x_256m_all.img.1
    SigmaStar # nand write 0x21000000 0x2d00000 ${filesize}
    

数据恢复

烧录完成后,登录 THP23-X-D 开发板的终端,重新写入出厂信息并重启设备。登录的用户名是 root,密码是 tygw@SSD20x

数据恢复示例:

root@SmartGateway:~# nvram set UUID uuid7faa8a3438d4d2a9
root@SmartGateway:~# nvram set AUTHKEY VpI2WeDQS7KjTRcLBgKNdNScTkr8LCcq
root@SmartGateway:~# nvram set slave_mac1 4ca919e68a60
root@SmartGateway:~# nvram set master_mac 4ca919e68a1c
root@SmartGateway:~# nvram set bsn MCFE21MTS00001
root@SmartGateway:~# nvram commit
root@SmartGateway:~# reboot

调试烧录

为了提高开发效率,在开发调试阶段,直接替换可执行文件即可。步骤如下:

  1. 将应用压缩包 gateway.tar.gz 放置于 TFTP 服务器的路径下。

  2. 通过 SSH 或者串口方式,登录 THP23-X-D 开发板的终端。

  3. 在开发板终端上,执行停止应用、下载压缩包、解压缩、启动应用命令。

    调试烧录示例:

    root@SmartGateway:~# cd /tmp && tftp 192.168.1.128 -gr gateway.tar.gz
    root@SmartGateway:~# /tmp/tuya/tuya_user1/app_stop.sh
    root@SmartGateway:~# cd /tmp && echo "tuya_start_dir=/tmp/tuya/tuya_user1" > /tmp/tuya/start.conf;tar -xf gateway.tar.gz -C /tmp/tuya
    root@SmartGateway:~# /tmp/tuya/tuya_start.sh /tmp/tuya