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.

[参考译文] CC3220S-LAUNCHXL:云 OTA 帮助

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

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/655618/cc3220s-launchxl-help-with-cloud-ota

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

好的、我现在要讨论该项目的最后一项主要功能、需要先让 cloud_ota 演示工作。  我使用的是1.5.00.06 SDK。 演示的文档不是很好。  缺少重要的详细信息、例如告知 GitHub 的 OTA_VENDOR_TOKEN 需要是用户名。  无论如何、我仍然有问题。  我的最新问题如下。  就我可以告诉它的外观而言、它可以下载.tar 文件、但在下载后由于某种原因出现了错误。  我不确定这是否与 ota.cmd 及其签名 ota.sign.  有关如何生成这些文件的说明非常不清楚、Uniflash 似乎不会提示您生成这些文件。  话虽如此、我的.tar 文件中没有任何内容、因为我不知道如何操作。  请有人对这一点再作说明。  谢谢

HandlePingComplete:OTA 命令已到达
OtaInit:统计数据= 0、0、0
OtaInit:调用 Ota_init
OTA_INIT:sizeof CdnClient=576、sizeof OtaArchive=4956
ota_init:sizeof OtaLib_t=7736、sizeof ota_memBlock=7800
OTA_INIT:OTA 库版本= OTA_LIB_2.0.0.7
OtaArchive_Init:OTA 存档版本= OTA_archive_2.0.0.4
OtaConfig:调用 OTA_SET EXTLIB_OTA_SET_OPT_SERVER_INFO、ServerName=api.github.com
OtaConfig:调用 OTA_SET EXTLIB_OTA_SET_OPT_VENDOR_ID、VendorDir=OTA
OTA_RUN:调用 CdnClient_ConnectServer OTA server=api.github.com
CdnClient_ConnectServer:HttpClient_Connect api.github.com
HttpClient_Connect:IP_ADDR=192.30.253.117
HttpClient_Connect:警告套接字连接,status=-468,已忽略...
OTA_RUN:CdnClient_ReqOtaDir、VendorDir=OTA
CdnGithub_SendReqDir:UI=/repos/user/ota_test/contents
居放马位:579人
recvAppend pRespBuf 之后为:TTP://api.github.com/repos/user/ota_test/git/blobs/be9b167d66ac65626feac86bd70f4fbb01b8cbca、"download_URL":"raw.githubusercontent.com/.../20180104151750.tar
整个 JSON pRespBuf 为:[{"名称":"2018010415175.tar"、"路径":"OTA/2018010415175.tar"、"SHA":"be9b167d66ac65626feac86bd70f4f01bbb8cbcbca"、"大小:153600、"URL":https://api.github.com/repos/user/ota_test/contents/ota/20180104151750.tar?ref=master","html_url":"https://github.com/user/ota_test/blob/master/ota/20180104151750.tar","git_url":"https://api.github.com/repos/user/ota_test/git/blobs/be9b167d66ac65626feac86bd70f4fbb01b8cbca","download_url":"https://raw.githubusercontent.com/user/ota_test/master/ota/20180104151750.tar","type":"file","_links":{"self":"https://api.github.com/repos/user/ota_test/contents/ota/20180104151750.tar?ref=master","git":"https://api.github.com/repos/user/ota_test/git/blobs/be9b167d66ac65626feac86bd70f4fbb01b8cbca","html":"https://github.com/user/ota_test/blob/master/ota/20180104151750.tar"}}]
[OtaJson_getMetadataFileName]错误:-101,无法获取数据
OTA_RUN:错误 CdnClient_ReqOtaDir、状态=-101

/*
otauser.h -用户配置的头文件(CdnVendor=Dropbox/Github)
*

**版权所有(C) 2016 Texas Instruments Incorporated
*
*保留所有权利。 德州仪器(TI)公司的财产。
*通过
合同*授予使用、复制或披露此代码的受限权限。
*未经
*德州仪器公司的书面许可或根据
提供本计划的协议中规定的条款和条件*使用本计划
、*在任何情况下都不能与非 TI 连接器件一起使用。
*
/
#ifndef __ota_user_H__
#define __ota_user_H__

#ifdef __cplusplus
extern "C"{
#endif

#include 

#include 
#include 

//#define SL_ENABLE_OTA_DEBUG_TRACES //取消注释以启用内部 OTA 调试信息*/
#ifndef SL_ENABLE_OTA_DEBUG_TRACES
#define _SlOtaLibTrace (pargs)
#else

#ifdef _WIN32

#define _GitOtaLibTrace (pargs)*f parcongs

#Elif Trace_MSP432Pin













