Part Number: CC2652R
Other Parts Discussed in Thread: CC2592,
Dear All,
In my project for range extenstion I am using cc2592 with cc2652r. only 2 meters range getting. attaching the configurations .



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.
Part Number: CC2652R
Other Parts Discussed in Thread: CC2592,
Dear All,
In my project for range extenstion I am using cc2592 with cc2652r. only 2 meters range getting. attaching the configurations .



Hi sushmitha,
Here is the relevant E2E thread: CC2652R: Antenna Range Issue
In most cases the rfDriverCallbackAntennaSwitching is used by high-PA devices to determine between the Sub-1GHz, 2.4GHz, or High-PA paths. This should not concern your project as you are using a 2.4GHz-only non-PA device.
void __attribute__((weak)) rfDriverCallbackAntennaSwitching(RF_Handle client, RF_GlobalEvent events, void *arg)
{
if (events & RF_GlobalEventRadioSetup) {
bool sub1GHz = false;
uint8_t loDivider = 0;
/* Switch off all paths. */
GPIO_write(CONFIG_RF_24GHZ, 0);
GPIO_write(CONFIG_RF_HIGH_PA, 0);
GPIO_write(CONFIG_RF_SUB1GHZ, 0);
/* Decode the current PA configuration. */
RF_TxPowerTable_PAType paType = (RF_TxPowerTable_PAType)RF_getTxPower(client).paType;
/* Decode the generic argument as a setup command. */
RF_RadioSetup* setupCommand = (RF_RadioSetup*)arg;
switch (setupCommand->common.commandNo) {
case (CMD_RADIO_SETUP):
case (CMD_BLE5_RADIO_SETUP):
loDivider = RF_LODIVIDER_MASK & setupCommand->common.loDivider;
/* Sub-1GHz front-end. */
if (loDivider != 0) {
sub1GHz = true;
}
break;
case (CMD_PROP_RADIO_DIV_SETUP):
loDivider = RF_LODIVIDER_MASK & setupCommand->prop_div.loDivider;
/* Sub-1GHz front-end. */
if (loDivider != 0) {
sub1GHz = true;
}
break;
default:break;
}
if (sub1GHz) {
/* Sub-1 GHz */
if (paType == RF_TxPowerTable_HighPA) {
/* PA enable --> HIGH PA
* LNA enable --> Sub-1 GHz
*/
GPIO_setConfigAndMux(CONFIG_RF_24GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
/* Note: RFC_GPO3 is a work-around because the RFC_GPO1 (PA enable signal) is sometimes not
de-asserted on CC1352 Rev A. */
GPIO_setConfigAndMux(CONFIG_RF_HIGH_PA, GPIO_CFG_OUTPUT, IOC_PORT_RFC_GPO3);
GPIO_setConfigAndMux(CONFIG_RF_SUB1GHZ, GPIO_CFG_OUTPUT, IOC_PORT_RFC_GPO0);
} else {
/* RF core active --> Sub-1 GHz */
GPIO_setConfigAndMux(CONFIG_RF_24GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_HIGH_PA, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_SUB1GHZ, GPIO_CFG_OUTPUT | GPIO_CFG_OUT_HIGH, IOC_PORT_GPIO);
}
} else {
/* 2.4 GHz */
if (paType == RF_TxPowerTable_HighPA)
{
/* PA enable --> HIGH PA
* LNA enable --> 2.4 GHz
*/
GPIO_setConfigAndMux(CONFIG_RF_24GHZ, GPIO_CFG_OUTPUT, IOC_PORT_RFC_GPO0);
/* Note: RFC_GPO3 is a work-around because the RFC_GPO1 (PA enable signal) is sometimes not
de-asserted on CC1352 Rev A. */
GPIO_setConfigAndMux(CONFIG_RF_HIGH_PA, GPIO_CFG_OUTPUT, IOC_PORT_RFC_GPO3);
GPIO_setConfigAndMux(CONFIG_RF_SUB1GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
} else {
/* RF core active --> 2.4 GHz */
GPIO_setConfigAndMux(CONFIG_RF_24GHZ, GPIO_CFG_OUTPUT | GPIO_CFG_OUT_HIGH, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_HIGH_PA, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_SUB1GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
}
}
}
else if (events & RF_GlobalEventRadioPowerDown) {
/* Switch off all paths. */
GPIO_write(CONFIG_RF_24GHZ, 0);
GPIO_write(CONFIG_RF_HIGH_PA, 0);
GPIO_write(CONFIG_RF_SUB1GHZ, 0);
/* Reset the IO multiplexer to GPIO functionality */
GPIO_setConfigAndMux(CONFIG_RF_24GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_HIGH_PA, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
GPIO_setConfigAndMux(CONFIG_RF_SUB1GHZ, GPIO_CFG_OUTPUT, IOC_PORT_GPIO);
}
}
So your application only needs to map the LNA and Tx start functionality to the correct DIOs
// Map LNA enable pin RFC_GPO0 to DIO12
IOCPortConfigureSet(IOID_12, IOC_PORT_RFC_GPO0,
IOC_IOMODE_NORMAL);
// Map Tx start pin RFC_GPO3 to DIO20
IOCPortConfigureSet(IOID_20, IOC_PORT_RFC_GPO3,
IOC_IOMODE_NORMAL);
Regards,
Ryan