CC256x FCC Testing Guide

From Texas Instruments Wiki
(Redirected from Bluetooth FCC Mode)
Jump to: navigation, search

__NOFOLLOW__
Note : This wiki page is no longer maintained. Please refer to the CC256x Testing Guide for more up-to-date information about the FCC testing modes in CC256x.

Introduction

The TI Bluetooth radios can be put into a special mode for FCC testing. This page provides the steps to put your TI Bluetooth radio in this mode. The commands are the same for any TI Bluetooth radio; however, the tools are different depending on your platform. The procedure for the platforms below are shown in the following sections.

  • CC256x + MSP430 MCU (Bluetopia Stack)
  • CC256x + Stellaris MCU (Bluetopia Stack)
  • CC256x + ARM Processor (Bluez / Linux)


Overview

This section will go over the general FCC testing setup relevant for any platforms.

Basics steps include:

  1. Reset device (optional)
  2. Load SP on CC256x device
  3. Send FCC testing commands
  4. Observe spectrum in analyzer

CC256x + MSP430 Platform

Hardware Setup

Step 1: Move the resistor labeled R18 to R17 to route the connection from the antenna to the U.FL if not already done.

 HardwareSetup.jpg

Close up view of the layout illustrating what resistor needs to be removed and where to add it:FCClayout.jpg

Step 2. Connect the SMA cable from the RF input of the spectrum analyzer to the U.FL adapter. Connect the U.FL connector to the PAN1315ETU board as shown:

Hw1.jpg 

Software Setup

 FCCflowchart.jpg

IMPORTANT:Make sure to remove all instances of BT_hci_write_scan_enable(0x03) in the code to disable scanning procedure.

APIs used to configure the platform for FCC testing:

  • Step 1: Turn Bluetooth On
  1. BT_bluetooth_on()
  • Step 2: Execute TI's vendor specific HCI commands
  1. BT_hci_vendor_specific_command(HCI_VS_DRPB_TESTER_CON_TX,
    (UCHAR *) DRPb_Tester_param,
    sizeof(DRPb_Tester_param)
    );
  2. BT_hci_vendor_specific_command(HCI_VS_WRITE_HARDWARE_REGISTER,
    (UCHAR *) Hardware_Register_param,
    sizeof(Hardware_Register_param)
    );
  3. BT_hci_vendor_specific_command(SDK_BT_RF_ENABLE_CALIBRATION,
    (UCHAR *) Enable_Calibration_param,
    sizeof(Enable_Calibration_param)
    );

REQUIRED:Skip Command 2(HCI_VS_WRITE_HARDWARE_REGISTER) for Continuous Wave(CW) modulation.

Parameters for TI's vendor specific HCI commands:

  • /* Parameters for HCI_VS_DRPB_TESTER_CON_TX command */

       # Configure Transmitter Parameters
       # 0xAA - Modulation Scheme: 0-CW, 1-GFSK, 2-EDR2, 3-EDR3 
       # 0xBB - Test Pattern: 0-PN9, 1-PN15, 2-Z0Z0, 3-All 1, 4-All 0, 5-F0F0, 6-FF00
       # 0xCC - Frequency Index: 0-78, a.Freq = 2402 + 2k, for k = 0,1,2,...,39 b.Freq = 2403 + 2(k-40), for k = 40,41,...,78
       # 0xDD - Power Level: 0(MIN)-15(MAX)

       UCHAR DRPb_Tester_param[12] = { 0xAA, 0xBB, 0xCC, 0xDD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };

  • /* Parameters for HCI_VS_WRITE_HARDWARE_REGISTER command */

       UCHAR Hardware_Register_param[6] = { 0x0c, 0x18, 0x19, 0x00, 0x01, 0x01 };

  • /* Parameters for SDK_BT_RF_ENABLE_CALIBRATION command */

       UCHAR Enable_Calibration_param[6] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01 };

Examples

Example 1. CW, PN9, 0 (2402 MHz), 15:

 Spectrum Analyzer                         


Example 2. GFSK, PN9, 78 (2479 MHz), 15:

FCCspec2.jpg


Example 3: EDR3, PN15, 39 (2480 MHz), 15

FCCspec3.jpg



CC256x + Stellaris Platform

Under Construction 

WL1271 + ARM Platforms

Under Construction

Hardware Setup

  • Step 1. Remove the resistor (picture below) if it is in place.
  • Step 2. Connect the SMA connector coming from the Spectrum Analyzer to the module board.
  • Step 3. Connect the module board to the computer using the serial connector.


You should now be all set to run the commands from your computer.


Picture showing the WL1271 module board with the U.FL connection to the Spectrum Analyzer, the slot for the removed resistor and the green BT LED:

Hardware setup for FCC testing.gif

Software Setup

