## 4 Analysis of Requirements and Feasibility of Assumptions for CB
Finally, the largest constraint is given by \(R\)-6, in agreement with [7; 16]. We have to consider that WSN basically use Industrial, Scientific and Medical (ISM) frequencies 868/915/2450 MHz as defined in the standard IEEE 802.15.4 [1] or in the amendment IEEE 802.15.4n [14] with frequency bands 174-216 MHz, 407-425 MHz, and 608-630 MHz. Because the transmission of the signal is based on the modulation of a carrier \(\sin(2\pi f_{c}t)\) where \(f_{c}\) is the carrier frequency, for CB, we need to introduce at each mode \(i\) the calculated phase offset as shown in Section 3, denoted as \(\delta_{i}\), given by a delay \(d_{i}\) as follows:  
\[cos(2\pi f_{c}t+\delta_{i})=cos(2\pi f_{c}(t+d_{i})), \tag{5}\]  
where \(d_{i}\) is on the order of hundredths or tenths of nanosecond. Table 1 shows an example of different \(d_{i}\) to achieve a specific phase offset (in particular, \(\pi/8\), \(\pi/4\) and \(\pi/2\) radians) for frequencies available at IEEE 802.15.4 [1] (at 2450 and 868 MHz) and IEEE 802.15.4n [14] (at 416 and 195 MHz). Notice that IEEE 802.15.4n is an amendment and there are no commercial motes at these frequency bands. It is important to note the trade-off when using a frequency band for the carrier signal. According to [5], the gain (directivity) given by the CB is \(G=\frac{4\pi TA}{\lambda^{2}}\), where \(A\) is the effective antenna aperture of the array and \(\lambda=\frac{\xi}{f_{c}}\). Thus, if we reduce the carrier frequency, we reduce the gain, but we increase the margin of error required both for synchronization and location, as seen in \(R\)-1 and \(R\)-2. In addition, using long \(\lambda\) wavelengths could be considered an advantage knowing that longer \(\lambda\) are more capable of diffracting surrounding objects. However, the motes are based on MicroController Units (MCU) with maximum frequencies on the order of MHz. For example, in [2], we can see main characteristics of commercial motes. The maximum frequency of the available MCU is given by the Intel Strong Arm with 206 MHz, although it should be noticed that most of the motes are based on the MCU TI MSP430 [20] with 8 MHz, such as TelosB motes. Thus, using only the MCU, it is impossible to generate an offset with the desired accuracy shown in Table 1 on the order of hundredths or tenths of a nanosecond. We could consider the options given by time synchronization protocols for WSN, but, usually, the maximum synchronization accuracy is on the order of microseconds [2]. Even with complex time synchronization algorithms, we can achieve a minimum synchronization error of 150 ns [22; 23], of which neither fulfills the desired requirements. This lack of accuracy in the synchronization protocols on WSN is discussed in [13], mainly due to the low quality and poor performance of the hardware components. Due to the unpredictability, randomness and imperfect measurement of message delays, the synchronization protocols can only estimate the time difference between the clocks with poor accuracy, usually on the order of milliseconds or microseconds, depending on the complexity of the protocol. In addition, these estimations become out of date after some time due to clock drifts, it being necessary to perform periodic message exchanges to maintain a certain synchronization accuracy. It is important to highlight that every mote has a local time mainly based on low-cost quartz crystal oscillator. Slight fluctuations in the oscillator's output frequency (clock drift) affect the clock precision and produce an offset between the local time of the motes (clock skew). There is a wide range of factors involved in the clock drift, such as supply voltage [24], environmental conditions and aging factors [25]. Low-cost quartz crystals measure the maximum drift in terms of ppm (parts per million), with typical values in the range of 1 ppm to 100 ppm, as shown for example in TelosB motes. All of these reasons prevent the WSN from a practical implementation of CB, following previous steps, as stated in [7].