1. Introduction
In the past few decades, mobile phone has become the most popular communicating tool globally. People started to use mobile phone to communicate since the first commercial mobile phone launched in 1983 [1]. The need of cellular network was then appeared gradually. The cellular network was developed rapidly on both transmission speed and coverage in various generations of mobile communications.
However, due to the working principle of mobile signal, there are a number of limitations in wireless cellular network. One of the problems is the insufficient number of base stations to cover all of the areas for the users due to the budget control of the mobile services providers. Without the issue of budgeting, this problem may still exist as the geographic layout varies among different locations which leads the estimation error on coverage of mobile signals. Some works has been done on trying to solve this problem in the outdoor environment [2-4]. However, the problem in the indoor environment still exists. Recently, the modern buildings are constructed with different types of glasses, plastics, cements, metals and other materials. Absorption of mobile signals among these materials varies with a great extent. With this variations, the mobile signal strengths inside these buildings cannot be estimated or calculated accurately by using algorithms or simulation.
Nowadays, there are indoor base stations to enhance the coverage in the indoor environment. However, “blind spots” must be present also due to the reasons similar to outdoor environment. In order to improve this situation on coverage, the mobile services provider assigns its technicians to measure the indoor received signal strength (RSS) with the use of bulky and heavy equipment [5]. The technicians need to record the RSS measured and its corresponding positions. The experience of technicians is also significant sometimes as they need to decide which points to be measured. After the data is gathered by the technicians, the data is analyzed by the engineers in the office to decide where a new indoor base station should be placed for improving the coverage [6]. Moreover, without the help of building or facility management units, the floor plan of building is sometimes required to be recorded by the technicians who take investigation on the testing sites [7]. These procedures are a lone-time and labor consuming process. Various methods were proposed and demonstrated in analyzing the mobile signal strength on various indoor environments [7-9]. However, these methods are not the solution of the above situation in terms of the assistance of building management, portability of analyzers, and applicability in the environment. This paper proposed and demonstrated a low-cost system with handheld analyzer for optimizing the position of indoor base stations. An integrated and low-cost handheld analyzer was prototyped for indoor mapping and detection of mobile signals strength. Software was also developed to analyze and optimize the signal quality of indoor areas based on the data received from the handheld device and positioning system. Depending on the specification of indoor base station used by the mobile services provider, the algorithms used for the optimizing indoor station can be varied. Assuming a simple Omni-directional antenna was used in the indoor base station, the centroid algorithm was used in this work. Based on our best knowledge, there is no integrated wireless handheld system with positioning function for this purpose.
In Section 2, we review the previous works in positioning systems using wireless technology. Section 3 addresses the architect of proposed system in terms of various functioning modules. Section 4 presents the experimental evaluation of the proposed system in the real indoor environment. We also describe the way to conduct the experimental data analysis for the suggestion on the position of indoor base station.
2. Positioning Systems
Positioning is critical in the proposed system as it identifies the indoor positions with weak and strong mobile signal. Various common positioning systems were reviewed. One of them was adopted to apply in the proposed analyzer. Firstly, the Global Positioning System (GPS) is out of consideration as it is not capable of indoor usage. The GPS signal from satellites are greatly attenuated by the roofs and walls of buildings [10]. The Inertial Navigation System (INS) is also not feasible in the proposed usage due to the high cost for acquisition and maintenance of mechanical parts [11]. For Wi-Fi Positioning System (WPS) and Bluetooth Low Energy (BLE) positioning, several criteria are used to do the comparison. In terms of accuracy, the WPS is about within 5 – 15 m while the BLE is about within 1 – 3 m. In terms of coverage, the WPS is within 150 m while BLE is within 30 m [12]. One Wi-Fi access points (AP) costs at least several hundreds of HKD but a BLE beacon costs less than 20 HKD. For installation, WPS depends on APs provided in indoor places while BLE beacons are small and convenient to install. WPS requires external power source while BLE beacons do not and have a long battery life [13]. Also, in terms of signal attenuation problem, both systems encounter signal attenuation according to environmental factors, like concrete, metal, water, etc. [14,15]. The comparison was summarized in the Table 1. BLE are actually used to achieve various aims including signal detection and distance estimation on IoT recently [16- 19]. In fact, BLE has its own advantages and disadvantages. In terms of the measurement, algorithms to measure battery level and distance with precision is strongly desired. Security issues and scalability have barely been studied also. However, after compromising the above factors, the BLE was chosen to be the positioning system in the handheld analyzer. The BLE beacons can be installed by technicians with minimum effort. This is to ensure the BLE signal can cover the indoor environment well, as the Wi-Fi hotspots may not be in desired places to offer satisfying coverage.
Table 1. Comparison of Wi-Fi AP and BLE beacon positioning
3. System Design
The proposed system is divided into three parts conceptually. The first part is the positioning system. The BLE used for positioning assists in constructing the floor plan and the signal strength coverage map. The second part is the mobile signal strength detection. The Arduino and corresponding modules are adopted to obtain and record the RSS of mobile signal. These two parts are implemented in a single handheld device. The third part is the signal analysis and optimization in which software is developed to visualize the signal strength coverage map. Locations of “blind spots” are then found in this part. The software also calculates the optimum position of indoor base station to improve signal coverage. From the result, suggesting plan for placing the antennas to optimize the quality of signals is proposed.
3.1 Self-Organizing Map
Firstly, the BLE beacons are placed at each corner of walls on the testing site before the technician starts using the Arduino analyzer to obtain the data of signals. The placement of BLE beacons is about the height of a door. After the placement of beacons, the technician needs to bring the Arduino analyzer, and locate at the beacons one by one in sequential order. The analyzer at the location of each beacon can record the signal strength of other beacons automatically. After the technician goes back to the first beacon, the process of obtaining the data for construction of floor plan finishes. All the received data is stored in the memory card through a SD card module. The data include but not limited to the signal strength between beacons and the number of beacons used. In this work, it is assumed that the testing site under measurement is in a regular shape at which the angles between any two pieces of consecutive walls are either 90° or 270°. If three beacons P1, P2 and P3 are used, the angle at P2 (90° or 270°) can be determined by analyzing the signal strength between P1 and P3 since the attenuations with and without walls are different. The placement of beacons in a normal rectangular room is as shown in Fig. 1.
Fig. 1. The placement of BLE beacons in the testing site
In the case of more than one floor being analyzed, the height of the ceiling for setting up the antenna is also one of the issues to be considered. A laser distance measurer should be used to measure the height of the ceiling from the ground. The operator should hold the Arduino analyzer to about 1-meter height. The signal strength of indoor base stations installed on one floor to the other floor can then be evaluated. In this paper, the testing site of only one floor was analyzed as the demonstration.
After obtaining data on the construction of floor plan, more beacons are used between the originally existing beacons to increase the accuracy of positioning. It is suggested that BLE beacons should be placed ~2.5 m high and ~20 m between each other to provide a good range of coverage [20,21]. However, since the BLE beacons have a limited range of coverage, and signals may attenuate in the presence of certain objects, such as brick, concrete, coated glass, metal, water, etc. [8], more beacons should be installed. The technician can then walk around the testing site to further receive the mobile signal from the existing indoor and/or outdoor base stations. Afterwards, the data from memory card is then transferred to a computer when the technician goes back to the office. A MATLAB program mentioned in subsection 3.4 was developed for the further analysis. The program is used to extract the data, construction of floor plan, mobile signal analysis and planning of indoor base stations. When analyzing the RSS of BLE in the program, the RSSs which are higher or lower than a certain level will be omitted to ensure significant RSSs are used for calculating the position. The beacons used for positioning were also calibrated before the placement on the testing site.
3.2 Development of Arduino Analyzer
The analyzer consists of six modules, including the SIM 7600CE (4G module), HM-10 (BLE module), SD card module, LCD monitor, LED and the switch. The modules are connected to the Arduino microcontroller together to function as a single device. Functions of each module are described as in the sub-subsections below. The Arduino microcontroller used in this paper is Arduino Uno R3. It contains 14 digital pins, 6 analog pins, a USB-B connection, a power jack, and a reset button. The digital pins and analog pins are used as input and output. The Arduino IDE allows the users to write specific program to control the modules connected. This fact on implementation provides the flexibility to control the Arduino microcontroller. After programming on the Arduino ADK, the code is installed into the Arduino microcontroller and program can be executed to obtain the mobile signal.
3.2.1 SIM 7600CE (4G module)
A 4G module is used in the proposed analyzer. This module can measure the signal strength from 2G to 4G. To check the module's functionality, a program called SSCom3.2 is used. Connecting the SIM 7600CE module with a USB-TTL converter called CP2012 to the computer, SSCom3.2 is used as a medium to send the AT command to the SIM 7600CE for checking the response. The Baud selected on the SSCom3.2 interface should be identical to the Baud of SIM 7600CE. The 4G module with antenna used is as shown in Fig. 2.
Fig. 2. The SIM 7600CE connected with an antenna
3.2.2 BLE module
The Bluetooth modules JDY-08 and HC-06 were not used because of the problem on compatibility. There is no way to configure these two Bluetooth modules via Arduino IDE or the SSCom 3.2 monitor. The other Bluetooth module HM-10 was chosen in the proposed analyzer. It is a commonly used BLE module applied in positioning. It follows the Bluetooth Specification 4.0 BLE and supports the AT command. The HM-10 can be controlled using AT commands which are sent over the serial URT connection, either through the serial assistant SSCOM 3.2, or the Arduino serial port. When the Arduino serial port is being used, a sketch for communicating with the HM-10 is uploaded firstly [22]. With a user manual provided by the manufacturer of HM-10 and suitable AT commands, the HM-10 can be configured to function properly in the analyzer proposed. The HM-10 can act as both central device and peripheral device, with central device searching for BLE signals and peripheral device emitting BLE signals like Beacons. When it is used as a central device, a command “AT+ROLE1” should be used to make it as a central device [21]. During the operation of analyzer, it is ideal that the HM-10 searches all beacons present on the testing site on every scanning. As a result, a period of scanning time is needed. Nevertheless, it is inefficient if the scanning time is too long. Therefore, a command “AT+SCAN3” should be used to set each scanning period to 3 seconds as a balance [21].
3.2.3 SD Card Module
The SD card module allows the analyzer to save all of its data received for further analysis. Six pairs of pins are connected between Arduino and SD card module. Apart from the power and the ground, the other pin called master output slave input (MOSI) is a port for the SD card to transfer data into the Arduino. The other pin MISO works in the opposite way as MOSI. The CSLK is called Serial clock which is used to synchronize the transmission of data from the Arduino.
3.2.4 LCD Monitor
In order to allow the technician to have a first glance and brief understanding of mobile signals on the testing site, all the mobile data received will be continuously displayed on the LCD monitor for a quick check before checking them from the SD card. It provides the basic information for the users of the analyzer.
3.2.5 LED
The LED is a user-friendly design setting for monitoring the process throughout the data receiving process. The LED consists of three colors: red, green and blue. Only one color will be appeared at one time. Red light will be on when the analyzer is receiving data on the mobile signal. Blue light will be on when the analyzer is receiving BLE signal. Green light is on when the technician is allowed to move. The normal sequence of the LED colors is red, blue and green.
3.2.6 Switch
The switch is used to control the state of the operating Arduino analyzer. At beginning, the device is remained at low state and the analysis will not be started. When the switch is turned to high, the state of the switch is changed and the data obtaining cycle is started continuously. Once the state of the switch is turned to low, the device will finish it current cycle and stopping the data receiving process.
A PCB is designed for the Arduino analyzer as shown in Fig. 3. As the analyzer is designed as a portable device on the testing site, the analyzer should be handy and minimized in physical size. When the analyzer is being developed, cables are connected with the communication port of the Arduino Uno R3. During the development on the analyzer, it is inconvenient to bring the analyzer in that state. In the meantime, the modules and antennas are not fixed onto the PCB, it can alter the received BLE and mobile signals.
Fig. 3. The printed circuit board used for assembling the various modules. (a) Schematic diagram, (b) Real PCB layout, (c) Conceptual PCB connection
The PCB is connected to the Arduino Uno R3 while the SIM 7600CE module, HM-10 modules, SD card module, RGB LED, LCD monitor and the switch were mount onto it. Though the connection of the modules and Arduino Uno R3 are not very complicated, the electrical wires overlap each other. Therefore, a two-layer PCB should be used. All of the modules, including Arduino Uno R3, are using a pin distance of 2.54 mm. On the pins connection, 10 mil and 15 mil are used. For the electrical wires used as power supply transfer for the modules, a wider line of 15 mil should be used in order to reduce resistance such that there are enough voltage and current provided to the modules. The prototype with a size of 10.8cm × 8.5cm × 4.0cm is as shown in Fig. 4.
Fig. 4. The final assembled product works successfully with the PCB. The ratio of photo is 1:1
3.3 Arduino Software Development
Fig. 5 shows the flow chart when the Arduino analyzer is operating normally. Firstly, when the power is turned on, the monitor shows “on” for 2 seconds. Then, it shows “Waiting” if the Arduino analyzer is not switched on. After the analyzer is switched on, the operation starts. The LED emits red light, representing the receiving of mobile signal. The monitor shows the type of signal received and its signal strength at the same time. Also, the top right corner of the monitor shows the number of times the system of the Arduino analyzer has been running. Then the LED changes to emit blue light, representing the receiving of BLE signal. The monitor remains to show the information of mobile signal, rather than that of BLE signal, because the amount of BLE data is too much to be shown, and they are not significant at that moment (BLE data are used for mapping afterward). After a few seconds, the LED turns to green light and the monitor shows “move now” for 3 seconds, meaning the technician is allowed to move to the next spot to collect another set of data (the technician should remain in the position when the analyzer is receiving signals). After that, the monitor clears its display and the LED is turned off. If the analyzer is still switched on, the cycle of operation repeats. The analyzer can be switched off anytime during the operation, and it would finish the ongoing cycle of operation. Then “Waiting” is shown on the monitor again. The technician should repeat this process two times for evaluation of floor plan and measurement of mobile signal.
Fig. 5. Flow chart of operation flow on the Arduino software
3.4 Software for Signal Analysis and Optimization
Firstly, the program would ask for the required parameters, such as the height of the tested indoor area and calibration data of the beacons used. Then, calibration curves are established by the data inputs. The established curves are used in the RSS-distance conversion part. The establishment of calibration curve is discussed in the next session. In the next step, the user is asked if there is import of floor plan for the software. The floor plan is not essential for the program, but it is a better way to visualize the mobile signal strength map. If the user decided not to import the floor plan, the program goes to the beacon positioning part. After the positioning part of beacons, the user is asked to import the text file collected from the Arduino analyzer. The user shall select the BLE.txt and CSQ.txt and import them into the program. Hence, all necessary information is imported into the MATLAB program. The program will start the analyzing part, which are the RSS-distance conversion, trilateration and mapping. The Arduino analyzer generate the signal strength data and save it into a text file. To make it accessible in MATLAB, a data reading function is developed. The code is modularized as a function in MATLAB with a name of func_readtxt.m. The function is called at a time when the program needs the user to input either BLE.txt or CSQ.txt. The flow chart of MATLAB problem for signal analysis and optimization is as shown in Fig. 6.
Fig. 6. Software for Signal Analysis and Optimization
4. Experimental Results
The proposed system is divided into three parts conceptually as mentioned in Section 3. From the user’s point of view, the first two parts are all included in the Andriod analyzer while the third part is the analysis conducted in the backend office. However, before these three parts can be conducted in the experiment during protyping, one more step about calculation should be done. After the construction of Andriod analyzer, the flowchart to obtain the experimental results is as shown in Fig. 7.
Fig. 7. The flowchart to obtain the experimental results
4.1 Calibration for Beacons
In order to increase the accuracy of BLE beacons used, two tests are performed for calibration. One of the tests is to calibrate the beacons in a noiseless area, which is to determine that how the ambient noise would affect the beacons. The other test is to continuously collect data from a beacon fixed at a position, which is to estimate the error range of the beacons. For the calibration in a noiseless area, it is performed in the Fully Anechoic Chamber (FAR) as shown in Fig. 8. An operating beacon is placed at one side of the chamber, and the Arduino analyzer is placed at another side with a distance from one meter to four meters.
Fig. 8. The Fully Anechoic Chamber (FAR) used for calibration of beacons
From Table 2, the result shows the relationship between the distance and the RSSI. It is regarded as an acceptable result for establishing the calibration curve. For a good calibration curve, it should have a relative high coefficient of determination (r2) to the calibration data in order to show the good representativeness. There are two possible regression functions that may be fitted into the calibration data. They are the power regression function and logarithmic regression function [23,24]. For the power regression function:
\(r=\frac{S_{x y}}{\sqrt{S_{x x}} \cdot \sqrt{S_{y y}}}\) (1)
\(S_{x x}=\frac{\sum_{i=1}^{n} \ln x_{i}^{2}}{n}-(\overline{\ln x})^{2}\) (2)
\(S_{y y}=\frac{\sum_{i=1}^{n} \ln y_{i}^{2}}{n}-(\overline{\ln y})^{2}\) (3)
\(S_{x y}=\frac{\sum_{i=1}^{n} \ln x_{i} \cdot \ln y_{i}}{n}-\overline{\ln x} \cdot \overline{\ln y}\) (4)
Table 2. The RSSI of beacons measured in various distance using the FAR in the Laboratory
where x is the ratio of RSSI at ith position and RSSI at 1st position, y is the distance at ith position. For logarithmic regression function, (3) and (4) are replaced by (5) and (6) respectively:
\(S_{y y}=\frac{\sum_{i=1}^{n} y_{i}^{2}}{n}-\bar{y}^{2}\) (5)
\(S_{x y}=\frac{\sum_{i=1}^{n} \ln x_{i} \cdot y_{i}}{n}-(\overline{\ln x} \cdot \bar{y})\) (6)
The calibration curves of Beacon 1 to Beacon 4 in power regression function and logarithmic regression function are as shown in Fig. 9 and Fig. 10 respectively. The power regression lines showed the calibration is valid and reliable between 1 m and 8 m. On the other hand, the logarithmic regression line shows the characteristic of value decay. It was demonstrated that the beacons with calibrated curves are feasible in this application.
Fig. 9. The calibration curves of beacons in power regression function: (a) Beacon 1, (b) Beacon 2, (c) Beacon 3, (d) Beacon 4
Fig. 10. The calibration curves of beacons in logarithmic regression function: (a) Beacon 1, (b) Beacon 2, (c) Beacon 3, (d) Beacon 4
4.2 Trilateration and Matching System
The trilateration is an estimation of a position by three known points nearby and the known distances between them. It is a measurement using geometry of circles, spheres and triangles. In the project, the positions are estimated by the beacons placed around the testing indoor area. When the technician is walking around the testing site, each data collected can be converted as one position.
With three known points in Cartesian coordinates of (x1, y1, z1), (x2, y2, z2) and (x3, y3, z3) and the corresponding distances d1, d2 and d3 from the known points, the coordinate of an unknown point (x, y, z) can be determined by solving an augmented matrix as follows.
\(\left(\begin{array}{lll} 2\left(x_{2}-x_{1}\right) & 2\left(y_{2}-y_{1}\right) & 2\left(z_{2}-z_{1}\right) \\ 2\left(x_{3}-x_{1}\right) & 2\left(y_{3}-y_{1}\right) & 2\left(z_{3}-z_{1}\right) \\ 2\left(x_{3}-x_{2}\right) & 2\left(y_{3}-y_{2}\right) & 2\left(z_{3}-z_{2}\right) \end{array} \mid \begin{array}{l} d_{1}^{2}-d_{2}^{2}-x_{1}^{2}-y_{1}^{2}-z_{1}^{2}+x_{2}^{2}+y_{2}^{2}+z_{2}{ }^{2} \\ d_{1}{ }^{2}-d_{3}{ }^{2}-x_{1}{ }^{2}-y_{1}{ }^{2}-z_{1}{ }^{2}+x_{3}{ }^{2}+y_{3}{ }^{2}+z_{3}{ }^{2} \\ { }^{2}{ }^{2}-x_{2}{ }^{2}-y_{2}{ }^{2}-z_{2}{ }^{2}+x_{3}{ }^{2}+y_{3}{ }^{2}+z_{3}{ }^{2} \end{array}\right)\) (7)
In MATLAB, the trilateration is modularized as a function called func_trilateration.m. For the answer of the matrix, it may have more than one solution. For the issue, the value of the z should be considered. The value of z represents the height of the position. In most of the situations, the Arduino analyzer is not placed at a position higher than the beacons. Hence, it is assumed that the Arduino analyzer is always put at a position lower than the beacons and a lower value of z is used. For an indoor area, it is recommended that more beacons to be placed around the testing site to ensure the accuracy. Therefore, the Arduino analyzer may collect more than three beacons at a point. To make sure that the BLE signal is reliable and accurate enough, the closest three beacons will be selected, which are the beacons having greatest RSSI at that point. In MATLAB, sorting is used for finding the shortest distance of beacons, and trilateration is taken based on the selected three points.
4.3 Signal Analysis and Optimization
After performing the trilateration, the coordinates was saved into an array called ble_coord. There may be a problem that the coordinate can be appeared as a complex number which includes imaginary part. It is because the distances converted from RSSI are too short to meet at a point. In order to ensure that the map is constructed without error, the coordinates with complex number were removed. A command of isreal() and isnan() is used to check whether a variable is a real number. The checked coordinate was then stored in a new array of ble_vcoord which represents the verified coordinates.
To show the points collected and analyzed, scatter points are used. Because the coordinates are stored in an array, a single command of scatter(x, y) can show a list of coordinates. The scatter map is configured, such as the marker color and marker size. For the marker color, to indicate the mobile signal strength, the color changes depend on whether the mobile signal is strong or weak. A color map of jet is used, red color is selected to indicate weak signal and blue color is selected for strong signal as shown in Fig. 11.
Fig. 11. A colour map of jet is used, red colour is used to indicate the signal strength on the location
Therefore, the MATLAB can output a colored signal map automatically as shown in Fig. 12. In this sample, ten beacons were placed in a small room with a size of less than 49 m2. It should be noted that there is a pillar at the right bottom corner and a window at the right top corner. The black dots are the positions indicated by the software as the beacons. They are shown with their name. The colored dots are the positions of collected data. It is shown that over 96 % of collected date can be correctly calculated by the software. Only two colored dots showed the wrong positions.
Fig. 12. A floor plan generated automatically with the data measured
Furthermore, in the other sample, a figure of weak signal region is generated as shown in Fig. 13. It covered the weak signal points with a directivity of placing a new base station for improvement. For the signal analysis, the points with a range of received power, for instance, –125 to –110 dBm, were firstly grouped as the Set S as follows. This Set S is regarded as the "blind spot" in this indoor area.
𝑆={(𝑥1, 𝑦1), (𝑥2, 𝑦2), …, (𝑥𝑛, 𝑦𝑛)} (8)
Fig. 13. A visualization of weak signal region with directivity
The gift wrapping algorithm [25] is then used to find out the convex hull of this Set S as follows. It starts from the leftmost point, or the point with minimum x coordinate value, and then keeps wrapping points in counterclockwise direction. The convex hull are then obtained as the Set Q. Depending on the indoor antenna's specification provided by the mobile services providers, for instance, the power, gain and direction of the antenna, various algorithm should be used to define the position of indoor base station for this Set S. For the simplest case, the optimized position should be the centroid of Set Q which is given by:
\((\bar{x}, \bar{y})=\left(\frac{1}{n} \sum_{i=0}^{n} x_{i}, \frac{1}{n} \sum_{i=0}^{n} y_{i}\right)\) (9)
In this example, a new base station can be placed near a position with a coordinate of (4, 5).
5. Conclusion
In this paper, a low-cost automatic system of locating the indoor area with weak mobile signal strength was proposed and demonstrated experimentally. The BLE beacons and the proposed Arduino analyzer were used to tackle the indoor mapping and positioning. After a proper placement of BLE in the testing site, the data can be obtained accordingly by the analyzer for further analysis in the proposed system which includes the construction of floor plan, detection of mobile signal strength and suggestion of indoor base stations. The experimental results showed that the proposed system successfully demonstrated the indoor mapping, positioning of weak mobile signal area and suggestion of indoor base stations. The work is now applicable for the normal rectangular rooms with an area of 100 m2 on single floor and can be further enhanced to multi-level building. The cost of the proposed system is less than 300 HKD.
References
- J. Goyal, K. Singla, Akashdeep, and S. Singh, "A Survey of Wireless Communication Technologies from 1G to 5G," in Proc. of the 2nd International Conference on Computer Networks and Communication, pp. 613-624, 2020.
- Y. Zhong, P. Qiao, W. Zhang, and F. Zheng, "No blind spot: network coverage enhancement through joint cooperation and frequency reuse," Journal of Communications and Networks, vol. 18, no. 5, pp. 773-783, Oct. 2016. https://doi.org/10.1109/JCN.2016.000106
- D. Basu, X. Gui, Y. Zhang, and A. Nag, "Non-Centralised and Non-GPS Navigation Mechanism using IoT sensors: challenges and trade-offs," in Proc. of the 9 th International Telecommunication Networks and Applications Conference (ITNAC), pp. 1-6, 2019.
- L. Chen, Z. Huang, Z. Liu, D. Liu, and X. Huang, "4G Network for Air-Ground Data Transmission: A Drone Based Experiment," in Proc. of 2018 IEEE International Conference on Industrial Internet (ICII), pp. 167-168, 2018.
- S. Salous, "High bandwidth indoor measurements," in Proc. of 2010 Loughborough Antennas & Propagation Conference, pp. 79-83, 2010.
- S. Hamzah, S. Ibrahim, M. Zainal, and M. Ismail, "Analysis and Receiving of Downlink GSM Signal Using Spectrum Analyzer," in Proc. of 2005 Asia-Pacific Conference on Applied Electromagnetics, 2005.
- N. N. N. B. Jefri, K. Anuar, and S. Arjunan, "Real time indoor measurement of 2G, 3G and LTE mobile networks in Malaysia," in Proc. of 2016 IEEE 3rd International Symposium on Telecommunication Technologies (ISTT), pp. 19-24, 2016.
- F. Qamar, M. N. Hindia, K. Dimyati, K. A. Noordin, M. B. Majed, T. A. Rahman, and I. S. Amiri, "Investigation of Future 5G-IoT Millimeter-Wave Network Performance at 38 GHz for Urban Microcell Outdoor Environment," Electronics, vol. 8, no. 5, p. 495, 2019. https://doi.org/10.3390/electronics8050495
- F. Hossain, T. Geok, T. Rahman, M. Hindia, K. Dimyati, S. Ahmed, C. Tso, and N. A. Rahman, "An Efficient 3-D Ray Tracing Method: Prediction of Indoor Radio Propagation at 28 GHz in 5G Network," Electronics, vol. 8, no. 3, p. 286, 2019. https://doi.org/10.3390/electronics8030286
- GPS Accuracy, GPS.gov: GPS Accuracy.
- An introduction to inertial navigation, 2007.
- Infsoft blog: Technologies for Server-Based Indoor Positioning Compared: Wi-Fi vs. BLE vs. UWB vs. RFID, infsoft, 1970.
- Indoor Positioning Systems based on BLE Beacons - Basics, Locatify.
- Infsoft blog: Indoor Navigation & Indoor Positioning Using Bluetooth, Infsoft.
- Technology, infsoft.
- Z. Lv and W. Xiu, "Interaction of Edge-Cloud Computing Based on SDN and NFV for Next Generation IoT," IEEE Internet of Things Journal, vol. 7, no. 7, pp. 5706-5712, July 2020. https://doi.org/10.1109/jiot.2019.2942719
- K. E. Jeon, J. She, P. Soonsawad, and P. C. Ng, "BLE beacons for Internet of Things applications: Survey, challenges, and opportunities," IEEE Internet Things Journal, vol. 5, no. 2, pp. 811-828, Apr. 2018. https://doi.org/10.1109/jiot.2017.2788449
- Z. Lv and H. Song, "Mobile Internet of Things Under Data Physical Fusion Technology," IEEE Internet of Things Journal, vol. 7, no. 5, pp. 4616-4624, May 2020. https://doi.org/10.1109/jiot.2019.2954588
- Z. Lv, X. Li, H. Lv, and W. Xiu, "BIM Big Data Storage in WebVRGIS," IEEE Transactions on Industrial Informatics, vol. 16, no. 4, pp. 2566-2573, Apr. 2020. https://doi.org/10.1109/tii.2019.2916689
- V. Sohotoo, "A Guide to BLE Beacons FINAL 18 Sept 14," Scribd, 2014.
- JN Huamao Technology Co., Ltd., Bluetooth 4.0 BLE module, 2018.
- BLE - BLECentral.
- A. A. Omorinoye and Q. Vien "On the Optimisation of Practical Wireless Indoor and Outdoor Microcells Subject to QoS Constraints," Applied Sciences, vol. 7, no. 9, p. 948, 2017. https://doi.org/10.3390/app7090948
- W. Liu, M. Kulin, T. Kazaz, A. Shahid, I. Moerman, and E. De Poorter, "Wireless Technology Recognition Based on RSSI Distribution at Sub-Nyquist Sampling Rate for Constrained Devices," Sensors, vol. 17, no. 9, p. 2081, 2017. https://doi.org/10.3390/s17092081
- R. A. Jarvis, "On the identification of the convex hull of a finite set of points in the plane," Information Processing Letters, vol. 2, no. 1, pp. 18-21, 1973. https://doi.org/10.1016/0020-0190(73)90020-3