Version 1.0.1

Changed internal error message.
Added support of ESP-IDF v4.x.x.
This commit is contained in:
Alexey Zholtikov 2024-06-02 15:04:56 +03:00
parent 7508c2b161
commit fa94b7a39e
2 changed files with 11 additions and 11 deletions

View File

@ -1 +1 @@
1.0.0 1.0.1

View File

@ -1,7 +1,7 @@
/** /**
* @file * @file
* The main code of the zh_espnow component. * The main code of the zh_espnow component.
* *
*/ */
#include "zh_espnow.h" #include "zh_espnow.h"
@ -13,7 +13,7 @@
/// \endcond /// \endcond
static void _send_cb(const uint8_t *mac_addr, esp_now_send_status_t status); static void _send_cb(const uint8_t *mac_addr, esp_now_send_status_t status);
#ifdef CONFIG_IDF_TARGET_ESP8266 #if defined CONFIG_IDF_TARGET_ESP8266 || ESP_IDF_VERSION_MAJOR == 4
static void _recv_cb(const uint8_t *mac_addr, const uint8_t *data, int data_len); static void _recv_cb(const uint8_t *mac_addr, const uint8_t *data, int data_len);
#else #else
static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *data, int data_len); static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *data, int data_len);
@ -164,7 +164,7 @@ esp_err_t zh_espnow_send(const uint8_t *target, const uint8_t *data, const uint8
} }
if (xQueueSend(_queue_handle, &queue, portTICK_PERIOD_MS) != pdTRUE) if (xQueueSend(_queue_handle, &queue, portTICK_PERIOD_MS) != pdTRUE)
{ {
ESP_LOGE(TAG, "ESP-NOW message processing task internal error."); ESP_LOGE(TAG, "ESP-NOW message processing task internal error at line %d.", __LINE__);
return ESP_FAIL; return ESP_FAIL;
} }
return ESP_OK; return ESP_OK;
@ -182,13 +182,13 @@ static void _send_cb(const uint8_t *mac_addr, esp_now_send_status_t status)
} }
} }
#ifdef CONFIG_IDF_TARGET_ESP8266 #if defined CONFIG_IDF_TARGET_ESP8266 || ESP_IDF_VERSION_MAJOR == 4
static void _recv_cb(const uint8_t *mac_addr, const uint8_t *data, int data_len) static void _recv_cb(const uint8_t *mac_addr, const uint8_t *data, int data_len)
#else #else
static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *data, int data_len) static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *data, int data_len)
#endif #endif
{ {
#ifdef CONFIG_IDF_TARGET_ESP8266 #if defined CONFIG_IDF_TARGET_ESP8266 || ESP_IDF_VERSION_MAJOR == 4
ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue begin.", MAC2STR(mac_addr)); ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue begin.", MAC2STR(mac_addr));
#else #else
ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue begin.", MAC2STR(esp_now_info->src_addr)); ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue begin.", MAC2STR(esp_now_info->src_addr));
@ -200,7 +200,7 @@ static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *dat
} }
_queue_t queue = {0}; _queue_t queue = {0};
queue.id = ON_RECV; queue.id = ON_RECV;
#ifdef CONFIG_IDF_TARGET_ESP8266 #if defined CONFIG_IDF_TARGET_ESP8266 || ESP_IDF_VERSION_MAJOR == 4
memcpy(queue.data.mac_addr, mac_addr, 6); memcpy(queue.data.mac_addr, mac_addr, 6);
#else #else
memcpy(queue.data.mac_addr, esp_now_info->src_addr, 6); memcpy(queue.data.mac_addr, esp_now_info->src_addr, 6);
@ -221,14 +221,14 @@ static void _recv_cb(const esp_now_recv_info_t *esp_now_info, const uint8_t *dat
memset(queue.data.payload, 0, data_len); memset(queue.data.payload, 0, data_len);
memcpy(queue.data.payload, data, data_len); memcpy(queue.data.payload, data, data_len);
queue.data.payload_len = data_len; queue.data.payload_len = data_len;
#ifdef CONFIG_IDF_TARGET_ESP8266 #if defined CONFIG_IDF_TARGET_ESP8266 || ESP_IDF_VERSION_MAJOR == 4
ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue success.", MAC2STR(mac_addr)); ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue success.", MAC2STR(mac_addr));
#else #else
ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue success.", MAC2STR(esp_now_info->src_addr)); ESP_LOGI(TAG, "Adding incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X to queue success.", MAC2STR(esp_now_info->src_addr));
#endif #endif
if (xQueueSend(_queue_handle, &queue, portTICK_PERIOD_MS) != pdTRUE) if (xQueueSend(_queue_handle, &queue, portTICK_PERIOD_MS) != pdTRUE)
{ {
ESP_LOGE(TAG, "ESP-NOW message processing task internal error."); ESP_LOGE(TAG, "ESP-NOW message processing task internal error at line %d.", __LINE__);
} }
} }
@ -314,7 +314,7 @@ static void _processing(void *pvParameter)
ESP_LOGI(TAG, "Outgoing ESP-NOW data to MAC %02X:%02X:%02X:%02X:%02X:%02X processed success.", MAC2STR(queue.data.mac_addr)); ESP_LOGI(TAG, "Outgoing ESP-NOW data to MAC %02X:%02X:%02X:%02X:%02X:%02X processed success.", MAC2STR(queue.data.mac_addr));
if (esp_event_post(ZH_ESPNOW, ZH_ESPNOW_ON_SEND_EVENT, on_send, sizeof(zh_espnow_event_on_send_t), portTICK_PERIOD_MS) != ESP_OK) if (esp_event_post(ZH_ESPNOW, ZH_ESPNOW_ON_SEND_EVENT, on_send, sizeof(zh_espnow_event_on_send_t), portTICK_PERIOD_MS) != ESP_OK)
{ {
ESP_LOGE(TAG, "ESP-NOW message processing task internal error."); ESP_LOGE(TAG, "ESP-NOW message processing task internal error at line %d.", __LINE__);
} }
heap_caps_free(queue.data.payload); heap_caps_free(queue.data.payload);
esp_now_del_peer(peer->peer_addr); esp_now_del_peer(peer->peer_addr);
@ -327,7 +327,7 @@ static void _processing(void *pvParameter)
ESP_LOGI(TAG, "Incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X processed success.", MAC2STR(queue.data.mac_addr)); ESP_LOGI(TAG, "Incoming ESP-NOW data from MAC %02X:%02X:%02X:%02X:%02X:%02X processed success.", MAC2STR(queue.data.mac_addr));
if (esp_event_post(ZH_ESPNOW, ZH_ESPNOW_ON_RECV_EVENT, recv_data, recv_data->data_len + 7, portTICK_PERIOD_MS) != ESP_OK) if (esp_event_post(ZH_ESPNOW, ZH_ESPNOW_ON_RECV_EVENT, recv_data, recv_data->data_len + 7, portTICK_PERIOD_MS) != ESP_OK)
{ {
ESP_LOGE(TAG, "ESP-NOW message processing task internal error."); ESP_LOGE(TAG, "ESP-NOW message processing task internal error at line %d.", __LINE__);
} }
break; break;
default: default: