NX1 에서의 WIFI RF 테스트 시에 사용되는 labtool 명령어들을 정리했다.

준비 운동하기

먼저 WIFI RF 테스트를 하기위한 환경이 필요하다.

H/W IQ2010(LitePoint)
S/W IQsignal

참고로 위의 장비(IQ2010)는 802.11b/g/n 까지만 측정가능하다. 802.11ac 를 측정하고 싶다면, IQsel 장비를 사용해야 한다.
사용에 필요한 소프트웨어를 PC 에 설치하고, 장비의 전원을 켠다.
장비에 연결된 USB 케이블을 PC 에 연결한다. 자동으로 드라이버가 설치될 것이다.
완료가 되면, 'IQsignal' 이라는 프로그램을 실행한다.

IQsignal 사용하기

프로그램을 실행하면, 'Tester Settings' 라는 창이 뜬다.

여기서 아래와 같이 옵션을 설정한다.

Type IQ201X
Auto Scan and Connect 체크
Local Host 체크

그리고 나서 'Connect' 버튼을 누른다. 접속이 되면, 'Connected' 라는 메세지가 출력된다.
이 후 테스트할 각각 대역별로 선택을 하면 된다.

802.11b/g/n 모두 공통으로 해야 하는 부분을 설명한다.
설정에 앞서 labtool 로서 TX 신호를 출력하도록 해야 한다.

RF Channel 1(Labtool 에서 설정한 채널)
External Atten 2.4G(1.0), 5G(1.6) - 안테나에 연결된 케이블의 gain 값 입력
Capture Mode Continuous 선택 후, Auto Range 선택 후, Run 클릭

위의 순서대로 설정 후, RF 신호가 정상인지 확인하기 위해 'Plot Window' 를 선택한다.
'Spectum Mask' 와 'Symbol Const' 를 선택한다. 여기서 'Pass' 가 나와야 한다.

Labtool 사용하기

Enter option: 25                                // Stop Tx
 DutIf_SetTxDutyCycle: 0x00000000
Enter option: 30 0                              // Set to 2.4GHz Band
 DutIf_SetModeAG: 0x0 
Enter option: 112 0                            // Set to 20MHz BW
DutIf_SetChannelBw: 0x00000000
Enter option: 12 1                              // Set to CH 1
 DutIf_SetRfChannel: 0x00000000
 RF Channel: 1 (2412.0 MHz)
Enter option: 22 1 10 0                       // Set to CH 1 at 10 dBm Output Power with CCK/BPSK Data Rate
 DutIf_SetRfChannel: 0x0
 DutIf_SetRfPowerCal: 0x0
Enter option: 35 1 4                           // Tx at 11Mbps
 DutIf_AdjustPcktSifs: 0x00000000
        TRPC ID: 2
Enter option: 25                                 // Stop Tx
Enter option: 25                                // Stop Tx
 DutIf_SetTxDutyCycle: 0x00000000
Enter option: 30 0                              // Set to 2.4GHz Band
 DutIf_SetModeAG: 0x0 
Enter option: 112 0                            // Set to 20MHz BW
DutIf_SetChannelBw: 0x00000000
Enter option: 12 1                              // Set to CH 1
 DutIf_SetRfChannel: 0x00000000
 RF Channel: 1 (2412.0 MHz)
Enter option: 22 1 15 0                       // Set to CH 1 at 15 dBm Output Power with OFDM Data Rate
 DutIf_SetRfChannel: 0x0
 DutIf_SetRfPowerCal: 0x0
Enter option: 35 1 13                           // Tx at 54Mbps
 DutIf_AdjustPcktSifs: 0x00000000
        TRPC ID: 2
Enter option: 25                                 // Stop Tx
Enter option: 25                                // Stop Tx
 DutIf_SetTxDutyCycle: 0x00000000
Enter option: 30 1                              // Set to 5GHz Band
 DutIf_SetModeAG: 0x0 
Enter option: 112 0                            // Set to 20MHz BW
DutIf_SetChannelBw: 0x00000000
Enter option: 12 36                              // Set to CH 36
 DutIf_SetRfChannel: 0x00000000
 RF Channel: 1 (2412.0 MHz)
Enter option: 22 36 13 1                       // Set to CH 36 at 13 dBm Output Power with OFDM Data Rate
 DutIf_SetRfChannel: 0x0
 DutIf_SetRfPowerCal: 0x0
Enter option: 35 1 13                           // Tx at 54Mbps
 DutIf_AdjustPcktSifs: 0x00000000
        TRPC ID: 2
Enter option: 25                                 // Stop Tx
Enter option: 25                                // Stop Tx
 DutIf_SetTxDutyCycle: 0x00000000
Enter option: 30 1                              // Set to 5GHz Band
 DutIf_SetModeAG: 0x0 
Enter option: 112 0                            // Set to 20MHz BW
DutIf_SetChannelBw: 0x00000000
Enter option: 12 36                              // Set to CH 36
 DutIf_SetRfChannel: 0x00000000
 RF Channel: 1 (2412.0 MHz)
