SWRA750 September   2022

 

  1.   Introduction
  2.   Trademarks
  3. 1Connectionless RF Tests
    1. 1.1 Continuous TX
    2. 1.2 Tester Packet TX RX
    3. 1.3 Continuous RX
    4. 1.4 BER Meter Test
      1. 1.4.1 BER Test - Between Two WiLink Devices
      2. 1.4.2 BER Test - Between WiLink (RX) and Litepoint iQ2010 (TX)
  4. 2Bluetooth SIG RF Test Mode
  5. 3Bluetooth Low Energy Testing
  6. 4Connection Test
  7. 5Conversion of HCI Commands to SS1Tool or hcitool Format
    1. 5.1 Examples of SS1Tool or Enhanced Bluetopia PM Test Format Conversion
      1. 5.1.1 Connectionless RF Tests
        1. 5.1.1.1 Continuous TX
        2. 5.1.1.2 Packet TX RX
        3. 5.1.1.3 Continuous RX
        4. 5.1.1.4 RX BER Meter Test
      2. 5.1.2 Bluetooth SIG RF Test Mode
      3. 5.1.3 Bluetooth Low Energy Testing
  8. 6Revision History

BER Test - Between Two WiLink Devices

Note: Observe maximum RF input power during PLT test (-5dBm for BR and -10dBm for EDR)

The BER meter test can be performed using two Wilink_X devices. One of the devices will be classified as the TX board, and the other as the RX board.

Step 1:

Run the INIT script on each board.

Note: You can have two instances of HCITester running, as long as the COM ports are configured correctly.

Step 2:

Start the BER function on the RX board using the following script example:

$l10
count = 0

#DH5, 339 packet size x 8 bits x 590 packets = 1.6Mbits
#BD address = that of the TX board
Send_HCI_VS_DRPb_BER_Meter_Start 0xFD8B, 0, 0, 0x222222222222, 1, 0x5, 339, 590, 0x1FF, 0x1
Wait_HCI_Command_Complete_VS_DRPb_BER_Meter_Start_Event 5000, any, HCI_VS_DRPb_BER_Meter_Start, 0x00

#
$l11
Sleep 100
count++

Send_HCI_VS_DRP_Read_BER_Meter_Status 0xFD5B
Wait_HCI_Command_Complete_VS_DRP_Read_BER_Meter_Status_Event 5000, any, HCI_VS_DRP_Read_BER_Meter_Status, 0x00, &synched, &finished, any, &total_bits, &bit_errors, &packets
if finished== 0 then
	if synched == 0 then
		log"not synced yet %d count",count
		#Fail "no SYNC"
	else
		log"not finished yet %d packets, coutn %d",packets,count
	endif
	goto $l11
else
	BER = 1000000*bit_errors/total_bits
	log"BER is %d e-6 (%d bits out of %d)",1000000*bit_errors/total_bits,bit_errors,total_bits
	if BER > 100 then
		Fail "BER is too high"
	else
		pause "Finished"
	endif
	
endif

#pause""
goto $l10

Step 3:

The BD addresses between the TX and RX boards need to match in order for the BER Meter to function. Set the BD_ADDR on the TX board using the following command:

BD_ADDR="222222222222"
Send_HCI_VS_Write_BD_ADDR 0xFC06, BD_ADDR
Wait_HCI_Command_Complete_VS_Write_BD_ADDR_Event 5000, any, HCI_VS_Write_BD_ADDR, 0x00 

Step 4:

Send TX packets with the TX board using the following commands:

Send_HCI_VS_DRPb_Enable_RF_Calibration_Enhanced 0xFDFB, 1, 0xFF, 0x00000000, 0x01
Wait_HCI_Command_Complete_VS_DRPb_Enable_RF_Calibration_Enhanced_Event 5000, any, HCI_VS_DRPb_Enable_RF_Calibration_Enhanced, 0x00
sleep 1000

# Sent Tx Packets
Send_HCI_VS_DRPb_Tester_Packet_TX_RX 0xFDCC, 0x5, 3, 2402, 0xFFFF, 5, 0, 339, 5, 1, 0x01FF
Wait_HCI_Command_Complete_VS_DRPb_Tester_Packet_TX_RX_Event 5000, any, HCI_VS_DRPb_Tester_Packet_TX_RX,