1. Introduction
The manufacturing mode can be used to validate a board design by measuring RF parameters, such as Tx emissions in continuous or modulated wave and the Rx packet error rate versus channel frequency or modulation type.
2. Programming and running manufacturing (MFG) mode
The ST67W611M hardware setup wiki page describes how to program the manufacturing-mode firmware.
3. QConn_RCT GUI
Once the MFG firmware is loaded onto the ST67W611M1 device, the QConn_RCT tool allows the user to control the radio settings of the module, such as:
- The channel, output power, modulation standard, and packet settings
- The duty cycle
- The XO calibration value(1)
- Enabling the power table compensation(1)
(1): Modules are already trimmed in production. However, XO compensation can be forced and power compensation can be enabled or disabled. In modulation mode, internal limitations are applied to conform with regulations.
When these settings have been configured, the RF-Phy tests can be launched.
4. Main command lines
Use a terminal emulator like Tera Term to send the UART commands through the serial port.
4.1. Serial port configuration
The UART baud rate must be set to 2 Mbps, as shown in the image below:
4.2. Common commands
Command | Description |
---|---|
V1 | Enable power compensation |
V0 | Disable power compensation |
x32 | Set frequency offset compensation factor; capcode is 32 |
c10 | Set channel number 10 |
p15 | Set power; target power is 15 dBm |
d50 | Set Tx duty cycle; duty cycle is 50% or 100% |
l4096 | Set payload length; length is 4096 bytes |
f500 | Set packet transmission frequency; frequency is 500 Hz (set to '500' for 11b; '1000' for others) |
t1 | Start Tx |
t0 | Stop Tx |
r:s2 | Start Rx for BW20 |
r:s4 | Start Rx for BW40 |
r:p | Stop Rx |
r:g | Get Rx stats |
The following sections focus on the Wi-Fi® standard.
4.3. Standard 11b command
Preamble type | Data rate |
---|---|
B: long preamble | 0: 1 Mbps |
b: short preamble | 1: 2 Mbps |
2: 5.5 Mbps | |
3: 11 Mbps |
Example: set the standard 11b command to a short preamble at 1 Mbps.
b0
4.4. Standard 11g command
Preamble type | Data rate |
---|---|
G: long | 0: 6 Mbps |
g: short | 1: 9 Mbps |
2: 12 Mbps | |
3: 18 Mbps | |
4: 24 Mbps | |
5: 36 Mbps | |
6: 48 Mbps | |
7: 54 Mbps |
Example: set the standard 11g command to a long preamble at 54 Mbps.
G7
4.5. Standard 11n command
Preamble type | Bandwidth | Data rate | Coding type |
---|---|---|---|
msg: short GI HT-GF | 2: 20 MHz | 0: MCS0 | 0: BCC |
msm: short GI HT-MF | 4: 40 MHz | ... | 1: LDPC |
mlg: long GI HT-GF | ... | ||
mlm: long GI HT-MF | 7: MCS7 |
Example: set the standard 11n command to a long-guard interval in a mixed-packet format, 20-MHz bandwidth, MCS7 modulation scheme, and BCC coding type.
mlm270
4.6. Standard 11ax command
Coding type | Preamble type | 0 | Data rate | Bandwidth |
---|---|---|---|---|
0: BCC | 0: 2xHELTF + 0.8 us GI | 0: MCS0 | 0: BW20 | |
1: LDPC | 1: 2xHELTF + 1.6 us GI | ... | 1: BW40 | |
2: 4xHELTF + 3.2 us GI | 9: MCS9 |
Example: set the standard 11ax command to a BCC coding type, 0.8-us guard interval, MCS9 modulation scheme, and 20-MHz bandwidth.
Q00090
5. Running RF tests
Connect the correct RF cable, depending on the reference design version:
- -B: use a specific cable - ufl-like to SMA: MXHQ87WJ3000.
- -U: use an MHF4-to-SMA cable compatible with the IPEX 20449-001E-03 connector, such as a Linx CSJ-RGFB-100-MHF4 cable.
For more details on ST67W611M1 reference designs, visit this wiki page.
Either use the QConn_RCT GUI or send commands through the serial port (Tera Term or a Python test sequence).
5.1. Tx tests
5.1.1. Bench setup
Spectrum analyzer settings for power channel measurements:
- RBW = 1MHz/VBW = 3MHz
- RMS detector/power average measurement
- Sweep time auto
- Ext atten = 20 dB
Default settings used for test:
- Coding type: BCC for BW20 (11n & 11ax); LDPC for BW40 (11ax)
- HELEF/GI: 2xHELTF + 0.8us GI (for 11ax only)
5.1.2. Example Tx test sequence: standard 11ax
V1 // Enable power compensation c10 // Set channel; set to channel 10 p15 // Set power; target power is 15 dBm d100 // Set Tx duty cycle; duty cycle is 100% l4096 // Set payload length; length is 4096 bytes f500 // Set packet transmission frequency; frequency is 500Hz x32 // Set frequency offset compensation factor; capcode is 32 Q00090 // Select packet mode and rate: 11ax/0.8us GI/20M BW/MCS9/BCC t1 // Enable Tx mode
Configure the analyzer according to the ST67W611M1 settings and execute the WLAN measurement, such as:
- Channel power
- Error vector magnitude (EVM)
- Frequency/symbol error
- Spectrum emission mask (SEM)
- Spectral flatness
- Spurious emissions
Note that for any configuration changes (such as the power channel or standard), the Tx has to be set OFF (no frequency or power setting during emission).
5.2. Rx tests
5.2.1. Bench setup
To avoid external perturbations, put the board into a Faraday cage, as illustrated by the image below.
The main Rx performance is the sensitivity of the receiver.
Default Rx parameters used for test (on ST67W611M1 and the generator):
- 1x1 stream
- Guard interval: long
- Physical mode:
- 11b/11g: legacy
- 11n: mixed mode
- Payload size:
- 11b/11g: 1024
- 11n: 4096
5.2.2. Example Rx test sequence
For ST67W611M1, it is not necessary specify the packet/standard parameters.
Program the modulation parameters of the RF generator (bandwidth, standard, packet bw, FCS MAC enable, coding type, ppdu format, guard interval, payload length, and packet number).
c6 // Set channel; set to channel 6 x32 // Set frequency offset compensation factor; capcode is 32
r:s2 // Start Rx & set receive bandwidth = 20 MHz r:g // Gather and report the received packet count: correct packet in the field "rxok: ..."
Set RF generator output power
(For example, start a sweep from the expected sensi value -5 dBm and increase the power with 1-dB steps).
For each power step of the generator, calculate the PER:
PER = [(Packet_number – rxok) / Packet_number)] *100
The sensitivity threshold is obtained for a PER <= 10%
r:p // Stop RX receive mode
Change the ST67W611M1 parameters (such as the channel or standard) and execute another test.