wiki:802.11/wlan_exp/log/entry_types

Version 4 (modified by murphpo, 10 years ago) (diff)

--

802.11 Reference Design: Event Log Entry Types

The 802.11 Reference Design logging framework is designed to record log entries of arbitrary length and type. The MAC code in CPU High is responsible for defining the log entry types and populating each log entry at run time.

The reference code for CPU High defines a number of useful log entry types and implements logging of many run time events, including all Tx and Rx activity. The entry types defined in the reference implementation are listed below.

Users can define new log entry types or modify existing types to support their experiment. The requirements for this are documented below.

Reference Design Entry Types

Entry Type NODE_INFO

Details about the node hardware and its configuration. Node info values are static after boot.

Entry type ID: 1

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
node_type uint32 Node type as 4 byte value: [b0 b1 b2 b3]:
b0: Always 0x00
b1: Always 0x01 for 802.11 ref design nodes
b2: CPU High application: 0x1 = AP, 0x2 = STA
b3: CPU Low application: 0x1 = DCF
node_id uint32 Node ID, as set during wlan_exp init
hw_generation uint32 WARP hardware generation: 3 for WARP v3
wn_ver uint32 WARPnet version, as packed bytes [0 major minor rev]
fpga_dna uint64 DNA value of node FPGA
serial_num uint32 Serial number of WARP board
wlan_exp_ver uint32 wlan_exp version, as packed values [(u8)major (u8)minor (u16)rev]
wlan_max_associations uint32 Maximum number of wireless associations allowed by node
wlan_log_max_size uint32 Maximum size in bytes of node's event log
wlan_mac_addr uint64 Node MAC address, 6 bytes in lower 48-bits of u64
wlan_max_stats uint32 Maximum number of statistics structs maintained by node
ltg_resolution uint32 Minimum interval in microseconds of LTG schedules

Entry Type EXP_INFO

Header for generic experiment info entries created by the user application. The payload of the EXP_INFO entry is not described by the Python entry type. User code must access the payload in the binary log data directly.

