void ICACHE_FLASH_ATTR user_init() { uart_init(115200,0); set_wifi(); os_timer_setfn(&some_timer, (os_timer_func_t *)some_timerfunc, NULL); os_timer_arm(&some_timer, 500, 1); system_init_done_cb(task_init); }
void wifi_config_ap() { SysInfo *pSysInfo = &gSysInfo; sleep(10); system("sudo service hostapd stop"); system("sudo service udhcpd stop"); sleep(1); get_wifi_ap_param(); set_wifi(0, 0, WIFI_AP); set_wifi_hostapd(); sleep(1); system("sudo service hostapd start"); system("sudo service udhcpd start"); sleep(WIFI_AP_WAIT_TIME); DEBUG("%s : Setting wifi as client...\n", __func__); set_wifi_mode("CLIENT"); DEBUG("%s : Restarting system...\n", __func__); system("init 6"); // This will be replaced bu proper system_shutdown() function later }
void wifi_config_client() { SysInfo *pSysInfo = &gSysInfo; char ssid[WIFI_SSID_MAX_LEN]; char passkey[WIFI_PSK_MAX_LEN]; int cnt; WIFI_NETWORK_PARAMS *ptr; wifi_network_params_init(); // system("ifdown wlan0"); sleep(1); /* checking if the internet is available */ if(check_internnet_connection() == SUCCESS) pSysInfo->internet_available = 1; else pSysInfo->internet_available = 0; while(1) { if(!(pSysInfo->internet_available)) /* NO INTERNET... Switch Wifi */ { DEBUG("%s : INTERNET NOT AVAILABLE !!!\n", __func__); if(!strlen(pSysInfo->current_wifi_ssid) && (pSysInfo->wifi_params)) { strcpy(pSysInfo->current_wifi_ssid, pSysInfo->wifi_params->ssid); strcpy(ssid, pSysInfo->wifi_params->ssid); strcpy(passkey, pSysInfo->wifi_params->passkey); DEBUG("%s : Configuring Wifi... ssid = %s\n", __func__, pSysInfo->current_wifi_ssid); set_wifi(ssid, passkey, WIFI_CLIENT); } else if(strlen(pSysInfo->current_wifi_ssid) && (pSysInfo->wifi_params) && (pSysInfo->wifi_params->next)) { for(ptr = pSysInfo->wifi_params; ptr; ptr = ptr->next) { if(!strcmp(pSysInfo->current_wifi_ssid, ptr->ssid)) { if(ptr->next == NULL) { strcpy(ssid, pSysInfo->wifi_params->ssid); strcpy(passkey, pSysInfo->wifi_params->passkey); strcpy(pSysInfo->current_wifi_ssid, ssid); DEBUG("%s : Switching Wifi... ssid = %s\n", __func__, ssid); set_wifi(ssid, passkey, WIFI_CLIENT); break; } else { strcpy(ssid, ptr->next->ssid); strcpy(passkey, ptr->next->passkey); strcpy(pSysInfo->current_wifi_ssid, ssid); DEBUG("%s : Switching Wifi... ssid = %s\n", __func__, ssid); set_wifi(ssid, passkey, WIFI_CLIENT); break; } } } } } else DEBUG("%s : INTERNET AVAILABLE !!!\n", __func__); for(cnt=0; cnt<WIFI_MONITOR_INTERVAL; cnt++) { /* checking if the internet is available */ if(check_internnet_connection() == SUCCESS) pSysInfo->internet_available = 1; else pSysInfo->internet_available = 0; sleep(1); } } }