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.

BOOSTXL-AOA: antenna switching mode

Part Number: BOOSTXL-AOA

Dear team,


In the antenna switching mode, a total of 32 switchings were made. 

#define AOA_ANT_SWITCH_START_TIME 576 (12uS)

When AOA_ANT_SWITCH_START_TIME,is it always uses antenna 2? Or 12uS (antenna 2) plus 4uS initial antenna time (antenna 2), that is, the first 16uS antenna is antenna 2? 

In addition, when three antennas are used, the antenna 2 is the initial antenna, and then the antenna is switched to the antenna 1, and then cyclically cycles through 10 cycles in the order of 1, 2, and 3, and then switches to the end of the antenna 2.


Am i right?

  • I have assigned an expert to comment.

  • Hi,

    The antenna switching pattern is controlled by the content of the table antennaPatternAx.

    The value AOA_ANT_SWITCH_START_TIME is defined to optimize the starting up of the switching (it is useless to start switching antenna before the CTE is received). The value of AOA_ANT_SWITCH_START_TIME has been determined through lab experiments.

    As you mentioned, knowing the guard time and the sampling time on each antenna, it is possible to determine which antenna is active. The initial antenna is always the antenna 2. The antenna 2 is the antenna used in between the CTEs to (for example) detect the beginning of the BLE packet. 

    You can have a look to the last part of the SLA lab. It shows the antenna switching from the phase point of view. I think it might be interesting for what you are doing :)

    I hope this will help,

    Best regards,

  • Hi,

    When I use simplelink_cc2640r2_sdk_3_30_00_20,   AOA_ANT_SWITCH_START_TIME is defined as 576 in the code.  However, in C:\ti\simplelink_cc2640r2_sdk_3_30_00_20\docs\blestack\ble_user_guide\html\ble-stack-3.x-guide\loalization-index.html, AOA_ANT_SWITCH_START_TIME is defined as 384 (8 * 48).As shown below:

    Does this mean that the first 8us is the guard time? But in the actual code, AOA_ANT_SWITCH_START_TIME is defined as 576. So the first 12uS in the sample collected is the guard time? But in the actual data, the gurard time is still 8uS. As shown below:


    In order to verify this, I changed the code to the following situation, the first 32 samples shown are on antenna 2, that is, the guard time is 8uS.

    But in the code #define AOA_ANT_SWITCH_START_TIME 576, the first 48 data should be antenna 2. what's going on?

    Best regards,

    Tao

  • Hi Tao,

    A part of the answers to your questions can be founded in the “Bluetooth Direction Finding - A Technical Overview” document (especially in the Figure 20 - CTE timing rules). As you will see, the guard period lasts 4us and the reference period lasts 8us. During those two periods, you don’t need to sample. However during the reference period, the CTE is already transmitted.

    Let me know if I need to clarify some points,

    Regards,

  • Hi   Clément,

    Thank you very much for your help. I have always thought that AOA_ANT_SWITCH_START_TIME is used to set the reference period. Your answer has solved my problem.

    Best regards,

    Tao

  • Hi,

    Perfect! Always happy to help :)

    Regards,

  • Hi,Clément:

    I want to know something esle as follow:
    What is the basis of the guard period 4us? And, Is the delay time 0.75us the antenna setup time 1us subtract the sampling setup time 0.25us, or the protection period 4us subtract the RF kernel startup time 3.25us?
    Best regards
    Xi
  • Hi Xi,

    Please consult the document I pointed. You can also have a look to the documentation enclosed in your SDK: in /docs/blestack/ble_user_guide/html/ble-stack-3.x-guide/localization-index.html#gptimer-delay-tuning

    I hope this will help,

    Regards,