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.

CCS/BOOSTXL-AOA: AoA angle value is unstable,How can I improve it ?

Part Number: BOOSTXL-AOA

Tool/software: Code Composer Studio

HW:CC2642R1/CC2552R1 Development Kit(2652) Rev:B x 3  ; BOOSTXL-AOA x 1

SDK: SimpleLink CC12x2 26x2 SDK - 3.20.00.68

Case 1.

SDK :3.20.00.68 build default code r(tls_master,rtls_slave,rtls_passive)

reference guide: RTLS Toolbox Fundamentals

dev.ti.com/.../node

issue: angle is unstable.

Setup environment

Angle : 0 degree

environment

result

default_0.csv

Angle : 30 degree


environment

result

default_30.csv

Case 2:

guide:Angle of Arrival(AOA) , according guide modify 3.20.00.68 code change to one antenna,

dev.ti.com/.../node

issue: whatever change slave position, the the measuring angle isn't change almoust(the value about 6 angle)

Angle : 0 degree

result

a1_0.csv

Angle : 30 degree

result

a1_30.csv

Best regards,

  • Hi Melvin,

    Assigning an expert to comment.

  • Hi,

    Case 1: This kind of results is generally due to the test's environment. For example, does the table have some metallic parts? This could be very annoying for AoA. If so, I recommend you to change the test's environment. In addition, you can try to elevate a bit your launchpad and to have the slave and the passive a bit closer.

    Case 2: Do you mean you only activated one antennas-array? If so, make your-self sure that you haven't forget any step. In addition, make sure to consider the proper antenna array.

    I hope this will help,

  • HI,

    Case 1:
    I test in wood desk, near haven't  metallic parts .and slave and passive distance about 1m , I have try to closer.but the result is the same.


    Case 2:
    Yes , I follow guide:Angle of Arrival(AOA) to modify rtls_passive code
    Q1: Is rtls_master,rtls_slave need to modify(according guide ,only modify rtls_passive_code)?
    Q2 : How can I make sure to consider the proper antenna array?

    Best regards,

  • Hi,

    Case 1: Ok, so no metallic parts on the bottom of the table neither? You can try to elevate a bit the launchpads (basically using some box or books).

    Case 2:

    Q1: You're right, you only need to modify the passive device.

    Q2: By reviewing the code or by checking IOID_27's status. Note: if you have followed the lab, then the antennas-array A1 is activated.

    Regards,

  • Hi,

    about Q2.

    How to check IOID_27's status ?

    Thanks.

    Best regards,

  • Hi,

    Melvin Tsai said:
    How to check IOID_27's status ?

    ==> using a logic analyzer

    You can consult the AoA BoosterPack getting started page to see which antennas-array is activated according to the IOID_27 value (http://dev.ti.com/tirex/explore/node?node=AANEtvJ3vSoqWPiI3wiqEA__FUz-xrs__LATEST )

    Regards,

  • Hi,

    I check IOID_27's status by Digital Phosphor Oscilloscope, and make sure the antennas-array A1 is activated.

    Case 1, Task 2 – Modify AoA application to use only one antenna array

    Result: Only Left Side ,the angle is stable ,but Right Side the angle is unstable

    Case 2, Task 3 – Modify AoA application to use only two antennas

    Result: whatever change slave position, the the measuring angle isn't change (the value about 6 angle)

    Question:

    Q1,Case 1, result only one side is stable , how can I let right side result is stable?

    Q2,Case 2, result almost can't change , what's wrong about it? 

    Q3,What different is about case 1 and case 2, if i want to stable angle , I should use case 1 or case 2 or two antenna Array?

    Thanks

    Best regards,

  • Hi,

    Glad to see that you are getting results.

    Q1: If you compare the code for "Array 1 only" vs "Array 2 only", then what are the differences? Regarding IOID_27, is it stable (i.e. always HIGH or LOW) in both cases? What about the switching pattern of the antennas (IOID_28, IOID_29, IOID_30)? Is it correct in both cases? If nothing in the SW can explain the differences, then it is an HW problem. Can you try using another AOA_BOOSTERPACK if so?

    Q2: Once again, verify which antennas are effectively active. You can try to activate another pair of antennas to see if the results are different.

    Q3: In fact the number of antennas / antennas-array to use must be driven by your needs and your possibilities. Having more than one antenna array is absolutely necessary if you want to measure more than 180 degrees angles. For a given number of antennas-arrays, having multiple antennas (i.e. more than two) increase the accuracy of the results (if you have more measures then you can filter the results).

    Regards,

  • Hi,

    feedback my test result,

    Q1, Try using another AOA_BOOSTERPACK , the result is the same.

    Q2, activate another pair of antennas Array2,right side result is stable,but left side is unstable.

    I am summary test result.

    HW:CC2642R1/CC2552R1 Development Kit(2652) Rev:B x 3   , BOOSTXL-AOA x 1

    SW: SimpleLink CC12x2 26x2 SDK - 3.20.00.68

    Tool:rtls_agent_cli.exe

    Web site:"dev.ti.com/.../"

    Case (1) . 20.00.68 rtls_master,rtls_slave,rtls_passive build 3.20.00.68 default code

    issue: angle is unstable.

    Case (2). Modify AoA application to use only one antenna array - antennas-array A1

                    Only Left Side (A1 Array Side),the angle is stable ,but Right Side the angle is unstable

    Case (3). Modify AoA application to use only one antenna array - antennas-array A2

                    Only Right Side (A2 Array Side),the angle is stable ,but Left Side the angle is unstable

    (Only antennas-array A2) ,I move slave device position from (angle) -50 -> 0 -> 50 then back 50 -> 0 -> -50 ,

    web sit :

    log:

    Array_A2.csv

    Case 1 is unstable ,

    In Case 2,Case 3, Only one side have stable result, how can I improve ?

    Best regards,

  • Hi,

    I am not sure to well understand: in case 2 and case 3, do you mean that the angle is stable on the side where the antennas-array is activated and unstable on the side where the antennas-array is deactivated?

    Regards,

  • Hi, 

     A2 array is activated , ( A1 array is deactivated)

    (1)  put slave device in right side,as below picture position.

    result:

    log:

    0000.csv

    (2)  put slave device in left side,as below picture position.

    result:

    log:

    11111.csv

    Best regards,

  • Hi,

    Once again, I am sorry, I don't understand your problem.

    I don't understand why you are placing the slave on the deactivated side.

    Best regards,

  • Hi,

    Understand, Modify AoA application to use only one antenna array , The behavior is correct. If use only antenna array ,the other side isn't support.

    Question:

    If I want to demo two antenna array ,

    I use the default code , antenna array 1 responsible for left side,antenna array 2 responsible for right side,

    the behavior should be as below picture?

    Best regards,

  • Hi,

    The position of the 0 and the direction of the angle can completely be decided at the application's level or at the GUI's level (you basically need to add an offset to the computed value).

    With that said, by default, the settings are the following:

    - out-of-the-box, using the two antennas-array please see (dev.ti.com/.../landing_page_index.html), section "AoA Performance".

    - if only one antenna is activated, then it's as you described:

    I hope this will help,

    Regards,

  • Hi,

    As you said, by default, the settings are the following:

    but I use 3.20.00.68 ( rtls_master,rtls_slave,rtls_passive) build default code, test result is 

    How can I add an offset to the computed value,let the result as below?

    Best Regard,

  • Hi,

    The easiest solution seems to basically do something following this pseudo code:

    if(value > 100) {
        /* No modification required */
        return value;
    }
    else{
        return (-100 - value);
    }

    This code can be added on the master/passive side or on the GUI side.

    I hope this will help,

  • Hi,

    If I want to  add an offset to the computed value in 3.20.00.68 default code.

    Q1 : both master and passive code must modify? 

    Q2:  modify code in  AoA.c or?

    other question:

    HW:CC2642R1/CC2652R1 Development Kit(2652) Rev:B x 3  , BOOSTXL-AOA x 1

    support gallery only "https://dev.ti.com/gallery/view/LPRF/RTLS_Monitor_CC26X2/ver/0.9.4/

    Q : "https://dev.ti.com/gallery/view/LPRF/BOOSTXL_AoA_Display/ver/0.2.0/ "  or "https://training.ti.com/localization-ble"  can support CC2652R1 ?

    Best Regard,

  • Hi,

    Q1: For SDK older than 3.30, the AoA measures are only done by the passive. So you only need to modify the passive code (people using SDK 3.30 and latter would need to modify the code of the device(s) performing the measurements)

    Q2: You can modify the value where you want :) Modify AOA.c is a good option. You could also chose to modify the value just before sending it to the host (in this case, you need to modify RTLSCtrl_postProcessAoa() in rtls_ctrl_aoa.c).

    Q3: (dev.ti.com/.../) only supports CC2640R2 but you can try to port it to CC2642, it should be doable. (https://training.ti.com/localization-ble) was written for CC2640R2 but CC2642 is of course capable to achieve the same kind of demo.

    Regards,

  • Hi,

    I try to use the newest SDK: simplelink_cc13x2_26x2_sdk_3_30_00_03

    but it isn't work

    HW:CC2642R1/CC2552R1 Development Kit(2652) Rev:B x 3 , BOOSTXL-AOA x 1
    SW: SimpleLink CC12x2 26x2 SDK - simplelink_cc13x2_26x2_sdk_3_30_00_03
            C:\ti\simplelink_cc13x2_26x2_sdk_3_30_00_03\tools\ble5stack\rtls_agent\rtls_monitor\rtls_agent_cli.exe
            "dev.ti.com/.../"

    rtls_master,rtls_slave,rtls_passive build 3.30.00.03 default code ,flash by uniflash 

    result:

    eventlog:

    6428.eventlog (1).csv

    Other question:

    Where can I find the document about packet format.( I catch data from UART,how can I analysis it ?) 

    Best regard,

  • Hi,

    The problem you are running into is due to the GUI you are using (0.9.4). Please use version the GUI version 0.9.5 for CC26x2. The GUI might not be released yet, but it will be soon.

    In the meantime, and regarding your other requirements, I would recommend you to have look to the other python scripts enclosed in your SDK (in rtls_agent\examples). For example, the script rtls_aoa_iq_with_rtls_util_export_into_csv.py will show you how to record the data in a csv file.

    I hope this will help,