“How can I determine the specific BLE advertising channel currently being used for Bluetooth CTE signals in my AOA positioning setup?”

Hello, the CTE signal for Bluetooth AoA (Angle of Arrival) positioning is primarily transmitted over BLE advertising channels (37, 38, 39), corresponding to frequencies of 2402 MHz, 2426 MHz, and 2480 MHz, respectively. 
Since calculating the angle of arrival is frequency-dependent, how can I determine which specific channel the Bluetooth CTE signal is currently using?
(I am using the direction_finding_connectionless_rx and direction_finding_connectionless_tx examples from the NCS SDK 3.0.1.)


Thank you very much for your reply!





Parents
  • Hi,

    The channel used for the continuous tone extension (CTE) is provided in the bt_df_per_adv_sync_iq_samples_report structure, in the .chan_idx field. For the Bluetooth: Direction finding connectionless locator sample, the structure is used in the cte_recv_cb() callback function, around line 143 of main.c.

    You should also be able to find (or check) the frequency from the IQ samples from the reference period at the beginning of the CTE. During the reference period, the first antenna will send the signal for a longer period of time. Please see IQ sampling configuration, and the rest of the Direction Finding white paper, for further details on the workings of Direction Finding with our SoCs.

    Regards,
    Terje

  • Hello,

    Thank you very much for your response! I used the method you suggested, and as shown in the example below, I successfully obtained the channel ID. However, I am using a connectionless example (non-connected mode). Based on my understanding, RF signals with CTE should utilize the advertising channels 37, 38, and 39. Why is the actual channel ID randomly selected from the range 0 to 39 in practice?

    Regards,

    Ai Hu

  • As stated in your other post, Bluetooth does NOT ALLOW CTE in the advertising channels (37, 38, 39) so all CTE data will be coming from the other 37 channels used.

    And  the frequency to use is the frequency extracted from the reference period.

  • Based on my understanding, the Bluetooth transmitter emits the CTE (Constant Tone Extension) signal after GFSK (Gaussian Frequency Shift Keying) modulation. The resulting signal can be represented as shown in the diagram below, where fc is the carrier frequency (i.e., the frequency corresponding to the selected channel), and fdev is the frequency deviation (250kHz/500 kHz). Since the final calculation of the angle of arrival (AoA) depends on the original wavelength (frequency) of the transmitted signal, fc must be determined in advance as a critical parameter. This is why I am particularly concerned about which channel the CTE signal is transmitted on — because the channel directly defines fc, which fundamentally impacts the AoA computation accuracy.

    Regards,

    Ai Hu

  • So if you are to do this then you will need to look at the accuracy you can expect from the fcarrier on both the transmitter and the receiver as these will impact the demodulated signal (which is what the IQ data is taken from). You will also need to look at the frequency deviation accuracy allowed by the Bluetooth spec as this is not 250/500 but also +/- margin.

  • Thank you once again for your invaluable assistance. I will continue my research into Bluetooth AoA (Angle of Arrival), and your guidance has been critical to my progress. I deeply appreciate your support!

    Regards,

    Ai Hu

Reply Children
No Data
Related