Enter option: 22 36 13 1                       // Set to CH 36 at 13 dBm Output Power with OFDM Data Rate
 DutIf_SetRfChannel: 0x0
 DutIf_SetRfPowerCal: 0x0
Enter option: 35 1 22                           // Tx at MCS7(65Mbps)
 DutIf_AdjustPcktSifs: 0x00000000
        TRPC ID: 2
Enter option: 25                                 // Stop Tx

MFG API 사용하기

[root@drime5 sdcard]# ./testapp 
Tester Start ./testapp
INPUT: 
Got Cmd(-1), Arg()
        --------------- Usage ----------------
        0
        1
        2
        3
        10 -            CloseDUT
        11 -            OpenDUT
        12 (arg)                SetBandAG
        13 (arg)        Channel
        14 (arg)                TxDataRate
        15 (arg)                SetPreamble
        16 (arg)                SetChannelBw
        17 (arg)                TxGain
        18 -            TxStart
        19 -            TxStop
        20 -            RxStart
        21 -            RxStop
        22 -            MRVL_RFT_SetSSID
        23 -            MRVL_RFT_SetSSID_24G
        24 -            MRVL_RFT_SetSSID_5G
        25 -            MRVL_RFT_GET_RSSI
        25
        99 -            Exit
        -------------------------------------
 
INPUT: 11                                         // OpenDUT
Got Cmd(11), Arg()
MRVL_RFT_OpenDUT()
===[MARVELL]=== temp once start DutIf_InitConnection() chip: w8887 sw ver :1.01.15 === Build Time: Build time and Date:         Jul  7 2014 (16:06:14)
 
 
Initialize drvwrapper ....
===[MARVELL]=== end DutIf_InitConnection() status => 0 ===OK
INPUT: 19                                                                                  // MRVL_RFT_TxStop
Got Cmd(19), Arg()
MRVL_RFT_TxStop()
MRVL_RFT_TxStop_35 current_tx_mode: 0 DutIf_AdjustPcktSifs: 0x00000000
OK
INPUT: 12 0                                 // MRVL_RFT_SetBandAG
Got Cmd(12), Arg(0)
MRVL_RFT_SetBandAG(0)
===[MARVELL]=== MRVL_RFT_SetBandAG(mBand): 0x0
===[MARVELL]=== Band value is invalid..OK
INPUT: 13 1                                                        // MRVL_RFT_Channel
Got Cmd(13), Arg(1)
MRVL_RFT_Channel(1)
 DutIf_SetRfChannel: status : 0, gChannelNumber = 1 
OK
INPUT: 14 6                                          // MRVL_RFT_TxDataRate
Got Cmd(14), Arg(6)
MRVL_RFT_TxDataRate(6)
 MRVL_RFT_TxDataRate: mPcktPifsSettings.dataRateIndex:  6, datarate=3 MRVL_RFT_TxDataRate: 0x0
OK
INPUT: 15 1                                         //  MRVL_RFT_SetPreamble
Got Cmd(15), Arg(1)
MRVL_RFT_SetPreamble(1)
 MRVL_RFT_SetPreamble: PreambleType : 1 
OK
INPUT: 16 1                                                  // MRVL_RFT_SetChannelBw
Got Cmd(16), Arg(1)
MRVL_RFT_SetChannelBw(1)
===[MARVELL]=== MRVL_RFT_SetChannelBw(mBandWidth): 0x1
OK
INPUT: 18                                                       // MRVL_RFT_TxStart
Got Cmd(18), Arg()
MRVL_RFT_TxStart()
MRVL_RFT_TxStart_35 dut gTxGain: 100
ERIC MRVL_RFT_TxStart_35 dut MRVL_RFT_TxGain: 17
 enter MRVL_RFT_TxGain gBandWidth: 0x0
 DutIf_SetRfChannel: 0x0
 MRVL_RFT_TxGain : datarate : 6, 3 after MRVL_RFT_TxGain : Pwr4Pa = 17===[MARVELL]=== MRVL_RFT_TxGain [DutIf_GetTxDataRate] success mDataRate ==> 3,  rateG= 0, ANT_PATH : 0x0 CalDataLoaded : 0x1
 before DutIf_SetRfPowerCal: 0x0
 after DutIf_SetRfPowerCal: 0x0
MRVL_RFT_TxStart dut MRVL_RFT_TxGain: 0x0
 MRVL_RFT_TxStart_35: datarate : 6, 3 MRVL_RFT_TxStart_35: AdjustTxBurstGap : 0, BurstSifsInUs:0 
 MRVL_RFT_TxStart_35 DutIf_AdjustPcktSifs: 0x00000000
        TRPC ID: 2
 MRVL_RFT_TxStart_35 before MRVL_RFT_TxStart: 0x0
 MRVL_RFT_TxStart_35 after MRVL_RFT_TxStart: 0x0
OK
INPUT: 
  • computer/marvell/nx1_에서의_labtool_사용법.txt
  • Last modified: 3 years ago
  • by likewind