Entry type ID: 2

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
info_type uint16 Exp info type (arbitrary value supplied by application
length uint16 Exp info length (describes arbitrary payload supplied by application

Entry Type STATION_INFO

Information about an 802.11 association. At the AP one STATION_INFO is created for each associated STA and is logged whenever the STA association state changes. At the STA one STATION_INFO is logged whenever the STA associaiton state changes.

Entry type ID: 3

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
mac_addr 6uint8 MAC address of associated device
aid uint16 Association ID (AID) of device
host_name 20uint8 String hostname (19 chars max), taken from DHCP DISCOVER packets
flags uint32 Association state flags: ???
rx_last_timestamp uint64 Microsecond timer value at time of last successful Rx from device
rx_last_seq uint16 Sequence number of last packet received from device
rx_last_power int8 Rx power in dBm of last packet received from device
rx_last_rate uint8 PHY rate index in [1:8] of last packet received from device
tx_phy_rate uint8 Current PHY rate index in [1:8] for new transmissions to device
tx_phy_antenna_mode uint8 Current PHY antenna mode in [1:4] for new transmissions to device
tx_phy_power int8 Current Tx power in dBm for new transmissions to device
tx_phy_flags uint8 Flags for Tx PHY config for new transmissions to deivce
tx_mac_num_tx_max uint8 Maximum number of transmissions (original Tx + re-Tx) per MPDU to device
tx_mac_flags uint8 Flags for Tx MAC config for new transmissions to device
padding uint16

Entry Type NODE_TEMPERATURE

Record of the FPGA system monitor die temperature. This entry is only created when directed by a wlan_exp command. Temperature values are stored as 32-bit unsigned integers. To convert to degrees Celcius, apply (((float)temp_u32)/(65536.0*0.00198421639)) - 273.15

Entry type ID: 4

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
node_id uint32 wlan_exp node ID
serial_num uint32 Node serial number
temp_current uint32 Current FPGA die temperature
temp_min uint32 Minimum FPGA die temperature since FPGA configuration or sysmon reset
temp_max uint32 Maximum FPGA die temperature since FPGA configuration or sysmon reset

Entry Type WN_CMD_INFO

Record of a WARPnet / wlan_exp command received by the node. The full command payload is logged, including any (possibly personal-info-carrying) parameters like MAC addresses.

Entry type ID: 5

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
command uint32 WARPnet / wlan_exp command ID
src_id uint16 Node ID of device sending command
num_args uint16 Number of arguments supplied in command
args 10uint32 Command arguments

Entry Type TIME_INFO

Record of a time base event at the node. This log entry is used to enable parsing of log data recored before and after changes to the node's microsecond timer. This entry also allows a wlan_exp controler to write the current absolute time to the node log without affecting the node's timer value. This enables adjustment of log entry timestamps to real timestamps in post-proessing.

Entry type ID: 6

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
time_id uint32 Random ID value included in wlan_exp TIME_INFO command; used to find common entries across nodes
reason uint32 Reason code for TIME_INFO log entry creation
new_time uint64 New value of microsecond timer value; 0xFFFFFFFFFFFFFFFF if timer was not changed
abs_time uint64 Absolute time in microseconds-since-epoch; 0xFFFFFFFFFFFFFFFF if unknown

Entry Type RX_DSSS

Entry type ID: 11

Field Name DataType Description
timestamp uint64 Microsecond timer value at PHY Rx start
length uint16 Length of payload in bytes
rate uint8 PHY rate index, in [1:8]
power int8 Rx power in dBm
fcs_result uint8 Checksum status, 0 = no errors
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
chan_num uint8 Channel (center frequency) index
ant_mode uint8 Antenna mode: [1,2,3,4] for SISO Rx on RF [A,B,C,D]
rf_gain uint8 AGC RF gain setting: [1,2,3] for [0,15,30]dB gain
bb_gain uint8 AGC BB gain setting: [0:31] for approx [0:63]dB gain
flags uint16 Bit OR'd flags: 0x1 = Rx was duplicate of previous Rx
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TX

Tx events in CPU High, logged for each MPDU frame created and enqueued in CPU High. See TX_LOW for log entries of actual Tx events, including re-transmissions. The time values in this log entry can be used to determine time in queue (time_to_accept), time taken by CPU Low for all Tx attempts (time_to_done) and total time from creation to completion (time_to_accept+time_to_done).

Entry type ID: 20

Field Name DataType Description
timestamp uint64 Microsecond timer value at time packet was created, immediately before it was enqueued
time_to_accept uint32 Time duration in microseconds between packet creation and packet acceptance by CPU Low
time_to_done uint32 Time duration in microseconds between packet acceptance by CPU Low and Tx completion in CPU Low
uniq_seq uint64 Unique sequence number for Tx packet; 12 LSB of this used for 802.11 MAC header sequence number
num_tx uint8 Number of actual PHY Tx events which were used to transmit the MPDU (first Tx + all re-Tx)
tx_power int8 Tx power in dBm of final Tx attempt
chan_num uint8 Channel (center frequency) index of transmission
rate uint8 PHY rate index in [1:8] of final Tx attempt
length uint16 Length in bytes of MPDU; includes MAC header, payload and FCS
result uint8 Tx result; 0 = ACK received or not required
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
ant_mode uint8 PHY antenna mode of final Tx attempt
queue_id uint8 Tx queue ID from which the packet was retrieved
padding 2uint8
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TX_LOW

Record of actual PHY transmission. At least one TX_LOW will be logged for every TX entry. Multiple TX_LOW entries may be created for the same TX entry if the low-level MAC re-transmitted the frame. The uniq_seq fields can be match between TX and TX_LOW entries to find records common to the same MPUD.

Entry type ID: 21

Field Name DataType Description
timestamp uint64 Microsecond timer value at time packet transmission actually started (PHY TX_START time)
uniq_seq uint64 Unique sequence number of original MPDU
rate uint8 PHY rate index in [1:8]
ant_mode uint8 PHY antenna mode in [1:4]
tx_power int8 Tx power in dBm
flags uint8 Tx PHY flags
tx_count uint8 Transmission index for this attempt; 0 = initial Tx, 1+ = subsequent re-transmissions
chan_num uint8 Channel (center frequency) index
length uint16 Length in bytes of MPDU; includes MAC header, payload and FCS
num_slots uint16 Number of backoff slots allotted prior to this transmission; may not have been used for initial Tx (tx_count==0)
cw uint16 Contention window value at time of this Tx
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
padding 3uint8
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TXRX_STATS

Copy of the Tx/Rx statistics struct maintained by CPU High. If promiscuous statistics mode is Tx/Rx stats structs will be maintained for every unique source MAC address, up to the max_stats value. Otherwise statistics are maintaind only associated nodes.

Entry type ID: 30

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
last_timestamp uint64 Microsecond timer value at time of last Tx or Rx event to node with address mac_addr
mac_addr 6uint8 MAC address of remote node whose statics are recorded here
associated uint8 Boolean indicating whether remote node is currently associated with this node
padding uint8
data_num_rx_bytes uint64 Total number of bytes received in DATA packets from remote node
data_num_tx_bytes_success uint64 Total number of bytes successfully transmitted in DATA packets to remote node
data_num_tx_bytes_total uint64 Total number of bytes transmitted (successfully or not) in DATA packets to remote node
data_num_rx_packets uint32 Total number of DATA packets received from remote node
data_num_tx_packets_success uint32 Total number of DATA packets successfully transmitted to remote node
data_num_tx_packets_total uint32 Total number of DATA packets transmitted (successfully or not) to remote node
data_num_tx_packets_low uint32 Total number of PHY transmissions of DATA packets to remote node (includes re-transmissions)
mgmt_num_rx_bytes uint64 Total number of bytes received in management packets from remote node
mgmt_num_tx_bytes_success uint64 Total number of bytes successfully transmitted in management packets to remote node
mgmt_num_tx_bytes_total uint64 Total number of bytes transmitted (successfully or not) in management packets to remote node
mgmt_num_rx_packets uint32 Total number of management packets received from remote node
mgmt_num_tx_packets_success uint32 Total number of management packets successfully transmitted to remote node
mgmt_num_tx_packets_total uint32 Total number of management packets transmitted (successfully or not) to remote node
mgmt_num_tx_packets_low uint32 Total number of PHY transmissions of management packets to remote node (includes re-transmissions)

Entry Type RX_OFDM

Entry type ID: 10

Field Name DataType Description
timestamp uint64 Microsecond timer value at PHY Rx start
length uint16 Length of payload in bytes
rate uint8 PHY rate index, in [1:8]
power int8 Rx power in dBm
fcs_result uint8 Checksum status, 0 = no errors
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
chan_num uint8 Channel (center frequency) index
ant_mode uint8 Antenna mode: [1,2,3,4] for SISO Rx on RF [A,B,C,D]
rf_gain uint8 AGC RF gain setting: [1,2,3] for [0,15,30]dB gain
bb_gain uint8 AGC BB gain setting: [0:31] for approx [0:63]dB gain
flags uint16 Bit OR'd flags: 0x1 = Rx was duplicate of previous Rx
chan_est (64,2)i2 OFDM Rx channel estimates, packed as [(uint16)I (uint16)Q] values, one per subcarrier
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

murphpo:~/svn_work/WARP/ReferenceDesigns/w3_802.11/python> python Python 2.7.6 |Anaconda 1.9.1 (x86_64)| (default, Jan 10 2014, 11:23:15) [GCC 4.0.1 (Apple Inc. build 5493)] on darwin Type "help", "copyright", "credits" or "license" for more information. My python startup!

from wlan_exp.log.entry_types import log_entry_types as log_entry_types

for lid in log_entry_types.keys():

... if(type(lid) is int and lid != 0): ... print(log_entry_types[lid].generate_entry_wiki_doc()) ...

Entry Type NODE_INFO

Details about the node hardware and its configuration. Node info values are static after boot.

Entry type ID: 1

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
node_type uint32 Node type as 4 byte value: ![b0 b1 b2 b3]:![![BR]] b0: Always 0x00![![BR]] b1: Always 0x01 for 802.11 ref design nodes![![BR]] b2: CPU High application: 0x1 = AP, 0x2 = STA![![BR]] b3: CPU Low application: 0x1 = DCF
node_id uint32 Node ID, as set during wlan_exp init
hw_generation uint32 WARP hardware generation: 3 for WARP v3
wn_ver uint32 WARPnet version, as packed bytes ![0 major minor rev]
fpga_dna uint64 DNA value of node FPGA
serial_num uint32 Serial number of WARP board
wlan_exp_ver uint32 wlan_exp version, as packed values ![(u8)major (u8)minor (u16)rev]
wlan_max_associations uint32 Maximum number of wireless associations allowed by node
wlan_log_max_size uint32 Maximum size in bytes of node's event log
wlan_mac_addr uint64 Node MAC address, 6 bytes in lower 48-bits of u64
wlan_max_stats uint32 Maximum number of statistics structs maintained by node
ltg_resolution uint32 Minimum interval in microseconds of LTG schedules

Entry Type EXP_INFO

Header for generic experiment info entries created by the user application. The payload of the EXP_INFO entry is not described by the Python entry type. User code must access the payload in the binary log data directly.

Entry type ID: 2

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
info_type uint16 Exp info type (arbitrary value supplied by application
length uint16 Exp info length (describes arbitrary payload supplied by application

Entry Type STATION_INFO

Information about an 802.11 association. At the AP one STATION_INFO is created for each associated STA and is logged whenever the STA association state changes. At the STA one STATION_INFO is logged whenever the STA associaiton state changes.

Entry type ID: 3

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
mac_addr 6uint8 MAC address of associated device
aid uint16 Association ID (AID) of device
host_name 20uint8 String hostname (19 chars max), taken from DHCP DISCOVER packets
flags uint32 Association state flags: ???
rx_last_timestamp uint64 Microsecond timer value at time of last successful Rx from device
rx_last_seq uint16 Sequence number of last packet received from device
rx_last_power int8 Rx power in dBm of last packet received from device
rx_last_rate uint8 PHY rate index in [1:8] of last packet received from device
tx_phy_rate uint8 Current PHY rate index in [1:8] for new transmissions to device
tx_phy_antenna_mode uint8 Current PHY antenna mode in [1:4] for new transmissions to device
tx_phy_power int8 Current Tx power in dBm for new transmissions to device
tx_phy_flags uint8 Flags for Tx PHY config for new transmissions to deivce
tx_mac_num_tx_max uint8 Maximum number of transmissions (original Tx + re-Tx) per MPDU to device
tx_mac_flags uint8 Flags for Tx MAC config for new transmissions to device
padding uint16

Entry Type NODE_TEMPERATURE

Record of the FPGA system monitor die temperature. This entry is only created when directed by a wlan_exp command. Temperature values are stored as 32-bit unsigned integers. To convert to degrees Celcius, apply (((float)temp_u32)/(65536.0*0.00198421639)) - 273.15

Entry type ID: 4

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
node_id uint32 wlan_exp node ID
serial_num uint32 Node serial number
temp_current uint32 Current FPGA die temperature
temp_min uint32 Minimum FPGA die temperature since FPGA configuration or sysmon reset
temp_max uint32 Maximum FPGA die temperature since FPGA configuration or sysmon reset

Entry Type WN_CMD_INFO

Record of a WARPnet / wlan_exp command received by the node. The full command payload is logged, including any (possibly personal-info-carrying) parameters like MAC addresses.

Entry type ID: 5

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
command uint32 WARPnet / wlan_exp command ID
src_id uint16 Node ID of device sending command
num_args uint16 Number of arguments supplied in command
args 10uint32 Command arguments

Entry Type TIME_INFO

Record of a time base event at the node. This log entry is used to enable parsing of log data recored before and after changes to the node's microsecond timer. This entry also allows a wlan_exp controler to write the current absolute time to the node log without affecting the node's timer value. This enables adjustment of log entry timestamps to real timestamps in post-proessing.

Entry type ID: 6

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
time_id uint32 Random ID value included in wlan_exp TIME_INFO command; used to find common entries across nodes
reason uint32 Reason code for TIME_INFO log entry creation
new_time uint64 New value of microsecond timer value; 0xFFFFFFFFFFFFFFFF if timer was not changed
abs_time uint64 Absolute time in microseconds-since-epoch; 0xFFFFFFFFFFFFFFFF if unknown

Entry Type RX_DSSS

Entry type ID: 11

Field Name DataType Description
timestamp uint64 Microsecond timer value at PHY Rx start
length uint16 Length of payload in bytes
rate uint8 PHY rate index, in [1:8]
power int8 Rx power in dBm
fcs_result uint8 Checksum status, 0 = no errors
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
chan_num uint8 Channel (center frequency) index
ant_mode uint8 Antenna mode: [1,2,3,4] for SISO Rx on RF ![A,B,C,D]
rf_gain uint8 AGC RF gain setting: [1,2,3] for [0,15,30]dB gain
bb_gain uint8 AGC BB gain setting: [0:31] for approx [0:63]dB gain
flags uint16 Bit OR'd flags: 0x1 = Rx was duplicate of previous Rx
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TX

Tx events in CPU High, logged for each MPDU frame created and enqueued in CPU High. See TX_LOW for log entries of actual Tx events, including re-transmissions. The time values in this log entry can be used to determine time in queue (time_to_accept), time taken by CPU Low for all Tx attempts (time_to_done) and total time from creation to completion (time_to_accept+time_to_done).

Entry type ID: 20

Field Name DataType Description
timestamp uint64 Microsecond timer value at time packet was created, immediately before it was enqueued
time_to_accept uint32 Time duration in microseconds between packet creation and packet acceptance by CPU Low
time_to_done uint32 Time duration in microseconds between packet acceptance by CPU Low and Tx completion in CPU Low
uniq_seq uint64 Unique sequence number for Tx packet; 12 LSB of this used for 802.11 MAC header sequence number
num_tx uint8 Number of actual PHY Tx events which were used to transmit the MPDU (first Tx + all re-Tx)
tx_power int8 Tx power in dBm of final Tx attempt
chan_num uint8 Channel (center frequency) index of transmission
rate uint8 PHY rate index in [1:8] of final Tx attempt
length uint16 Length in bytes of MPDU; includes MAC header, payload and FCS
result uint8 Tx result; 0 = ACK received or not required
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
ant_mode uint8 PHY antenna mode of final Tx attempt
queue_id uint8 Tx queue ID from which the packet was retrieved
padding 2uint8
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TX_LOW

Record of actual PHY transmission. At least one TX_LOW will be logged for every TX entry. Multiple TX_LOW entries may be created for the same TX entry if the low-level MAC re-transmitted the frame. The uniq_seq fields can be match between TX and TX_LOW entries to find records common to the same MPUD.

Entry type ID: 21

Field Name DataType Description
timestamp uint64 Microsecond timer value at time packet transmission actually started (PHY TX_START time)
uniq_seq uint64 Unique sequence number of original MPDU
rate uint8 PHY rate index in [1:8]
ant_mode uint8 PHY antenna mode in [1:4]
tx_power int8 Tx power in dBm
flags uint8 Tx PHY flags
tx_count uint8 Transmission index for this attempt; 0 = initial Tx, 1+ = subsequent re-transmissions
chan_num uint8 Channel (center frequency) index
length uint16 Length in bytes of MPDU; includes MAC header, payload and FCS
num_slots uint16 Number of backoff slots allotted prior to this transmission; may not have been used for initial Tx (tx_count==0)
cw uint16 Contention window value at time of this Tx
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
padding 3uint8
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header

Entry Type TXRX_STATS

Copy of the Tx/Rx statistics struct maintained by CPU High. If promiscuous statistics mode is Tx/Rx stats structs will be maintained for every unique source MAC address, up to the max_stats value. Otherwise statistics are maintaind only associated nodes.

Entry type ID: 30

Field Name DataType Description
timestamp uint64 Microsecond timer value at time of log entry creation
last_timestamp uint64 Microsecond timer value at time of last Tx or Rx event to node with address mac_addr
mac_addr 6uint8 MAC address of remote node whose statics are recorded here
associated uint8 Boolean indicating whether remote node is currently associated with this node
padding uint8
data_num_rx_bytes uint64 Total number of bytes received in DATA packets from remote node
data_num_tx_bytes_success uint64 Total number of bytes successfully transmitted in DATA packets to remote node
data_num_tx_bytes_total uint64 Total number of bytes transmitted (successfully or not) in DATA packets to remote node
data_num_rx_packets uint32 Total number of DATA packets received from remote node
data_num_tx_packets_success uint32 Total number of DATA packets successfully transmitted to remote node
data_num_tx_packets_total uint32 Total number of DATA packets transmitted (successfully or not) to remote node
data_num_tx_packets_low uint32 Total number of PHY transmissions of DATA packets to remote node (includes re-transmissions)
mgmt_num_rx_bytes uint64 Total number of bytes received in management packets from remote node
mgmt_num_tx_bytes_success uint64 Total number of bytes successfully transmitted in management packets to remote node
mgmt_num_tx_bytes_total uint64 Total number of bytes transmitted (successfully or not) in management packets to remote node
mgmt_num_rx_packets uint32 Total number of management packets received from remote node
mgmt_num_tx_packets_success uint32 Total number of management packets successfully transmitted to remote node
mgmt_num_tx_packets_total uint32 Total number of management packets transmitted (successfully or not) to remote node
mgmt_num_tx_packets_low uint32 Total number of PHY transmissions of management packets to remote node (includes re-transmissions)

Entry Type RX_OFDM

Entry type ID: 10

Field Name DataType Description
timestamp uint64 Microsecond timer value at PHY Rx start
length uint16 Length of payload in bytes
rate uint8 PHY rate index, in [1:8]
power int8 Rx power in dBm
fcs_result uint8 Checksum status, 0 = no errors
pkt_type uint8 Packet type: 1 = other data, 2 = encapsulated Ethernet, 3 = LTG, 11 = management, 21 = control
chan_num uint8 Channel (center frequency) index
ant_mode uint8 Antenna mode: [1,2,3,4] for SISO Rx on RF ![A,B,C,D]
rf_gain uint8 AGC RF gain setting: [1,2,3] for [0,15,30]dB gain
bb_gain uint8 AGC BB gain setting: [0:31] for approx [0:63]dB gain
flags uint16 Bit OR'd flags: 0x1 = Rx was duplicate of previous Rx
chan_est (64,2)i2 OFDM Rx channel estimates, packed as ![(uint16)I (uint16)Q] values, one per subcarrier
mac_payload_len uint32 Length in bytes of MAC payload recorded in log for this packet
mac_payload 24uint8 First 24 bytes of MAC payload, typically the 802.11 MAC header