Here is the relevant code for the Wi-Fi event handler:
Code: Select all
void wifi_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_DISCONNECTED)
{
if (s_retry_num < EXAMPLE_ESP_MAXIMUM_RETRY)
{
esp_wifi_connect();
s_retry_num++;
ESP_LOGI("sta....", "retry to connect to the AP");
}
else
{
esp_wifi_disconnect();
esp_wifi_connect();
s_retry_num = 0;
}
is_wifi = false;
ESP_LOGI(TAG, "is_wifi: %d", is_wifi);
}
// Other event cases...
}
Code: Select all
xTaskCreate(publish_data_to_cloud, "publish_data_to_cloud", 8192, &ucParameterToPass, 1, NULL);
The Wi-Fi retry logs are printing as expected.
The publish_data_to_cloud task doesn't log anything when Wi-Fi is disconnected.
I believe the task should run regardless of the Wi-Fi connection status, but it's not logging when the Wi-Fi is down. Is there something I'm missing? What could cause this issue, and how can I fix it so that the task logs even when Wi-Fi is disconnected?
Any help would be appreciated!