Message (pargs)#define + partinvoid 格式#define + partatf Loggs #define + partinf (partings_parf)*partings_partatf Loggs (partinf)*partinf 报告格式#define + partatf 报告#define + partatf (partatf)*partatf 报告格式#partinf 报告# 1
#define OTA_SERVER_Dropbox V2 2
#define OTA_SERVER_CUSTOM 99

/*用户应在此处定义要使用的云*/*
--------------- */
#define OTA_SERVER_TYPE OTA_SERVER_GITHUB
//#define OTA_SERVER_TYPE OTA_SERVER_Drop_V2

/* OTA 服务器信息*/
/*--- //

#ifdef _WIN32
#define OTA_VENDOR_DIR "OTA_CC3120"
#Elif __MSP432P401R__
#define OTA_VENDOR_DIR "OTA_CC3120"
#else
//#define OTA_VENDON_DIR"OTA_CC3220SF"
#define OTA_SERVER_FILE_SERVER_NAME=#define OTA_SERVER_NOT_NAME*




#define OTA_NOT_OTA_SERVER_NOT_NAME=#define OTA_NOT_OTA_NAME*
"api.github.com
#define OTA_SERVER_IP_ADDRESS 0x00000000
#define OTA_SERVER_SECURE_ 1

/* Github 供应商信息*/
#define OTA_VENDOR_ROOT_DIR "/repos/user/ota_test
#define OTA_VENDOR_TOKEN "用户
"#ifndef OTA_VENDOOR_TOKEN
错误"请在上面的 OTA_VENDOOR_TOKEN 中定义您的个人云帐户令牌"
#endif

#define OTA_SERVER_ROOT_CA_CERT "DigCert_High_Assurance_CA.der"
//#define OTA_SERVER_ROOT_CA_CERT "
#define OTA_SERVER_AUTH_IGNORE_DATA_TIME_ERROR
#define OTA_SERVER_AUTH_DISABLE_CERT_STORE

#Elif OTA_SERVER_TYPE = OTA_SERVER_Dropbox V2

/* Dropbox V2 server info */
#define OTA_SERVER_NAME "api.dropboxapi.com
#define OTA_SERVER_IP_ADDRESS 0x00000000
#define OTA_SERVER_SECURE_ 1

/* Dropbox V2供应商信息*/
#define OTA_VENDOR_TOKEN " "
#ifndef OTA_VENDOOR_TOKEN
#ERROR "请在上文 OTA_VENDOOR_TOKEN 中定义您的个人云帐户令牌"
#endif

#define OTA_SERVER_ROOT_CA_CERT "DigCert_High_Assurance_CA.der"
#define OTA_SERVER_AUTH_IGNORE_DATA_TIME_ERROR
#define OTA_SERVER_AUTH_DISABLE_CERT_STORE

#Elif OTA_SERVER_TYPE =OTA_SERVER_CUSTOM_*

在此添加您的客户服务器标头*/
#include ""/*

Github server info */
#define OTA_SERVER_NAME ""
#define OTA_SERVER_IP_ADDRESS 0x00000000
#define OTA_SERVER_SECURE_ 1

/*供应商信息*/
#define OTA_VENDOR_TOKEN "用户定义的令牌"

#define CdnVendor_SendReqDir
#define CdnVendor_ParseRespDir
#define CdnVendor_SendReqFileUrl
#define CdnVendor_ParseRespFileUrl
#define CdnVendor_SendReqFileContent

#endif


#ifdef __cplusplus
}
#endif //_cplusplus */

#endif //*_ota_user_H_* 

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

    尊敬的 Andrew:

    请查看我在下面附加的链接。  SDK 中包含的无线更新指南中介绍了您指出的步骤。

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

    很抱歉、它不是。 如何生成 ota.cmd 的信息? 例如、digest 和 signature_base64。 什么因素决定它是否属于"捆绑包"的一部分? 指南类型表示您必须手动将此信息输入到您创建的 ota.cmd 文件中。 如何签署 ota.cmd? 这些似乎是许多重要的缺失细节。

    还需要对其进行更正、以告知 GitHub 用户将其用户名用于 OTA_VENDOR_TOKEN。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    增加更多的混乱…  这些说明(http://dev.ti.com/tirex/content/simplelink_academy_cc32xxsdk_1_14_02_04/modules/wifi_ota/wifi_ota.html )显示了如何创建整个 ota.tar 文件。  其中提到、当您单击"Create OTA"时、Uniflash 将提示您输入 OTA 私钥来对映像进行签名。  Uniflash会提示我这样做、因此我不确定应该如何签署。   版本:1.0.17.6

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我将 Uniflash 更新为最新版本、单击"Create OTA"时、它仍然不会提示我对 OTA 映像进行签名。 这里有一些不匹配的东西...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很明显、一些旧版本的 Uniflash 不会提示对 OTA 进行签名。 我还发现内部更新程序不会更新到最新版本。 最新版本会提示对 OTA 进行签名。