This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/CC3220SF-LAUNCHXL:CC3200SF 固件更新是否始终需要.tar 文件?

Guru**** 2589280 points
Other Parts Discussed in Thread: UNIFLASH

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/919888/ccs-cc3220sf-launchxl-do-cc3200sf-firmware-update-always-requires-tar-file

器件型号:CC3220SF-LAUNCHXL
主题中讨论的其他器件:UNIFLASH

工具/软件:Code Composer Studio

大家好、

使用 CC3200SF 固件更新时、必须知道它接受.tar 格式的约束以及所有其他证书文件。

只有通过添加.bin 文件进行更新才能完成此操作、并且证书可能已经可以存储和提取吗?

请提供反馈。

提前感谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    OTA 库仅接受 tar 文件、但您应避免使用该库并运行自己的代码来接受二进制文件并进行安装。 二进制文件的安装基本上只是将内容(文件)写入文件系统。 您可以按照"ota_archive.c"来查看 tar 文件的内容如何存储在文件系统中。

    将二进制文件写入文件系统后、您将需要调用 sl_Stop 并重置 MCU、以便使用新文件(验证更新后仍需要提交)。

    当前、Uniflash 会在创建 tar 文件时(即使已安装证书)将证书添加到 MCU 映像中。

    如果您避免使用安全 OTA 模式、则可以手动操作内容(即在计算机上打开 tar、从 tar 中删除证书文件并更新元数据文件/0/ota.cmd -然后再次创建 tarball)。

    也就是说、OTA 库将为您节省大量开发时间、安全模式非常重要。 我仍然建议使用库、即使是证书文件的开销也是如此。 将来可能会修复将证书添加到 tar 文件的要求。

    BR、

    Kobi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Kobi、

    感谢您的宝贵意见。

    我有一个查询、询问是否刷写映像。

    1) 1)内部或外部存储映像时使用的存储器是什么?

    2)并且我可以在本地 OTA 的示例代码中看到用于映像更新的文件系统(捆绑包)、如果是、则在代码中为映像更新指定了引导加载程序的地址。

        如果您知道、请共享函数名称或特定代码屏幕截图、这将非常有帮助。

    3)对于恢复出厂设置(默认映像)、它们是否会创建接收到的 OTA 文件的任何副本?

     

     

     

    此致、

    Bharat

     

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在外部闪存上)您可以找到以下内容:

    1.出厂复位(如果在编程期间由 uniflash 定义)-此映像永远不会更新。

    操作 MCU 映像-在 SF 器件上、它将被称为"/sys/mcuflashimg.bin。

    在 OTA 期间、当 MCU 映像文件被覆盖(所有 OTA 内容都写入外部闪存)时、NWP 将存储旧映像的临时副本(假设启用了失效防护保护)。

    引导加载程序位于 ROM 中。  启动时、它会将执行映像(在内部闪存上)的内容与外部闪存上的 MCU 映像文件进行比较。

    如果它们不同(即 OTA 下载后)、它会将外部"/sys/mcuflashimg.bin "复制到内部(XIP)闪存并执行它。

    如果映像工作正常并被提交-临时副本将从文件系统中删除。  

    否则、/sys/mcuflashimg.bin 将恢复到存储的副本(擦除加载的 OTA 映像)。 然后将映像复制到内部闪存并执行。

    如果触发恢复出厂设置、则将提取此映像、而该映像将代替"/sys/mcuflashimg "。 然后、引导加载程序将按照上述说明复制并运行此内容。  

    BR、

    Kobi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobe、

    感谢您的回答。

    获得了映像执行流程。

    还有几个问题、如果这些问题太多、很抱歉。

    -我找不到任何代码、它们在其中存储新映像/将新映像写入外部闪存。如果有任何反馈(在函数名称或屏幕截图方面)会很有帮助。

    -NWP 提供的此文件存储是什么,其大小是多少?

    谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在 OtaArchive.c (一个 OTA 库文件)中查找 sl_FS 命令(sl_FsOpen/sl_FsWrite/slFsClose)。

    文件系统在外部串行闪存上实现。

    在 launchpad 上有4MB (32Mbit)闪存、但如果需要、可以使用更大的闪存(规范中定义了要求和限制)。

    BR、

    Kobi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Kobi、

    再次感谢您!

    如前所述、新 OTA 映像首先下载到外部闪存、然后在版本发生更改时复制到内部闪存。

    但是在引导加载程序或任何指定函数调用中管理的从外部到内部的映像副本、我无法获取该副本。

    谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    它应由引导加载程序自动处理。