Other Parts Discussed in Thread: CC1352P
Tool/software: Code Composer Studio
Hi there, as previous post, I'm porting RTLS project for CC26X2R1 to CC1352P.
First, I was changing the project properties and codes as below:
================================================================================================
- Hardware (BOOSTXL-AOA) jump for rtls_passive
- BOOSTXL-AOA | LAUNCHXL-CC1352P-2
————————————————————
DIO27 (Ax) | DIO24
DIO28 (Ax.1) | DIO25
DIO29 (Ax.2) | DIO26
DIO30 (Ax.3) | DIO27
- BOOSTXL-AOA | LAUNCHXL-CC1352P-2
- Project properties (rtls_master, rtls_slave, rtls_passive)
- General
- Project
- Device -> Variant: CC1352P1F3
- Tool-chain -> Linker command file: cc13x2_cc26x2_app.cmd
- Products
- Target: ti.targets.arm.elf.M4F
- Platform: ti.platforms.simplelink:CC1352P1F3
- Project
- Build
- ARM Compiler
- Predefined Symbols(DeviceFamily): DeviceFamily_CC13X2
- ARM Linker
- File Search Path (changed path)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/source/ti/ble5stack/libraries/cc1352p/OneLib_coc.a (master, slave)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/source/ti/ble5stack/libraries/cc1352p/StackWrapper_coc.a (master, slave)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/source/ti/ble5stack/libraries/cc1352p/ble_r2_coc.symbols (master, slave)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/source/ti/drivers/rf/lib/rf_multiMode_cc13x2.aem4f (master, slave, passive)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/source/ti/drivers/lib/drivers_cc13x2.aem4f (master, slave, passive)
- ${COM_TI_SIMPLELINK_CC13X2_26X2_SDK_INSTALL_DIR}/kernel/tirtos/packages/ti/dpl/lib/dpl_cc13x2.aem4f (master, slave, passive)
- File Search Path (changed path)
- ARM Compiler
- General
- Code changed
- /Tools/Defines/rtls_xxxxx_app.opt (master, slave, passive)
- Pre-define
- -DCC13X2P
- -DCC13X2P_2_LAUNCHXL
- -DCC13XX
- -DDeviceFamily_CC13X2
- Pre-define
- /Drivers/AOA/AOA.h (master, slave, passive)
- line 91: #define ANT_ARRAY (24)
- line 92: #define ANT1 (25)
- line 93: #define ANT2 (26)
- line 94: #define ANT3 (27)
- /Drivers/TOF/TOF.c (master, slave, passive)
- line 41: #if defined(CC26X2) || defined(CC13X2P)
- line 64: #if defined(CC26X2) || defined(CC13X2P)
- line 82: #if defined(CC26XX) || defined(CC13XX)
- line 141: #elif defined(CC26X2) || defined(CC13X2P)
- line 459: #if defined(CC26X2) || defined(CC13X2P)
- /Startup/urfc.h (passive)
- line 254: #if defined(CC13X2) --> Original code has a typo ')' is missed.
- /Startup/urfc.c (passive)
- line 89: #if defined(CC26XX_R2) || defined(CC26X2) || defined(CC13X2P)
- line 105: #if defined(CC26XX) || defined(CC13XX)
- line 107: #if defined(CC26X2) || defined(CC13X2P)
- line 122: #define ANT1 (1<<25)
- line 123: #define ANT2 (1<<26)
- line 124: #define ANT3 (1<<27)
- line 371: {TX_POWER_20_DBM, RF_TxPowerTable_HighPAEntry(56, 2, 1, 45, 63) } }; // 0x803F5BB8
--> Original code has a typo, one more '};', it does mean the '{', '}' is not pair. So it removed.
- /Tools/Defines/rtls_xxxxx_app.opt (master, slave, passive)
================================================================================================
After complete all of above things, CC1352P cannot find any devices even if "RTLS_CMD_SCAN" is success (When turn on AoA and ToF).
But, CC1352P-2 Board can find slave device and is working with "AoA" when turn off "ToF" by removing below red colored codes:
- /Master project/main.c
- rtlsConfig.rtlsCapab = (rtlsCapabilities_e)(RTLS_CAP_RTLS_MASTER | RTLS_CAP_TOF_MASTER | RTLS_CAP_AOA_RX);
- /Slave project/main.c
- rtlsConfig.rtlsCapab = (rtlsCapabilities_e)(RTLS_CAP_RTLS_SLAVE | RTLS_CAP_TOF_SLAVE | RTLS_CAP_AOA_TX);
- /Passive project/main.c
- rtlsConfig.rtlsCapab = (rtlsCapabilities_e)(RTLS_CAP_RTLS_PASSIVE | RTLS_CAP_CM | RTLS_CAP_TOF_PASSIVE | RTLS_CAP_AOA_RX);
As a result, I find that the pOverrides_2M[] code is for CMD_RADIO_SETUP affect the operation and the pOverrides_2M[] for CC26X2 is not compatible with OneLib_coc.a for CC13X2P.
So, the below lists are what I request:
- The pOverrides_2M and pOverridesCommon codes for CC13X2P, the codes are in TOF.c and urfc.c (for passive).
- The urfc.c won't toggle the GPIO for Ax (DIO 24 is based on CC1352P and is jumped to DIO27 of BOOSTXL-AoA), can you provide any information about this?
EDITED As shown as below, Figure 1. shows the Ax (DIO 27) GPIO is switched correctly.
But, in Figure 2., Ax (DIO 24) is not switched and I think Ax.3 (DIO 27) is switched instead Ax (DIO 24)...
I was trying to find where am I have to modify the code to switch Ax (DIO 24) instead of Ax.3 (DIO27).
Unfortunately, I can't find it.
Figure 1. The GPIO(DIO27 ~ DIO30 number is based the LAUNCHXL board) toggle status of CC26X2R1-LAUNCHXL with BOOSTXL-AoA
Figure 2. The GPIO(DIO24 ~ DIO27 number is based the LAUNCHXL board) toggle status of CC1352P-LAUNCHXL with BOOSTXL-AoA
Best regards,
Inseob
