# EMC3080 Series Module RF Test
This article is applicable to series modules such as EMC3080, EMC3090, EMC3180, EMC3280, EMC3380, and EMC3285.
#1. System Introduction
During the product certification process, it is usually necessary to evaluate the RF transceiver performance of wireless modules to determine whether they comply with certification specifications and international standards. Due to the fact that the parameters and timing of the RF signal cannot be kept constant during normal communication of the module, the RF signal transmitted and received during normal communication of the module is generally not directly tested during authentication and testing. The module must enter a specific RF transmission and reception mode (hereinafter referred to as ATE working mode), and set the module to receive and receive specific test signals and messages through the mpTools software running on the PC for measurement by the testing equipment.
The connection diagram of the entire testing system is as follows:
PC connects to the module running in ATE mode through a serial port, and controls the module to send and receive various RF signals of parameters through UART commands. The testing instrument can receive signals from the module through the antenna, or it can be directly connected to the module antenna interface through RF cables to conduct comprehensive testing and evaluation of the module's RF performance.
PC send UART command through testing control software:
- Control software for testing Wi Fi signals:
- Control software for testing Bluetooth signals:
When the module is started, it will detect the level of the Boot signal and EasyLink pin. If both pins are low, the module will enter ATE mode. Module via UART_ LOG receives control commands transmitted on the PC. So the signal lines required for the module are as follows:
- Boot: Maintain low level when the module is powered on
- Status: Maintain high level when the module is powered on (default)
- UART_ LOG_ TXD: Receive signal for UART communication with PC
- UART_ LOG_ RXD: Sending signal for UART communication with PC
- VDD: Power supply for modules
- GND: Grounding signal line of the module
Please refer to the data manual of the corresponding module for the positions of the above signals and power lines on different models of modules. For EMW3280, Pin19 (boot) is grounded (pulled down) and Pin21 (UART_LOG_TXD)&Pin22 (UART_LOG_RXD) are connected to the UART of the PC.
In the following example, we selected EMC3280 as the test module, and in order to facilitate the power supply and setting of the working mode of the module, we installed the module on the MXKit development board. The MXKit's MXKit Base motherboard can convert UART signals into USB signals, so the PC is connected to the MXKit development board through a Micro USB cable. The EMW3280 module is welded to the core board MXKit Core 3080 and then plugged into the MXKit Base motherboard.
#2. Preparation for testing
#2.1. Connect PC and Module
Install the UART to USB chip on the MXKit Base motherboard on the PC: CP2105 driver, download the driver (open new window).
Connect the PC to the MXKit development board through a Micro USB cable.
On the Windows Device Manager, you can see two virtual serial port devices and record the COM port numbers corresponding to Silicon Labs CP210x USB to UART Bridge: Enhanced COM Port. For example, in the figure below, the corresponding port number is COM4.
#2.2. Module enters ATE working mode
After grounding the Boot signal of the module and re powering it on, the module will automatically enter ATE working mode. The operation method on MXKit is:
1. Turn the 1st toggle switch of the dial switch on the MXKit Base board to ON.
2. Then press the RESET button on the left. Release the module after resetting.
#3. WiFi Test Method
#3.1. MPTool software startup
Download the mpTool software, decompress it, and run the UI_ MPtool.exe.
Complete the preparation work for testing.
On the Main tab, in the Select COM drop-down menu, select the serial port number recorded in the "Connect PC and Module" step. In this example, it is COM4.
Click on the Initialize button to complete initialization. If initialization fails, the reason for the error will be displayed in the View Window on the right side of the software. After success, all other controls in the software will be opened.
#3.2. Introduction to mptool software
The mptool software is divided into four tags, namely Main, PSD, Efuse, and Reg. The Main window allows you to set the RF transceiver parameters and modes, and initiate transceiver testing. Other windows are used for module production, and users do not need to operate them. If users use the functions of these labels without authorization, it is very likely to damage the calibration parameters of the module produced in the factory, and cause permanent damage to the module that cannot be repaired.
The functions of each control in the Main tab window are as follows:
Select COM: Select the serial port number for communication between the PC and the module
Control: Contains various control functions
Initialize: Initialize the serial port and the module to be tested
Pwridx by Rate and Limit: When selected, the software reads the initial values of the parameters from the module's Efuse and limits the antenna transmission power to a certain extent, which is displayed in the TX Power Index and cannot be modified. If unchecked, users can adjust the values in the TX Power Index to increase or decrease transmission power
TX Power Tracking Start: Start the temperature compensation function, which is generally not turned on
MAC Address, Wlan Mode: Not required
Testing Item: Select a testing item, and the optional testing items are as follows:
- Packet TX: used to test RF transmission performance, such as power, EVM, and frequency offset
- Continuous TX: used for testing transmission power or maximum power consumption of test modules in FCC/CE/MCC/CTA certification
- Single Tone TX: used for testing frequency offset
- Carrier Suppression TX: only for 802.11b
- Packet RX (All), Packet RX (Filtered): Receiving test, which can be used to test the receiving sensitivity and bit error rate of the module
Start/Stop: Start and stop the selected testing item in the "Testing Item"
TX Setting and RX Setting: Set RF parameters for receiving and sending
- Ant TX and Ant RX: For this series of modules, fixed option A
- Data Channel: Select the wireless frequency band for RF transmission and reception
- Data Rate: Modulation method and data transmission rate
- TX Power Index: Antenna transmission power (only A antenna can be set). The module cannot set a fixed power output RF signal and can only be adjusted based on the current transmission power. For each increase/decrease in the Power Index by 1, the transmission power will correspondingly increase/decrease by 0.5dBm. The initial value of TX Power Index is saved in Efuse and calibrated by MXCHIP during module production, meeting the parameters in the data manual, ensuring performance, and meeting the requirements of certification standards.
- Preamble: Set the preamble mode of the message, optional Long_ GI and Short_ GI.
- Bandwidth: The bandwidth of RF transceiver, 20MHz or 40MHz
- Xtal.cap: The calibration value of the crystal oscillator, which can be used to adjust the frequency offset of the RF
TX Packet Setup: Set message sending parameters
- Pattern: Set the type of TX message
- Count: Contract quantity
- Length: The length of each package
- Interval: not adjustable
Packet counter: displays the number of error packets sent, received, and received
- Reset: Restore the quantity to 0
View Window: Software Log output window
#3.3. WiFi Test Example
#3.3.1. Signaling Mode Transmitting Test
#3.3.1.1. Read factory default parameters
- Select Pwridx by Rate and Limit to read the factory parameters from Efuse.
- Select TX test project: Packet TX
- Select RF channel
- Select modulation mode and data rate
- Choose bandwidth
- Start Test
#3.3.1.2. Custom Sending Parameters
- Do not select Pwridx by Rate and Limit
- Select TX test project: Packet TX
- Select RF channel
- Select modulation mode and data rate
- Set the transmission power. Under different modulation modes and rates, the transmission power settings are shown in the table below. Increase or decrease on this basis
802.11b | 802.11g | 802.11n | |||
1M | 11M | 6M | 54M | MCS0 | MCS7 |
35 | 35 | 46 | 44 | 45 | 42 |
- Choose bandwidth
- Select frequency calibration parameters
- Start testing
#3.3.2. Single Tone Sending Test
- Select TX test project: Single Tone TX
- Select RF channel
- Set the transmission power parameter to 0
- Start testing
#3.3.3. Receiving Test
- Select RX testing project: Packet Rx (All)
- Select RF channel
- Start testing
- View the number of received packets
#4. Bluetooth Testing Methods
#4.1. Enter Bluetooth test mode
The wiring method is the same as WIFI testing. After testing WIFI, MPTOOL must be turned off and the serial port released.
1. Open the serial port terminal (using SecureCRT as an example) and enter the following three instructions into the terminal: ATM2=bt_ Power, onATM2=gnt_ BT, btATM2=bridge will see the following information printed on the terminal, indicating entering Bluetooth ATE mode.
#
- Open the Bluetooth MP Kit Setup Package package and locate the "RTLBTAPP.exe" file, double-click to open it.
- Set the settings in the following order, and finally click "Open" to initialize. After success, the upper left corner will turn green, as shown in the following figure.
#4.2. Bluetooth Transmitting Test
Select the "LE Test" menu, where TX testing can set Tx mode, channel, number of packets, rate, etc. After setting, click "Start" to start signal output. As indicated by the arrow in the figure below.
#4.3. Bluetooth Receiving Test
RX testing sets Rx mode, channel, rate, etc. on this interface. After setting up, click "Start" to enter the receiving signal state. As indicated by the arrow in the figure below.
After the testing instrument is contracted, click "Stop" and the number of received packages will be displayed in the "LE Rx Count" section. After clearing, click "Start" again to enter the next test.
#5. Connection between module and RF testing instrument
There are two methods for detecting the RF signal emitted by the RF testing instrument module:
● Wireless reception using a 2.4GHz antenna
Connect the transmission wire to the antenna interface of the module and receive it directly. If the module uses a PCB onboard antenna, it is necessary to disconnect the PCB antenna first. Follow the following testing steps:
a. Remove the 0 ohm resistor connecting the chip to the antenna on the module.
b. Weld the transmission wire to the antenna test point on the back of the module, and connect the other end of the transmission wire to the testing instrument.
#6. Appendix: Wi Fi ATE Serial Port Instructions
The MPtool software interacts with the test module through serial port instructions. Developers can develop customized testing systems based on these instructions.
#6.1. Instruction list
#6.1.1. Start MP mode
After executing this command, the Wi Fi driver stops transmitting data and enters MP mode.
- iwpriv mp_start
#6.1.2. Stop MP mode
After executing this command, the Wi Fi driver stops the transmission of messages initiated by other commands. But the system needs to be restarted before it can enter normal Wi Fi connection mode.
- iwpriv mp_stop
#6.1.3. Set Tx rate
Set the data transmission rate for Tx messages.
iwpriv mp_rate rate
- rate: Transfer rate,2 = 1M, 4 = 2M, 11 = 5.5M, …, 108 = 54M, 128 = MCS0, 129 = MCS1, …, 142 = MCS15
#6.1.4. Set operational channel
Set the working frequency band for sending and receiving messages.
iwpriv mp_channel channel
- channel: Frequency band for sending and receiving messages
#6.1.5. Set operational bandwidth
Set the bandwidth for sending and receiving data packets, and set the guard interval for transmitting MCS messages. If no parameters are provided, the default setting is 20MHz bandwidth and long protection interval (long GI) is used for transmission.
iwpriv mp_bandwidth 40M=40m, shortGI=sgi
- 40m: set bandwidth,1=40M,0=20M
- sgi: set GI mode,1=Short GI,0=long GI
#6.1.6. Set Tx power
Set the transmission power of paths A and B. If no parameters are provided, use the preset parameters in Flash.
iwpriv mp_ Txpower path=x, path=y
- X: Transmission power of path A.
- Y: The transmission power of path B.
#6.1.7. Set antenna for Tx
Set the antenna used for sending
iwpriv mp_ant_tx ant
- ant: a=antenna A, b=antenna B, ab=antenna A and B。
#6.1.8. Set antenna for Rx
Set the antenna used for receiving
iwpriv mp_ant_rx ant
- ant: a=antenna A,b=antenna B,ab=antenna A and B。
#6.1.9. Start air Rx mode
This command is used for wireless reception testing. Use the Start command to start packet reception, use the Stop command to stop counting, and display statistical data for correct and error messages. Use the phy command to display the number of RF physical layer received packets, CRC errors, and failed alarms.
iwpriv mp_ Arx start/stop/phy
- Start: Start receiving the package.
- Stop: Stop counting and display statistical information.
- Phy: Display the number of RF physical layer received packets, CRC errors, and failure alarms
#6.1.10. Start continuous Tx mode
- This command is used for continuous contract testing. Use the time command to set the sending time, and the count command to set the number of packets sent. If both time and count are not set, the continuous sending mode will be activated. If the background mode is not set, any character input can stop sending. If the cs mode is set, the carrier suppression signal is sent. The stone command can be used to send a single tone signal for testing frequency. If stone is set, the signal sent will not be a recognizable message. By default, hardware is used to send short duty cycle signals, and if pkt is set, software is used to control the sending.
○ iwpriv mp_ Ctx count=n, background, stop, pkt, cs, stone
* <span class="ne-text">t: Set the contracting time</span>
* <span class="ne-text">n: Set the number of contracts to be issued</span>
* <span class="ne-text">Background: Set the backend contracting mode</span>
* <span class="ne-text">Stop: Stop backend contracting</span>
* <span class="ne-text">Pkt: Send tx message</span>
* <span class="ne-text">CS: Send carrier suppression signal</span>
* <span class="ne-text">Stone: Send Single Tone signal</span>
#6.1.11. Query air Rx statistics
Used for wireless message counting. When transmitting data packets, use this command to obtain the number of packets that have already been transmitted. When received, this command can be used to obtain the statistical quantity of correct and CRC error messages.
- iwpriv mp_query
#6.1.12. Reset air Tx/Rx statistics
This command can recharge the count of messages. When sending, this command can reset the number of sent messages, and when receiving, it can reset the number of correct and CRC incorrect messages.
- iwpriv mp_reset_stats
#6.2. Example of instruction usage
#6.2.1. Continuous Transmitting Test
iwpriv mp_start //enter MP mode
iwpriv mp_channel 1 //set channel to 1 . 2, 3, 4~11 etc.
iwpriv mp_bandwidth 40M=0,shortGI=0 //set 20M mode and long GI
iwpriv mp_ant_tx a //select antenna A for operation
iwpriv mp_txpower patha=44,pathb=44 //set path A and path B Tx power level
iwpriv mp_rate 108 //set OFDM data rate to 54Mbps,ex: CCK 1M = 2, CCK
5.5M = 11, KK, OFDM54M = 108 N Mode: MCS0 = 128,
MCS1 = 129…..etc.
iwpriv mp_ctx background //start continuous Tx
iwpriv mp_ctx stop //stop continuous Tx
iwpriv mp_stop //exit MP mode
#6.2.2. Continuous Packet Transmitting Test
iwpriv mp_start //enter MP mode
iwpriv mp_channel 1 //set channel to 1 . 2, 3, 4~11 etc.
iwpriv mp_bandwidth 40M=0,shortGI=0 //set 20M mode and long GI
iwpriv mp_ant_tx a //select antenna A for operation
iwpriv mp_txpower patha=44,pathb=44 //set path A and path B Tx power level
iwpriv mp_rate 108 //set OFDM data rate to 54Mbps, ex: CCK 1M = 2, CCK
5.5M = 11, KK, OFDM54M = 108 N Mode: MCS0 = 128,
MCS1= 129….. etc.
iwpriv mp_ctx background,pkt //start packet continuous Tx
iwpriv mp_ctx stop //stop continuous Tx
#6.2.3. Carrier Suppression Test
iwpriv mp_start //enter MP mode
iwpriv mp_channel 1 //set channel to 1 . 2, 3, 4~11 etc.
iwpriv mp_bandwidth 40M=0,shortGI=0 //set 20M mode and long GI
iwpriv mp_ant_tx a //select antenna A for operation
iwpriv mp_txpower patha=44,pathb=44 //set path A and path B Tx power level
iwpriv mp_rate 108 //set OFDM data rate to 54Mbps,ex: CCK 1M = 2, CCK
5.5M = 11, KK, OFDM54M = 108 N Mode: MCS0 = 128,
MCS1 = 129…..etc.
iwpriv mp_ctx background,cs //start sending carrier suppression signal
iwpriv mp_ctx stop //stop continuous Tx iwpriv mp_stop
#6.2.4. Single Tone Signal transmitting test
iwpriv mp_start //enter MP mode
iwpriv mp_channel 1 //set channel to 1 . 2, 3, 4~11 etc.
iwpriv mp_bandwidth 40M=0,shortGI=0 //set 20M mode and long GI
iwpriv mp_ant_tx a //select antenna A for operation
iwpriv mp_txpower patha=44,pathb=44 //set path A and path B Tx power level
iwpriv mp_rate 108 //set OFDM data rate to 54Mbps,ex: CCK 1M = 2, CCK
5.5M = 11, KK, OFDM54M = 108 N Mode: MCS0 = 128,
MCS1 = 129…..etc.
iwpriv mp_ctx background,stone //start sending single tone signal
iwpriv mp_ctx stop //stop sending single tone signal
iwpriv mp_stop //exit MP mode
#6.2.5. Receiving Test
iwpriv mp_start //enter MP mode
iwpriv mp_bandwidth 40M=1,shortGI=0 //set 40M mode and long GI
iwpriv mp_channel 6 //set channel to 6
iwpriv mp_ant_rx ab //select all 2 antennas for operation
iwpriv mp_arx start //start air Rx
iwpriv mp_query //get the statistics
iwpriv mp_arx stop //stop air Rx and show the statistics
iwpriv mp_stop //exit MP mode
#7. Appendix: Bluetooth ATE Serial Port Instructions
In ATE mode, three commands can be sent through the debug serial port (baud rate 115200) to switch from WIFI ATE mode to Bluetooth ATE Mode.
ATM2=bt_power,on ATM2=gnt_bt,bt ATM2=bridge
#7.1. Bluetooth serial port instruction format
The following serial port instructions are sent in hexadecimal format
#7.1.1. Activate Bluetooth contracting command
Example: 01 1f 20 00 01 34 20 04 00 ff 00 01, starting the contract according to the specified parameters
01 1f 20 00 01 34 20 04 | Command header |
00 | Channel 0 (2402MHz), channel can be changed to 0-39 Channel correspondence: 00 (ch0), 01 (ch1), 02 (ch2)... 0a (ch10), 0b (ch11)... 0f (ch15)... 13 (ch19)... 27 (ch39) |
ff | Represents the length of data, which can be set from 00 to ff, with the default being the longest ff |
00 | Indicates that the package type is PRBS9, and the corresponding relationship of the package type is 00:PRBS9 01:11110000 02:10101010 |
01 | Indicates BLE 1M rate, if 2M rate, change to 02 |
#7.1.2. Stop Bluetooth sending instructions
Example: 01 87 fd 01 07 01 1f 20 00, stop sending
#7.1.3. Activate Bluetooth packet receiving command
Example: 01 33 20 03 00 01 01, starting packet collection according to the specified parameters
01 33 20 03 | Command header |
00 | Channel 0 (2402MHz), channel can be changed to 0-39 Channel correspondence: 00 (ch0), 01 (ch1), 02 (ch2)... 0a (ch10), 0b (ch11)... 0f (ch15)... 13 (ch19)... 27 (ch39) |
01 | Indicates BLE 1M rate, if 2M rate, change to 02 |
01 | Instruction tail |
#7.1.4. Stop Bluetooth packet receiving command
Example: 04 0e 04 02 87 fd 01, stop sending
Module returns packet receiving results
Example: 04 0e 06 02 1f 20 00 cd 03
04 0e 06 02 1f 20 00 | Command header |
cd 03 | The number of data packets received by the module, in small end format, with low bit first and high bit last, such as cd 03=1973 |
#8. Example of instruction usage
#8.1. BLE contract testing example
Send command: 01 1f 20 00 01 34 20 04 00 ff 00 01
Transmit with channel 0, data length ff, packet type PRBS9, BLE 1M
Send command: 01 1f 20 00 01 34 20 04 00 ff 01 02
Channel 0, data length ff, packet type 11110000, BLE 2M transmission
#8.2. BLE packet receiving test example
Sending instructions: 01 33 20 03 00 01 01
Entering channel 0 with a rate of 1Mbps receiving status
Sending instructions: 04 0e 04 02 87 fd 01
Stop receiving packets
Receiving instructions: 04 0e 06 02 1f 20 00 cd 03
Calculate the number of received packets, with the last two bytes representing the number of received packets (in hexadecimal, with the high end being the last (such as 03) and the low end being the first (such as cd)). 03cd is converted to a decimal number of 1973. The application program needs to convert the received data into decimal numbers and display them on its own.
—————————————————————————————————————————
END.