Important Note: before proceeding to step 1, make sure that WLAN is disabled.

 

  • Step 1. Turn TI's Bluetooth On
root@am180x-evm:~# cd /usr/share/wl1271-demos/bluetooth/scripts/
root@am180x-evm:/usr/share/wl1271-demos/bluetooth/scripts# ./BT_Init.sh


 

  • Step 2. Run the following hciconfig command


root@am180x-evm:/usr/share/wl1271-demos/bluetooth/scripts# hciconfig hci0 noscan

 

  • Step 3. Enable Continuous Transmission - FCC Mode


Note: Internal Setting # 1 has to be executed for all the modulation schemes, except for the CW modulation scheme.

# Configure Transmitter Parameters 
# 0xAA - Modulation Scheme: 0-CW, 1-GFSK, 2-EDR2, 3-EDR3 
# 0xBB - Test Pattern: 0-PN9, 1-PN15, 2-Z0Z0, 3-All 1, 4-All 0, 5-F0F0, 6-FF00 
# 0xCC - Frequency Index: 0-78 
# 0xDD - Power Level: 10(MIN)-15(MAX) 
root@am180x-evm:~# hcitool cmd 0x3F 0x0184 0xAA 0xBB 0xCC 0xDD 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 

# Internal Setting #1
root@am180x-evm:~# hcitool cmd 0x3F 0x0301 0x0C 0x18 0x19 0x00 0x01 0x01 

# Internal Setting #2
root@am180x-evm:~# hcitool cmd 0x3F 0x0180 0xFF 0xFF 0xFF 0xFF 0xFF 0x01

  For the Frequency Index part, the following table describes the relationship of the frequency value with the frequency index:

Value Parameter Description
0 – 78 Frequency channel index (k), range 0 – 78 (decimal)
Frequency = 2402 + 2k, for k = 0, 1, 2 … 39
Frequency = 2403 + 2(k–40), for k = 40, 41…78

 

Example 1: Continuous Wave (CW), Channel 0 (2.402GHz), Power Level 15 

In this mode, the modulation scheme is CW (00), the test pattern is PN9 (00), the frequency index is 0 (00) and the power level is 15 (0F). After the execution of the first three steps, the following command has to be executed to put the device in this mode:

 root@am180x-evm:~# hcitool cmd 0x3F 0x0184 0x00 0x00 0x00 0x0F 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

You should be able to get the graph below after the execution of the last line.

Note: for Continuous Wave mode, the first internal settings commands in step 3 is not required to be executed, but the second internal setting is required.


The picture on the left is a screen-shot of the Tera Term application showing the execution of the commands. The picture on the right is a screen-shot of the Spectrum Analyzer showing the waveform graph. In order to get the peak at the center of the graph, the center frequency of the Spectrum Analyzer has to match the index frequency (2.402 GHz in this case):

FCC 1.jpg
 
Example 1.png

 

 

Example 2: GFSK, Channel 78 (2.479 GHz), Power Level 15

In this mode, the modulation scheme is GFSK (01), the test pattern is PN9 (00), the frequency index is 78 (4E) and the power level is 15 (0F). After the execution of the first three steps, the following command has to be executed to put the device in this mode:

root@am180x-evm:~# hcitool cmd 0x3F 0x0184 0x01 0x00 0x4E 0x0F 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

You should be able to get the graph below after the execution of the last line.

Note: for GFSK and the rest of the modes (except CW mode), both the two internal settings commands in step 3 is required to be executed.

The picture on the left is a screen-shot of the Tera Term application showing the execution of the commands. The picture on the right is a screen-shot of the Spectrum Analyzer showing the waveform graph. In order to get the peak at the center of the graph, the center frequency of the Spectrum Analyzer has to match the index frequency (2.479 GHz in this case): 


FCC 2.JPG
 
Example 2.png

 

Example 3: 8PSK (EDR3), Channel 39 (2.480 GHz), Power Level 15

In this mode, the modulation scheme is EDR-3 (03), the test pattern is PN15 (01), the frequency index is 39 (27) and the power level is 15 (0F). After the execution of the first three steps, the following command has to be executed to put the device in this mode:

root@am180x-evm:~# hcitool cmd 0x3F 0x0184 0x03 0x01 0x27 0x0F 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

You should be able to get the graph below after the execution of the last line.

Note: for EDR-3 and the rest of the modes (except CW mode), both the two internal settings commands in step 3 is required to be executed.


The picture on the left is a screen-shot of the Tera Term application showing the execution of the commands. The picture on the right is a screen-shot of the Spectrum Analyzer showing the waveform graph. In order to get the peak at the center of the graph, the center frequency of the Spectrum Analyzer has to match the index frequency (2.480 GHz in this case):  

FCC 3.JPG
 
Example 3.png