TI中文支持网
TI专业的中文技术问题搜集分享网站

CC3220S OTA

使用cloud_ota demo进行测试时 提示 "increasing MAX_BUNDLE_CMD_FILES=8"
将MAX_BUNDLE_CMD_FILES 增大为17,但是OTA_init时出现了阻塞的现象,添log发现是在OtaArchive_init中执行memset时阻塞
具体如下,请问如何修复次问题.

———————————————————– log ————————————————–
Pinging GW…!
Ping done. Success rate: 100%

HandlePingComplete: PingCounter=1
Pinging GW…!
Ping done. Success rate: 100%

HandlePingComplete: OTA Command arrived
OtaInit: statistics = 0, 0, 0
OtaInit: call Ota_init
OTA_init: sizeof CdnClient=576, sizeof OtaArchive=10320
OTA_init: sizeof OtaLib_t=13100, sizeof OTA_memBlock=15600
OTA_init: OTA lib version = OTA_LIB_2.0.0.7
OTA_init: === lian jun1 ===
OtaArchive_Init: === lian jun1 696,heap97952===

———————————————————– 代码 ————————————————–
693 size_t xPortGetFreeHeapSize( void );
694 int16_t OtaArchive_init(OtaArchive_t* pOtaArchive)
695 {
696 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d,heap%d===\r\n",__LINE__,xPortGetFreeHeapSize()));
697 memset(pOtaArchive, 0, sizeof(OtaArchive_t));
698 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
699 pOtaArchive->TotalBytesReceived = 0;
700 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
701 
702 _SlOtaLibTrace(("OtaArchive_Init: OTA archive version = %s\r\n", OTA_ARCHIVE_VERSION));
703 pOtaArchive->State = ARCHIVE_STATE_IDLE;
704 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
705 pOtaArchive->CurrTarObj.lFileHandle = -1;
706 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
707 pOtaArchive->BundleCmdTable.NumFiles = 0;
708 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
709 
710 B64_Init();
711 _SlOtaLibTrace(("OtaArchive_Init: === lian jun1 %d===\r\n",__LINE__));
712 return ARCHIVE_STATUS_OK;

lianjun sun:

使用cloud_ota demo 测试时,打开文件是失败Status=-10279

OtaArchive_RunParseTar: parsing archive file headerOtaArchive_RunParseTar: skip block align RecvBufLen=1440, SkipAlignSize=49OtaArchive_RunParseTar: FileType=0, FileName=/sys/mcubootinfo.bin, FileSize=16 Create/Open for write file /sys/mcubootinfo.binOtaArchive_RunParseTar ERROR from sl_FsOpen, Status=-10279OtaArchive_Rollback: ERROR sl_FsCtl, Status=-10282OTA_run: ERROR OtaArchive_RunParse, Status=-20106

Viki Shi:

回复 lianjun sun:

lianjun sun:

回复 Viki Shi:

文件/sys/mcubootinfo.bin open flag 已是SL_FS_CREATE_FAILSAFE,为什么还是出现-10279???,而且这是ota.a中的代码
#define SL_ERROR_FS_BUNDLE_FILE_SHOULD_BE_CREATED_WITH_FAILSAFE (-10279L)

赞(0)
未经允许不得转载:TI中文支持网 » CC3220S OTA
分享到: 更多 (0)