#include #include #include #include #include "net_event_handler.h" extern led_strip_handle_t debug_led; void network_event_handler(void *arg, esp_event_base_t event_base, int32_t event_id, void *event_data) { if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_START) { ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0xFF, 0xFF, 0)); ESP_ERROR_CHECK(led_strip_refresh(debug_led)); esp_wifi_connect(); } else if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_DISCONNECTED) { ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0xFF, 0xFF, 0)); ESP_ERROR_CHECK(led_strip_refresh(debug_led)); esp_wifi_connect(); } else if (event_base == IP_EVENT && event_id == IP_EVENT_STA_GOT_IP) { ip_event_got_ip_t *event = (ip_event_got_ip_t *) event_data; ESP_LOGI("network", "got ip:" IPSTR, IP2STR(&event->ip_info.ip)); ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0, 0xFF, 0)); ESP_ERROR_CHECK(led_strip_refresh(debug_led)); vTaskDelay(pdMS_TO_TICKS(1000)); ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0, 0, 0)); ESP_ERROR_CHECK(led_strip_refresh(debug_led)); } }