wifi_pkt_rx_ctrl_t struct
Received packet radio metadata header, this is the common header at the beginning of all promiscuous mode RX callback buffers
Syntax
typedef struct
{
signed rssi: 8;
unsigned rate: 5;
unsigned : 1;
unsigned sig_mode: 2;
unsigned : 16;
unsigned mcs: 7;
unsigned cwb: 1;
unsigned : 16;
unsigned smoothing: 1;
unsigned not_sounding: 1;
unsigned : 1;
unsigned aggregation: 1;
unsigned stbc: 2;
unsigned fec_coding: 1;
unsigned sgi: 1;
#if CONFIG_IDF_TARGET_ESP32
signed noise_floor: 8;
#elif CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2
unsigned : 8;
#endif
unsigned ampdu_cnt: 8;
unsigned channel: 4;
unsigned secondary_channel: 4;
unsigned : 8;
unsigned timestamp: 32;
unsigned : 32;
#if CONFIG_IDF_TARGET_ESP32S2
unsigned : 32;
#elif CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2
signed noise_floor: 8;
unsigned : 24;
unsigned : 32;
#endif
unsigned : 31;
unsigned ant: 1;
#if CONFIG_IDF_TARGET_ESP32S2
signed noise_floor: 8;
unsigned : 24;
#elif CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C2
unsigned : 32;
unsigned : 32;
unsigned : 32;
#endif
unsigned sig_len: 12;
unsigned : 12;
unsigned rx_state: 8;
} wifi_pkt_rx_ctrl_t;
Fields
Received Signal Strength Indicator(RSSI) of packet. unit: dBm.
PHY rate encoding of the packet. Only valid for non HT(11bg) packet.
Protocol of the received packet, 0: non HT(11bg) packet; 1: HT(11n) packet; 3: VHT(11ac) packet.
Modulation Coding Scheme. If is HT(11n) packet, shows the modulation, range from 0 to 76(MSC0 ~ MCS76).
Channel Bandwidth of the packet. 0: 20MHz; 1: 40MHz.
Set to 1 indicates that channel estimate smoothing is recommended. Set to 0 indicates that only per-carrierindependent (unsmoothed) channel estimate is recommended.
Set to 0 indicates that PPDU is a sounding PPDU. Set to 1indicates that the PPDU is not a sounding PPDU. sounding PPDU is used for channel estimation by the request receiver.
Aggregation. 0: MPDU packet; 1: AMPDU packet.
Space Time Block Code(STBC). 0: non STBC packet; 1: STBC packet.
Forward Error Correction(FEC). Flag is set for 11n packets which are LDPC.
Short Guide Interval(SGI). 0: Long GI; 1: Short GI.
noise floor of Radio Frequency Module(RF). unit: dBm.
the number of subframes aggregated in AMPDU.
primary channel on which this packet is received.
secondary channel on which this packet is received. 0: none; 1: above; 2: below.
timestamp. The local time when this packet is received. It is precise only if modem sleep or light sleep is not enabled. unit: microsecond.
antenna number from which this packet is received. 0: WiFi antenna 0; 1: WiFi antenna 1.
length of packet including Frame Check Sequence(FCS).
state of the packet. 0: no error; others: error numbers which are not public.