This utility can be used to perform some support functions required for Rx/Tx calibration, similar to the ATE command set of the SDK driver. Its main functionality is setting test parameters and dumping statistics. It can also be used to prepare modified EEPROM data for writing into flash.
mt76-test phy0 set <parameter>=<value>
[...]mt76-test phy0 dump
mt76-test phy0 dump stats
The test state is controlled through the state
parameter. The following state values are supported:
off
: Normal operation (default)idle
: Testmode enabled, but no specific test activetx_frames
: Send a number of packets with configurable rate/txpowerrx_frames
: Receive packets and show RSSI and packet count/PERSetting a state activates it even if the value is the same as before. Setting it to tx_frames
triggers sending packets immediately. Setting rx_frames
enables receive mode and can also be used to clear rx statistics.
To run tests, you first need to disable all normal interfaces, set up a monitor mode interface and configure it to the channel/bandwidth you intend to use.
Parameter name | ATE parameter | Description |
---|---|---|
state |
ATE |
Test state |
tx_count |
ATETXCNT |
Number of packets to send |
tx_length |
ATETXLEN |
Length of packets to send |
tx_rate_mode |
ATETXMODE |
PHY mode (possible values: cck , ofdm , ht , vht ) |
tx_rate_nss |
Number of spatial streams (VHT only) | |
tx_rate_idx |
ATETXMCS |
MCS or legacy rate index |
tx_rate_sgi |
ATETXGI |
Enable short guard interval |
tx_rate_ldpc |
ATETXLDPC |
Enable LDPC |
tx_power_control |
ATETXPOWERCTRL |
Firmware transmit power control feature |
tx_power |
ATETXPOW0-3 |
Per-chain half-dBm transmit power, 0 means default value, e.g. 10,0,0,0 |
tx_antenna |
ATETXANT |
Transmit antenna bitmask |
freq_offset |
ATETXFREQOFFSET |
Frequency offset |