Compare commits
10 Commits
fcbfc1d655
...
a4015c907c
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a4015c907c | ||
![]() |
205ae97cc3 | ||
![]() |
83a4009b7b | ||
![]() |
047332fc05 | ||
![]() |
c14430a7e1 | ||
![]() |
7b51eac1d4 | ||
![]() |
9961fd5c69 | ||
![]() |
01057bb1e0 | ||
![]() |
4e879463eb | ||
![]() |
0cf681af96 |
27
README.md
27
README.md
|
@ -1,4 +1,4 @@
|
|||
# S530
|
||||
# S550
|
||||
|
||||
|
||||
|
||||
|
@ -12,24 +12,22 @@
|
|||
1.build rtos
|
||||
```
|
||||
cd rtos
|
||||
source build/envsetup.sh
|
||||
lunch #配置model,首次需要,S530选择以下配置
|
||||
source build/envsetup.sh #新开的终端执行此命令进行配置编译环境
|
||||
lunch #配置model,首次需要,S550选择以下配置
|
||||
#Project Config: rtos
|
||||
#Model Config: cfg_565_HUNTING_EVB_LINUX_4G_S530
|
||||
#Model Config: cfg_565_HUNTING_EVB_LINUX_4G_S550
|
||||
#toolchain: gcc-6.5-newlib-2.4-2019.11-arm-ca9-eabihf
|
||||
|
||||
get_stuff_for_environment #查看配置信息
|
||||
make all #其它命令使用 make help
|
||||
cp output/application.bin ../
|
||||
cp output/rtos-main.bin ../
|
||||
```
|
||||
|
||||
2.build linux。在项目根目录下进行
|
||||
```
|
||||
source build/envsetup.sh
|
||||
lunch #配置model,首次需要,S530选择以下配置
|
||||
source build/envsetup.sh #新开的终端执行此命令进行配置编译环境
|
||||
lunch #配置model,首次需要,S550选择以下配置
|
||||
#Project Config: Linux
|
||||
#Model Config: cfg_565_HUNTING_EVB_LINUX_4G_S530
|
||||
#Model Config: cfg_565_HUNTING_EVB_LINUX_4G_S550
|
||||
#toolchain: arm-ca9-linux-uclibcgnueabihf-8.4.01
|
||||
|
||||
get_stuff_for_environment #查看配置信息
|
||||
|
@ -40,6 +38,13 @@ make all #其它命令使用 make help
|
|||
|
||||
output/packed/FW98565A.bin #该bin文件为升级文件,将之拷贝到SD卡根目录进行升级。快捷键升级时:注意请插入usb,用usb供电进行升级
|
||||
|
||||
4.硬升级(USB供电进行升级)
|
||||
|
||||
将LD98565A.bin(loader\Project\Model\Loader565_Data\Release\LD98565A.bin)和FW98565A.bin(output/packed/FW98565A.bin)拷贝到SD卡根目录进行升级。长按enter 键,并且插入USB供电进行升级。
|
||||
|
||||
5.软升级(普通方式供电进行升级)
|
||||
|
||||
将FW98565A.bin(output/packed/FW98565A.bin)拷贝到SD卡根目录进行升级。在菜单中选择升级,等待升级完成。
|
||||
|
||||
## 其它选项
|
||||
|
||||
|
@ -58,3 +63,7 @@ make pack
|
|||
20230407
|
||||
|
||||
1.增加描述
|
||||
|
||||
20240408
|
||||
|
||||
1.修改升级描述
|
|
@ -924,7 +924,7 @@
|
|||
#define HUNTING_MCU_UART ENABLE
|
||||
#define HUNTING_IR_LED_940 ENABLE
|
||||
#define SF_EXIF_MN_BUF_SIZE 256
|
||||
#define SF_BASE_VERSION "7MR5RCwE203"
|
||||
#define SF_BASE_VERSION "7MR5RCwE204"
|
||||
#define HW_S530 DISABLE
|
||||
#define DCF_DIR_NAME "MEDIA" /* 100MEDIA */
|
||||
#define DCF_FILE_NAME "SYGW" /* SYFW0001.JPG */
|
||||
|
|
|
@ -286,6 +286,9 @@ SXCMD_ITEM("sfdump %", sf_vos_perf_list_dump, "sfdump")
|
|||
SXCMD_ITEM("sdfilesw %", sf_cmd_sd_file_switch, "sdfilesw")
|
||||
SXCMD_ITEM("lpatest %", sf_cmd_lpa_test, "lpatest")
|
||||
SXCMD_ITEM("fwup %", sf_cmd_fw_upgrade, "fwup")
|
||||
SXCMD_ITEM("modota %", sf_cmd_4g_ota_upgrade, "modota")
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#if FS_MULTI_STRG_FUNC /* test cmd */
|
||||
|
|
|
@ -23,6 +23,82 @@ extern "C" {
|
|||
#define SF_OTA_UPGRADE_FILE_PATH SF_SD_ROOT OTA_UPGRADE_FILE_NAME
|
||||
#define SF_OTA_PARAM_BACKUP_FATH SF_SD_ROOT OTA_BAK_FILE_NAME
|
||||
|
||||
#define MODULE_VER "EG"
|
||||
|
||||
#define MODULE_VER_FLG1 "FAR"
|
||||
#define MODULE_VER_FLG2 "GAR"
|
||||
|
||||
#define EG91E_MODULE_VER "EG91E"
|
||||
#define EG91V_MODULE_VER "EG91V"
|
||||
#define EG91A_MODULE_VER "EG91NA"
|
||||
#define EC25E_MODULE_VER "EC25E"
|
||||
#define EC25V_MODULE_VER "EC25V"
|
||||
#define EC25A_MODULE_VER "EC25A"
|
||||
|
||||
#define OTA_FTP_CFGFILENAME_EG91E "DFOTA_EG91E.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91E "module_EG91E.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EG91V "DFOTA_EG91V.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91V "module_EG91V.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EG91A "DFOTA_EG91NA.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91A "module_EG91NA.zip"
|
||||
|
||||
#define OTA_FTP_CFGFILENAME_EC25E "DFOTA_E.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25E "module_E.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EC25V "DFOTA_V.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25V "module_V.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EC25A "DFOTA_A.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25A "module_A.zip"
|
||||
|
||||
#define DFOTA_OTA_DIR "DFOTA_S550"
|
||||
#if 0
|
||||
typedef enum _OTA_FTP
|
||||
{
|
||||
OTA_FTP_FRIST =(unsigned char)0x01,
|
||||
OTA_FTP_CURVER,
|
||||
OTA_FTP_QICSGP,
|
||||
OTA_FTP_QICSGP1,
|
||||
OTA_FTP_QIACT,
|
||||
OTA_FTP_QFTPCFG1,
|
||||
OTA_FTP_QFTPCFG2,
|
||||
OTA_FTP_QFTPCFG3,
|
||||
OTA_FTP_QFTPCFG4,
|
||||
OTA_FTP_QFTPCFG5,
|
||||
OTA_FTP_QFTPOPEN,
|
||||
OTA_FTP_QFTPNLST,
|
||||
OTA_FTP_QFTPGETCFG,
|
||||
OTA_FTP_QFTPCLOSE,
|
||||
OTA_FTP_OPENCFG,
|
||||
OTA_FTP_SEEKCFG,
|
||||
OTA_FTP_READCFG,
|
||||
OTA_FTP_CLOSECFG,
|
||||
OTA_FTP_QIDEACT,
|
||||
OTA_FTP_QFOTADL,
|
||||
OTA_FTP_DOWNLOAD,
|
||||
OTA_FTP_UPDATING,
|
||||
OTA_FTP_UPDATING1,
|
||||
OTA_FTP_UPDATING2,
|
||||
OTA_FTP_UPDATAEND,
|
||||
OTA_FTP_CHECK,
|
||||
OTA_FTP_QGMR,
|
||||
OTA_FTP_END,
|
||||
}OTA_FTP;
|
||||
|
||||
typedef enum _OTA_Cue
|
||||
{
|
||||
OTA_UPDATING = (unsigned char)0x01,
|
||||
OTA_NOUPDATE,
|
||||
OTA_SUCCESS,
|
||||
OTA_FAIL,
|
||||
OTA_TIME_OUT = (unsigned char)0x64,/*100*/
|
||||
OTA_FILE_OPEN_ERROR = (unsigned char)0xc8,/*200*/
|
||||
OTA_FILE_SIZE_ERROR,
|
||||
OTA_DOWNLOAD_ERROR,
|
||||
OTA_UPDATED_ERROR,
|
||||
OTA_VERTION_ERROR,
|
||||
OTA_BATTERY_LOW,
|
||||
}OTA_Cue;
|
||||
#endif
|
||||
|
||||
typedef struct sf_ota_attrs {
|
||||
int server_type;
|
||||
char server_url[128];
|
||||
|
@ -35,6 +111,44 @@ typedef struct sf_ota_attrs {
|
|||
//SSL *ssl;
|
||||
//SSL_CTX *ctx;
|
||||
} SF_OTA_ATTRS;
|
||||
|
||||
typedef enum _OTA_ERR_CODE_E{
|
||||
OTA_ERROR_QIACT = 1,
|
||||
OTA_ERROR_VERTION = 2,
|
||||
OTA_ERROR_VERSION_INVALID= 3,
|
||||
OTA_ERROR_TIME_OUT = 4,
|
||||
OTA_ERROR_BAT_LOW = 5,
|
||||
OTA_ERROR_FTP_OPEN = 6,
|
||||
OTA_ERROR_FTP_NLST = 7,
|
||||
OTA_ERROR_FTP_GET = 8,
|
||||
OTA_ERROR_FTP_QIDEACT = 9,
|
||||
OTA_ERROR_FTP_QFSEEK = 10,
|
||||
OTA_ERROR_FTP_CFGFORMAT = 11,
|
||||
OTA_ERROR_FTP_QFREAD = 12,
|
||||
OTA_ERROR_FTP_QFOTADL = 13,
|
||||
OTA_ERROR_FTP_DOWNLOAD = 14,
|
||||
OTA_ERROR_FTP_UPDATE = 15,
|
||||
OTA_ERROR_QIDEACT = 16,
|
||||
OTA_ERROR_BUTT,
|
||||
}OTA_ERR_CODE_e;
|
||||
|
||||
#define SF_OTA_ERROR_QIACT SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_QIACT)
|
||||
#define SF_OTA_ERROR_VERTION SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_VERTION)
|
||||
#define SF_OTA_ERROR_VERTION_INVAlID SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_VERSION_INVALID)
|
||||
#define SF_OTA_ERROR_TIME_OUT SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_TIME_OUT)
|
||||
#define SF_OTA_ERROR_BAT_LOW SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_BAT_LOW)
|
||||
#define SF_OTA_ERROR_FTP_OPEN SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_OPEN)
|
||||
#define SF_OTA_ERROR_FTP_NLST SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_NLST)
|
||||
#define SF_OTA_ERROR_FTP_GET SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_GET)
|
||||
#define SF_OTA_ERROR_FTP_QIDEACT SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_QIDEACT)
|
||||
#define SF_OTA_ERROR_FTP_QFSEEK SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_QFSEEK)
|
||||
#define SF_OTA_ERROR_FTP_CFGFORMAT SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_CFGFORMAT)
|
||||
#define SF_OTA_ERROR_FTP_QFREAD SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_QFREAD)
|
||||
#define SF_OTA_ERROR_FTP_QFOTADL SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_QFOTADL)
|
||||
#define SF_OTA_ERROR_FTP_DOWNLOAD SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_DOWNLOAD)
|
||||
#define SF_OTA_ERROR_FTP_UPDATE SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_FTP_UPDATE)
|
||||
#define SF_OTA_ERROR_QIDEACT SF_ERR_ID(SF_MOD_OTA, OTA_ERROR_QIDEACT)
|
||||
|
||||
SINT32 upgrade_ota_file_IsExsit(SF_CHAR *fileName);
|
||||
|
||||
SINT32 sf_upgrade_ota_init(void);
|
||||
|
@ -52,6 +166,7 @@ SINT32 sf_upgrade_ota_filecheck(void);
|
|||
SINT32 sf_upgrade_ota_param_bak(void);
|
||||
|
||||
SINT32 sf_upgrade_ota_param_recover(void);
|
||||
SINT32 sf_module_ota_ftp(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
|
|
|
@ -220,6 +220,7 @@ typedef enum SF_MOD_e {
|
|||
SF_MOD_SMS,
|
||||
SF_MOD_4G,
|
||||
SF_MOD_4G_SEND,
|
||||
SF_MOD_OTA,
|
||||
SF_MOD_FILE,
|
||||
SF_MOD_HTTP,
|
||||
SF_MOD_TTY,
|
||||
|
@ -491,6 +492,8 @@ typedef enum sf_PARA_MESSAGE_TYPE_E
|
|||
SF_PARA_CMD_USB_INIT = 0x1F08,
|
||||
SF_PARA_CMD_GPS_STATUS = 0X1F09,
|
||||
SF_PARA_CMD_FTP_CONNECT_STATUS= 0X1F0A,
|
||||
SF_PARA_CMD_MOUP_OTA = 0X1F0F,
|
||||
|
||||
}SF_PARA_MESSAGE_TYPE_E;
|
||||
|
||||
typedef enum sf_WIFI_MESSAGE_TYPE_E
|
||||
|
|
|
@ -68,6 +68,7 @@ SINT32 sf_app_mcu_para_power_no_start(void);
|
|||
SINT32 sf_app_mcu_updata_start(void);
|
||||
UINT8 sf_app_get_mcu_init_flag(void);
|
||||
SINT32 sf_app_lpa_start(void);
|
||||
void sf_do_4g_upgrade_ota_thread(void);
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
UINT16 timeout_count = 0;
|
||||
UINT16 callTime = 0;
|
||||
UINT8 reHttpSRequest=0;
|
||||
SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
SF_CHAR gsmPara[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
SF_CHAR dataStr[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
MODULE_SERVER_AUTHEN_E enATcmdType = MODULE_HTTP_AUTHEN_AT_QIACT_PRE;
|
||||
|
||||
|
@ -91,37 +91,37 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
switch(enATcmdType)
|
||||
{
|
||||
case MODULE_HTTP_AUTHEN_AT_QIACT_PRE:
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QIACT;
|
||||
break;
|
||||
case MODULE_HTTP_AUTHEN_AT_QIACT:
|
||||
sprintf(ttyData,"AT+QIACT=%d\r",HTTP_PDP);/**/
|
||||
sprintf(gsmPara,"AT+QIACT=%d\r",HTTP_PDP);/**/
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPURL_1;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
break;
|
||||
|
||||
case MODULE_HTTP_AUTHEN_AT_QHTTPURL_1:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
timeout_count = 0;
|
||||
callTime = 0;
|
||||
sprintf(dataStr,"http://acenter.wuyuantech.com/CameraManager/device/getGreenDate"/*, pStaticParam->WebIP*/);
|
||||
sprintf(ttyData, "AT+QHTTPURL=%d,80\r",strlen(dataStr));
|
||||
sprintf(gsmPara, "AT+QHTTPURL=%d,80\r",strlen(dataStr));
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPURL_2;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
else if(strstr(ttyData, "ERROR"))
|
||||
else if(strstr(gsmPara, "ERROR"))
|
||||
{
|
||||
callTime++;
|
||||
if(callTime < PDP_TRY_TIME)
|
||||
{
|
||||
sf_sleep_s(2);
|
||||
sprintf(ttyData, "AT+QIACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
else
|
||||
|
@ -129,9 +129,9 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
callTime=0;
|
||||
sts = 0;
|
||||
ret = SF_GPS_ERROR_QIACT;
|
||||
SLOGE("Moudle QIACT ERROR.DATA:%s", ttyData);
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
SLOGE("Moudle QIACT ERROR.DATA:%s", gsmPara);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
|
||||
|
||||
|
@ -142,31 +142,31 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
sts = 0;
|
||||
ret = SF_GPS_ERROR_QIACT;
|
||||
SLOGE("Moudle QIACT timeout");
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r",HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
break;
|
||||
|
||||
case MODULE_HTTP_AUTHEN_AT_QHTTPURL_2:
|
||||
if(strstr(ttyData, "CONNECT"))
|
||||
if(strstr(gsmPara, "CONNECT"))
|
||||
{
|
||||
timeout_count = 0;
|
||||
sprintf(ttyData,"http://acenter.wuyuantech.com/CameraManager/device/getGreenDate"/*, pStaticParam->WebIP*/);
|
||||
sprintf(gsmPara,"http://acenter.wuyuantech.com/CameraManager/device/getGreenDate"/*, pStaticParam->WebIP*/);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPGET;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
break;
|
||||
|
||||
case MODULE_HTTP_AUTHEN_AT_QHTTPGET:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
timeout_count = 0;
|
||||
callTime = 0;
|
||||
sprintf(ttyData,"%s","AT+QHTTPGET=80\r");
|
||||
sprintf(gsmPara,"%s","AT+QHTTPGET=80\r");
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPREAD;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
break;
|
||||
|
@ -174,48 +174,48 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
case MODULE_HTTP_AUTHEN_AT_QHTTPREAD:
|
||||
timeout_count = 0;
|
||||
callTime++;
|
||||
if(strstr(ttyData, "+QHTTPGET:"))
|
||||
if(strstr(gsmPara, "+QHTTPGET:"))
|
||||
{
|
||||
if(strstr(ttyData, "+QHTTPGET: 0,200"))
|
||||
if(strstr(gsmPara, "+QHTTPGET: 0,200"))
|
||||
{
|
||||
timeout_count= 0;
|
||||
callTime = 0;
|
||||
sprintf(ttyData,"%s","AT+QHTTPREAD=80\r");
|
||||
sprintf(gsmPara,"%s","AT+QHTTPREAD=80\r");
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QIDEACT;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
else if(reHttpSRequest == 0)
|
||||
{
|
||||
SLOGW("HTTP Send Failed,try again");
|
||||
reHttpSRequest = 1;
|
||||
sprintf(ttyData,"%s","AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara,"%s","AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPURL_1;
|
||||
}
|
||||
else
|
||||
{
|
||||
SLOGE("HTTP Send Failed,data:%s", ttyData);
|
||||
SLOGE("HTTP Send Failed,data:%s", gsmPara);
|
||||
SLOGE("FAILED:send http failed!!!!!\n");
|
||||
|
||||
ret = SF_HTTP_ERROR_REQUEST;
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_END;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if((strstr(ttyData,"ERROR")) || (callTime > 400))
|
||||
if((strstr(gsmPara,"ERROR")) || (callTime > 400))
|
||||
{
|
||||
if(reHttpSRequest == 0)
|
||||
{
|
||||
SLOGD("FAILED:send http timeout,try again\n");
|
||||
reHttpSRequest = 1;
|
||||
sprintf(ttyData,"%s","AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara,"%s","AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_QHTTPURL_1;
|
||||
}
|
||||
|
@ -223,8 +223,8 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
{
|
||||
SLOGD("FAILED:send http timeout!!!!!\n");
|
||||
ret = SF_HTTP_ERROR_REQUEST;
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_END;
|
||||
}
|
||||
|
@ -235,11 +235,11 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
|
||||
case MODULE_HTTP_AUTHEN_AT_QIDEACT:
|
||||
timeout_count = 0;
|
||||
if(strstr(ttyData,"statu"))
|
||||
if(strstr(gsmPara,"statu"))
|
||||
{
|
||||
UINT8 *P1 = NULL;
|
||||
|
||||
P1 = (UINT8 *)strstr(ttyData,"greenDate");
|
||||
P1 = (UINT8 *)strstr(gsmPara,"greenDate");
|
||||
if(P1 != NULL)
|
||||
{
|
||||
//printf("greenDate:%s\n",P1);
|
||||
|
@ -265,16 +265,16 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
pNowTime->Sec = atoi((char *)tempStr);
|
||||
SLOGD("%d/%02d/%02d %02d:%02d:%02d\n",pNowTime->Year,pNowTime->Mon,pNowTime->Day,pNowTime->Hour,pNowTime->Min,pNowTime->Sec);
|
||||
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_END;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_END;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
}
|
||||
}
|
||||
|
@ -285,27 +285,27 @@ SINT32 eg91_gps_greendate_Get(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime)
|
|||
{
|
||||
SLOGE("FAILED:send http timeout!!!!!\n");
|
||||
callTime = 0;
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", HTTP_PDP);
|
||||
enATcmdType = MODULE_HTTP_AUTHEN_AT_END;
|
||||
ttyRet = sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_APPCOMM_CHECK_RETURN(ttyRet, ttyRet);
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case MODULE_HTTP_AUTHEN_AT_END:
|
||||
if(strstr(ttyData, "OK") || (timeout_count > 100))
|
||||
if(strstr(gsmPara, "OK") || (timeout_count > 100))
|
||||
return ret;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", ttyData);
|
||||
memset(ttyData,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(ttyData, 200);
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
memset(gsmPara,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(gsmPara, 200);
|
||||
SLOGD("callTIme:%d, location:%d\n", callTime, enATcmdType);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", ttyData);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
timeout_count++;
|
||||
if(timeout_count > 200)
|
||||
{
|
||||
|
@ -324,11 +324,12 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
SF_COMM_CHECK_POINTER(pfnParam->pfn_AT_instruction_exit,SF_FAILURE);
|
||||
SF_COMM_CHECK_POINTER(pNowTime,SF_FAILURE);
|
||||
|
||||
SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
// SF_CHAR gsmPara[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
UINT16 sts =1;
|
||||
UINT16 timeout_count = 0;
|
||||
UINT16 callTime = 0;
|
||||
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
SF_PARA_TIME_S preDate;
|
||||
|
||||
SIM_SEARCH_GPS_e enMmcLocation = SIM_SEARCH_GPS_FIRST;
|
||||
|
@ -344,22 +345,22 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
switch(enMmcLocation)
|
||||
{
|
||||
case SIM_SEARCH_GPS_FIRST:
|
||||
sprintf(ttyData, "%s", "AT+QGPSXTRA?\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "%s", "AT+QGPSXTRA?\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_FIRST_1;
|
||||
break;
|
||||
case SIM_SEARCH_GPS_FIRST_1:
|
||||
if(strstr(ttyData,"+QGPSXTRA: 1"))
|
||||
if(strstr(gsmPara,"+QGPSXTRA: 1"))
|
||||
{
|
||||
sprintf(ttyData, "AT+QGPSXTRADATA?\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSXTRADATA?\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_QGPSXTRA;
|
||||
|
||||
}else if(strstr(ttyData,"+QGPSXTRA: 0"))
|
||||
}else if(strstr(gsmPara,"+QGPSXTRA: 0"))
|
||||
{
|
||||
callTime = 0;
|
||||
sprintf(ttyData, "AT+QGPSXTRA=1\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSXTRA=1\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_FIRST_2;
|
||||
}else if(timeout_count > 200)
|
||||
{
|
||||
|
@ -368,10 +369,10 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_FIRST_2:
|
||||
if(strstr(ttyData,"OK"))
|
||||
if(strstr(gsmPara,"OK"))
|
||||
{
|
||||
sprintf(ttyData, "%s", "AT+QGPSXTRADATA?\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "%s", "AT+QGPSXTRADATA?\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_QGPSXTRA;
|
||||
}
|
||||
else
|
||||
|
@ -382,12 +383,12 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_QGPSXTRA:
|
||||
if(strstr((const char *)ttyData,"OK"))
|
||||
if(strstr((const char *)gsmPara,"OK"))
|
||||
{
|
||||
if(strstr(ttyData,",\"")!=NULL)
|
||||
if(strstr(gsmPara,",\"")!=NULL)
|
||||
{
|
||||
int diffsec = 0;
|
||||
SF_CHAR *CCLK = strstr(ttyData, ",\"");
|
||||
SF_CHAR *CCLK = strstr(gsmPara, ",\"");
|
||||
|
||||
preDate.Year = (CCLK[2]- '0')*1000 + (CCLK[3]- '0')*100 + (CCLK[4]-'0')*10 + (CCLK[5]-'0');
|
||||
preDate.Mon = (CCLK[7]- '0')*10 + (CCLK[8]- '0');
|
||||
|
@ -411,8 +412,8 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
else
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
sprintf(ttyData, "AT\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -429,11 +430,14 @@ SINT32 eg91_gps_Isupdate(SF_FN_PARAM_S *pfnParam,UINT8 *pIsupdate,SF_PARA_TIME_S
|
|||
default:
|
||||
break;
|
||||
}
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", ttyData);
|
||||
memset(ttyData,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(ttyData, 200);
|
||||
SLOGD("callTIme:%d, location:%d\n", callTime, enMmcLocation);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", ttyData);
|
||||
sf_gsm_para_buff_clear();
|
||||
//sf_hal_ttyusb2_read(gsmPara, 200);
|
||||
sf_hal_ttyusb2_read_buf(&ttyData);
|
||||
|
||||
if(gsmPara[0] != '\0')
|
||||
{
|
||||
MLOGD("enMmcLocation:%d\n%s\n", enMmcLocation, gsmPara);
|
||||
}
|
||||
timeout_count++;
|
||||
if(timeout_count > 200)
|
||||
{
|
||||
|
@ -453,8 +457,8 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
SF_COMM_CHECK_POINTER(pfnParam->pfn_AT_instruction_exit,SF_FAILURE);
|
||||
SF_COMM_CHECK_POINTER(pNowTime,SF_FAILURE);
|
||||
UINT16 timeout_count = 0;
|
||||
UINT16 callTime = 0;
|
||||
SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
// UINT16 callTime = 0;
|
||||
// SF_CHAR gsmPara[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
UINT16 sts =1;
|
||||
UINT16 calltime = 0;
|
||||
//UINT8 pdpdeact = 0;
|
||||
|
@ -463,7 +467,16 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
SF_PDT_PARAM_STATISTICS_S *pStaticParam = pfnParam->pstaticParam;
|
||||
|
||||
SIM_SEARCH_GPS_e enMmcLocation = SIM_SEARCH_GPS_FIRST;
|
||||
|
||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
||||
// UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
// SF_DEBUG("Sim4gApn=%s", pPara->Sim4gApn);
|
||||
|
||||
sf_hal_ttyusb2_read(gsmPara, 200);//clean uart read buff
|
||||
sf_gsm_para_buff_clear();
|
||||
|
||||
while(sts && sf_app_while_flag())
|
||||
{
|
||||
if(SF_TRUE == pfnParam->pfn_AT_instruction_exit(0))
|
||||
|
@ -476,34 +489,34 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
{
|
||||
case SIM_SEARCH_GPS_FIRST:
|
||||
enMmcLocation = SIM_SEARCH_GPS_DELRAM;
|
||||
sprintf(ttyData, "AT+QFDEL=\"RAM:*\"\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QFDEL=\"RAM:*\"\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DELRAM:
|
||||
if(strstr(ttyData,"OK") || strstr(ttyData,"ERROR"))
|
||||
if(strstr(gsmPara,"OK") || strstr(gsmPara,"ERROR"))
|
||||
{
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
{
|
||||
sprintf(ttyData, "AT+QHTTPCFG=\"contextid\",%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QHTTPCFG=\"contextid\",%d\r", V_PDP_INDEX);
|
||||
}else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
{
|
||||
sprintf(ttyData, "AT+QHTTPCFG=\"contextid\",%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QHTTPCFG=\"contextid\",%d\r", A_PDP_INDEX);
|
||||
}else
|
||||
{
|
||||
sprintf(ttyData, "AT+QHTTPCFG=\"contextid\",%d\r", E_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QHTTPCFG=\"contextid\",%d\r", E_PDP_INDEX);
|
||||
}
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_REQUESTHEADER;
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_REQUESTHEADER:
|
||||
sprintf(ttyData, "AT+QHTTPCFG=\"requestheader\",0\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QHTTPCFG=\"requestheader\",0\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD1;
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD1:
|
||||
sprintf(ttyData, "AT+QHTTPCFG=\"responseheader\",0\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QHTTPCFG=\"responseheader\",0\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD2;
|
||||
break;
|
||||
|
||||
|
@ -512,79 +525,79 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
SLOGD("APN:%s \n", pStaticParam->ApnGPRS);
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
{
|
||||
sprintf(ttyData, "AT+QICSGP=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QICSGP=%d\r", V_PDP_INDEX);
|
||||
enMmcLocation = SIM_SEARCH_GPS_CSGP;
|
||||
}
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
{
|
||||
sprintf(ttyData, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r", A_PDP_INDEX,
|
||||
sprintf(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r", A_PDP_INDEX,
|
||||
pStaticParam->ApnGPRS, pStaticParam->ApnUsername, pStaticParam->ApnPassword);
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD3;;
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(ttyData, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r", E_PDP_INDEX,
|
||||
sprintf(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r", E_PDP_INDEX,
|
||||
pStaticParam->ApnGPRS, pStaticParam->ApnUsername, pStaticParam->ApnPassword);
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD3;
|
||||
}
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_CSGP:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
if(strstr(ttyData, "+QICSGP: 0") || strstr(ttyData, "+QICSGP: 1,\"\""))
|
||||
if(strstr(gsmPara, "+QICSGP: 0") || strstr(gsmPara, "+QICSGP: 1,\"\""))
|
||||
{
|
||||
sprintf(ttyData, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r",V_PDP_INDEX,
|
||||
sprintf(gsmPara, "AT+QICSGP=%d,1,\"%s\",\"%s\",\"%s\",1\r",V_PDP_INDEX,
|
||||
pStaticParam->ApnGPRS, pStaticParam->ApnUsername, pStaticParam->ApnPassword);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(ttyData, "AT\r");
|
||||
sprintf(gsmPara, "AT\r");
|
||||
}
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD3;
|
||||
}
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_DOWNLOAD3:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", V_PDP_INDEX);
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", A_PDP_INDEX);
|
||||
else
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD4;
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_DOWNLOAD4:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
int len=0;
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD5;
|
||||
len = strlen("http://xtrapath3.izatcloud.net/xtra3grc.bin");
|
||||
sprintf(ttyData, "AT+QHTTPURL=%d,80\r", len);
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QHTTPURL=%d,80\r", len);
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
}
|
||||
else if(strstr(ttyData,"ERROR"))
|
||||
else if(strstr(gsmPara,"ERROR"))
|
||||
{
|
||||
calltime++;
|
||||
SLOGD("calltime++=%d\n",calltime);
|
||||
if(calltime<6)
|
||||
{
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", V_PDP_INDEX);
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", A_PDP_INDEX);
|
||||
else
|
||||
sprintf(ttyData, "AT+QIACT=%d\r", E_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIACT=%d\r", E_PDP_INDEX);
|
||||
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
sf_sleep_ms(1700);
|
||||
}
|
||||
else
|
||||
|
@ -598,28 +611,28 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_DOWNLOAD5:
|
||||
if(strstr(ttyData, "CONNECT"))
|
||||
if(strstr(gsmPara, "CONNECT"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD6;
|
||||
sprintf(ttyData, "http://xtrapath3.izatcloud.net/xtra3grc.bin\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "http://xtrapath3.izatcloud.net/xtra3grc.bin\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD6:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD7;
|
||||
sprintf(ttyData, "AT+QHTTPGET=80\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QHTTPGET=80\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD7:
|
||||
if(strstr(ttyData, "+QHTTPGET: 0,200"))
|
||||
if(strstr(gsmPara, "+QHTTPGET: 0,200"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD8;
|
||||
sprintf(ttyData, "AT+QHTTPREADFILE=\"RAM:xtra2.bin\",80\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QHTTPREADFILE=\"RAM:xtra2.bin\",80\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
else
|
||||
|
@ -633,94 +646,94 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
SLOGE("[ERROR]GPS QHTTPGET time out\n");
|
||||
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
else
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD8:
|
||||
if(strstr(ttyData,"+QHTTPREADFILE: 0"))
|
||||
if(strstr(gsmPara,"+QHTTPREADFILE: 0"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD10;
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
else
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
else if(strstr(ttyData,"+QHTTPREADFILE: 702") != NULL)
|
||||
else if(strstr(gsmPara,"+QHTTPREADFILE: 702") != NULL)
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
SLOGE("[ERROR]GPS +QHTTPREADFILE: 702\n");
|
||||
if(strstr(pStaticParam->ApnGPRS, V_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", V_PDP_INDEX);
|
||||
else if(strstr(pStaticParam->ApnGPRS, A_MODULE_APN))
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", A_PDP_INDEX);
|
||||
else
|
||||
sprintf(ttyData, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QIDEACT=%d\r", E_PDP_INDEX);
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD9:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_DOWNLOAD10;
|
||||
sprintf(ttyData, "AT+QGPSXTRA=1\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSXTRA=1\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_DOWNLOAD10:
|
||||
if(strstr(ttyData,"OK"))
|
||||
if(strstr(gsmPara,"OK"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_GPS_XTRADATA2;
|
||||
sprintf(ttyData, "AT+QGPSXTRATIME=0,\"%04d/%02d/%02d,%02d:%02d:%02d\",1,1,5\r",
|
||||
sprintf(gsmPara, "AT+QGPSXTRATIME=0,\"%04d/%02d/%02d,%02d:%02d:%02d\",1,1,5\r",
|
||||
pNowTime->Year, pNowTime->Mon, pNowTime->Day, pNowTime->Hour, pNowTime->Min, pNowTime->Sec);
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_GPS_XTRADATA1:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_GPS_XTRADATA2;
|
||||
sprintf(ttyData, "AT\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
else if(strstr(ttyData, "+QGPSURC") != 0 )
|
||||
else if(strstr(gsmPara, "+QGPSURC") != 0 )
|
||||
{
|
||||
printf("SIYUAN:qrc");
|
||||
enMmcLocation = SIM_SEARCH_GPS_GPS_XTRADATA2;
|
||||
sprintf(ttyData, "AT\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_GPS_XTRADATA2:
|
||||
if(strstr(ttyData, "OK"))
|
||||
if(strstr(gsmPara, "OK"))
|
||||
{
|
||||
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
sprintf(ttyData, "AT+QGPSXTRADATA=\"RAM:xtra2.bin\"\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSXTRADATA=\"RAM:xtra2.bin\"\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
break;
|
||||
case SIM_SEARCH_GPS_ON:
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
sprintf(ttyData, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
case SIM_SEARCH_GPS_EXIT:
|
||||
sts = 0;
|
||||
|
@ -728,11 +741,14 @@ SINT32 eg91_gps_search(SF_FN_PARAM_S *pfnParam,SF_PARA_TIME_S *pNowTime,UINT8 au
|
|||
default:
|
||||
break;
|
||||
}
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", ttyData);
|
||||
memset(ttyData,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(ttyData, 200);
|
||||
SLOGD("callTIme:%d, location:%d\n", callTime, enMmcLocation);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", ttyData);
|
||||
sf_gsm_para_buff_clear();
|
||||
//sf_hal_ttyusb2_read(gsmPara, 200);
|
||||
sf_hal_ttyusb2_read_buf(&ttyData);
|
||||
|
||||
if(gsmPara[0] != '\0')
|
||||
{
|
||||
MLOGD("enMmcLocation:%d\n%s\n", enMmcLocation, gsmPara);
|
||||
}
|
||||
timeout_count++;
|
||||
if(timeout_count > 200)
|
||||
{
|
||||
|
@ -750,7 +766,7 @@ SINT32 eg91_gps_preconfig(SF_FN_PARAM_S *pfnParam)
|
|||
SF_COMM_CHECK_POINTER(pfnParam->pfn_AT_instruction_exit,SF_FAILURE);
|
||||
|
||||
UINT16 timeout_count = 0;
|
||||
SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
SF_CHAR gsmPara[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
UINT16 sts =1;
|
||||
UINT16 calltime = 0;
|
||||
UINT8 pdpdeact = 0;
|
||||
|
@ -772,47 +788,47 @@ SINT32 eg91_gps_preconfig(SF_FN_PARAM_S *pfnParam)
|
|||
{
|
||||
case SIM_SEARCH_GPS_FIRST:
|
||||
enMmcLocation = SIM_SEARCH_GPS_ON;
|
||||
sprintf(ttyData, "%s", "AT+QGPSCFG=\"outport\",\"uartdebug\"\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "%s", "AT+QGPSCFG=\"outport\",\"uartdebug\"\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
case SIM_SEARCH_GPS_ON:
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
sprintf(ttyData, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_LOC:
|
||||
if(strstr(ttyData,"OK"))
|
||||
if(strstr(gsmPara,"OK"))
|
||||
{
|
||||
enMmcLocation = SIM_SEARCH_GPS_END;
|
||||
sprintf(ttyData, "AT+QGPSLOC=2\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSLOC=2\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
calltime = 0;
|
||||
}
|
||||
else if(strstr(ttyData, "ERROR"))
|
||||
else if(strstr(gsmPara, "ERROR"))
|
||||
{
|
||||
if(sendTryTime == 0)
|
||||
{
|
||||
calltime = 0;
|
||||
sendTryTime++;
|
||||
enMmcLocation = SIM_SEARCH_GPS_ON;
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SLOGE("[ERROR] GPS ON ERR, Try:%d\n", sendTryTime);
|
||||
}else
|
||||
{
|
||||
calltime = 0;
|
||||
sendTryTime = 0;
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SLOGE("[ERROR] GPS ON ERR\n");
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case SIM_SEARCH_GPS_END:
|
||||
if(strstr(ttyData, "ERROR") != 0)
|
||||
if(strstr(gsmPara, "ERROR") != 0)
|
||||
{
|
||||
//3minite timeout.
|
||||
if(calltime > GPS_SEARCH_TIMEOUT_TIMES)
|
||||
|
@ -820,28 +836,28 @@ SINT32 eg91_gps_preconfig(SF_FN_PARAM_S *pfnParam)
|
|||
calltime = 0;
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
pStaticParam->DialyReportFailCnt++;
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SLOGE("[ERROR] GPS timeout\n");
|
||||
sts = 0;
|
||||
ret = SF_GPS_ERROR_AT_TIMEOUT;
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(ttyData, "AT+QGPSLOC=2\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSLOC=2\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
calltime++;
|
||||
sf_sleep_ms(100);
|
||||
|
||||
}
|
||||
else if(strstr(ttyData, "+QGPSLOC:") != 0)
|
||||
else if(strstr(gsmPara, "+QGPSLOC:") != 0)
|
||||
{
|
||||
printf("--------Loc:----------------------\n");
|
||||
|
||||
SF_CHAR *str=NULL;
|
||||
strtok(ttyData,",");
|
||||
strtok(gsmPara,",");
|
||||
str = strtok(NULL,",");
|
||||
if(NULL!=str)
|
||||
{
|
||||
|
@ -860,8 +876,8 @@ SINT32 eg91_gps_preconfig(SF_FN_PARAM_S *pfnParam)
|
|||
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
calltime = 0;
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
printf("SIYUAN-Bob:latitude=%s,longitude=%s\n", pStaticParam->Latitude, pStaticParam->Longitude);
|
||||
}
|
||||
|
@ -877,11 +893,11 @@ SINT32 eg91_gps_preconfig(SF_FN_PARAM_S *pfnParam)
|
|||
default:
|
||||
break;
|
||||
}
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", ttyData);
|
||||
memset(ttyData,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(ttyData, 200);
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
memset(gsmPara,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(gsmPara, 200);
|
||||
SLOGD("callTIme:%d, location:%d\n", calltime, enMmcLocation);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", ttyData);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
timeout_count++;
|
||||
if(timeout_count > 200)
|
||||
{
|
||||
|
@ -900,7 +916,7 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
SF_COMM_CHECK_POINTER(pfnParam->pfn_AT_instruction_exit,SF_FAILURE);
|
||||
|
||||
UINT16 timeout_count = 0;
|
||||
SF_CHAR ttyData[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
SF_CHAR gsmPara[SF_TTYUSB_RECV_MAX] = { 0 };
|
||||
UINT16 sts =1;
|
||||
UINT16 calltime = 0;
|
||||
//UINT8 pdpdeact = 0;
|
||||
|
@ -922,16 +938,16 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
{
|
||||
case SIM_SEARCH_GPS_ON:
|
||||
enMmcLocation = SIM_SEARCH_GPS_LOC;
|
||||
sprintf(ttyData, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPS=1\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
break;
|
||||
case SIM_SEARCH_GPS_LOC:
|
||||
|
||||
#ifndef SF_GPS_TEST
|
||||
enMmcLocation = SIM_SEARCH_GPS_END;
|
||||
#endif
|
||||
sprintf(ttyData, "AT+QGPSLOC?\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSLOC?\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
#ifdef SF_GPS_TEST
|
||||
calltime++;
|
||||
|
@ -940,7 +956,7 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
#endif
|
||||
break;
|
||||
case SIM_SEARCH_GPS_END:
|
||||
if(strstr(ttyData, "ERROR") != 0)
|
||||
if(strstr(gsmPara, "ERROR") != 0)
|
||||
{
|
||||
|
||||
if(calltime > GPS_SEARCH_TIMEOUT_TIMES)
|
||||
|
@ -949,26 +965,26 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
pStaticParam->DialyReportFailCnt++;
|
||||
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SLOGE("[ERROR] GPS timeout\n");
|
||||
ret = SF_GPS_ERROR_AT_TIMEOUT;
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(ttyData, "AT+QGPSLOC?\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSLOC?\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
}
|
||||
calltime++;
|
||||
sf_sleep_ms(100);
|
||||
|
||||
}
|
||||
else if(strstr(ttyData, "+QGPSLOC:") != 0)
|
||||
else if(strstr(gsmPara, "+QGPSLOC:") != 0)
|
||||
{
|
||||
|
||||
SF_CHAR *str=NULL;
|
||||
strtok(ttyData,",");
|
||||
strtok(gsmPara,",");
|
||||
str = strtok(NULL,",");
|
||||
if(NULL!=str)
|
||||
{
|
||||
|
@ -985,8 +1001,8 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
|
||||
enMmcLocation = SIM_SEARCH_GPS_EXIT;
|
||||
calltime = 0;
|
||||
sprintf(ttyData, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(ttyData, strlen(ttyData));
|
||||
sprintf(gsmPara, "AT+QGPSEND\r");
|
||||
sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
|
||||
printf("SIYUAN-Bob:latitude=%s,longitude=%s\n", pStaticParam->Latitude, pStaticParam->Longitude);
|
||||
}
|
||||
|
@ -997,11 +1013,11 @@ SINT32 eg91_gps_search_result(SF_FN_PARAM_S *pfnParam)
|
|||
default:
|
||||
break;
|
||||
}
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", ttyData);
|
||||
memset(ttyData,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(ttyData, 200);
|
||||
SLOGD("sendBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
memset(gsmPara,'\0',SF_TTYUSB_RECV_MAX);
|
||||
sf_hal_ttyusb2_read(gsmPara, 200);
|
||||
SLOGD("callTIme:%d, location:%d\n", calltime, enMmcLocation);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", ttyData);
|
||||
SLOGD("revBuf******\n %s \n*********************\n\n", gsmPara);
|
||||
#ifndef SF_GPS_TEST
|
||||
timeout_count++;
|
||||
#endif
|
||||
|
@ -1030,7 +1046,7 @@ UINT32 sf_gps_close(void)
|
|||
SIM_SEARCH_GPS_e eSmsLocation = SIM_SEARCH_GPS_END;
|
||||
int ttyRet = 0;
|
||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
||||
|
|
|
@ -3296,7 +3296,7 @@ SINT32 sf_net_regist_manual(void)
|
|||
char *pTemp = NULL;
|
||||
char *delim = NULL;
|
||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 500, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 500, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
SF_LOG(" s\n");
|
||||
|
||||
|
@ -4998,7 +4998,7 @@ SINT32 sf_get_utc(VOID)
|
|||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
||||
UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
|
||||
sf_gsm_para_buff_clear();
|
||||
|
@ -5135,7 +5135,7 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time)
|
|||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
||||
UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
// SF_DEBUG("Sim4gApn=%s", pPara->Sim4gApn);
|
||||
|
||||
|
@ -5292,15 +5292,16 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time)
|
|||
case SMS_SIM_INIT_QIDEACT:
|
||||
SF_GEN_NTP_QIDEACT:
|
||||
// SF_DEBUG("modeule ver:%s", pPara->ModuleVer);
|
||||
if(SF_STRNCMP(pPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q, 6) == 0)
|
||||
{
|
||||
//eg915q not eact pdp
|
||||
sprintf((char *)gsmPara, "AT\r");
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf((char *)gsmPara, "AT+QIDEACT=%d\r", pdpIndex);
|
||||
}
|
||||
// if(SF_STRNCMP(pPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q, 6) == 0)
|
||||
// {
|
||||
// //eg915q not eact pdp
|
||||
// sprintf((char *)gsmPara, "AT\r");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// sprintf((char *)gsmPara, "AT+QIDEACT=%d\r", pdpIndex);
|
||||
// }
|
||||
sprintf((char *)gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
eSmsLocation = SMS_SIM_INIT_EXIT;
|
||||
|
@ -5473,7 +5474,7 @@ UINT32 sf_sim_qsclk(UINT8 mode) //mode = 2, gprsmode = 1
|
|||
SF_SIM_E eSmsLocation = SMS_SIM_INIT_DTRUP;
|
||||
int ttyRet = 0;
|
||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
||||
|
|
|
@ -54,6 +54,7 @@ extern "C" {
|
|||
#include "curl/curl.h"
|
||||
#include "sf_4G_sms_lpa_cmd.h"
|
||||
#include "sf_commu_mcu.h"
|
||||
#include "sf_otamng.h"
|
||||
|
||||
/**************************************************************************
|
||||
* C O N S T A N T S *
|
||||
|
@ -66,36 +67,7 @@ extern "C" {
|
|||
/**************************************************************************
|
||||
* D A T A T Y P E S *
|
||||
**************************************************************************/
|
||||
#define MODULE_VER "EG"
|
||||
|
||||
#define MODULE_VER_FLG1 "FAR"
|
||||
#define MODULE_VER_FLG2 "GAR"
|
||||
|
||||
#define EG91E_MODULE_VER "EG91E"
|
||||
#define EG91V_MODULE_VER "EG91V"
|
||||
#define EG91A_MODULE_VER "EG91NA"
|
||||
#define EC25E_MODULE_VER "EC25E"
|
||||
#define EC25V_MODULE_VER "EC25V"
|
||||
#define EC25A_MODULE_VER "EC25A"
|
||||
|
||||
#define CAM_OTA_DIR "CAM_OTA_S520_AX"
|
||||
#define QFIREHOSE_OTA_DIR "QFIREHOSE_OTA_S520_AX"
|
||||
#define DFOTA_OTA_DIR "DFOTA_S520_AX"
|
||||
|
||||
|
||||
#define OTA_FTP_CFGFILENAME_EG91E "DFOTA_EG91E.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91E "module_EG91E.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EG91V "DFOTA_EG91V.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91V "module_EG91V.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EG91A "DFOTA_EG91NA.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EG91A "module_EG91NA.zip"
|
||||
|
||||
#define OTA_FTP_CFGFILENAME_EC25E "DFOTA_E.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25E "module_E.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EC25V "DFOTA_V.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25V "module_V.zip"
|
||||
#define OTA_FTP_CFGFILENAME_EC25A "DFOTA_A.CFG"
|
||||
#define OTA_FTP_UPDATAFILENAME_EC25A "module_A.zip"
|
||||
/**************************************************************************
|
||||
* G L O B A L D A T A *
|
||||
**************************************************************************/
|
||||
|
@ -1360,7 +1332,10 @@ SINT32 sf_send_file_to_ftp(UINT8 mode)
|
|||
SF_PDT_PARAM_STATISTICS_S *pSifarPara = sf_statistics_param_get();
|
||||
SINT64 sendEndTime = 0;
|
||||
MLOGD("start\n");
|
||||
|
||||
if(sf_get_mode_flag())
|
||||
{
|
||||
time(&sendStartTime);
|
||||
}
|
||||
ssl = ((2 == puiPara->FtpSwitch) ? 1 : 0);
|
||||
gprsMode = 0;//puiPara->GprsMode;
|
||||
// printf("[%s:%d] ssl:%d,GprsMode:%d\n", __FUNCTION__, __LINE__, ssl, gprsMode);
|
||||
|
@ -1435,11 +1410,15 @@ SINT32 sf_send_file_to_ftp(UINT8 mode)
|
|||
//sendEndTime = clock();
|
||||
time(&sendEndTime);
|
||||
double elapsed_time = sf_sys_s_time_get(sendEndTime);
|
||||
pSifarPara->TotalTransmissionTime += elapsed_time;
|
||||
pSifarPara->ThumbnailTransmissionTime += elapsed_time;
|
||||
if(!sf_get_mode_flag())
|
||||
{
|
||||
pSifarPara->TotalTransmissionTime += elapsed_time;
|
||||
pSifarPara->ThumbnailTransmissionTime += elapsed_time;
|
||||
|
||||
pSifarPara->picSendTimeCount +=elapsed_time;
|
||||
pSifarPara->sendThumbnailTimeCount += elapsed_time;
|
||||
}
|
||||
|
||||
pSifarPara->picSendTimeCount +=elapsed_time;
|
||||
pSifarPara->sendThumbnailTimeCount += elapsed_time;
|
||||
MLOGD("SendTime:%d s picSendTimeCount:%d s sendThumbnailTimeCount:%d s\n", elapsed_time, pSifarPara->picSendTimeCount,pSifarPara->sendThumbnailTimeCount);
|
||||
time(&sendStartTime);
|
||||
}
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
#include "sf_battery.h"
|
||||
#include "sf_system.h"
|
||||
#include "sf_4G_sms_lpa_cmd.h"
|
||||
|
||||
#include "sf_otamng.h"
|
||||
/**************************************************************************
|
||||
* C O N S T A N T S *
|
||||
**************************************************************************/
|
||||
|
@ -1473,7 +1473,7 @@ SINT32 sf_sms_read_message(void)
|
|||
int msmtmp[255] = { 0 };
|
||||
int msmmb = 0;
|
||||
//static int testflag = 0;
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 2000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 2000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
UIMenuStoreInfo *pPara = sf_app_ui_para_get();
|
||||
SF_PDT_PARAM_STATISTICS_S *pSifarPara = sf_statistics_param_get();
|
||||
|
@ -2505,7 +2505,7 @@ SINT32 sf_power_off_module_ota(void)
|
|||
else
|
||||
{
|
||||
ret = sf_4g_module_ota_ftp();//need restart module
|
||||
|
||||
// ret = sf_module_ota_ftp();
|
||||
//if(ret == OTA_UPDATED_ERROR || ret == OTA_SUCCESS || ret == OTA_VERTION_ERROR || ret == OTA_TIME_OUT)
|
||||
{
|
||||
if(CameraCmd.setPara)
|
||||
|
|
|
@ -886,6 +886,15 @@ static SINT32 sf_app_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf)
|
|||
sf_do_4g_upgrade_thread();
|
||||
}
|
||||
break;
|
||||
case SF_PARA_CMD_MOUP_OTA:
|
||||
ModuleUpdating = pMessageBuf->arg2;
|
||||
MLOGD("ModuleUpdating = %d\n",ModuleUpdating);
|
||||
|
||||
if(ModuleUpdating){
|
||||
sf_do_4g_upgrade_ota_thread();
|
||||
}
|
||||
break;
|
||||
|
||||
case SF_PARA_CMD_IR_LED_STATUS:
|
||||
IsNightLedOn = pMessageBuf->arg2;
|
||||
break;
|
||||
|
|
|
@ -1384,6 +1384,79 @@ void sf_do_4g_upgrade_thread(void)
|
|||
}
|
||||
}
|
||||
|
||||
void* sf_sys_do_4g_upgrade_ota(void *arg)
|
||||
{
|
||||
//int s32Ret = 0;
|
||||
// UINT8 updateFileName[60] = {0};
|
||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||
SLOGW("Begin to do 4G OTA Upgrade!\n");
|
||||
|
||||
if(sf_is_enough_power_to_update() == FALSE)
|
||||
{
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_ERROR);
|
||||
}
|
||||
else{
|
||||
|
||||
//if(sf_is_4g_module_usb_update_file_exist(updateFileName))
|
||||
{
|
||||
if(strncmp(puiPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q, 6) == 0){
|
||||
sf_cmd_4g_usb_boot();
|
||||
}
|
||||
|
||||
// sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 1);
|
||||
// sf_set_module_update(1);
|
||||
//sf_set_send_statu(TRUE);
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_UPDATE);
|
||||
//BKG_PostEvent(NVTEVT_BKW_FW_UPDATE);
|
||||
if(0 != sf_module_ota_ftp()){
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_ERROR);
|
||||
}
|
||||
else {
|
||||
//SysResetFlag();
|
||||
sf_sys_status_led_set(SF_LED_SYS_STATE_NORMAL);
|
||||
}
|
||||
// sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 0);
|
||||
// sf_set_send_statu(FALSE);
|
||||
// sf_set_module_update(0);
|
||||
sf_sleep_ms(1000);
|
||||
//Ux_PostEvent(NVTEVT_SYSTEM_SHUTDOWN, 1, 0);
|
||||
if(PWR_ON_SETUP == sf_poweron_type_get()){
|
||||
sf_set_power_off_flag(1);
|
||||
SF_MESSAGE_BUF_S stMessageBuf = {0};
|
||||
stMessageBuf.cmdId = CMD_POWEROFF;
|
||||
stMessageBuf.arg1 = APP_POWER_OFF_NORMAL;
|
||||
sf_com_message_send_to_cardv(&stMessageBuf);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
ModeuleUpgradeTskParam.IsRun = 0;
|
||||
SLOGW("Begin to do 4G OTA Upgrade e\n");
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void sf_do_4g_upgrade_ota_thread(void)
|
||||
{
|
||||
printf("ModeuleUpgradeTskParam.IsRun:%d\n", ModeuleUpgradeTskParam.IsRun);
|
||||
if(ModeuleUpgradeTskParam.IsRun != 0)
|
||||
{
|
||||
// ModeuleUpgradeTskParam.IsRun = 0;
|
||||
// pthread_join(ModeuleUpgradeTskParam.TskId, NULL);
|
||||
SLOGW("4G OTA Upgrade thread run\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if(!ModeuleUpgradeTskParam.IsRun)
|
||||
{
|
||||
pthread_create(&ModeuleUpgradeTskParam.TskId, NULL, sf_sys_do_4g_upgrade_ota, NULL);
|
||||
ModeuleUpgradeTskParam.IsRun = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/*************************************************
|
||||
Function: sf_wifi_start_to_cardv
|
||||
Description: wifi on
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include <sys/vfs.h>
|
||||
#include<pthread.h>
|
||||
|
||||
#include "sf_param_common.h"
|
||||
#include "sf_type.h"
|
||||
#include "sf_log.h"
|
||||
#include "sf_md5.h"
|
||||
|
@ -21,8 +22,12 @@
|
|||
#include "sf_message_queue.h"
|
||||
#include "sf_http_server.h"
|
||||
//#include "sf_param_common.h"
|
||||
|
||||
|
||||
#include "sf_battery.h"
|
||||
#include "sf_ftp.h"
|
||||
#include "sf_commu_mcu_reg.h"
|
||||
#include "sf_common.h"
|
||||
#include "sf_hal_ttyusb.h"
|
||||
#include "sf_eg91_sim.h"
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
extern "C" {
|
||||
|
@ -30,6 +35,8 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
static SF_OTA_ATTRS stOtaAttrs = {0};
|
||||
extern char logStr[128];
|
||||
extern char gsmPara[GPRS_INFO_LINE_MAX];
|
||||
SINT32 packet_log_printf(UINT8 *pbuf,UINT16 lenth)
|
||||
{
|
||||
UINT16 i= 0;
|
||||
|
@ -631,7 +638,7 @@ SINT32 sf_upgrade_ota_env_set(void)
|
|||
SINT32 sf_upgrade_ota_reset(void)
|
||||
{
|
||||
SF_CHAR data_buff[BUFFER_SIZE] = {0};
|
||||
if(stOtaAttrs.filename == NULL) {
|
||||
if(stOtaAttrs.filename[0] == '\0') {
|
||||
MLOGE("souce filename is null\n");
|
||||
return SF_FAILURE;
|
||||
}
|
||||
|
@ -651,6 +658,886 @@ SINT32 sf_upgrade_ota_deinit(void)
|
|||
return SF_SUCCESS;
|
||||
}
|
||||
|
||||
/*************************************************
|
||||
Function: sf_module_ota_ftp
|
||||
Description: 4g module ftp update
|
||||
Input: N/A
|
||||
Output: N/A
|
||||
Return: N/A
|
||||
Others: N/A
|
||||
*************************************************/
|
||||
SINT32 sf_module_ota_ftp(void)
|
||||
{
|
||||
UINT32 location = OTA_FTP_FRIST;
|
||||
SINT32 sts = OTA_NOUPDATE; /*0:updating 1:no update 2:update fail 3:update success*/
|
||||
UINT32 errorCode = 0;
|
||||
UINT32 calltime=0;
|
||||
UINT32 time = 0;
|
||||
UINT8 cfgfilehandle[5] = {0};
|
||||
UINT8 Version[48] = {0};
|
||||
UINT8 srcVersion[48] = {0};
|
||||
UINT8 desVersion[48] = {0};
|
||||
SINT64 cTime = 0;
|
||||
SINT64 eTime = 0;
|
||||
double elapsed_time = 0;
|
||||
UINT8 autoUpdata=0;
|
||||
|
||||
UINT8 *pTemp = NULL;
|
||||
UINT8 *pTemp1 = NULL;
|
||||
UINT8 modulVerStr[50]= {0};
|
||||
UINT8 ftpIp[40]= {0};
|
||||
UINT8 ftpPort[6]= {0};
|
||||
UINT8 ftpUsername[40]= {0};
|
||||
UINT8 ftpPassword[20]= {0};
|
||||
//UINT8 convertUsername[100]= {0};
|
||||
//UINT8 convertPassword[100]= {0};
|
||||
UINT8 *cfgfilename = NULL;
|
||||
UINT8 *updatafilename = NULL;
|
||||
UINT8 *modeVer = NULL;
|
||||
UINT8 baudrateCheckTime = 0;
|
||||
UINT8 baudrateChangeFlg = 0;
|
||||
UINT8 pdpInedx = 0;
|
||||
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||
SINT32 ttyRet = 0;
|
||||
SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 2000, .len = 255, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara};
|
||||
|
||||
|
||||
SLOGD(" s\n");
|
||||
if(sf_is_enough_power_to_update() == FALSE)
|
||||
{
|
||||
return OTA_BATTERY_LOW;
|
||||
}
|
||||
if(strncmp(puiPara->ModuleVer, GPRS_MODULE_TYPE_EG915Q, 6) == 0)
|
||||
{
|
||||
//eg915q
|
||||
}
|
||||
else
|
||||
{
|
||||
system("killall quectel-CM-EG91");
|
||||
sleep(2);
|
||||
system("ifconfig eth0 down");
|
||||
}
|
||||
if(SF_STRSTR(puiPara->ModuleVer, EC25V_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EC25V;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EC25V;
|
||||
modeVer = (UINT8 *)EC25V_MODULE_VER;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->ModuleVer, EC25A_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EC25A;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EC25A;
|
||||
modeVer = (UINT8 *)EC25A_MODULE_VER;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->ModuleVer, EC25E_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EC25E;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EC25E;
|
||||
modeVer = (UINT8 *)EC25E_MODULE_VER;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->ModuleVer, EG91V_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EG91V;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EG91V;
|
||||
modeVer = (UINT8 *)EG91V_MODULE_VER;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->ModuleVer, EG91A_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EG91A;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EG91A;
|
||||
modeVer = (UINT8 *)EG91A_MODULE_VER;
|
||||
}
|
||||
else if(SF_STRSTR(puiPara->ModuleVer, EG91E_MODULE_VER))
|
||||
{
|
||||
cfgfilename = (UINT8 *)OTA_FTP_CFGFILENAME_EG91E;
|
||||
updatafilename = (UINT8 *)OTA_FTP_UPDATAFILENAME_EG91E;
|
||||
modeVer = (UINT8 *)EG91E_MODULE_VER;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("module ver not support update\n");
|
||||
return sts;
|
||||
}
|
||||
|
||||
printf("cfgfilename=%s\n", cfgfilename);
|
||||
printf("updatafilename=%s\n", updatafilename);
|
||||
|
||||
SF_STRCPY(ftpIp, puiPara->OtaFtpIp);
|
||||
SF_STRCPY(ftpPort, puiPara->OtaFtpPort);
|
||||
SF_STRCPY(ftpUsername, puiPara->OtaFtpUserName);
|
||||
SF_STRCPY(ftpPassword, puiPara->OtaFtpPassWord);
|
||||
|
||||
sf_set_module_update(1);
|
||||
sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 1);
|
||||
sts = OTA_UPDATING;
|
||||
|
||||
while(sts == OTA_UPDATING)
|
||||
{
|
||||
|
||||
switch(location)
|
||||
{
|
||||
case OTA_FTP_FRIST:
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
location = OTA_FTP_CURVER;
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
break;
|
||||
|
||||
case OTA_FTP_CURVER:
|
||||
if(SF_STRSTR(gsmPara,"OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QGMR\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QICSGP;
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QICSGP:
|
||||
if(SF_STRSTR(gsmPara,"OK"))
|
||||
{
|
||||
pTemp = SF_STRSTR(gsmPara, MODULE_VER);
|
||||
|
||||
if(pTemp != NULL)
|
||||
{
|
||||
pTemp1 = SF_STRTOK(pTemp, "\r");
|
||||
printf("pTemp1=%s\n", pTemp1);
|
||||
SF_STRCPY(Version, pTemp1);
|
||||
printf("Version: %s\n", Version);
|
||||
|
||||
if(SF_STRSTR(puiPara->Sim4gApn, APN_4G_VERIZON))
|
||||
{
|
||||
pdpInedx = V_PDP_INDEX;
|
||||
SF_SPRINTF(gsmPara,"AT+QICSGP=%d\r", V_PDP_INDEX);
|
||||
location=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->Sim4gUsr,puiPara->Sim4gPwd);
|
||||
location=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->Sim4gUsr,puiPara->Sim4gPwd);
|
||||
location=OTA_FTP_QIACT;
|
||||
}
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("Module version unknow error\n");
|
||||
errorCode = SF_OTA_ERROR_VERTION_INVAlID;
|
||||
sts = OTA_NOUPDATE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QGMR\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 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->Sim4gUsr,puiPara->Sim4gPwd);
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
}
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QIACT;
|
||||
}
|
||||
break;
|
||||
case OTA_FTP_QIACT:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIACT=%d\r", pdpInedx);
|
||||
location = OTA_FTP_QFTPCFG1;
|
||||
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
calltime=0;
|
||||
}
|
||||
|
||||
break;
|
||||
case OTA_FTP_QFTPCFG1:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"contextid\",%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPCFG2;
|
||||
calltime=0;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
calltime++;
|
||||
if(calltime < 6)
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIACT=%d\r", pdpInedx);
|
||||
}
|
||||
else
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
calltime=0;
|
||||
errorCode = SF_OTA_ERROR_QIACT;
|
||||
SLOGE("[ERROR]OTA_FTP QIACT over try 6 times");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
}
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 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, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPCFG3;
|
||||
}
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPCFG3:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"filetype\",1\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPCFG4;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPCFG4:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"transmode\",1\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location=OTA_FTP_QFTPCFG5;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPCFG5:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCFG=\"restenable\",0\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location=OTA_FTP_QFTPOPEN;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPOPEN:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPOPEN=\"%s\",%s\r", ftpIp, ftpPort);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPNLST;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPNLST:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPOPEN:"))
|
||||
{
|
||||
if(SF_STRSTR(gsmPara, "+QFTPOPEN: 0"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPGET=\"%s/%s\",\"RAM:%s\"\r", DFOTA_OTA_DIR, cfgfilename, cfgfilename);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPCLOSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_OPEN;
|
||||
SLOGE("OTA_FTP Open Failed.");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_OPEN;
|
||||
SLOGE("OTA_FTP QFTPOPEN CME ERROR.");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFTPGETCFG:
|
||||
if(SF_STRSTR(gsmPara, "+QFTPNLST:"))
|
||||
{
|
||||
if((SF_STRSTR(gsmPara, cfgfilename)!= NULL) && (SF_STRSTR(gsmPara, updatafilename)!= NULL))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPGET=\"%s/%s\",\"RAM:%s\"\r", DFOTA_OTA_DIR, cfgfilename, cfgfilename);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFTPCLOSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_NLST;
|
||||
SLOGE("OTA_FTP NO NEED UPDATA FILE.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_NLST;
|
||||
SLOGE("OTA_FTP QFTPNLST CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case 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, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QIDEACT;
|
||||
sf_sleep_ms(200);
|
||||
}
|
||||
else
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
SLOGE("OTA_FTP GET CFG FILE FAIL.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
sf_sleep_ms(200);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location= OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_FTP_GET;
|
||||
SLOGE("OTA_FTP QFTPGET CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFTPCLOSE\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
sf_sleep_ms(200);
|
||||
}
|
||||
|
||||
break;
|
||||
case OTA_FTP_QIDEACT:
|
||||
//if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
calltime = 0;
|
||||
|
||||
SF_SPRINTF(gsmPara, "AT+QIDEACT=%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
|
||||
if(errorCode == 0)
|
||||
location = OTA_FTP_OPENCFG;
|
||||
else
|
||||
location = OTA_FTP_END;
|
||||
}
|
||||
|
||||
break;
|
||||
case OTA_FTP_OPENCFG:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFOPEN=\"RAM:%s\",2\r", cfgfilename);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_SEEKCFG;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
calltime++;
|
||||
if(calltime < 6)
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QIDEACT=%d\r", pdpInedx);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
location = OTA_FTP_END;
|
||||
calltime=0;
|
||||
errorCode = SF_OTA_ERROR_FTP_QIDEACT;
|
||||
SLOGE("[ERROR]OTA_FTP QIDEACT over try 6 times");
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_SEEKCFG:
|
||||
if(SF_STRSTR(gsmPara, "+QFOPEN:"))
|
||||
{
|
||||
pTemp = SF_STRSTR(gsmPara, "+QFOPEN: ");
|
||||
SF_STRNCPY(cfgfilehandle, pTemp+9, 4);
|
||||
printf("cfgfilehandle=%s\n",cfgfilehandle);
|
||||
|
||||
SF_SPRINTF(gsmPara, "AT+QFSEEK=%s,10,0\r", cfgfilehandle);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_READCFG;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
SLOGE("OTA_FTP QFOPEN CME ERROR.");
|
||||
location= OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_OPEN;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_READCFG:
|
||||
if(SF_STRSTR(gsmPara, "OK"))
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QFREAD=%s,117\r", cfgfilehandle);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_CLOSECFG;
|
||||
sf_sleep_ms(500);
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
location= OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_QFSEEK;
|
||||
SLOGE("OTA_FTP QFSEEK CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFCLOSE=%s\r", cfgfilehandle);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_CLOSECFG:
|
||||
if(SF_STRSTR(gsmPara, "CONNECT 117") !=NULL)
|
||||
{
|
||||
pTemp = SF_STRSTR(gsmPara, "CONNECT 117");
|
||||
|
||||
if(pTemp[13] == 1)
|
||||
autoUpdata = 1;
|
||||
// printf("pTemp=%s\n",pTemp+30);
|
||||
pTemp+=32;
|
||||
// pTemp = SF_STRSTR(pTemp, modeVer);
|
||||
int mm = 0;
|
||||
while((pTemp != NULL) && (mm < 60))
|
||||
{
|
||||
printf("%s",pTemp++);
|
||||
if(SF_STRSTR(pTemp, modeVer))
|
||||
{
|
||||
printf("tmp:%s",pTemp);
|
||||
break;
|
||||
}
|
||||
mm++;
|
||||
}
|
||||
printf("\n");
|
||||
if((pTemp != NULL))
|
||||
{
|
||||
snprintf((char *)srcVersion, sizeof(srcVersion), "%s", (char *)pTemp);
|
||||
snprintf((char *)desVersion, sizeof(desVersion), "%s", (char *)pTemp+48);
|
||||
}
|
||||
|
||||
|
||||
// SF_STRCPY(srcVersion, pTemp+35);
|
||||
// SF_STRCPY(desVersion, pTemp+35+48);
|
||||
|
||||
printf("autoUpdata=%d\n",autoUpdata);
|
||||
printf("srcVersion=%s\n",srcVersion);
|
||||
printf("dstVersion=%s\n",desVersion);
|
||||
|
||||
SF_SPRINTF(gsmPara, "AT+QFCLOSE=%s\r", cfgfilehandle);
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_QFOTADL;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "CONNECT"))
|
||||
{
|
||||
printf("DFOTA.CFG READ error\n");
|
||||
printf("gsmPara=%s\n",gsmPara);
|
||||
SLOGE("OTA_FTP CFG FILE FORMAT ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFCLOSE=%s\r", cfgfilehandle);
|
||||
location= OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_CFGFORMAT;
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara, "+CME ERROR"))
|
||||
{
|
||||
SLOGE("OTA_FTP QFREAD CME ERROR.");
|
||||
SF_SPRINTF(gsmPara, "AT+QFCLOSE=%s\r", cfgfilehandle);
|
||||
location= OTA_FTP_END;
|
||||
errorCode = SF_OTA_ERROR_FTP_QFREAD;
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_QFOTADL:
|
||||
//if((ConfigureModeFlag || module_updata_mms_cmd == 1) || ((StartMode == 8) && (autoUpdata == 1)))
|
||||
{
|
||||
if(SF_STRCMP(srcVersion, Version)==0)
|
||||
{
|
||||
/*if(ConfigureModeFlag)
|
||||
{
|
||||
appOsdLib_OsdLayerShapeClear(APP_OSD_SHAPE_RECT, 0, 104, 320, 32, 0, 0);
|
||||
appOsdLib_TextIDDraw(320/2, 240/2, SP5K_GFX_ALIGN_CENTER, ID_STR_UPDATING___);
|
||||
}*/
|
||||
//app_FTP_Info_Convert(ftpUsername, convertUsername);
|
||||
//app_FTP_Info_Convert(ftpPassword, convertPassword);
|
||||
//SF_SPRINTF(gsmPara, "AT+QFOTADL=\"FTP://%s:%s@%s:%s/DFOTA/%s\"\r", convertUsername, convertPassword, ftpIp, ftpPort,updatafilename);
|
||||
SF_SPRINTF(gsmPara, "AT+QFOTADL=\"FTP://%s:%s@%s:%s/%s/%s\"\r", ftpUsername, ftpPassword, ftpIp, ftpPort, DFOTA_OTA_DIR, updatafilename);
|
||||
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_DOWNLOAD;
|
||||
}
|
||||
else
|
||||
{
|
||||
sts = OTA_NOUPDATE;
|
||||
errorCode = SF_OTA_ERROR_VERTION;
|
||||
printf("src version not equal\n");
|
||||
}
|
||||
|
||||
}
|
||||
/*else
|
||||
{
|
||||
printf("NO NEED AUTO UPDATA\n");
|
||||
sts = OTA_NOUPDATE;
|
||||
}*/
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_DOWNLOAD:
|
||||
if(SF_STRSTR(gsmPara,"OK"))
|
||||
{
|
||||
calltime = 0;
|
||||
time = 0;
|
||||
sf_mcu_wdg_set(5);
|
||||
location = OTA_FTP_UPDATING;
|
||||
sf_time(&cTime);
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
errorCode = SF_OTA_ERROR_FTP_QFOTADL;
|
||||
sts = OTA_DOWNLOAD_ERROR;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_UPDATING:
|
||||
if(SF_STRSTR(gsmPara,"\"FTPEND\",0"))
|
||||
{
|
||||
printf("gsmPara:%s\n", gsmPara);
|
||||
time = 0;
|
||||
calltime = 0;
|
||||
location = OTA_FTP_UPDATING1;
|
||||
sf_mcu_wdg_set(5);
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"\"FTPEND\""))
|
||||
{
|
||||
printf("gsmPara:%s\n", gsmPara);
|
||||
time = 0;
|
||||
printf("DOWMLOAD ERROR\n");
|
||||
SLOGE("OTA Download error");
|
||||
SLOGE(gsmPara);
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
sts = OTA_DOWNLOAD_ERROR;
|
||||
}
|
||||
else
|
||||
{
|
||||
time = 0;
|
||||
sf_time(&eTime);
|
||||
elapsed_time = difftime(eTime, cTime);
|
||||
// s
|
||||
printf("time: %.2f s\n", elapsed_time);
|
||||
if(elapsed_time > 120)
|
||||
{
|
||||
SLOGE("OTA Download timeout");
|
||||
errorCode = SF_OTA_ERROR_FTP_DOWNLOAD;
|
||||
sts = OTA_TIME_OUT;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case OTA_FTP_UPDATING1:
|
||||
|
||||
if(SF_STRSTR(gsmPara,"+QIND: \"FOTA\",\"START\"") || SF_STRSTR(gsmPara,"+QIND: \"FOTA\",\"UPDATING\""))
|
||||
{
|
||||
location = OTA_FTP_UPDATING2;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(baudrateCheckTime > 60)
|
||||
{
|
||||
baudrateChangeFlg = 1;
|
||||
SLOGW("baudrateCheckTime:%d\n",baudrateCheckTime);
|
||||
location = OTA_FTP_UPDATING2;
|
||||
}
|
||||
else
|
||||
{
|
||||
baudrateCheckTime++;
|
||||
sf_sleep_ms(800);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_UPDATING2:
|
||||
if(SF_STRSTR(gsmPara,"\"END\",0"))
|
||||
{
|
||||
printf("gsmPara:%s\n", gsmPara);
|
||||
time = 0;
|
||||
|
||||
if(baudrateChangeFlg == 1)
|
||||
{
|
||||
SLOGW("baudrateChangeFlg:%d\n",baudrateChangeFlg);
|
||||
}
|
||||
|
||||
location = OTA_FTP_UPDATAEND;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"\"END\""))
|
||||
{
|
||||
printf("gsmPara:%s\n", gsmPara);
|
||||
time = 0;
|
||||
printf("UPDATED ERROR\n");
|
||||
SLOGE("OTA update error");
|
||||
SLOGE(gsmPara);
|
||||
errorCode = SF_OTA_ERROR_FTP_UPDATE;
|
||||
sts = OTA_UPDATED_ERROR;
|
||||
|
||||
if(baudrateChangeFlg == 1)
|
||||
{
|
||||
SLOGW("baudrateChangeFlg:%d\n",baudrateChangeFlg);
|
||||
}
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"UPDATING"))
|
||||
{
|
||||
printf("gsmPara:%s\n", gsmPara);
|
||||
time = 0;
|
||||
calltime = 0;
|
||||
sf_mcu_wdg_set(5);
|
||||
sf_sleep_ms(800);
|
||||
}
|
||||
else
|
||||
{
|
||||
time = 0;
|
||||
calltime++;
|
||||
printf("calltime:%d\n", calltime);
|
||||
|
||||
if(calltime >= 200)
|
||||
{
|
||||
SLOGE("OTA update timeout");
|
||||
errorCode = SF_OTA_ERROR_FTP_UPDATE;
|
||||
sts = OTA_UPDATED_ERROR;
|
||||
|
||||
if(baudrateChangeFlg == 1)
|
||||
{
|
||||
SLOGW("baudrateChangeFlg:%d\n",baudrateChangeFlg);
|
||||
|
||||
}
|
||||
}
|
||||
sf_sleep_ms(800);
|
||||
}
|
||||
break;
|
||||
|
||||
case OTA_FTP_UPDATAEND:
|
||||
if(SF_STRSTR(gsmPara,"RDY"))
|
||||
{
|
||||
sf_sleep_ms(300);
|
||||
printf("UPDATE END\n");
|
||||
SF_SPRINTF(gsmPara, "AT+QGMR\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
location = OTA_FTP_CHECK;
|
||||
}
|
||||
else if(SF_STRSTR(gsmPara,"ERROR"))
|
||||
{
|
||||
errorCode = SF_OTA_ERROR_FTP_UPDATE;
|
||||
sts = OTA_UPDATED_ERROR;
|
||||
}
|
||||
else
|
||||
{
|
||||
sf_sleep_ms(300);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case OTA_FTP_CHECK:
|
||||
if(SF_STRSTR(gsmPara, MODULE_VER))
|
||||
{
|
||||
pTemp=SF_STRSTR(gsmPara, MODULE_VER);
|
||||
|
||||
if(pTemp != NULL)
|
||||
{
|
||||
pTemp1 = SF_STRTOK(pTemp, "\r");
|
||||
printf("pTemp1=%s\n", pTemp1);
|
||||
SF_STRCPY(Version, pTemp1);
|
||||
//printf("Version: %s\n", Version);
|
||||
}
|
||||
|
||||
if(SF_STRCMP(Version, desVersion) == 0)
|
||||
{
|
||||
sts = OTA_SUCCESS;
|
||||
}
|
||||
else
|
||||
{
|
||||
sts = OTA_VERTION_ERROR;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(gsmPara, "AT+QGMR\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
break;
|
||||
|
||||
case OTA_FTP_END:
|
||||
SF_STRCPY(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
sts = OTA_FAIL;
|
||||
break;
|
||||
}
|
||||
|
||||
sf_gsm_para_buff_clear();
|
||||
sf_hal_ttyusb2_read_buf(&ttyData);
|
||||
|
||||
if(gsmPara[0] != '\0')
|
||||
{
|
||||
MLOGD("location:%d\n%s\n", location, gsmPara);
|
||||
}
|
||||
time++;
|
||||
if(time >= 300)
|
||||
{
|
||||
if((location > OTA_FTP_QIACT) && (location < OTA_FTP_OPENCFG))
|
||||
{
|
||||
location = OTA_FTP_QIDEACT;
|
||||
errorCode = SF_OTA_ERROR_TIME_OUT;
|
||||
time = 250;
|
||||
calltime = 0;
|
||||
SF_SPRINTF(gsmPara, "AT\r");
|
||||
ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara));
|
||||
SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
sts = OTA_TIME_OUT;
|
||||
}
|
||||
|
||||
printf("update timeout!\n");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
sf_set_module_update(0);
|
||||
sf_mcu_reg_set(SF_MCU_SOFT_UPDATE, 0);
|
||||
|
||||
/* cal qgmr ver,then save*/
|
||||
printf("Version = %s\n",Version);
|
||||
pTemp = SF_STRSTR(Version, MODULE_VER);
|
||||
if(pTemp != NULL)
|
||||
{
|
||||
UINT8 *pT1 = NULL;
|
||||
UINT8 *pT2 = NULL;
|
||||
UINT8 *pT3 = NULL;
|
||||
|
||||
pT1 = SF_STRSTR(pTemp, MODULE_VER_FLG1);
|
||||
|
||||
if(pT1 == NULL)
|
||||
pT1 = SF_STRSTR(pTemp, MODULE_VER_FLG2);
|
||||
|
||||
pT2 = SF_STRSTR(pTemp,"_");
|
||||
printf("pT1 = %s\n",pT1);
|
||||
printf("pTemp = %s\n",pTemp);
|
||||
printf("pT2 = %s\n",pT2);
|
||||
if(pT1 != NULL)
|
||||
{
|
||||
UINT8 str1[5] = {0};
|
||||
UINT8 str2[5] = {0};
|
||||
UINT8 str3[5] = {0};
|
||||
UINT8 str4[30] = {0};
|
||||
|
||||
memcpy(str1, pTemp+4,pT1-pTemp-4);
|
||||
printf("str1 = %s\n",str1);
|
||||
memcpy(str2, pT1+3,2);
|
||||
printf("str2 = %s\n",str2);
|
||||
memcpy(str3, pT1+6,2);
|
||||
printf("str3 = %s\n",str3);
|
||||
|
||||
if(pT2 != NULL)
|
||||
{
|
||||
pT3 = pT2+1;
|
||||
SF_STRCPY(modulVerStr, pT3);
|
||||
pT3 = SF_STRTOK(modulVerStr, "\r");
|
||||
}
|
||||
|
||||
if(pT3 != NULL)
|
||||
{
|
||||
SF_STRCPY(str4, pT3);
|
||||
printf("str4 = %s\n",str4);
|
||||
SF_SPRINTF(puiPara->ModuleSubver,"S%sY%sY%sY%sS",str1,str2,str3,str4);
|
||||
}
|
||||
else
|
||||
{
|
||||
SF_SPRINTF(puiPara->ModuleSubver,"S%sY%sY%sS",str1,str2,str3);
|
||||
}
|
||||
|
||||
printf("puiPara->ModuleSubver = %s\n",puiPara->ModuleSubver);
|
||||
}
|
||||
}
|
||||
|
||||
printf("Module OTA Update sts:%d errorCode:%d\n", sts, errorCode);
|
||||
if(errorCode)
|
||||
{
|
||||
SF_SPRINTF(logStr, "%x,", errorCode);
|
||||
MLOGE(logStr);
|
||||
}
|
||||
|
||||
printf("sf_module_ota_ftp e\n");
|
||||
|
||||
return sts;
|
||||
}
|
||||
#ifdef __cplusplus
|
||||
#if __cplusplus
|
||||
}
|
||||
|
|
|
@ -221,4 +221,6 @@ int sf_cardv_init_start(void);
|
|||
void sf_cardv_set_battery_level(unsigned long Val);
|
||||
int sf_get_ota_flag(void);
|
||||
void sf_set_ota_flag(int falg);
|
||||
void sf_set_module_update_ota(UINT8 flag);
|
||||
BOOL sf_cmd_4g_ota_upgrade(unsigned char argc, char **argv);
|
||||
#endif
|
||||
|
|
|
@ -407,6 +407,19 @@ void sf_set_module_update(UINT8 flag)
|
|||
ModuleUpdating = flag;
|
||||
}
|
||||
|
||||
void sf_set_module_update_ota(UINT8 flag)
|
||||
{
|
||||
SF_MESSAGE_BUF_S stMessageBuf = {0};
|
||||
if(ModuleUpdating != flag)
|
||||
{
|
||||
stMessageBuf.arg2 = flag;
|
||||
stMessageBuf.arg1 = SF_PARA_CMD_MOUP_OTA;
|
||||
stMessageBuf.cmdId = CMD_PARA;
|
||||
sf_com_message_send_to_app(&stMessageBuf);
|
||||
}
|
||||
ModuleUpdating = flag;
|
||||
}
|
||||
|
||||
UINT8 sf_get_fw_update(void)
|
||||
{
|
||||
return FwUpdate;
|
||||
|
@ -1417,6 +1430,14 @@ BOOL sf_cmd_ftp_ota(unsigned char argc, char **argv)
|
|||
|
||||
return TRUE;
|
||||
}
|
||||
BOOL sf_cmd_4g_ota_upgrade(unsigned char argc, char **argv)
|
||||
{
|
||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
sf_set_module_update_ota(1);
|
||||
printf("[%s:%d] e\n", __FUNCTION__, __LINE__);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL sf_cmd_fw_upgrade(unsigned char argc, char **argv)
|
||||
{
|
||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||
|
|
|
@ -1183,10 +1183,10 @@ static UINT32 ae_adc_tbl[57][3] = {
|
|||
{693, 539, 1000},
|
||||
{691, 806, 1000}, //sun chen@20240111 start
|
||||
{689, 1082, 1000},
|
||||
{687, 4038, 1000},
|
||||
{684, 5755, 1000},//8333, 2150},
|
||||
{681, 6187, 1000},//8333, 2550},
|
||||
{679, 8333, 1000},//sun chen@20240111 end
|
||||
{687, 2580, 1000},//4038
|
||||
{684, 3929, 1000},//5755, 2150},
|
||||
{681, 4733, 1000},//6187, 2550},
|
||||
{679, 5016, 1000},//sun chen@20240111 end
|
||||
{669, 8333, 1000},
|
||||
{645, 8333, 1000},
|
||||
{617, 8333, 1000},
|
||||
|
|
|
@ -945,7 +945,7 @@
|
|||
#define HUNTING_MCU_UART ENABLE
|
||||
#define HUNTING_IR_LED_940 ENABLE
|
||||
#define SF_EXIF_MN_BUF_SIZE 256
|
||||
#define SF_BASE_VERSION "7MR5RCwE203"
|
||||
#define SF_BASE_VERSION "7MR5RCwE204"
|
||||
#define DCF_DIR_NAME "MEDIA" /* 100MEDIA */
|
||||
#define DCF_FILE_NAME "SYGW" /* SYFW0001.JPG */
|
||||
#define SF_EMMC_DCF_FILE_NAME "SYBX" /* SYBX0001.JPG */
|
||||
|
|
|
@ -342,6 +342,7 @@ static void MovieFast_ShutDown(void)
|
|||
#endif
|
||||
|
||||
#if HUNTING_CAMERA_MCU
|
||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||
#if SF_TRIGGER_TIME_TEST != ENABLE
|
||||
sf_fastboot_msg_en(ENABLE);
|
||||
#endif
|
||||
|
@ -392,7 +393,7 @@ static void MovieFast_ShutDown(void)
|
|||
FileSys_CloseEx('A', FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('B', FST_TIME_INFINITE);
|
||||
#if SF_IQ_TEST != ENABLE
|
||||
if(sf_get_power_off_flag()){
|
||||
if((sf_get_power_off_flag()) || (!puiPara->GprsSwitch)){
|
||||
sf_mcu_reg_set(SF_MCU_POWEROFF,0);
|
||||
}else{
|
||||
fastboot_set_done(BOOT_FLOW_BOOT);
|
||||
|
@ -2047,6 +2048,8 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
|||
DBG_WRN(">>>>>>>>>>>>>>> movie thread <<<<<<<<<<\r\n");
|
||||
// nvt_cmdsys_runcmd("ae set_speed 0 128 700 400 200 "); // dgain mode /dgain th/down speed/up speed1/up speed2
|
||||
/*.............sun chen@20240111 end.................*/
|
||||
nvt_cmdsys_runcmd("awb set_smooth 0 0");
|
||||
nvt_cmdsys_runcmd("awb set_dfgain 0 466 491");
|
||||
|
||||
{
|
||||
AET_EXTEND_PARAM ext_param = {0};
|
||||
|
@ -2355,6 +2358,8 @@ DBG_WRN(">>>>>>>>>>>>>>> movie thread <<<<<<<<<<\r\n");
|
|||
sf_ir_led_set(((2 == puiPara->NightMode) ? 2 : 1),puiPara->FlashLed, puiPara->NightMode, 1);
|
||||
}
|
||||
#endif
|
||||
nvt_cmdsys_runcmd("awb set_smooth 0 1");
|
||||
vos_util_delay_ms(100);
|
||||
Set_AEMODE(0); //sun chen@20240130 P+V start video record
|
||||
vos_util_delay_ms(200);
|
||||
|
||||
|
|
|
@ -2333,6 +2333,7 @@ static void PhotoFast_ShutDown(void)
|
|||
}
|
||||
#endif
|
||||
#if HUNTING_CAMERA_MCU == ENABLE
|
||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||
#if SF_TRIGGER_TIME_TEST != ENABLE
|
||||
sf_fastboot_msg_en(ENABLE);
|
||||
#endif
|
||||
|
@ -2379,7 +2380,7 @@ static void PhotoFast_ShutDown(void)
|
|||
FileSys_CloseEx('A', FST_TIME_INFINITE);
|
||||
FileSys_CloseEx('B', FST_TIME_INFINITE);
|
||||
#if SF_IQ_TEST != ENABLE
|
||||
if(sf_get_power_off_flag()){
|
||||
if((sf_get_power_off_flag()) || (!puiPara->GprsSwitch)){
|
||||
sf_mcu_reg_set(SF_MCU_POWEROFF,0);
|
||||
}else{
|
||||
fastboot_set_done(BOOT_FLOW_BOOT);
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user