diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c index a288e4fe7..966c1ce16 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowMenuCommonItem/MenuQR.c @@ -407,7 +407,12 @@ static void network_scan_task_cb(lv_task_t* task) return; } - if(sf_cardv_get_is_esim() == 0) + if (sf_cardv_get_usb_init() == 0) + { + lv_label_set_text(plabel, "\nSIM read failed, please restart the camera."); + Countdown = 3; + } + else if(sf_cardv_get_is_esim() == 0) { lv_label_set_text(plabel, "\nNetwork selection is only available with SIM cards that have multiple networks."); Countdown = 3; diff --git a/code/application/source/sf_app/code/include/sf_commu_mcu_reg.h b/code/application/source/sf_app/code/include/sf_commu_mcu_reg.h index 558b6b7bc..c8d9c3260 100755 --- a/code/application/source/sf_app/code/include/sf_commu_mcu_reg.h +++ b/code/application/source/sf_app/code/include/sf_commu_mcu_reg.h @@ -357,6 +357,7 @@ void sf_set_module_sleep_flag(UINT8 flag); UINT8 sf_get_module_sleep_flag(void); int sf_app_while_flag(void); void sf_set_sim_insert(INT32 sim); +void sf_set_usb_init(int flag); UINT32 sf_get_sim_insert(void); int sf_get_signal_ready(void); int sf_set_signal_ready(int value); diff --git a/code/application/source/sf_app/code/include/sf_param_enum.h b/code/application/source/sf_app/code/include/sf_param_enum.h index 57e833e3f..b7e85f84e 100755 --- a/code/application/source/sf_app/code/include/sf_param_enum.h +++ b/code/application/source/sf_app/code/include/sf_param_enum.h @@ -485,6 +485,7 @@ typedef enum sf_PARA_MESSAGE_TYPE_E SF_PARA_CMD_BLE = 0x1F05, SF_PARA_CMD_SIMISINSERT = 0x1F06, SF_PARA_CMD_ISESIM = 0x1F07, + SF_PARA_CMD_USB_INIT = 0x1F08, }SF_PARA_MESSAGE_TYPE_E; typedef enum sf_WIFI_MESSAGE_TYPE_E diff --git a/code/application/source/sf_app/code/source/app/sf_device.c b/code/application/source/sf_app/code/source/app/sf_device.c index f84944026..134b8e691 100755 --- a/code/application/source/sf_app/code/source/app/sf_device.c +++ b/code/application/source/sf_app/code/source/app/sf_device.c @@ -404,6 +404,7 @@ SINT32 app_led_net_reg_stop(SINT32 s32ret) } else if(s32ret == SF_TTY_ERROR_OPEN) { + sf_set_usb_init(0); sf_sys_status_led_set(SF_LED_SYS_STATE_SIM_ERROR); sf_sys_status_led_set(SF_LED_SYS_STATE_ERROR); } diff --git a/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c b/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c index 8b66623e7..72d48d6d5 100755 --- a/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c +++ b/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c @@ -1241,6 +1241,14 @@ void sf_set_sim_insert(INT32 sim) simCardInsert = sim; } +void sf_set_usb_init(int flag) +{ + SF_MESSAGE_BUF_S stMessageBuf = {0}; + stMessageBuf.arg2 = flag; + stMessageBuf.arg1 = SF_PARA_CMD_USB_INIT; + stMessageBuf.cmdId = CMD_PARA; + sf_com_message_send_to_cardv(&stMessageBuf); +} UINT32 sf_get_sim_insert(void) { diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index eeb7cfb90..45d43c7bb 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -119,6 +119,8 @@ UINT8 sf_cardv_4G_status_get(void); void sf_cardv_set_sim_insert(INT8 sim); INT8 sf_cardv_get_sim_insert(void); void sf_cardv_set_is_esim(int flag); +void sf_cardv_set_usb_init(int flag); +int sf_cardv_get_usb_init(void); INT8 sf_cardv_get_is_esim(void); void sf_cardv_set_operationSelectResp(UINT8 resp); UINT8 sf_cardv_get_operationSelectResp(void); diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index e69ec42b4..f162a5d91 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -73,6 +73,7 @@ BOOL isGoing2Pir = FALSE; static UINT8 NetWorkFlag = 0; //SF_4G_STATUS_E static INT8 simCardInsert = -1; static int g_esim_flag = -1; +static int gModuleInitFlag = -1; static UINT8 operationSelectResp = 0; //WIFICameraErrCode_t UINT8 RtspFlag = 0; static BOOL IsMenu = FALSE; @@ -1761,6 +1762,9 @@ static SINT32 sf_cardv_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf) break; case SF_PARA_CMD_ISESIM: sf_cardv_set_is_esim(pMessageBuf->arg2); + break; + case SF_PARA_CMD_USB_INIT: + sf_cardv_set_usb_init(pMessageBuf->arg2); break; default: break; @@ -2584,6 +2588,16 @@ INT8 sf_cardv_get_is_esim(void) { return g_esim_flag; } +void sf_cardv_set_usb_init(int flag) +{ + gModuleInitFlag = flag; + printf("cardv gModuleInitFlag:%d\n",gModuleInitFlag); +} + +int sf_cardv_get_usb_init(void) +{ + return gModuleInitFlag; +} void sf_cardv_set_operationSelectResp(UINT8 resp) {