diff --git a/examples/emitter-client/main/app_main.c b/examples/emitter-client/main/app_main.c index 756e898..c2ab9d9 100755 --- a/examples/emitter-client/main/app_main.c +++ b/examples/emitter-client/main/app_main.c @@ -5,7 +5,6 @@ #include "esp_wifi.h" #include "esp_system.h" #include "nvs_flash.h" -#include "esp_event_loop.h" #include "freertos/FreeRTOS.h" #include "freertos/task.h" @@ -25,33 +24,45 @@ static const char *TAG = "MQTTS_SAMPLE"; static EventGroupHandle_t wifi_event_group; const static int CONNECTED_BIT = BIT0; - - -static esp_err_t wifi_event_handler(void *ctx, system_event_t *event) +static void wifi_event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) { - switch (event->event_id) { - case SYSTEM_EVENT_STA_START: + switch (event_id) { + case WIFI_EVENT_STA_START: esp_wifi_connect(); break; - case SYSTEM_EVENT_STA_GOT_IP: - xEventGroupSetBits(wifi_event_group, CONNECTED_BIT); - - break; - case SYSTEM_EVENT_STA_DISCONNECTED: + case WIFI_EVENT_STA_DISCONNECTED: esp_wifi_connect(); xEventGroupClearBits(wifi_event_group, CONNECTED_BIT); break; default: break; } - return ESP_OK; + return; +} + +static void ip_event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) +{ + switch (event_id) { + case IP_EVENT_STA_GOT_IP: + xEventGroupSetBits(wifi_event_group, CONNECTED_BIT); + + break; + default: + break; + } + return; } static void wifi_init(void) { tcpip_adapter_init(); wifi_event_group = xEventGroupCreate(); - ESP_ERROR_CHECK(esp_event_loop_init(wifi_event_handler, NULL)); + ESP_ERROR_CHECK(esp_event_loop_create_default()); + ESP_ERROR_CHECK(esp_event_handler_register(WIFI_EVENT, ESP_EVENT_ANY_ID, &wifi_event_handler, NULL)); + ESP_ERROR_CHECK(esp_event_handler_register(IP_EVENT, IP_EVENT_STA_GOT_IP, &ip_event_handler, NULL)); + wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); ESP_ERROR_CHECK(esp_wifi_init(&cfg)); ESP_ERROR_CHECK(esp_wifi_set_storage(WIFI_STORAGE_RAM)); @@ -104,6 +115,8 @@ static esp_err_t mqtt_event_handler(esp_mqtt_event_handle_t event) case MQTT_EVENT_ERROR: ESP_LOGI(TAG, "MQTT_EVENT_ERROR"); break; + default: + break; } return ESP_OK; } diff --git a/examples/mqtt_ssl_mutual_auth/main/app_main.c b/examples/mqtt_ssl_mutual_auth/main/app_main.c index f290d15..21c8ece 100755 --- a/examples/mqtt_ssl_mutual_auth/main/app_main.c +++ b/examples/mqtt_ssl_mutual_auth/main/app_main.c @@ -5,7 +5,6 @@ #include "esp_wifi.h" #include "esp_system.h" #include "nvs_flash.h" -#include "esp_event_loop.h" #include "freertos/FreeRTOS.h" #include "freertos/task.h" @@ -18,6 +17,8 @@ #include "lwip/netdb.h" #include "esp_log.h" +#include "esp_event.h" +#include "tcpip_adapter.h" #include "mqtt_client.h" static const char *TAG = "MQTTS_SAMPLE"; @@ -25,33 +26,45 @@ static const char *TAG = "MQTTS_SAMPLE"; static EventGroupHandle_t wifi_event_group; const static int CONNECTED_BIT = BIT0; - - -static esp_err_t wifi_event_handler(void *ctx, system_event_t *event) +static void wifi_event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) { - switch (event->event_id) { - case SYSTEM_EVENT_STA_START: + switch (event_id) { + case WIFI_EVENT_STA_START: esp_wifi_connect(); break; - case SYSTEM_EVENT_STA_GOT_IP: - xEventGroupSetBits(wifi_event_group, CONNECTED_BIT); - - break; - case SYSTEM_EVENT_STA_DISCONNECTED: + case WIFI_EVENT_STA_DISCONNECTED: esp_wifi_connect(); xEventGroupClearBits(wifi_event_group, CONNECTED_BIT); break; default: break; } - return ESP_OK; + return; +} + +static void ip_event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) +{ + switch (event_id) { + case IP_EVENT_STA_GOT_IP: + xEventGroupSetBits(wifi_event_group, CONNECTED_BIT); + + break; + default: + break; + } + return; } static void wifi_init(void) { tcpip_adapter_init(); wifi_event_group = xEventGroupCreate(); - ESP_ERROR_CHECK(esp_event_loop_init(wifi_event_handler, NULL)); + ESP_ERROR_CHECK(esp_event_loop_create_default()); + ESP_ERROR_CHECK(esp_event_handler_register(WIFI_EVENT, ESP_EVENT_ANY_ID, &wifi_event_handler, NULL)); + ESP_ERROR_CHECK(esp_event_handler_register(IP_EVENT, IP_EVENT_STA_GOT_IP, &ip_event_handler, NULL)); + wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); ESP_ERROR_CHECK(esp_wifi_init(&cfg)); ESP_ERROR_CHECK(esp_wifi_set_storage(WIFI_STORAGE_RAM)); @@ -114,6 +127,8 @@ static esp_err_t mqtt_event_handler(esp_mqtt_event_handle_t event) case MQTT_EVENT_ERROR: ESP_LOGI(TAG, "MQTT_EVENT_ERROR"); break; + default: + break; } return ESP_OK; } diff --git a/mqtt_client.c b/mqtt_client.c index e6928cc..93ae082 100644 --- a/mqtt_client.c +++ b/mqtt_client.c @@ -13,7 +13,6 @@ /* using uri parser */ #include "http_parser.h" -#include "esp_event_loop.h" #ifdef MQTT_DISABLE_API_LOCKS # define MQTT_API_LOCK(c)