diff --git a/components/esp32/event.c b/components/esp32/event.c index b3ff0a59cb..737a8a604c 100644 --- a/components/esp32/event.c +++ b/components/esp32/event.c @@ -64,7 +64,7 @@ static system_event_handle_t g_system_event_handle_table[] = { {SYSTEM_EVENT_STA_CONNECTED, system_event_sta_connected_handle_default}, {SYSTEM_EVENT_STA_DISCONNECTED, system_event_sta_disconnected_handle_default}, {SYSTEM_EVENT_STA_AUTHMODE_CHANGE, NULL}, - {SYSTEM_EVENT_STA_GOTIP, NULL}, + {SYSTEM_EVENT_STA_GOTIP, system_event_sta_gotip_default}, {SYSTEM_EVENT_AP_START, system_event_ap_start_handle_default}, {SYSTEM_EVENT_AP_STOP, system_event_ap_stop_handle_default}, {SYSTEM_EVENT_AP_STACONNECTED, NULL}, diff --git a/components/esp32/include/esp_wifi.h b/components/esp32/include/esp_wifi.h index ca0cf45a27..7129f7e2da 100755 --- a/components/esp32/include/esp_wifi.h +++ b/components/esp32/include/esp_wifi.h @@ -240,6 +240,10 @@ typedef esp_err_t (*wifi_rxcb_t)(void *buffer, uint16_t len, void* eb); esp_err_t esp_wifi_reg_rxcb(wifi_interface_t ifx, wifi_rxcb_t fn); +esp_err_t esp_wifi_set_auto_connect(bool en); + +esp_err_t esp_wifi_get_auto_connect(bool *en); + #ifdef __cplusplus } #endif diff --git a/components/esp32/wifi.c b/components/esp32/wifi.c index e617ee7566..5ac3c990b8 100644 --- a/components/esp32/wifi.c +++ b/components/esp32/wifi.c @@ -69,12 +69,14 @@ static void esp_wifi_task(void *pvParameters) #if CONFIG_WIFI_AUTO_CONNECT wifi_mode_t mode; + bool auto_connect; err = esp_wifi_get_mode(&mode); if (err != ESP_OK){ WIFI_DEBUG("esp_wifi_get_mode fail, ret=%d\n", err); } - if (mode == WIFI_MODE_STA || mode == WIFI_MODE_APSTA) { + err = esp_wifi_get_auto_connect(&auto_connect); + if ((mode == WIFI_MODE_STA || mode == WIFI_MODE_APSTA) && auto_connect) { err = esp_wifi_connect(); if (err != ESP_OK) { WIFI_DEBUG("esp_wifi_connect fail, ret=%d\n", err); diff --git a/components/lwip/api/tcpip.c b/components/lwip/api/tcpip.c index f0c4c476e7..9df3c38a1d 100755 --- a/components/lwip/api/tcpip.c +++ b/components/lwip/api/tcpip.c @@ -62,7 +62,7 @@ static const char mem_debug_file[] ICACHE_RODATA_ATTR STORE_ATTR = __FILE__; /* global variables */ #ifdef PERF -uint32 g_rx_post_mbox_fail_cnt = 0; +uint32_t g_rx_post_mbox_fail_cnt = 0; #endif static tcpip_init_done_fn tcpip_init_done; static void *tcpip_init_done_arg; diff --git a/components/lwip/include/lwip/port/lwipopts.h b/components/lwip/include/lwip/port/lwipopts.h index c819b8d889..122fea3157 100755 --- a/components/lwip/include/lwip/port/lwipopts.h +++ b/components/lwip/include/lwip/port/lwipopts.h @@ -221,6 +221,7 @@ extern unsigned long os_random(void); * TCP_WND: The size of a TCP window. This must be at least * (2 * TCP_MSS) for things to work well */ +#define PERF 1 #ifdef PERF extern unsigned char misc_prof_get_tcpw(void); extern unsigned char misc_prof_get_tcp_snd_buf(void); diff --git a/components/lwip/port/netif/wlanif.c b/components/lwip/port/netif/wlanif.c index 0b87656c8b..9832c41aff 100755 --- a/components/lwip/port/netif/wlanif.c +++ b/components/lwip/port/netif/wlanif.c @@ -66,7 +66,7 @@ static char hostname[16]; static char hostname[16]; #endif #ifdef PERF -uint32 g_rx_alloc_pbuf_fail_cnt = 0; +uint32_t g_rx_alloc_pbuf_fail_cnt = 0; #endif /**