This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LP-EM-CC2340R5: How to modify the TX power setting to 0 dBm at the Host test sample code?

Part Number: LP-EM-CC2340R5
Other Parts Discussed in Thread: LP-XDS110ET, UNIFLASH, CC2340R5

Tool/software:

I used the LP-EM-CC2340R5 and upgrade the Host Test code. I found that he TX power default value is 8 dBm.

I try to remove the “Custom” option from the RF Stacks section and add a “BLE” option.

Within the BLE section, I modified the configure the radio settings and change the default Tx Power value to 0.

But has some error after build all. The release hex file cannot be run. Please see the attached file and help to check. Thanks.

My development informations are below:

Hardware: LP-KM-CC2340R5 + LP-XDS110ET

CCS Version: 20.0.0.12__1.6.0

UniFlash Version: 8.8.1.4983

Simplelink Lowpower F3 SDK: Versoin: 8.20.00.119

Output.txt

  • Due to my device is connected to BLE tester requipment, I can not real-time to change Tx power by HCI command. Beacuse the Host_test code dafault seeting is +8dBm, the all test process is based on this setting.

    So I must to modify this setting to 0 dBm first and than program this Host_test code into my device. 

    I would like to know where is the modification path or item? Because I have tried this way (refer to picture), it is failed and has a build error.

  • In fact, my question is very simple. How to change the R5 host_test code to 0 dBm and can be build normally to produce the hex file.

    Below picture is my BLE tester equipment to connect to LP-KM-CC2340R5.  

  • Hi, 

    Thank you for telling me. I understand you want to run Bluetooth certification tests where only the device's maximum TxPower has to be used. For this purpose, you can consider modifying the power table used so it only contains the relevant entry. 
    Please see the steps below:

    1. Start from an unmodified project - the modifications mentioned at the beginning of the thread should not be kept. Build the unmodified project once. 
    2. Exclude from build the file "ti_radio_config.c". See here - you'll have to copy the file from the Release > syscfg to the Application folder, and untick the "include in build" button for the same file.
    3. Modify the LRF_txPowerTable variable in the file Application/ti_radio_config.c, keeping only the entries of ".powerTable" you need, and removing the ohters. Ensure you also update the value of ".numentries".
      In your case, assuming you only want to transmit at 0dBm, you can use the following code: 

      // LRF_TxPowerTable data structure
      const LRF_TxPowerTable LRF_txPowerTable = {
          .numEntries = 0x00000001,
          .powerTable = {
              { .power = { .fraction = 0, .dBm = 0 }, .tempCoeff = 40, .value = { .reserved = 0, .ib = 21, .gain = 6, .mode = 0, .noIfampRfLdoBypass = 0 } },
          }
      };
    4. Rebuild the project.

    Important: 

    • TI provides validated entries for the power table. Altering the entries provided by TI may impact radio performances and break regulation. This means, developers should only consider removing entries, never adding some. 
    • Bluetooth certification and Regulatory tests must be run using the highest TxPower used in the final product. Said differently, system-integrators are recommended to use the same power table in the final product as for certification.
    • The steps mentioned here are applicable both to host_test and basic_ble.

    For convenience, here is the image I have obtained with the changes suggested: https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/538/host_5F00_test_5F00_0dBm_5F00_only_5F00_LP_5F00_EM_5F00_CC2340R5_5F00_freertos_5F00_ticlang.hex

    I hope this will help,

    Best regards,