Wi-Fi Radio AT Commands#
Overview#
This section describes AT commands for radio parameters and listen interval configuration on SiWx91x devices.
Commands#
wifi-listen-interval#
Set the Wi-Fi listen interval for the Si91x device.
Command Format#
at+wifi-listen-interval=<wifi-interface>,<listen-interval>[,<listen-interval-multiplier>]Related SDK API
sl_wifi_set_listen_interval_v2
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface type for which the listen interval needs to be set. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t. Note some values are not currently supported, as indicated in the linked documentation.
Note: The enum values of sl_wifi_interface_t are not in the default numerical order of an enum. See sl_wifi_constants.h for the actual numeric values in this enum.
listen-interval#
The Listen Interval in milliseconds that is to be configured after multiplying it by the listen-interval-multiplier (see below) with the Access Point (AP) while joining the AP (when the net-up command is sent).
listen-interval-multiplier#
Optional. Multiplier for the listen-interval, sent by the device in the association request to the Access Point while joining (when the net-up command is sent). Multiplier will be set to 1 if this argument is omitted. Maximum value recommended is 10. Higher values may lead to interoperability issues.
Response#
OKon successERROR <error code>in case of failure. Possible error codes are the same as those returned by the sl_wifi_set_listen_interval_v2 API.
Examples#
at+wifi-listen-interval=1,1000,2 # Set the Listen Interval to 1 second and Listen Interval Multiplier to 2 for the Wi-Fi client interface (Listen Interval of 2 seconds sent to AP while joining)wifi-get-listen-interval#
Queries the listen interval currently configured for the SiWx91x Wi-Fi client (station) by its connected Access Point.
Command Format#
at+wifi-get-listen-interval=<wifi-interface>Related SDK API
sl_wifi_get_listen_interval_v2
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi client interface for which the listen interval is to be queried. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t. Note some values are not currently supported, as indicated in the linked documentation.
Note: The enum values of sl_wifi_interface_t are not in the default numerical order of an enum. See sl_wifi_constants.h for the actual numeric values in this enum.
Response#
OK <listen-interval> <listen-interval-multiplier>in case of success, where:<listen-interval>is the listen interval in milliseconds that is currently configured for the SiWx91x Wi-Fi client (station) by its connected Access Point.<listen-interval-multiplier>is the number by which the<listen-interval>sent in thewifi-listen-intervalvalue was multiplied and the resulting value sent to the Access Point.
ERROR <error code>in case of error. The error codes returned are the same as those returned by the sl_wifi_get_listen_interval_v2` API.
Examples#
at+wifi-get-listen-interval=1
OK 1000 1wifi-per-cnf-gen#
Update the general configuration settings for the Wi-Fi transmit test on the SiWx91x device.
Command Format#
at+wifi-per-cnf-gen=<wifi-interface>,<power>,<rate>,<packet-length>,<mode>,<channel>,<rate-flags>,<channel-bw>,<aggr-enable>,<reserved>,<pkt-count>,<delay>Related SDK API
sl_wifi_transmitter_test_info_t
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface for which to update the transmit test configuration. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
power#
Transmit power level in dBm. Contains a numeric value that corresponds to one of the values documented for the power parameter.
rate#
The transmit data rate for the test. Contains a numeric value that corresponds to one of the values documented for the rate parameter.
packet-length#
Length of the packet to transmit. Contains a numeric value that corresponds to one of the values documented for the length parameter.
mode#
The transmit test mode for the test. Contains a numeric value that corresponds to one of the values documented for the mode parameter.
channel#
Wi-Fi channel number. Contains a numeric value that corresponds to one of the values documented for the channel parameter.
rate-flags#
Options for the transmit test. Contains a bitmap whose bits are set according to the options described for the rate_flags parameter.
channel-bw#
Channel bandwidth.
aggr-enable#
Set to 0 to disable or 1 to enable packet aggregation.
reserved#
Reserved parameter (set to 0).
pkt-count#
Number of packets to transmit.
delay#
Delay between packets.
Response#
OKon successERROR 1in case of failure
Notes#
When you send any configuration command beginning with
at+wifi-per-cnf-for the first time or immediately after the wifi-per-start command, the SiWx91x device:Initializes the sl_wifi_transmitter_test_info_t structure with zero or empty values.
Overwrites the specific structure members in sl_wifi_transmitter_test_info_t based on the parameters passed in this command.
When you send any subsequent configuration command beginning with
at+wifi-per-cnf-, the SiWx91x device overwrites only the specific structure members.The following are the Wi-Fi transmit test configuration commands:
The sl_wifi_transmitter_test_info_t structure is used by the wifi-per-start command when it is sent with the same
wifi-interfacevalue as this command.This command is only supported in Transmit Test mode.
Examples#
at+wifi-per-cnf-gen=1,20,6,100,1,6,0,0,0,0,1000,10 # Generate transmit test configuration for Wi-Fi client interface with 20dBm power, rate 6, 100-byte packets
OKwifi-per-cnf-axppdu#
Update the basic Wi-Fi 6 (802.11ax) Physical Layer Protocol Data Unit (PPDU) configuration settings for the Wi-Fi transmit test on the SiWx91x device.
Command Format#
at+wifi-per-cnf-axppdu=<wifi-interface>,<enable-11ax>,<he-ppdu-type>,<ul-dl>,<bw>,<coding-type>,<spatial-reuse>,<nominal-pe>,<bss-color>Related SDK API
sl_wifi_transmitter_test_info_t
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface for updating the Wi-Fi 6 transmit test configuration. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
enable-11ax#
Set to 0 to disable or 1 to enable Wi-Fi 6 (802.11ax) as part of the transmit test.
he-ppdu-type#
High Efficiency (HE) PPDU type. Set to 0 for HE Single User (SU) PPDU, 1 for HE Extended Range (ER) SU PPDU, 2 for HE Trigger-Based (TB) PPDU, or 3 for HE Multi-User (MU) PPDU.
ul-dl#
Indicates whether the PPDU is Uplink (UL) or Downlink (DL). Set to 1 (uplink) if PPDU is to be sent by station to AP, or 0 (downlink) if PPDU is to be sent by AP to station.
bw#
Indicates the bandwidth for the PPDU. Set to 0 for 242-tone Resource Unit (RU) or 1 for upper 106-tone RU.
coding-type#
Coding type for the transmission. Set to 0 for Binary Convolutional Code (BCC) or 1 for Low-Density Parity-Check (LDPC).
spatial-reuse#
Spatial reuse value. Must be in the range 0-15. A value of 4 indicates that spatial reuse is allowed during the transmission of PPDU.
nominal-pe#
Indicates Nominal Transmission Power Envelope (T-PE) value. Set to 0 for 0 microseconds, 1 for 8 microseconds, or 2 for 16 microseconds.
bss-color#
Color value of Basic Service Set (BSS). Must be in the range 0 to 63.
Response#
OKon successERROR 1in case of failure
Notes#
Sending this command before sending the wifi-per-start command is optional. If omitted,
enable-11axis set to 0 and the remaining parameters set to zero or empty values.When you send any configuration command beginning with
at+wifi-per-cnf-for the first time or immediately after the wifi-per-start command, the SiWx91x device:Initializes the sl_wifi_transmitter_test_info_t structure with zero or empty values.
Overwrites the specific structure members in sl_wifi_transmitter_test_info_t based on the parameters passed in this command.
When you send any subsequent configuration commands beginning with
at+wifi-per-cnf-, the SiWx91x device overwrites only the specified structure members.The following are the Wi-Fi transmit test configuration commands:
The sl_wifi_transmitter_test_info_t structure is used by the wifi-per-start command when it is sent with the same
wifi-interfacevalue as this command.This command is only supported in Transmit Test mode.
Examples#
at+wifi-per-cnf-axppdu=1,1,0,0,0,0,4,0,0 # Update basic Wi-Fi 6 PPDU configuration for Wi-Fi client interface
OKwifi-per-cnf-axsiga#
Update the HE SIG-A PPDU field configuration settings for the Wi-Fi 6 (802.11ax) transmit test on the SiWx91x device.
Command Format#
at+wifi-per-cnf-axsiga=<wifi-interface>,<gi-ltf>,<num-he-ltf>,<beam-change>,<dcm>,<he-siga2-reserved>,<nsts-midamble>,<ru-allocation>,<stbc>,<tx-bf>Related SDK API
sl_wifi_transmitter_test_info_t
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface for updating the Wi-Fi 6 transmit test configuration. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
gi-ltf#
Indicates the Guard Interval (GI) and Long Training Field (LTF) size. Must be in the range 0-3.
num-he-ltf#
Indicates the number of High Efficiency Long Training Fields (HE-LTF) to be transmitted. Must be in the range 0-7.
beam-change#
Indicates the spatial mapping of pre-HE and HE fields. Set to 0 if pre-HE and HE fields are spatially mapped in the same way, or 1 if pre-HE and HE fields are spatially mapped differently.
dcm#
Indicates whether Dual Carrier Modulation (DCM) is applied to data symbols. Set to 0 for no DCM or 1 for DCM.
he-siga2-reserved#
HE SIG-A2 reserved field. Must be in the range 0-511.
nsts-midamble#
Indicates the number of Space-Time Streams (NSTS) and Midamble Periodicity. Must be in the range 0-7.
ru-allocation#
Indicates the Resource Unit (RU) Allocation Subfield for 20 MHz bandwidth. Must be in the range 0-255.
stbc#
Indicates whether Space-Time Block Coding (STBC) is used for PPDU transmission. Set to 0 for no STBC or 1 for STBC (only if DCM field is set to 0).
tx-bf#
Indicates whether beamforming matrix is applied to the transmission. Set to 0 for no beamforming matrix or 1 for beamforming matrix.
Response#
OKon successERROR 1in case of failure
Notes#
Sending this command before sending the wifi-per-start command is optional. If omitted, the parameters default to zero or empty values.
You must send the wifi-per-cnf-axppdu command before sending this command. Otherwise,
enable-11axdefaults to 0 for the specifiedwifi-interfacevalue and the parameters in this command will not take effect.When you send any configuration command beginning with
at+wifi-per-cnf-for the first time or immediately after the wifi-per-start command, the SiWx91x device:Initializes the sl_wifi_transmitter_test_info_t structure with zero or empty values.
Overwrites the specific structure members in sl_wifi_transmitter_test_info_t based on the parameters passed in this command.
When you send any subsequent configuration commands beginning with
at+wifi-per-cnf-, the SiWx91x device overwrites only the specified structure members.The following are the Wi-Fi transmit test configuration commands:
The sl_wifi_transmitter_test_info_t structure is used by the wifi-per-start command that is sent for the same
wifi-interfacevalue as the one used in this command.This command is only supported in Transmit Test mode.
Examples#
at+wifi-per-cnf-axsiga=1,0,0,0,0,0,0,0,0,0 # Update HE SIG-A configuration for Wi-Fi client interface
OKwifi-per-cnf-axsigb#
Update the HE SIG-B PPDU field configuration settings for the Wi-Fi 6 (802.11ax) transmit test on the SiWx91x device.
Command Format#
at+wifi-per-cnf-axsigb=<wifi-interface>,<sigb-compression-field>,<sigb-dcm>,<sigb-mcs>,<user-idx>,<user-sta-id>Related SDK API
sl_wifi_transmitter_test_info_t
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface for which to update the Wi-Fi 6 transmit test configuration. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
sigb-compression-field#
SIG-B compression field. Must be 0 or 1.
sigb-dcm#
Indicates whether Dual Carrier Modulation (DCM) is applied to SIG-B Symbols. Set to 0 to disable or 1 to enable.
sigb-mcs#
Indicates the Modulation and Coding Scheme (MCS) for SIG-B Symbols. Allowed range is 0-5.
user-idx#
User index. Must be in the range 0-8.
user-sta-id#
Indicates the station ID of the intended user. Allowed range is 0-2047.
Response#
OKon successERROR 1in case of failure
Notes#
Sending this command before sending the wifi-per-start command is optional. If omitted, the parameters default to zero or empty values.
You must send the wifi-per-cnf-axppdu command before sending this command. Otherwise,
enable-11axdefaults to 0 for the specifiedwifi-interfacevalue and the parameters in this command will not take effect.When you send any configuration command beginning with
at+wifi-per-cnf-for the first time or immediately after the wifi-per-start command, the SiWx91x device:Initializes the sl_wifi_transmitter_test_info_t structure with zero or empty values.
Overwrites the specific structure members in sl_wifi_transmitter_test_info_t based on the parameters passed in this command.
When you send any subsequent configuration command beginning with
at+wifi-per-cnf-, the SiWx91x device device overwrites only the specified structure members.The following are the Wi-Fi transmit test configuration commands:
The sl_wifi_transmitter_test_info_t structure is used by the wifi-per-start when it is sent with the same
wifi-interfacevalue as this command.This command is only supported in Transmit Test mode.
HE SIG-B fields are only present in HE MU PPDU (when
he-ppdu-typeis set to 3 in the wifi-per-cnf-axppdu command).
Examples#
at+wifi-per-cnf-axsigb=1,0,0,0,0,0 # Update HE SIG-B configuration for Wi-Fi client interface
OKwifi-per-start#
Start the Wi-Fi transmit test on the SiWx91x device.
Command Format#
at+wifi-per-start=<wifi-interface>,<enable>Related SDK API
Pre-conditions#
wifi-per-cnf-gen for the same wifi-interface value
Parameters#
wifi-interface#
The Wi-Fi interface over which to conduct the transmit test. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
enable#
Set to 0 to disable or 1 to enable the transmit test.
Response#
OKon successERROR <error-code>in case of failure. Possible error codes are the same as those returned by the sl_wifi_transmit_test_start API.
Notes#
This command is only supported in Transmit Test mode.
Examples#
at+wifi-per-start=1,1 # Start transmit test on Wi-Fi client interface
OKwifi-per-stop#
Stop the Wi-Fi transmit test on the SiWx91x device.
Command Format#
at+wifi-per-stop=<wifi-interface>Related SDK API
Pre-conditions#
Parameters#
wifi-interface#
The Wi-Fi interface over which to stop the transmit test. Contains a numeric value that corresponds to one of the values of the enum sl_wifi_interface_t.
Note: The enum values of sl_wifi_interface_t are not in strict numerical order. Refer to sl_wifi_constants.h for the actual numeric values in this enum.
Response#
OKon successERROR <error-code>in case of failure. Possible error codes are the same as those returned by the sl_wifi_transmit_test_stop API.
Notes#
This command is only supported in Transmit Test mode.
Examples#
at+wifi-per-stop=1 # Stop transmit test on Wi-Fi client interface
OK