Part Number: LAUNCHXL-CC26X2R1
Tool/software: Code Composer Studio
Hi everyone,
I'm working on a system with a LAUNCHXL-CC26X2R1 + BOOSTXL-AOA acting as a master and a LAUNCHXL-CC26X2R1 acting as a slave. I already tried the RLTS browser interface and it worked and now I'm trying to use both arrays in a switching routine.
First of all, I see that in RTLSCtrl_initAoa() this kind of configuration is not included:
if (gAoaCb.resultMode != AOA_MODE_RAW)
{
for (int i = 0; i < numAnt; i++)
{
if (IS_AOA_CONFIG_ONLY_ANT_1(sampleCtrl))
{
if (pAntPattern[i] != i)
{
return RTLS_CONFIG_NOT_SUPPORTED;
}
}
else if IS_AOA_CONFIG_ONLY_ANT_2(sampleCtrl)
{
if (pAntPattern[i] != i + 3)
{
return RTLS_CONFIG_NOT_SUPPORTED;
}
}
else
{
return RTLS_CONFIG_NOT_SUPPORTED;
}
}
}
So the first question is if there is any possible way to have a working system with this configuration. Which part of the code should I modify?
Secondly, I went further in the code to see its behavior: I saw that in RTLSCtrl_postProcessAoa() there is a part of code dedicated to antenna selection and angle estimation. Again there is no space for a switching system:
if (IS_AOA_CONFIG_ONLY_ANT_1(gAoaCb.sampleCtrl))
{
antenna = ANT_ARRAY_A1x;
}
else
{
antenna = ANT_ARRAY_A2x;
}
So I modified this part with:
if (antenna == ANT_ARRAY_A1x)
{
// Start with A2 (ANT_ARRAY pin high is A1, low is A2)
PINCC26XX_setOutputValue(ANT_ARRAY, 0);
antenna = ANT_ARRAY_A2x;
}
else
{
// Start with A1 (ANT_ARRAY pin high is A1, low is A2)
PINCC26XX_setOutputValue(ANT_ARRAY, 1);
antenna = ANT_ARRAY_A1x;
}
Then I checked the pins with the oscilloscope and I saw that the pin was correctly switching.. and so I assumed that the array were switching too.
Is this approach correct to achieve what I said? Or should I modify other parts of the code?
Last but not least, does the BOOSTXL-AOA have a particular position for the angle estimation example? Or does it work fine with any orientation?
Best Regards,
Federico