This demo software can be used to measure the accuracy of the Angle of Arrival (AoA) technique adopted in Bluetooth Low Energy (BLE) 5.1. The software runs on Software-Defined Radios (SDR) manufactured by Ettus Research.
The programs included in this package run on systems that are connected to SDR platforms. The program running on a specific system depends on the role of the SDR in the experimental setup (transmitter or receiver). In particular, the package includes:
- aoatransmitter: the transmitter sends BLE packets periodically (beacons). We have used this program with a USRP N200 SDR.
- aoareceiver: the receiver captures the beacons and process them in order to determine the AoA of the transmitter. We have used this program with a USRP B210 SDR.
The software has been tested on Ubuntu 18.04 and 16.04.
Before building the programs, ensure that you have installed the USRP Open-Source Toolchain for Ubuntu (instructions here, only UHD required).
Then, prepare the software for building using CMake:
mkdir build
cd build
cmake ..
Finally, build all the software with
make
or build only specific components by specifying the name. For example, to build only aoareceiver do:
make aoareceiver
To run the software, first do mv to the build directory.
Programs can run with default parameter by executing:
./<program>
Arguments accepted by the programs can be shown with:
./<program> --help
The system running aoareceiver will display the AoA of the packets sent by aoatransmitter. AoA is considered wrt. the axis going through the two antennas of the receiver.