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.

CC1352R: HCI_EXT_SetTxPowerCmd() on CC1352P

Part Number: CC1352R
Other Parts Discussed in Thread: CC1352P

Hello!

I'm using the BLE stack (out of SDK 2.10....) on CC1352P. I want to set the output power using HCI_EXT_SetTxPowerCmd(). This works (via the RF callback, I can see that the PA is enabled or disabled, depending on the selected power), but I don't know how the supplied argument relates to the output power of the CC1352P.

I' comparing hci.h

#if defined( CC26XX ) || defined( CC13XX )
#define HCI_EXT_TX_POWER_MINUS_21_DBM                  LL_EXT_TX_POWER_MINUS_21_DBM  //!< -21 dBm
#define HCI_EXT_TX_POWER_MINUS_18_DBM                  LL_EXT_TX_POWER_MINUS_18_DBM  //!< -18 dBm
#define HCI_EXT_TX_POWER_MINUS_15_DBM                  LL_EXT_TX_POWER_MINUS_15_DBM  //!< -15 dBm
#define HCI_EXT_TX_POWER_MINUS_12_DBM                  LL_EXT_TX_POWER_MINUS_12_DBM  //!< -12 dBm
#define HCI_EXT_TX_POWER_MINUS_9_DBM                   LL_EXT_TX_POWER_MINUS_9_DBM  //!< 9 dBm
#define HCI_EXT_TX_POWER_MINUS_6_DBM                   LL_EXT_TX_POWER_MINUS_6_DBM  //!< 6 dBm
#define HCI_EXT_TX_POWER_MINUS_3_DBM                   LL_EXT_TX_POWER_MINUS_3_DBM  //!< 3 dBm
#define HCI_EXT_TX_POWER_0_DBM                         LL_EXT_TX_POWER_0_DBM  //!< 0 dBm
#define HCI_EXT_TX_POWER_1_DBM                         LL_EXT_TX_POWER_1_DBM  //!< 1 dBm
#define HCI_EXT_TX_POWER_2_DBM                         LL_EXT_TX_POWER_2_DBM  //!< 2 dBm
#define HCI_EXT_TX_POWER_3_DBM                         LL_EXT_TX_POWER_3_DBM  //!< 3 dBm
#define HCI_EXT_TX_POWER_4_DBM                         LL_EXT_TX_POWER_4_DBM  //!< 4 dBm
#define HCI_EXT_TX_POWER_5_DBM                         LL_EXT_TX_POWER_5_DBM  //!< 5 dBm

with ll.h

#if defined( CC26XX ) || defined( CC13XX )
#define LL_EXT_TX_POWER_MINUS_21_DBM                   0
#define LL_EXT_TX_POWER_MINUS_18_DBM                   1
#define LL_EXT_TX_POWER_MINUS_15_DBM                   2
#define LL_EXT_TX_POWER_MINUS_12_DBM                   3
#define LL_EXT_TX_POWER_MINUS_9_DBM                    4
#define LL_EXT_TX_POWER_MINUS_6_DBM                    5
#define LL_EXT_TX_POWER_MINUS_3_DBM                    6
#define LL_EXT_TX_POWER_0_DBM                          7
#define LL_EXT_TX_POWER_1_DBM                          8
#define LL_EXT_TX_POWER_2_DBM                          9
#define LL_EXT_TX_POWER_3_DBM                          10
#define LL_EXT_TX_POWER_4_DBM                          11
#define LL_EXT_TX_POWER_5_DBM                          12

