Trigger Frame Generation
- Updated2025-10-08
- 3 minute(s) read
The multi-user transmission (both OFDMA and MU MIMO) on uplink in 802.11ax (HE) is initiated by a trigger frame from an Access Point Station (AP STA), as shown in the following figure.

As specified in standard IEEE P802.11ax/D8.0; the trigger frame contains all the user related information, and common information across users. The following figure depicts the format of the trigger frame.


To generate a trigger frame using the NI WLAN Generation Toolkit APIs, you must use two generation toolkit sessions. One session to configure the trigger frame content and another one for transmit PHY. The transmit PHY could be one of the OFDM standards 802.11a/g, 802.11n, 802.11ac, or 802.11ax.
You must complete the following steps to create the trigger frame MSDU bits.
- Configure the first session for 802.11ax Trigger-based PPDU.
- Enter the common settings such as bandwidth, GI, etc., directly to the session.
- Configure the payload parameters on the session to derive the other common parameters such as L-SIG Length, Pre-FEC Padding factor, etc. Or configure L-SIG Length, Pre-FEC Padding Factor, PE Disambiguity, and LDPC Extra Symbol Segment directly.
- Configure the per user information such as MCS index, RU allocation etc. with the “userx” active channel.
- Call the niWLANG Create Trigger Frame MSDU Bits VI or niWLANG_CreateTriggerFrameMSDUBits function to create the bits.Note For the list of trigger frame parameters, refer to the following table.
| Trigger Frame Subfield | Value | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Common Information field | |||||||||||||||
|
User Info field | |||||||||||||||
|
Trigger Type |
Set to 0. Only Basic Trigger is supported. |
||||||||||||||
|
UL Length |
Either derived from specified per user payload settings, or specified using L-SIG Length property/NIWLANG_L_SIG_LENGTH attribute |
||||||||||||||
|
More TF |
Set to 0 |
||||||||||||||
|
CS Required |
Specified using CS Required property/NIWLANG_CS_REQUIRED attribute |
||||||||||||||
|
UL BW |
Specified using the Channel Bandwidth property/NIWLANG_CHANNEL_BANDWIDTH attribute |
||||||||||||||
|
GI And LTF Type |
Specified using the following properties:
|
||||||||||||||
|
MU-MIMO LTF Mode |
Specified using the MU-MIMO LTF Mode Enabled property/NIWLANG_MU_MIMO_LTF_MODE_ENABLED attribute |
||||||||||||||
|
Number of HE-LTF Symbols and Midamble Periodicity |
Specified using the Number of HE-LTF Symbols property/NIWLANG_NUMBER_OF_HE_LTF_SYMBOLS attribute and Midamble Periodicity property/NIWLANG_MIDAMBLE_PERIODICITY attribute. |
||||||||||||||
|
UL STBC |
Specified using the STBC All Streams Enabled property/NIWLANG_STBC_ALL_STREAMS_ENABLED attribute |
||||||||||||||
|
LDPC Extra Symbol Segment |
Either derived from specified per user payload settings or specified using LDPC Extra Symbol Segment property/NIWLANG_LDPC_EXTRA_SYMBOL_SEGMENT attribute |
||||||||||||||
|
AP Tx Power |
Specified using the AP Tx Power property/NIWLANG_TRIGGER_FRAME_AP_TXP attribute |
||||||||||||||
|
UL Packet Extension |
Either derived from specified per user payload settings or specified using following properties:
|
||||||||||||||
|
UL Spatial Reuse |
Set all to 0 |
||||||||||||||
|
Doppler |
Set to 0 if Midamble Periodicity property/NIWLANG_MIDAMBLE_PERIODICITY attribute is set to None/NIWLANG_VAL_NONE, set to 1 otherwise. |
||||||||||||||
|
UL HE-SIG-A2 Reserved |
Set all to 1 |
||||||||||||||
|
Reserved |
Set to 1 |
||||||||||||||
|
AID12 |
Specified using the AID12 property/NIWLANG_AID12 attribute |
||||||||||||||
|
RU Allocation |
Specified using the RU Size and RU Offset properties/NIWLANG_RU_SIZE and NIWLANG_RU_OFFSET attributes |
||||||||||||||
|
UL FEC Coding Type |
Specified using the FEC Coding Type property/NIWLANG_FEC_CODING_TYPE attribute |
||||||||||||||
|
UL MCS |
Specified using the MCS Index property/NIWLANG_MCS_INDEX attribute |
||||||||||||||
|
UL DCM |
Specified using the DCM Enabled property/NIWLANG_DCM_ENABLED attribute |
||||||||||||||
|
SS Allocation |
Specified using following properties:
|
||||||||||||||
|
UL Target RSSI |
Specified using the Target RSSI property/NIWLANG_TRIGGER_FRAME_TARGET_RSSI attribute |
||||||||||||||
|
Reserved |
Set to 1 |
||||||||||||||
|
Trigger Dependent User Info |
Set to 32 |
After completing the aforementioned steps, generate the trigger frame by completing the following steps.
- Configure the second session to any one of the OFDM standards: 802.11a/g, 802.11n, 802.11ac, or 802.11ax.
- Configure the session to generate user-defined bit pattern.
- Input the MSDU bits created by the first session to the current session as a user-defined bit pattern.
- Configure MAC Frame Type as Trigger Frame.
- Configure the MAC Header settings and MAC Padding Duration (s).
- Call the niWLANG RFSG Create and Download Waveforms VI, or niWLANG_RFSGCreateAndDownloadWaveform/niWLANG_RFSGCreateAndDownloadMIMOWaveforms functions to generate the Trigger Frame waveform.
An example demonstrating the creation and the generation of trigger frame is located at: LabVIEW\examples\RF Toolkits\WLAN\generation\Basic or Documents\National Instruments\WLAN Toolkit\Examples\C\Generation