diff --git a/mbtk/libgsw_lib/gsw_at_interface.c b/mbtk/libgsw_lib/gsw_at_interface.c
index 67a61a1..2d9cefd 100755
--- a/mbtk/libgsw_lib/gsw_at_interface.c
+++ b/mbtk/libgsw_lib/gsw_at_interface.c
@@ -121,7 +121,7 @@
 }LYNQ_AT_E;
 
 static mbtk_log fun_ptr_log = NULL;
-void *dlHandle_at = NULL;
+static void *dlHandle_at = NULL;
 char *lynqLib_at = "/lib/libmbtk_lib.so";
 char *output = NULL;
 int sockfd = 0;
@@ -315,12 +315,7 @@
     {
         return GSW_HAL_NORMAL_FAIL;
     }
-    dlHandle_at = dlopen(lynqLib_at, RTLD_NOW);
-    fun_ptr_log = (mbtk_log)dlsym(dlHandle_at, "mbtk_log");
-    if(fun_ptr_log == NULL || dlHandle_at == NULL)
-    {
-        return GSW_HAL_NORMAL_FAIL;
-    }
+    
     memcpy(buffer_at, atcmd, strlen(atcmd));
     tmp = func;
     LOGD("lynq_reg_third_at start\n");
@@ -337,6 +332,12 @@
 
 int32_t gsw_sdk_at_init(void)
 {
+    dlHandle_at = dlopen(lynqLib_at, RTLD_NOW);
+    fun_ptr_log = (mbtk_log)dlsym(dlHandle_at, "mbtk_log");
+    if(fun_ptr_log == NULL || dlHandle_at == NULL)
+    {
+        return GSW_HAL_NORMAL_FAIL;
+    }
     return GSW_HAL_SUCCESS;
 }
 
