## 2 Literature Review
In [18], research was conducted involving real-world experiments using that BLE feature in an indoor environment focused on array calibrations using two ULAs and one URA. It reported that mutual coupling had a minimal influence or even had no clear improvement on the accuracy of a variation of MUSIC. However, Carrier Frequency Offset (CFO) compensation substantially impacted it. In [5], four 4 \(\times\) 4 URAs were employed in an indoor environment of 25 m \(\times\) 15 m wide composed of pillars, walls, human movements, tables, chairs, devices, and lamps. In total, 8 eight distinct positions were estimated, and 32 different estimations were evaluated using BLE direction finding and the MUSIC method. The average error was 0.7 m, attaining a good result concerning the sub-1-meter accuracy purpose. Papers about real-world implementations are less common than about in a simulation. In [19], a modified version of MUSIC was developed in a Digital Signal Processor (DSP) for underwater acoustic sources. Notably, it employed a Reduced-Order Root-MUSIC method that reduces the polynomial order of Root MUSIC to speed up computations. In [20; 21], researchers conducted a small-scale experiment using a ULA with four elements and one single transmitter. The array of antennas was connected to the NI PXI platform, and an antenna transmitter was connected to another PX platform. After running a single-source MUSIC and a Total Least Squares ESPRIT in LabView NI hardware to estimate two different DOAs, they concluded both methods could be used in real-time applications. Moreover, the development of 2D MUSIC for an L-shaped antenna array to estimate the azimuth and elevation angles based on parallel computing was successfully devised for a Digital Signal Processor (DSP) [22]. More specifically, researchers parallelized the eigenvalue decomposition to construct the signal or noise subspace and the peak searching method to find DOAs by exhaustive search. Despite the parallelization, the execution time of parallel MUSIC was 190.39 ms, which can be seen as slow considering that the experiment used a DSP of 1 GHz. Most of the research did not focus on the implementation aspect regarding the optimization of the method to be adapted to constrained embedded systems. Except for one cited paper, the rest did not evaluate other important performance criteria such as execution time, energy consumption, and memory footprint. This research takes a step further by adapting the R-D Root MUSIC for a Radio Frequency (RF) switch based on Bluetooth specification. Additionally, the adapted method applies unitary transformations to avoid complex arithmetic, and a real-valued Eigenvalue Decomposition Method (EVD) is employed to find the roots of complex-valued polynomials. The novel method also exploits the radio communication system design of Bluetooth to speed up its execution based on BLE receivers' capability of estimating one single DOA only. **Notation:** by defining the complex number \(z=ce^{\mid\theta\mid}\), the operators \(\mathrm{Re}\ (\cdot)\) and \(\mathrm{Im}\ (\cdot)\) return the real and imaginary part of \(z\), respectively. The argument of a complex number \(\arg\ (\cdot)\) is an operator that returns the phase angle (\(\theta\)) in the interval \([-\pi,\pi]\) while \(\overline{(\cdot)}\) is the complex conjugate. The complex absolute operator is defined as \(\lvert\cdot\rvert=\sqrt{\mathrm{Re}(\cdot)^{2}+\mathrm{Im}(\cdot)^{2}}\). The operator \(\mathrm{diag}\ (\cdot)\) denotes a diagonal matrix formed by an input vector. The Hermitian transpose is \((\cdot)^{H}\) which applies the transpose and complex conjugate on a matrix. The operator \([\cdot\cdot]\) is the floor function, that is, it outputs the greatest integer less than or equal to the input which is a real number. The Hadamard product \((\circ)\) is an operator that takes two matrices, for example, **A** and **B** of the same dimension, and outputs another matrix whose elements are given by \((\textbf{A}\circ\textbf{B})_{ij}=(\textbf{A}_{ij})(\textbf{B}_{ij})\).