33#define ESP_NOW_MAX_SIZE_RAW (250) 
   38#define ESP_NOW_ADDR_LEN ETHERNET_ADDR_LEN 
   43#define ESP_NOW_HEADER_LENGTH (sizeof(esp_now_pkt_hdr_t)) 
   48#define ESP_NOW_MAX_SIZE (ESP_NOW_MAX_SIZE_RAW - ESP_NOW_HEADER_LENGTH) 
   55#ifndef ESP_NOW_BUFSIZE 
   56#define ESP_NOW_BUFSIZE (ESP_NOW_MAX_SIZE_RAW + ESP_NOW_ADDR_LEN) 
   67typedef struct __attribute__((packed))
 
 
   75#define ESP_NOW_PKT_HDR_FLAG_SIXLO (1) 
Definitions low-level network driver interface.
 
const netdev_driver_t esp_now_driver
Reference to the netdev device driver struct.
 
#define ESP_NOW_MAX_SIZE_RAW
Maximum raw packet size that can be used with ESP-NOW (including headers)
 
int esp_now_set_channel(uint8_t channel)
Set the channel used by ESP-NOW netdev.
 
#define ESP_NOW_ADDR_LEN
Length of ESP-NOW addresses.
 
esp_now_netdev_t * netdev_esp_now_setup(void)
ESP-NOW netdev initialization function.
 
struct netdev netdev_t
Forward declaration for netdev struct.
 
struct netdev_driver netdev_driver_t
Structure to hold driver interface -> function mapping.
 
gnrc_nettype_t
Definition of protocol types in the network stack.
 
Mutex for thread synchronization.
 
Ethernet header definitions.
 
Protocol type definitions.
 
Device descriptor for ESP-NOW devices.
 
uint8_t scan_event
ESP-NOW peers have to be scanned.
 
netdev_t netdev
netdev parent struct
 
uint8_t addr[ESP_NOW_ADDR_LEN]
device addr (MAC address)
 
uint8_t * rx_mac
source mac of received data
 
mutex_t dev_lock
device is already in use
 
uint8_t tx_mem[ESP_NOW_MAX_SIZE_RAW]
memory holding outgoing package
 
uint8_t rx_len
number of bytes received
 
uint8_t * rx_data
received
 
Header with necessary flags for ESP-NOW packets.