Why does the phase value collected by a single antenna at different times fluctuate so significantly in Bluetooth AOA (Angle of Arrival) measurements?

When using Bluetooth AOA, I configured only two antennas to collect IQ data. Below are the curves formed by the 37 IQ data points collected from the two antennas during the sampling phase, including the phase (arctan(Q/I)) and the phase difference between the two antennas. Based on my understanding, the phase collected by each antenna should be consistent, but the data here shows surprisingly large fluctuations. Is this normal?

Thank you very much for your reply!

  • Yes, the phase at the reference point in time should be extracted from the data in the reference period, you may need to filter it somewhat to make sure that noise in a single sample doesn't impact the point too much as this would impact all you data later on.

    Note: the issue is not only for the 250/500KHz, there will also be small errors for the RF base frequency so you won't have exaclty 2.410.000.000 Hz, the accuracy of the crystal is some ppms and this will change the frequency. This will be different part to part and vary over temperature and voltage. This is why you use the reference period to remove all these issues so the solution is self correcting.

  • Thank you very much for your response—it has been extremely helpful! I do have one follow-up question and hope it won’t cause too much disruption:

    Bluetooth AoA (Angle of Arrival) positioning relies on CTE (Constant Tone Extension) signals transmitted over BLE advertising channels (37, 38, 39), which correspond to frequencies of 2402 MHz, 2426 MHz, and 2480 MHz, respectively. Since angle-of-arrival calculations depend on frequency (and thus wavelength), as shown in the figure below, how can I identify which specific channel the current Bluetooth CTE signal is using? (I am working with the direction_finding_connectionless_rx and direction_finding_connectionless_tx examples from the NCS SDK 3.0.1.)

Related