and ble_user_config.c

 #elif defined(CC13X2P)
  // Tx Power Values (Pout, Tx Power)
  const txPwrVal_t TxPowerTable[] =
    { {TX_POWER_MINUS_21_DBM, RF_TxPowerTable_DefaultPAEntry( 7, 3, 0,  3) },    // 0x000006C7
      {TX_POWER_MINUS_18_DBM, RF_TxPowerTable_DefaultPAEntry( 9, 3, 0,  3) },    // 0x000006C9
      {TX_POWER_MINUS_15_DBM, RF_TxPowerTable_DefaultPAEntry( 8, 2, 0,  6) },    // 0x00000C88
      {TX_POWER_MINUS_12_DBM, RF_TxPowerTable_DefaultPAEntry(10, 2, 0,  8) },    // 0x0000108A
      {TX_POWER_MINUS_10_DBM, RF_TxPowerTable_DefaultPAEntry(12, 2, 0, 11) },    // 0x0000168C
      {TX_POWER_MINUS_9_DBM,  RF_TxPowerTable_DefaultPAEntry(13, 2, 0,  5) },    // 0x00000A8D
      {TX_POWER_MINUS_6_DBM,  RF_TxPowerTable_DefaultPAEntry(13, 1, 0,  6) },    // 0x0000204D
      {TX_POWER_MINUS_5_DBM,  RF_TxPowerTable_DefaultPAEntry(14, 1, 0, 17) },    // 0x0000224E
      {TX_POWER_MINUS_3_DBM,  RF_TxPowerTable_DefaultPAEntry(17, 1, 0, 20) },    // 0x00002851
      {TX_POWER_0_DBM,        RF_TxPowerTable_DefaultPAEntry(25, 1, 0, 26) },    // 0x00003459
      {TX_POWER_1_DBM,        RF_TxPowerTable_DefaultPAEntry(28, 1, 0, 28) },    // 0x0000385C
      {TX_POWER_2_DBM,        RF_TxPowerTable_DefaultPAEntry(13, 0, 0, 34) },    // 0x0000440D
      {TX_POWER_3_DBM,        RF_TxPowerTable_DefaultPAEntry(17, 0, 0, 42) },    // 0x00005411
      {TX_POWER_4_DBM,        RF_TxPowerTable_DefaultPAEntry(22, 0, 0, 54) },    // 0x00006C16
      {TX_POWER_5_DBM,        RF_TxPowerTable_DefaultPAEntry(30, 0, 0, 74) },    // 0x0000941E
      {TX_POWER_6_DBM,        RF_TxPowerTable_HighPAEntry(46, 0, 1, 26,  7) },   // 0x8007352E
      {TX_POWER_9_DBM,        RF_TxPowerTable_HighPAEntry(40, 0, 1, 39, 41) },   // 0x80294F28
      {TX_POWER_10_DBM,       RF_TxPowerTable_HighPAEntry(23, 2, 1, 65,  5) },   // 0x80058397
      {TX_POWER_11_DBM,       RF_TxPowerTable_HighPAEntry(24, 2, 1, 29,  7) },   // 0x80073B98
      {TX_POWER_12_DBM,       RF_TxPowerTable_HighPAEntry(19, 2, 1, 16, 25) },   // 0x80192193
      {TX_POWER_13_DBM,       RF_TxPowerTable_HighPAEntry(27, 2, 1, 19, 13) },   // 0x800D279B
      {TX_POWER_14_DBM,       RF_TxPowerTable_HighPAEntry(24, 2, 1, 19, 27) },   // 0x801B2798
      {TX_POWER_15_DBM,       RF_TxPowerTable_HighPAEntry(23, 2, 1, 20, 39) },   // 0x80272997
      {TX_POWER_16_DBM,       RF_TxPowerTable_HighPAEntry(34, 2, 1, 26, 23) },   // 0x801735A2
      {TX_POWER_17_DBM,       RF_TxPowerTable_HighPAEntry(38, 2, 1, 33, 25) },   // 0x801943A6
      {TX_POWER_18_DBM,       RF_TxPowerTable_HighPAEntry(30, 2, 1, 37, 53) },   // 0x80354B9E
      {TX_POWER_19_DBM,       RF_TxPowerTable_HighPAEntry(36, 2, 1, 57, 59) },   // 0x803B73A4
      {TX_POWER_20_DBM,       RF_TxPowerTable_HighPAEntry(56, 2, 1, 45, 63) } }; // 0x803F5BB8

Thanks,

hkr