1.dp 12h问题;2.ota升级
This commit is contained in:
parent
edeb7951bb
commit
4428448c85
|
@ -213,7 +213,7 @@ SINT32 sf_check_ftp_send(UINT8 mode);
|
|||
SINT32 sf_send_file_to_ftp(UINT8 mode);
|
||||
SINT32 sf_4g_module_ota_ftp(void);
|
||||
SINT32 sf_connect_ftps_server(void);
|
||||
UINT32 sf_camera_ota_ftp(void);
|
||||
SINT32 sf_camera_ota_ftp(void);
|
||||
SINT32 sf_concentrated_ftp_send(void);
|
||||
SINT32 sf_hd_ftp_send(void);
|
||||
SINT32 sf_video_ftp_send(void);
|
||||
|
|
|
@ -63,6 +63,7 @@ UINT8 sf_signal_level_get(UINT8 netFlagG, UINT8 cqSignal);
|
|||
|
||||
BOOL sf_get_para_check_flag(void);
|
||||
void sf_sys_check_flag(void);
|
||||
BOOL sf_Check_OTA(void);
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
}
|
||||
|
|
|
@ -59,6 +59,8 @@ void sf_cmd_4g_usb_boot(void);
|
|||
void sf_do_4g_upgrade_thread(void);
|
||||
UINT32 sf_4g_update(UINT8 *upFname);
|
||||
SINT32 sf_app_load_ko_start(void);
|
||||
SINT32 sf_app_mcu_para_start(void);
|
||||
SINT32 app_auto_poweroff_start(void);
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
}
|
||||
|
|
|
@ -48,6 +48,7 @@ extern "C" {
|
|||
#include "sf_sms.h"
|
||||
#include "sf_ledmng.h"
|
||||
#include "ftp_manager.h"
|
||||
#include "sf_system.h"
|
||||
/**************************************************************************
|
||||
* C O N S T A N T S *
|
||||
**************************************************************************/
|
||||
|
@ -1147,11 +1148,11 @@ SINT32 sf_ftp_dailyreport_send(void)
|
|||
|
||||
if(SF_SUCCESS != ret)
|
||||
{
|
||||
sf_dailyReport_set();
|
||||
printf("%s:%d err ret: [0x%08X] filePath:%s\n", __FUNCTION__, __LINE__, ret, filePath);
|
||||
}else {
|
||||
DailyReportFtpSendSucess = 1;
|
||||
}
|
||||
sf_dailyReport_set();
|
||||
}
|
||||
|
||||
printf("[%s:%d]ret:[0x%08X]\n\n", __FUNCTION__, __LINE__, ret);
|
||||
|
@ -1343,6 +1344,7 @@ SINT32 sf_send_file_to_ftp(UINT8 mode)
|
|||
*************************************************/
|
||||
SINT32 sf_4g_module_ota_ftp(void)
|
||||
{
|
||||
char Cmd[128] = {0};
|
||||
UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SINT32 ret = SF_SUCCESS;
|
||||
FtpSslFlag ssl_flag = FTP_SSL_FLAG_END;
|
||||
|
@ -1364,14 +1366,30 @@ SINT32 sf_4g_module_ota_ftp(void)
|
|||
.ftpsFlag = ssl_flag,
|
||||
.user = (const char*)user,
|
||||
.password = (const char*)password};
|
||||
// printf("ftp_manager_init url = %s\n", config.ip);
|
||||
// printf("ftp_manager_init port = %d param port = %s\n", config.port, pPara->FtpsPort);
|
||||
// printf("ftp_manager_init ftpsFlag = %d\n", config.ftpsFlag);
|
||||
// printf("ftp_manager_init user = %s\n", config.user);
|
||||
// printf("ftp_manager_init password = %s\n", config.password);
|
||||
|
||||
ftp_manager_init(config);
|
||||
|
||||
ftp_download_file("EG915QNA.tar.bz2","/mnt/sd/EG915QNA.tar.bz2",0);
|
||||
if(SF_TRUE == sf_file_IsExsit(SF_MODULE_UP_FILE_PATH)){
|
||||
sf_file_remove(SF_MODULE_UP_FILE_PATH);
|
||||
}
|
||||
|
||||
ret = ftp_download_file(SF_MODULE_UP_FILE,SF_MODULE_UP_FILE_PATH,0);
|
||||
if(SUCCESS == ret){
|
||||
sprintf(Cmd, "tar -xjvf %s -C %s", SF_MODULE_UP_FILE_PATH, SF_SD_ROOT);
|
||||
MLOGD("%s\n", Cmd);
|
||||
ret = system(Cmd);
|
||||
if(SUCCESS == ret){
|
||||
sf_set_module_update(1);
|
||||
sf_do_4g_upgrade_thread();
|
||||
while(sf_get_module_update())
|
||||
{
|
||||
sleep(1);//Wait for the upgrade to complete before shutting down.
|
||||
}
|
||||
sf_set_module_update(0);
|
||||
}
|
||||
}
|
||||
|
||||
MLOGD("e\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -1428,829 +1446,57 @@ SINT32 sf_connect_ftps_server(void)
|
|||
Return: N/A
|
||||
Others: N/A
|
||||
*************************************************/
|
||||
UINT32 sf_camera_ota_ftp(void)
|
||||
SINT32 sf_camera_ota_ftp(void)
|
||||
{
|
||||
#if 0
|
||||
UINT32 location = CAMERA_OTA_FTP_FRIST;
|
||||
UINT32 sts = OTA_NOUPDATE; /*0:updating 1:no update 2:update fail 3:update success*/
|
||||
UINT32 errorCode = 0;
|
||||
UINT32 calltime=0;
|
||||
UINT32 time = 0;
|
||||
UINT8 ftpIp[40]= {0};
|
||||
UINT8 ftpPort[6]= {0};
|
||||
UINT8 ftpUsername[40]= {0};
|
||||
UINT8 ftpPassword[40]= {0};
|
||||
UINT8 pdpInedx = 0;
|
||||
UINT32 ret = 0;
|
||||
UINT32 fileSize = 0;
|
||||
UINT32 cfgFileSize = 0;
|
||||
UINT32 brnFileSize = 0;
|
||||
UINT32 rxFileSize = 0;
|
||||
UINT8 *pTemp = NULL;
|
||||
UINT8 *pTemp1 = NULL;
|
||||
UINT8 *pTemp2 = NULL;
|
||||
UINT8 *pTemp3 = NULL;
|
||||
UINT8 *pTemp4 = NULL;
|
||||
SF_NET_TRANSFER_S *transfer = NULL;
|
||||
SINT32 ttyRet = 0;
|
||||
char Cmd[128] = {0};
|
||||
UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SINT32 ret = SF_SUCCESS;
|
||||
FtpSslFlag ssl_flag = FTP_SSL_FLAG_END;
|
||||
const unsigned char *ftpIP;
|
||||
int port;
|
||||
const UINT8 *user;
|
||||
const UINT8 *password;
|
||||
// FtpConfig config;
|
||||
|
||||
uiPara_t *puiPara = appUiParaGet();
|
||||
//sfPara_t* pSifarPara = sf_ParaGet();
|
||||
ssl_flag = FTP_SSL_FLAG_DISABLE;
|
||||
ftpIP = pPara->OtaFtpIp;
|
||||
port = atoi((const char *)(pPara->OtaFtpPort));
|
||||
user = pPara->OtaFtpUserName;
|
||||
password = pPara->OtaFtpPassWord;
|
||||
|
||||
printf("sf_camera_ota_ftp s\n");
|
||||
FtpConfig config = {
|
||||
.ip = (const char*)ftpIP,
|
||||
.port = (const unsigned int)port,
|
||||
.ftpsFlag = ssl_flag,
|
||||
.user = (const char*)user,
|
||||
.password = (const char*)password};
|
||||
|
||||
appBtnDisable(BTN_ALL);
|
||||
//appBtnDisable(BTN_S1);
|
||||
ftp_manager_init(config);
|
||||
|
||||
if(isSignalReady==0)
|
||||
{
|
||||
printf("no signal no update\n");
|
||||
appBtnEnable(BTN_ALL);
|
||||
return sts;
|
||||
if(SF_TRUE == sf_file_IsExsit(SF_CAM_UP_FILE_PATH)){
|
||||
sf_file_remove(SF_CAM_UP_FILE_PATH);
|
||||
}
|
||||
|
||||
transfer = sp5kMalloc(sizeof(SF_NET_TRANSFER_S));
|
||||
|
||||
if (transfer == NULL)
|
||||
{
|
||||
printf("sf_camera_ota_ftp malloc fail\n");
|
||||
appBtnEnable(BTN_ALL);
|
||||
sts = OTA_FAIL;
|
||||
return sts;
|
||||
}
|
||||
|
||||
SF_STRCPY(ftpIp, puiPara->OtaFtpIp);
|
||||
SF_STRCPY(ftpPort, puiPara->OtaFtpPort);
|
||||
SF_STRCPY(ftpUsername, puiPara->OtaFtpUserName);
|
||||
SF_STRCPY(ftpPassword, puiPara->OtaFtpPassWord);
|
||||
|
||||
sts = OTA_UPDATING;
|
||||
|
||||
sf_mcu_wdg_set(15);
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_UPDATE);
|
||||
sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 1);
|
||||
|
||||
while(sts == OTA_UPDATING)
|
||||
{
|
||||
time++;
|
||||
if(time >= 300)
|
||||
{
|
||||
if((location > CAMERA_OTA_FTP_QIACT) && (location < CAMERA_OTA_FTP_QIDEACT))
|
||||
ret = ftp_download_file(SF_CAM_UP_FILE,SF_CAM_UP_FILE_PATH,0);
|
||||
if(SUCCESS == ret){
|
||||
sprintf(Cmd, "tar -xjvf %s -C %s", SF_CAM_UP_FILE_PATH, SF_SD_ROOT);
|
||||
MLOGD("%s\n", Cmd);
|
||||
ret = system(Cmd);
|
||||
if(SUCCESS == ret){
|
||||
sf_set_fw_update(1);
|
||||
sf_set_key_fw_update(sf_get_fw_update());
|
||||
while(sf_get_fw_update())
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_TIME_OUT;
|
||||
time = 250;
|
||||
calltime = 0;
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
sleep(1);//Wait for the upgrade to complete before shutting down.
|
||||
}
|
||||
else
|
||||
{
|
||||
sts = OTA_TIME_OUT;
|
||||
}
|
||||
|
||||
printf("update timeout!\n");
|
||||
}
|
||||
|
||||
sf_4g_get_data(gsmPara, 200, 1);
|
||||
|
||||
if(location != CAMERA_OTA_FTP_SAVE_BRN)
|
||||
{
|
||||
sf_tty_data_printf(gsmPara);
|
||||
}
|
||||
|
||||
switch(location)
|
||||
{
|
||||
case CAMERA_OTA_FTP_FRIST:
|
||||
SF_SPRINTF(gsmPara, "AT+QFDEL=\"*\"\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QICSGP;
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QICSGP:
|
||||
if(SF_STRSTR(gsmPara,"OK"))
|
||||
{
|
||||
if(SF_STRSTR(puiPara->Sim4gApn, APN_4G_VERIZON))
|
||||
{
|
||||
pdpInedx = V_PDP_INDEX;
|
||||
SF_SPRINTF(gsmPara,"AT+QICSGP=%d\r", V_PDP_INDEX);
|
||||
location= CAMERA_OTA_FTP_QICSGP1;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->Sim4gApn, APN_4G_ATT))
|
||||
{
|
||||
pdpInedx = A_PDP_INDEX;
|
||||
SF_SPRINTF(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r",A_PDP_INDEX, puiPara->Sim4gApn,puiPara->Sim4gUserName,puiPara->Sim4gPassword);
|
||||
location=CAMERA_OTA_FTP_QIACT;
|
||||
}
|
||||
else
|
||||
{
|
||||
pdpInedx = E_PDP_INDEX;
|
||||
SF_SPRINTF(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r",E_PDP_INDEX, puiPara->Sim4gApn,puiPara->Sim4gUserName,puiPara->Sim4gPassword);
|
||||
location=CAMERA_OTA_FTP_QIACT;
|
||||
}
|
||||
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QICSGP1:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
if(SF_STRSTR(gsmPara, "+QICSGP: 0") || SF_STRSTR(gsmPara, "+QICSGP: 1,\"\""))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r",V_PDP_INDEX, puiPara->Sim4gApn,puiPara->Sim4gUserName,puiPara->Sim4gPassword);
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
}
|
||||
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QIACT;
|
||||
}
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QIACT:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
if((puiPara->GprsMode == 1) && sf_pdp_flg_get())
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"contextid\",%d\r", pdpInedx);
|
||||
location = CAMERA_OTA_FTP_QFTPCFG2;
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIACT=%d\r", pdpInedx);
|
||||
location = CAMERA_OTA_FTP_QFTPCFG1;
|
||||
}
|
||||
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
calltime=0;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCFG1:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
sf_pdp_flg_set(1);
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"contextid\",%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPCFG2;
|
||||
calltime=0;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
calltime++;
|
||||
if(calltime < 6)
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIACT=%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
appTimeDelayMs(1800);
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
calltime=0;
|
||||
errorCode = SF_OTA_ERROR_QIACT;
|
||||
SLOGE((SINT8 *)"[ERROR]CAMERA_OTA_FTP QIACT over try 6 times");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCFG2:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"account\",\"%s\",\"%s\"\r", ftpUsername, ftpPassword);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPCFG3;
|
||||
}
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCFG3:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"filetype\",1\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPCFG4;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCFG4:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"transmode\",1\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location=CAMERA_OTA_FTP_QFTPCFG5;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCFG5:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"restenable\",0\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location=CAMERA_OTA_FTP_QFTPOPEN;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPOPEN:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPOPEN=\"%s\",%s\r", ftpIp, ftpPort);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPNLST;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPNLST:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPOPEN:"))
|
||||
{
|
||||
if(SF_STRSTR(gsmPara, "+QFTPOPEN: 0"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPNLST=\"%s\",\"COM:\"\r", CAM_OTA_DIR);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPGETCFG;
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_OPEN;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP Open Failed.");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_OPEN;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFTPOPEN CME ERROR.");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPGETCFG:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPNLST:"))
|
||||
{
|
||||
if((SF_STRSTR(gsmPara, SF_FW_FILE_NAME)!= NULL) && (SF_STRSTR(gsmPara, SF_FW_CFG_FILE_NAME)!= NULL))
|
||||
{
|
||||
#if SF_4G_USB_NET_DOWNLOAD
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
#else
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPGET=\"%s/%s\",\"%s\"\r", CAM_OTA_DIR, SF_FW_CFG_FILE_NAME, SF_FW_CFG_FILE_NAME);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPGETBRN;
|
||||
calltime = 0;
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_NLST;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP NO NEED UPDATA FILE.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_NLST;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFTPNLST CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPGETBRN:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPGET:"))
|
||||
{
|
||||
if(SF_STRSTR(gsmPara, "+QFTPGET: 0"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPGET=\"%s/%s\",\"%s\"\r", CAM_OTA_DIR, SF_FW_FILE_NAME, SF_FW_FILE_NAME);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QFTPCLOSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP GET CFG FILE FAIL.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
calltime = 0;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location= CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
calltime = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFTPGET CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
time = 0;
|
||||
calltime++;
|
||||
|
||||
if(calltime > 150)
|
||||
{
|
||||
location= CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
calltime = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP GET CFG FILE TIMEOUT.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QFTPCLOSE:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPGET:"))
|
||||
{
|
||||
if(SF_STRSTR(gsmPara, "+QFTPGET: 0"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP GET BRN FILE FAIL.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
calltime = 0;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location= CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
calltime = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFTPGET CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
time = 0;
|
||||
calltime++;
|
||||
appTimeDelayMs(800);
|
||||
|
||||
if(calltime > 300)
|
||||
{
|
||||
location= CAMERA_OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
calltime = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP GET BRN FILE TIMEOUT.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_QIDEACT:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
calltime = 0;
|
||||
SF_SPRINTF(gsmPara, "AT+QIDEACT=%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
sf_pdp_flg_set(0);
|
||||
|
||||
if(errorCode == 0)
|
||||
location = CAMERA_OTA_FTP_READSIZE;
|
||||
else
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_READSIZE:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
#if SF_4G_USB_NET_DOWNLOAD
|
||||
SF_STRCPY(transfer->ServerIp, ftpIp);
|
||||
SF_STRCPY(transfer->ServerPort, ftpPort);
|
||||
//sf_url_convert(ftpUsername, transfer->ServerUsername);
|
||||
//sf_url_convert(ftpPassword, transfer->ServerPassword);
|
||||
SF_STRCPY(transfer->ServerUsername, ftpUsername);
|
||||
SF_STRCPY(transfer->ServerPassword, ftpPassword);
|
||||
SF_STRCPY(transfer->ServerFileDir, CAM_OTA_DIR);
|
||||
SF_STRCPY(transfer->ServerFileName, SF_FW_CFG_FILE_NAME);
|
||||
SF_STRCPY(transfer->ClientFilePath, SF_FW_CFG_FILE_PATH);
|
||||
|
||||
if (sf_4g_usb_net_ftp_download(transfer) != 1)
|
||||
{
|
||||
printf("download cfg file err\n");
|
||||
SLOGE((SINT8 *)"download cfg file err\n");
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
break;
|
||||
}
|
||||
|
||||
SF_STRCPY(transfer->ServerFileName, SF_FW_FILE_NAME);
|
||||
SF_STRCPY(transfer->ClientFilePath, SF_FW_FILE_PATH);
|
||||
|
||||
if (sf_4g_usb_net_ftp_download(transfer) != 1)
|
||||
{
|
||||
printf("download brn file err\n");
|
||||
SLOGE((SINT8 *)"download brn file err\n");
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
}
|
||||
else
|
||||
{
|
||||
sts = OTA_SUCCESS;
|
||||
}
|
||||
#else
|
||||
SF_SPRINTF(gsmPara, "AT+QFLST=\"*\"\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_DOWNLOAD_CFG;
|
||||
calltime = 0;
|
||||
#endif
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
calltime++;
|
||||
if(calltime < 6)
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIDEACT=%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
appTimeDelayMs(1800);
|
||||
sf_pdp_flg_set(0);
|
||||
}
|
||||
else
|
||||
{
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
calltime=0;
|
||||
errorCode = SF_OTA_ERROR_QIDEACT;
|
||||
SLOGE((SINT8 *)"[ERROR]OTA_FTP QIDEACT over try 6 times");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_DOWNLOAD_CFG:
|
||||
if(SF_STRSTR(gsmPara, "+QFLST:"))
|
||||
{
|
||||
UINT8 str[30] = {0};
|
||||
|
||||
SF_SPRINTF(str, "+QFLST: \"%s\",", SF_FW_CFG_FILE_NAME);
|
||||
pTemp1 = SF_STRSTR(gsmPara, str);
|
||||
SF_SPRINTF(str, "+QFLST: \"%s\",", SF_FW_FILE_NAME);
|
||||
pTemp2 = SF_STRSTR(gsmPara, str);
|
||||
|
||||
if((pTemp1 != NULL) && (pTemp2 != NULL))
|
||||
{
|
||||
pTemp1 = pTemp1+28;
|
||||
pTemp2 = pTemp2+28;
|
||||
|
||||
pTemp3 = SF_STRTOK(pTemp1, "\r\n");
|
||||
pTemp4 = SF_STRTOK(pTemp2, "\r\n");
|
||||
|
||||
printf("pTemp1=%s\n", pTemp1);
|
||||
printf("pTemp2=%s\n", pTemp2);
|
||||
printf("pTemp3=%s\n", pTemp3);
|
||||
printf("pTemp4=%s\n", pTemp4);
|
||||
cfgFileSize = atoi((const char *)pTemp3);
|
||||
brnFileSize = atoi((const char *)pTemp4);
|
||||
|
||||
printf("cfgSzie=%d\n", cfgFileSize);
|
||||
printf("brnSzie=%d\n", brnFileSize);
|
||||
|
||||
if((brnFileSize < cfgFileSize) || (brnFileSize == 0))
|
||||
{
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFLST FILE SIZE ERROR.");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
DownloadFlieBuff = sp5kMalloc(brnFileSize + 300);
|
||||
|
||||
if(DownloadFlieBuff != NULL)
|
||||
{
|
||||
DownloadFileSize = cfgFileSize;
|
||||
DownloadIndex = 0;
|
||||
printf("download %s to DSP size=%d\n", SF_FW_CFG_FILE_NAME, DownloadFileSize);
|
||||
DownloadFrom4gFlag = TRUE;
|
||||
SF_SPRINTF(gsmPara, "AT+QFDWL=\"%s\"\r", SF_FW_CFG_FILE_NAME);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_DOWNLOAD_BRN;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("memory malloc fial\n");
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP DOWNLOAD CFG NO MEMORY ERROR.");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = OTA_ERROR_FTP_DOWNLOAD;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP QFLST NULL ERROR.");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = OTA_ERROR_FTP_DOWNLOAD;
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
SLOGE((SINT8 *)"OTA_FTP QFOPEN CME ERROR.");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = OTA_ERROR_FTP_DOWNLOAD;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_DOWNLOAD_BRN:
|
||||
|
||||
if(rxFileSize == DownloadIndex)
|
||||
{
|
||||
*(DownloadFlieBuff + rxFileSize) = '\0';
|
||||
printf("rxFileSize=%d\n", rxFileSize);
|
||||
DownloadFrom4gFlag = FALSE;
|
||||
DownloadIndex = 0;
|
||||
calltime = 0;
|
||||
|
||||
pTemp = SF_STRSTR(DownloadFlieBuff, "CONNECT");
|
||||
|
||||
if(pTemp == NULL)
|
||||
{
|
||||
printf("download cfg file err\n");
|
||||
SLOGE((SINT8 *)"download cfg file err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
pTemp1 = pTemp + 9;
|
||||
pTemp2 = pTemp1 + DownloadFileSize + 2;
|
||||
|
||||
//pTemp = DownloadFlieBuff + DownloadFileSize + 1;
|
||||
|
||||
printf("CAMERA_OTA_FTP_DOWNLOAD_BRN:pTemp2=%s", pTemp2);
|
||||
|
||||
pTemp3 = SF_STRSTR(pTemp2, "+QFDWL: ");
|
||||
|
||||
if(pTemp3 == NULL)
|
||||
{
|
||||
printf("download cfg file err\n");
|
||||
SLOGE((SINT8 *)"download cfg file err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
pTemp3 = pTemp3 + 8;
|
||||
pTemp4 = SF_STRTOK(pTemp3, ",");
|
||||
fileSize = atoi((const char *)pTemp4);
|
||||
|
||||
if(DownloadFileSize != fileSize)
|
||||
{
|
||||
printf("download cfg file size err\n");
|
||||
SLOGE((SINT8 *)"download cfg file size err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
ret = sf_save_file(SF_FW_CFG_FILE_PATH, pTemp1, DownloadFileSize);
|
||||
|
||||
if(ret == SUCCESS)
|
||||
{
|
||||
DownloadFileSize = brnFileSize;
|
||||
printf("download %s to DSP size=%d\n", SF_FW_FILE_NAME, DownloadFileSize);
|
||||
DownloadIndex = 0;
|
||||
rxFileSize = 0;
|
||||
DownloadFrom4gFlag = TRUE;
|
||||
SF_SPRINTF(gsmPara, "AT+QFDWL=\"%s\"\r", SF_FW_FILE_NAME);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, SF_STRLEN(gsmPara));
|
||||
SF_CHECK_RETURN_OTA(ttyRet, sts, OTA_FAIL, errorCode, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = CAMERA_OTA_FTP_SAVE_BRN;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("save cfg file err\n");
|
||||
SLOGE((SINT8 *)"save cfg file err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rxFileSize = DownloadIndex;
|
||||
time = 0;
|
||||
calltime++;
|
||||
printf("rxFileSize=%d calltime=%d\n", rxFileSize, calltime);
|
||||
|
||||
if(calltime > 300)
|
||||
{
|
||||
DownloadFrom4gFlag = FALSE;
|
||||
DownloadIndex = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP DOWNLOAD CFG TO DSP TIMEOUT.");
|
||||
location= CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
calltime = 0;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_SAVE_BRN:
|
||||
if(rxFileSize == DownloadIndex)
|
||||
{
|
||||
*(DownloadFlieBuff + rxFileSize) = '\0';
|
||||
printf("rxFileSize=%d\n", rxFileSize);
|
||||
DownloadFrom4gFlag = FALSE;
|
||||
DownloadIndex = 0;
|
||||
calltime = 0;
|
||||
pTemp = SF_STRSTR(DownloadFlieBuff, "CONNECT");
|
||||
|
||||
if(pTemp == NULL)
|
||||
{
|
||||
printf("download brn file err\n");
|
||||
SLOGE((SINT8 *)"download brn file err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
pTemp1 = pTemp + 9;
|
||||
pTemp2 = pTemp1 + DownloadFileSize + 2;
|
||||
|
||||
pTemp3 = SF_STRSTR(pTemp2, "+QFDWL: ");
|
||||
|
||||
if(pTemp3 == NULL)
|
||||
{
|
||||
printf("download brn file err\n");
|
||||
SLOGE((SINT8 *)"download brn file err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
pTemp3 = pTemp3 + 8;
|
||||
pTemp4 = SF_STRTOK(pTemp3, ",");
|
||||
fileSize = atoi((const char *)pTemp4);
|
||||
|
||||
if(DownloadFileSize != fileSize)
|
||||
{
|
||||
printf("download brn file size err\n");
|
||||
SLOGE((SINT8 *)"download brn file size err\n");
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
break;
|
||||
}
|
||||
|
||||
ret = sf_save_file(SF_FW_FILE_PATH, pTemp1, DownloadFileSize);
|
||||
|
||||
if(ret == SUCCESS)
|
||||
{
|
||||
sts = OTA_SUCCESS;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("save brn file err\n");
|
||||
SLOGE((SINT8 *)"save brn file err\n");
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
location = CAMERA_OTA_FTP_END;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rxFileSize = DownloadIndex;
|
||||
time = 0;
|
||||
calltime++;
|
||||
printf("rxFileSize=%d calltime=%d\n", rxFileSize, calltime);
|
||||
appTimeDelayMs(800);
|
||||
|
||||
if(calltime > 240)
|
||||
{
|
||||
DownloadFrom4gFlag = FALSE;
|
||||
DownloadIndex = 0;
|
||||
SLOGE((SINT8 *)"CAMERA_OTA_FTP S BRN TO DSP TIMEOUT.");
|
||||
location= CAMERA_OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
calltime = 0;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case CAMERA_OTA_FTP_END:
|
||||
sts = OTA_FAIL;
|
||||
break;
|
||||
sf_set_fw_update(0);
|
||||
}
|
||||
}
|
||||
|
||||
if(DownloadFlieBuff != NULL)
|
||||
sp5kFree(DownloadFlieBuff);
|
||||
|
||||
if(transfer != NULL)
|
||||
sp5kFree(transfer);
|
||||
|
||||
if(sf_is_enough_power_to_update() == FALSE)
|
||||
{
|
||||
appBtnEnable(BTN_ALL);
|
||||
|
||||
return sts;
|
||||
}
|
||||
|
||||
sf_mcu_wdg_set(5);
|
||||
|
||||
if(sts == OTA_SUCCESS)
|
||||
{
|
||||
if(sf_camera_sd_update() != SUCCESS)
|
||||
{
|
||||
sts = OTA_UPDATED_ERROR;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(errorCode == SF_OTA_ERROR_FTP_NLST)
|
||||
{
|
||||
sts = OTA_NOUPDATE;
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_NORMAL);
|
||||
}
|
||||
else
|
||||
{
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
printf("Camera OTA Update sts:%d errorCode:%d\n", sts, errorCode);
|
||||
|
||||
printf("sf_camera_ota_ftp e\n");
|
||||
|
||||
appTimeDelayMs(2000);
|
||||
|
||||
appBtnEnable(BTN_ALL);
|
||||
|
||||
if(sts == OTA_SUCCESS)
|
||||
return SUCCESS;
|
||||
#endif
|
||||
return FAIL;
|
||||
MLOGD("e\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************
|
||||
Function: sf_concentrated_ftp_send
|
||||
Description: ftp send.
|
||||
|
|
|
@ -2340,7 +2340,7 @@ SINT32 sf_power_off_module_ota(void)
|
|||
{
|
||||
ret = sf_4g_module_ota_ftp();//need restart module
|
||||
|
||||
if(ret == OTA_UPDATED_ERROR || ret == OTA_SUCCESS || ret == OTA_VERTION_ERROR || ret == OTA_TIME_OUT)
|
||||
//if(ret == OTA_UPDATED_ERROR || ret == OTA_SUCCESS || ret == OTA_VERTION_ERROR || ret == OTA_TIME_OUT)
|
||||
{
|
||||
if(CameraCmd.setPara)
|
||||
pPara_sms_saved->NetWorkNeedSearch = 3;
|
||||
|
@ -2351,7 +2351,7 @@ SINT32 sf_power_off_module_ota(void)
|
|||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -94,8 +94,8 @@ BOOL sf_Check_OTA(void)
|
|||
char *pStrOtsOk = "ota_flag=0x1";
|
||||
BOOL ret = FALSE;
|
||||
|
||||
system("cat /proc/cmdline > /tmp/ota.txt");
|
||||
fp = fopen("/tmp/ota.txt","r");
|
||||
system("cat /proc/cmdline > /tmp/sf_ota.txt");
|
||||
fp = fopen("/tmp/sf_ota.txt","r");
|
||||
if(fp == NULL){
|
||||
return FALSE;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user