39 #define WIFI_CONNECTED_BIT BIT0
40 #define WIFI_FAIL_BIT BIT1
42 const char *
TAG = CONFIG_WIFI_SAP_LOG_TAG;
45 int32_t event_id,
void *event_data);
49 int32_t event_id,
void *event_data)
51 #ifdef CONFIG_ESP_MAXIMUM_RETRY_STA
52 if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_START)
56 else if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_DISCONNECTED)
62 ESP_LOGI(
TAG,
"retry to connect to the AP");
68 ESP_LOGI(
TAG,
"connect to the AP fail");
70 else if (event_base == IP_EVENT && event_id == IP_EVENT_STA_GOT_IP)
72 ip_event_got_ip_t *
event = (ip_event_got_ip_t *)event_data;
73 ESP_LOGI(
TAG,
"got ip:" IPSTR, IP2STR(&event->ip_info.ip));
74 sprintf(
ip_address, IPSTR, IP2STR(&event->ip_info.ip));
82 #if defined(CONFIG_ESP_WIFI_SSID_STA) && defined(CONFIG_ESP_WIFI_PASSWORD_STA)
84 ESP_ERROR_CHECK(esp_netif_init());
85 ESP_ERROR_CHECK(esp_event_loop_create_default());
86 esp_netif_create_default_wifi_sta();
87 wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
88 ESP_ERROR_CHECK(esp_wifi_init(&cfg));
89 esp_event_handler_instance_t instance_any_id;
90 esp_event_handler_instance_t instance_got_ip;
91 ESP_ERROR_CHECK(esp_event_handler_instance_register(WIFI_EVENT,
96 ESP_ERROR_CHECK(esp_event_handler_instance_register(IP_EVENT,
102 wifi_config_t wifi_config = {
104 .ssid = CONFIG_ESP_WIFI_SSID_STA,
105 .password = CONFIG_ESP_WIFI_PASSWORD_STA,
109 .threshold.authmode = WIFI_AUTH_WPA2_PSK,
115 ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA));
116 ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_STA, &wifi_config));
117 ESP_ERROR_CHECK(esp_wifi_start());
118 ESP_LOGI(
TAG,
"wifi_init_sta finished.");
129 if (strlen(CONFIG_ESP_WIFI_PASSWORD_STA) > 5)
132 strncpy(str2, CONFIG_ESP_WIFI_PASSWORD_STA,
sizeof(str2));
133 strncpy(pass, str2, 2);
148 ESP_LOGI(
TAG,
"connected to ap SSID: %s, password: %s",
149 CONFIG_ESP_WIFI_SSID_STA, pass);
153 ESP_LOGI(
TAG,
"Failed to connect to SSID: %s, password: %s",
154 CONFIG_ESP_WIFI_SSID_STA, pass);
158 ESP_LOGE(
TAG,
"UNEXPECTED EVENT");
161 ESP_ERROR_CHECK(esp_event_handler_instance_unregister(IP_EVENT, IP_EVENT_STA_GOT_IP, instance_got_ip));
162 ESP_ERROR_CHECK(esp_event_handler_instance_unregister(WIFI_EVENT, ESP_EVENT_ANY_ID, instance_any_id));
168 ESP_LOGI(
TAG,
"wifi station!");
169 esp_err_t ret = nvs_flash_init();
170 if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND)
172 ESP_ERROR_CHECK(nvs_flash_erase());
173 ret = nvs_flash_init();
175 ESP_ERROR_CHECK(ret);
void wifi_init_station(void)
EventGroupHandle_t s_wifi_event_group
void event_handler(void *arg, esp_event_base_t event_base, int32_t event_id, void *event_data)
#define WIFI_CONNECTED_BIT
defininitions for wrapper component to set up wifi in station mode