ESP32-Mesh-OTA/components/mesh_ota/include/mesh_network.h

36 lines
1.0 KiB
C

#ifndef H_MESH_NETWORK
#define H_MESH_NETWORK
#include <string.h>
#include "esp_wifi.h"
#include "esp_system.h"
#include "esp_event.h"
#include "esp_log.h"
#include "esp_mesh.h"
#include "esp_mesh_internal.h"
#define RX_SIZE (1234)
#define TX_SIZE (1234)
static bool bIsMeshConnected;
static int32_t i32MeshLayer;
static mesh_addr_t mesh_parent_addr;
static esp_netif_t *netif_sta = NULL;
esp_err_t errMeshNetworkInitialize();
esp_err_t errMeshNetworkInitializeWiFi();
esp_err_t errMeshNetworkInitializeRouter(mesh_cfg_t* cfg);
bool bCheckMACEquality(uint8_t* pu8aMAC, uint8_t* pu8bMAC);
esp_err_t errGetChildren(mesh_addr_t* pChildren, uint16_t* pu16ChildrenSize);
esp_err_t errSendPacket(mesh_addr_t* dest, struct ota_mesh_packet* packet);
void vMeshEventHandler(void *arg, esp_event_base_t event_base, int32_t i32EventID, void* vpEventData);
void vIPEventHandler(void *arg, esp_event_base_t event_base, int32_t i32EventID, void *event_data);
esp_err_t errStartReceiveTask();
void vTaskReceiveMeshData(void *arg);
#endif /* H_MESH_NETWORK */