제품을 양산하기 위해 공정 라인에서 수행하는 작업은 WiFi 칩 자체에 대한 검증이다. 이것은 기본적으로 기존의 MFG Tool(labtool, bridge) 기반에서 이루어지는데, 삼성에서는 자체적으로 사용하는 AT command 를 사용한다.
이를테면, 삼성 공정 프로그램이 AT command 를 내리면, 이를 labtool 이 받아 명령을 드라이버에 전달하는 방식이다.
테스트 순서에 따라 AT command 는 자동으로 실행되며, 삼성 공정 프로그램은 반출이 안되기 때문에, 사무실에서는 재현이 불가하다.
비슷하게 Cats 라는 프로그램을 사용하여 실행해볼 수는 있지만, 엄연히 AT command 는 아니다. [CATs사용하기] 를 참고한다.
따라서 삼성 공정 라인에서 AT command 관련하여 이슈가 발생하면, 그쪽에서 보내주는 로그를 분석하고 문제를 유추해내는 방법밖에는 없다. 재현이 불가능하기 때문이다.
이 문서에서는 삼성에 보내온 로그 파일을 기준으로 공정 테스트 순서와 이에 대한 결과값을 통해 시퀀스를 이해하도록 한다.
labtool_at_command.pptx 파일과 samsung_at_command_set.xls 파일을 반드시 참고하기 바란다.
AT command 로그 분석
아래는 삼성 공정프로그램에서 실행한 로그 파일이다. AT command 의 순서를 분석하면 시퀀스를 알 수 있다.
Input:6 Start Dut Client_v2.0 VPD -i information : 112233445566 NET: initialize ... NET: socket bind is completed! NET: initialization is completed. NET: server(DUT) port: 2000 NET: client port: 9931 NET: socket FD = 3 NET: new connection from 192.168.0.4 COMMON_PROTOCOL_BOOTING COMPLETED NET: net_send_msg[17][BOOTING COMPLETED] NET: send a msg.[45029][4] DEBUT-1: DEBUT-2:17 NET: the msg is sent. DEBUG: DASUL InitConnection [BOOTING COMPLETED][1] NET: socket FD = 4 NET: receive a packet (bytes = 17) RECEIVE_PACKETS - hexdump(len=17): 41 54 2b 48 45 41 44 49 4e 46 4f 3d 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+HEADINFO=1,0 ] --------------------------------1__1 NET: net_send_msg[15][AT+HEADINFO=1,0] NET: send a msg.[48815][4] DEBUT-1: DEBUT-2:15 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. headinfo - hexdump(len=10): 2b 48 45 41 44 49 4e 46 4f 3a attr - hexdump(len=2): 31 2c headercode - hexdump(len=8): 37 46 41 41 41 46 37 45 model - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nature - hexdump(len=80): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 customer_code - hexdump(len=16): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 date - hexdump(len=28): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 charger - hexdump(len=48): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 version - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 checksum - hexdump(len=20): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 crcsum - hexdump(len=20): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 unique_no - hexdump(len=40): 33 31 33 31 33 32 33 32 33 33 33 33 33 34 33 34 33 35 33 35 33 36 33 36 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 mem_name - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 sec_code - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 etc - hexdump(len=80): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 return_buffer - hexdump(len=520): 2b 48 45 41 44 49 4e 46 4f 3a 31 2c 37 46 41 41 41 46 37 45 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 33 31 33 31 33 32 33 32 33 33 33 33 33 34 33 34 33 35 33 35 33 36 33 36 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0d 0a 0d 0a 4f 4b 0d 0a NET: net_send_msg[520][+HEADINFO:1,7FAAAF7EAA55000000000000000000000000000000000000A OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:520 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 31 2c 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,1,1,0 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,1,1,0] ----------------- ① NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,1,1,0] NET: PROTOCOL_WIFI_PAYLOAD [0,1,1][0][0] ===[MARVELL]=== start DutIf_InitConnection() === Initialize drvwrapper .... ===[MARVELL]=== start DutIf_InitConnection() === NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][0] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 23) RECEIVE_PACKETS - hexdump(len=23): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 37 2c 30 2c 30 30 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,7,0,001 ] --------------------------------1__1 NET: net_send_msg[21][AT+WIFITEST=0,7,0,001] ---------------- ② NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:21 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,7,0,001] NET: PROTOCOL_WIFI_PAYLOAD [0,7,0][1][15] DutIf_SetTxRxPath to 1 1 : status 0x0 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][15] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 36 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,6,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,6,1] ----------------- ③ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,6,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,6][1][13] ===[MARVELL]=== MRVL_RFT_SetBandAG(mBand): 0x1 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][13] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 23) RECEIVE_PACKETS - hexdump(len=23): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 30 2c 30 30 36 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,0,006 ] --------------------------------1__1 NET: net_send_msg[21][AT+WIFITEST=0,0,0,006] -------------- ④ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:21 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,0,006] NET: PROTOCOL_WIFI_PAYLOAD [0,0,0][6][1] DutIf_SetRfChannel: 0x0, channel number : 6 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][1] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 22) RECEIVE_PACKETS - hexdump(len=22): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 31 2c 30 36 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,1,06 ] --------------------------------1__1 NET: net_send_msg[20][AT+WIFITEST=0,0,1,06] -------------------- ⑤ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:20 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,1,06] NET: PROTOCOL_WIFI_PAYLOAD [0,0,1][6][2] MRVL_RFT_TxDataRate: memberVariables.mPcktPifsSettings.dataRateIndex: 6, datarate=3NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][2] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 32 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,2,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,2,1] -------------------- ⑥ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,2,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,2][1][4] NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][4] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 37 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,7,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,7,1] --------------- ⑦ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,7,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,7][1][14] ===[MARVELL]=== MRVL_RFT_SetChannelBw(mBandWidth): 0x1 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][14] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 32 2c 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,2,1,0 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,2,1,0] ---------------- ⑧ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,2,1,0] NET: PROTOCOL_WIFI_PAYLOAD [0,2,1][0][7] Sett MRVL_RFT_TxStart: datarate : 3MRVL_RFT_TxStart dut memberVariables.gTxGain: 100 MRVL_RFT_TxGain: 17 DutIf_SetRfChannel: 0x0 DutIf_SetRfPowerCal: 0x0 MRVL_RFT_TxStart dut MRVL_RFT_TxGain: 17 MRVL_RFT_TxStart: datarate : 6, 3 DutIf_AdjustPcktSifs: 0x00000000 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][7] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 0) NET: close client socket NET: socket FD = 3 NET: new connection from 192.168.0.4 COMMON_PROTOCOL_BOOTING COMPLETED NET: net_send_msg[17][BOOTING COMPLETED] NET: send a msg.[49893][4] DEBUT-1: DEBUT-2:17 NET: the msg is sent. DEBUG: DASUL InitConnection [BOOTING COMPLETED][1] NET: socket FD = 4 NET: receive a packet (bytes = 17) RECEIVE_PACKETS - hexdump(len=17): 41 54 2b 48 45 41 44 49 4e 46 4f 3d 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+HEADINFO=1,0 ] --------------------------------1__1 NET: net_send_msg[15][AT+HEADINFO=1,0] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:15 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. headinfo - hexdump(len=10): 2b 48 45 41 44 49 4e 46 4f 3a attr - hexdump(len=2): 31 2c headercode - hexdump(len=8): 37 46 41 41 41 46 37 45 model - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 nature - hexdump(len=80): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 customer_code - hexdump(len=16): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 date - hexdump(len=28): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 charger - hexdump(len=48): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 version - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 checksum - hexdump(len=20): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 crcsum - hexdump(len=20): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 unique_no - hexdump(len=40): 33 31 33 31 33 32 33 32 33 33 33 33 33 34 33 34 33 35 33 35 33 36 33 36 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 mem_name - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 sec_code - hexdump(len=40): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 etc - hexdump(len=80): 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 return_buffer - hexdump(len=520): 2b 48 45 41 44 49 4e 46 4f 3a 31 2c 37 46 41 41 41 46 37 45 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 33 31 33 31 33 32 33 32 33 33 33 33 33 34 33 34 33 35 33 35 33 36 33 36 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 41 41 35 35 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0d 0a 0d 0a 4f 4b 0d 0a NET: net_send_msg[520][+HEADINFO:1,7FAAAF7EAA550 OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:520 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 31 2c 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,1,1,0 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,1,1,0] --------------- ⑨ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,1,1,0] NET: PROTOCOL_WIFI_PAYLOAD [0,1,1][0][0] ===[MARVELL]=== start DutIf_InitConnection() === Initialize drvwrapper .... ===[MARVELL]=== start DutIf_InitConnection() === NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][0] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 23) RECEIVE_PACKETS - hexdump(len=23): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 37 2c 30 2c 30 30 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,7,0,001 ] --------------------------------1__1 NET: net_send_msg[21][AT+WIFITEST=0,7,0,001] ----------------- ⑩ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:21 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,7,0,001] NET: PROTOCOL_WIFI_PAYLOAD [0,7,0][1][15] DutIf_SetTxRxPath to 1 1 : status 0x0 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][15] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 36 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,6,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,6,1] -------------- ⑪ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,6,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,6][1][13] ===[MARVELL]=== MRVL_RFT_SetBandAG(mBand): 0x1 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][13] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 23) RECEIVE_PACKETS - hexdump(len=23): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 30 2c 30 30 36 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,0,006 ] --------------------------------1__1 NET: net_send_msg[21][AT+WIFITEST=0,0,0,006] ---------------- ⑫ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:21 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,0,006] NET: PROTOCOL_WIFI_PAYLOAD [0,0,0][6][1] DutIf_SetRfChannel: 0x0, channel number : 6 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][1] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 22) RECEIVE_PACKETS - hexdump(len=22): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 31 2c 30 36 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,1,06 ] --------------------------------1__1 NET: net_send_msg[20][AT+WIFITEST=0,0,1,06] ----------------- ⑬ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:20 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,1,06] NET: PROTOCOL_WIFI_PAYLOAD [0,0,1][6][2] MRVL_RFT_TxDataRate: memberVariables.mPcktPifsSettings.dataRateIndex: 6, datarate=3NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][2] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 32 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,2,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,2,1] ---------------------- ⑭ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,2,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,2][1][4] NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][4] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 30 2c 37 2c 31 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,0,7,1 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,0,7,1] ------------------ ⑮ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,0,7,1] NET: PROTOCOL_WIFI_PAYLOAD [0,0,7][1][14] ===[MARVELL]=== MRVL_RFT_SetChannelBw(mBandWidth): 0x1 NET: RESULT [0] protocol_result_wifi_send[+WIFITEST:0,][12][14] NET: net_send_msg[22][+WIFITEST:0,OK OK ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:22 NET: the msg is sent. NET: socket FD = 4 NET: receive a packet (bytes = 21) RECEIVE_PACKETS - hexdump(len=21): 41 54 2b 57 49 46 49 54 45 53 54 3d 30 2c 32 2c 31 2c 30 0d 0a [debug][msgbuf1]=====[AT+WIFITEST=0,2,1,0 ] --------------------------------1__1 NET: net_send_msg[19][AT+WIFITEST=0,2,1,0] ------------------ ⑯ NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:19 NET: the msg is sent. NET: net_send_msg[2][ ] NET: send a msg.[52006][4] DEBUT-1: DEBUT-2:2 NET: the msg is sent. [debug][token_char]=====[0,2,1,0] NET: PROTOCOL_WIFI_PAYLOAD [0,2,1][0][7] Sett MRVL_RFT_TxStart: datarate : 3MRVL_RFT_TxStart dut memberVariables.gTxGain: 100 MRVL_RFT_TxGain: 17 DutIf_SetRfChannel: 0x0 Close and Setup Network
시퀀스 분석
순서 | AT command | 의미 |
1 | AT+WIFITEST=0,1,1,0 | OpenDut |
2 | AT+WIFITEST=0,7,0,001 | Set Antenna path |
3 | AT+WIFITEST=0,0,6,1 | Set band(2.4 or 5G) |
4 | AT+WIFITEST=0,0,0,006 | Set channel |
5 | AT+WIFITEST=0,0,1,06 | Data rate |
6 | AT+WIFITEST=0,0,2,1 | Set preamble |
7 | AT+WIFITEST=0,0,7,1 | Set bandwidth |
8 | AT+WIFITEST=0,2,1,0 | Tx start |
9 | AT+WIFITEST=0,1,1,0 | OpenDut |
10 | AT+WIFITEST=0,7,0,001 | Set Antenna path |
11 | AT+WIFITEST=0,0,6,1 | Set band(2.4 or 5G) |
12 | AT+WIFITEST=0,0,0,006 | Set channel |
13 | AT+WIFITEST=0,0,1,06 | Data rate |
14 | AT+WIFITEST=0,0,2,1 | Set preamble |
15 | AT+WIFITEST=0,0,7,1 | Set bandwidth |
16 | AT+WIFITEST=0,2,1,0 | Tx start |