From a7385654f40f44428b2ddf186d3503d6f6f194b6 Mon Sep 17 00:00:00 2001 From: Erick Ahmed Date: Fri, 24 Oct 2025 22:04:28 +0200 Subject: [PATCH] Refactor Wi-Fi task to use event groups --- firmware/esp32/main/wifi.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/firmware/esp32/main/wifi.cpp b/firmware/esp32/main/wifi.cpp index 18a161e..5f57679 100644 --- a/firmware/esp32/main/wifi.cpp +++ b/firmware/esp32/main/wifi.cpp @@ -64,10 +64,16 @@ void wifiTask(void *pvParameters) { ESP_LOGI(TAG, "WiFi task started"); ESP_ERROR_CHECK(esp_task_wdt_add(NULL)); - wifiManager(); + wifi_init_sta(); + + EventBits_t bits = xEventGroupWaitBits(wifi_event_group, WIFI_CONNECTED_BIT, pdFALSE, pdTRUE, portMAX_DELAY); + if (bits & WIFI_CONNECTED_BIT) ESP_LOGI("WIFI_TASK", "Wi-Fi connected, ready for network"); for(;;) { + EventBits_t bits = xEventGroupWaitBits(wifi_event_group, WIFI_CONNECTED_BIT, pdFALSE, pdTRUE, pdMS_TO_TICKS(5000)); + if (!(bits & WIFI_CONNECTED_BIT)) ESP_LOGW("WIFI_TASK", "Wi-Fi disconnected, waiting to reconnect..."); + esp_task_wdt_reset(); - vTaskDelay(pdMS_TO_TICKS(2500)); + vTaskDelay(pdMS_TO_TICKS(5000)); } }