# Steering Vectors and Bluetooth Low Energy for computing Angle of Arrival

I am new to signal processing, but I have background in mathematics. I am trying to use Bluetooth Low Energy (BLE) on three mobile devices, where one device is being tracked and the other two act as antennas. I would like to compute the angle of arrival to compute the position of the device.

To do this, I have found the MUSIC algorithm, which (if I understand correctly) allows me to compute the angle of arrival by maximizing a function dependent on the steering vector $$a(\theta).$$

The first issue I am facing is computing this steering vector from a Python program. I feel that I lack a conceptual understanding of what this steering vector means.

Moreover, how can I actually implement a (Python, ideally) program which (a) detects nearby Bluetooth devices, (b) computes the steering vector, and (c) performs the MUSIC algorithm to compute the angle of arrival? Only a basic overview of the process is sufficient.

The steering vector is dependent on the position of your antenna array elements. According to antenna array phase theory the distance between your antennas should be less than $$\frac{\lambda}{2}$$. Where $$\lambda$$ is the wavelength @2.4Ghz.
There are several papers/books that derive the formula but basically the steering vector is a matrix of size $$1 \times N$$, where $$N$$ is the number of antennas.