Optimal Receivers Location for Passive Indoor Positioning based on BLE Roald de Brouwer1,2 , Joaquín Torres-Sospedra3 , Sergio Trilles Oliver2 and Rafael Berkvens1 1 University of Antwerp - imec, IDLab - Faculty of Applied Engineering, Antwerp, Belgium 2 Institute of New Imaging Technologies, Universitat Jaume I, Castellón, Spain 3 UBIK Geospatial Solutions S.L., Castellón, Spain Abstract Indoor Positioning Systems are attracting many researchers, being Bluetooth Low Energy gaining some attention recently. The recent need to track people, ensuring low density of people in some areas, made the research community to provide unintrusive tracking. In contrast to traditional direct �ngerprinting, where the user utilizes their mobile to estimate its location based on the BLE infrastructure, we propose the other way around. The users wear a beacon which is sensed by the monitors deployed and inverse �ngerprints are generated for a particular object of interest. We propose in this paper a simulation-based approach to retrieve the most interesting monitor distribution, providing a real-world validation. The results show “passive” positioning errors of 3 meters in an o�ce sensed with 5 monitors. Keywords BLE, Tracking, Passive �ngerprinting 1. Introduction The proliferation of smartphones and other wireless devices increases every year. This growth process is expected to have 4.3 billion smartphone users by 2023 [1]. This results in a wide range of services including indoor localization which is a process of obtaining a device or user location indoors. In the last decades, indoor localization has mainly been investigated in industrial sectors, wireless sensor networks, and robotics. The increasing communication capabilities on the smartphones and wearables results in localization possibilities. Hence, the user can also be localized and many di�erent services and applications can be developed. These services apply in the health sector [2], disaster management [3], surveillance [4], and many other sectors. The Internet of Things (IoT) could also bene�t from indoor localization services such as smart buildings [5], and Machine Type Communication (MTC) [6]. IPIN 2021 WiP Proceedings, November 29 – December 2, 2021, Lloret de Mar, Spain � Roald.deBrouwer@student.uantwerpen.be (R. de Brouwer); info@jtorr.es (J. Torres-Sospedra); strilles@uji.es (S. Trilles Oliver); rafael.berkvens@uantwerpen.be (R. Berkvens) � http://jtorr.es (J. Torres-Sospedra); http://www3.uji.es/~strilles/ (S. Trilles Oliver) � 0000-0003-4338-4334 (J. Torres-Sospedra); 0000-0002-9304-0719 (S. Trilles Oliver); 0000-0003-0064-5020 (R. Berkvens) © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings http://ceur-ws.org ISSN 1613-0073 CEUR Workshop Proceedings (CEUR-WS.org) The focus in this paper will be on a monitor based localization system. The process in which a set of anchor nodes or reference nodes passively obtains the position of the user or entity connected to the reference node. Monitor based localization is primarily used for tracking the user and then accordingly providing di�erent services [7]. The monitors in the environment will sense the Bluetooth Low Energy (BLE) signals in order to estimate their source location. In contrast to active localization performed on smartphones, the users will carry a BLE beacon whose battery may last months or even years. In this way, sensing relies on the infrastructure deployed and the calculations to estimate the position can be shifted to an external server which does not depend on a battery. Whereas traditional device-based active localization systems collect BLE signals from the reference nodes and perform the location calculation (either on the device or using wireless communications to send to an external server). These additional workload (extra calculations for computing the position estimate or communications to an external server) will consume more battery and lead to a negative user experience, when using a smartphone as the positioning device [8]. For BLE-based active localization, several beacons can be deployed in the environment to support, for instance, a smartphone to get its location. As the cost of a beacon is low compared to other positioning technologies, a dense deployment is feasible to ensure good positioning accuracy. In addition, beacons are usually battery-powered, that may last several months, thus requiring low maintenance. In contrast, a monitor-based approach is more complex as the monitors deployed are more expensive and require a wired power supply and internet connectivity (Ethernet is more robust than wireless communications). Installing a monitor is not as easy as just sticking a BLE beacon in the ceiling and, therefore, a good analysis to locate the monitors is needed to maximize the performance of the Indoor Positioning System (IPS). Choosing the best possible reference node setup in a room is essential for a good monitor- based positioning system. Therefore, in this paper, a simulator is built to mimic the radio propagation in an indoor o�ce. The simulator is con�gured to evaluate one hundred random reference node setups and 8-12 self-chosen logical setups for the indoor o�ce. Furthermore, the simulation is also con�gured to evaluate scenarios where the number of BLE monitors goes from one to ten. The results of the simulation are evaluated to choose the best con�gurations for each scenario (from 1 to 10 monitors). In a next step, the best setups for 3 to 5 monitors (reference nodes) are unrolled in the o�ce to assess their real-world performance. Thereafter, the results of both the simulation and the real-world setups are compared. With this comparison, we want to demonstrate if a simulation can be a good �rst approach to determine what a good reference node setup is. The paper is presented as follows. Section 2 gives an outline of the existing systems. In Section 3 there is a more in-dept explanation about the used materials and methods, followed by section Section 4 in which the results of the simulator and the physical setups is shown. Section 5 consists of a discussion of these results, after which a general conclusion about the performed work is presented in section Section 6. 2. Related work Techniques such as Received Signal Strength (RSS), time of arrival, angle of arrival, or combi- nations of these techniques are commonly used in wireless indoor localization systems. The consolidation of these techniques with technologies (i.e., infrared, ultrasound, Radio Frequency (RF) waves, vision, etc.) are used to obtain a position. These techniques and technologies are described by Zafari et al. [7] together with their advantages and weaknesses. Indoor localization systems entirely based on RF waves are commonly used for the reason that the accuracy can be relatively high depending on the available resources and used technique. RF chips have an on-board RSS block that can determine the received power of the incoming signal. These RSS values can be transformed to an estimated distance between two communicating devices causing these positioning systems to be relatively cheap in comparison with other systems which use a di�erent technology. Di�erent conversions from signal strength to distance can be used but all these conversion algorithms are in�uenced by propagation e�ects (fading, scattering, absorption, re�ection, etc.), resulting in an unreliable conversion from signal strength to distance. Additionally, the battery restrictions imposed by some autonomous devices (as smartphones) make them a perfect match for integration in, for instance, smartphone-based applications. By using the �ngerprinting technique and generating radio maps the propagation e�ects can be partly circumvented. That approach was introduced in 2000 [9] and is still widely adopted by the indoor research community. In fast changing environments �ngerprinting may become more complicated because the generated radio maps would need to be updated for the unstable environment. However, the other way around, where the sensors deployed in the environment collect the RSS values emitted by the mobile devices is less frequent. Lee et al. [10] proposed an indoor location tracking service, which was based on BLE and Raspberry Pi Scanners. The authors introduced a nursing hospital for patient monitoring as the main evaluation area with several BLE scanners, one per room and four in a main large common area. However, they did not clarify the procedure to obtain its optimal placement for that use-case environment. Schneider et al. [11] proposed a low-cost indoor tracking system able to detect, collect, process, and store user movement and presence data in indoor environments. For that purpose, it was supposed that the users were carrying a beacon/tag or a smartphone acting as a “smart beacon” and several low-cost o�-the-shelf ESP32 units were deployed at speci�c points of interest to infer the user’s location by proximity. However, that approach was prone to error because of the RSSI �uctuation. The authors proposed additional processing layers and simpli�ed the procedure to estimate the position, they registered delimited places (e.g., o�ces) avoiding halls and corridors and other transitory locations and they applied a time-window of 30 s to smooth the RSSI values. Again, no indications about where to deploy the scanners were provided. Kolakowski et al. [12] proposed a tracking system based on sensing nodes equipped with an ARM Cortex M4F microcontroller, barometer, Ultra-wideband (UWB), Wi-Fi, and two BLE modules. The Tags were able to send UWB and BLE messages to allow their tracking. The system accuracy and precision were evaluated in a furnished apartment for static object localization and moving person (dynamic) localization. Authors provide a map with the location of the anchor nodes, without justifying their location. Rajkumar and Deshpande [13] rbased their tracking system on PSoC BLE nodes, which allowed two arrangements. Despite these nodes being able to receive the signals from the mobile target, they were used as mere transmitters (BLE Beacons), using the smartphones as a mobile receiver. Belka et al. [14] proposed a tracking system based on BLE to acquire relevant information about the behavior of visitors in touristic locations. For such kind of applications, the positioning accuracy has low relevance as the spatial size of the point of interest is a few or tens of meters. The authors proposed beacons with either the CSR101x or CSR102x series chipset depending on the BLE version. Several analyses were shown, showing the problem of overlapping RSSI values in proximity with close points of interest. Again, the location of the sensory network based on Raspberry Pi was not considered. Most of the works that we have analyzed on monitor-based passive localization are either based on proximity to the anchors or in reducing the variability of the RSSI values, being �ngerprint-based solutions usually not considered. Given the success of �ngerprint-based solutions in “active” localization using BLE beacons as anchors and smartphones as monitors, we will study in this paper the other way around. In contrast to active localization where one may deploy a denser set of anchors (BLE beacons), in a monitor-based solution the density of anchors is expected to be lower as the monitor infrastructure is expected to be more expensive. However, most of the reviewed works do not present a study on where to place those anchors to maximize accuracy. There are several techniques for determining the optimal receiver locations in RF position- ing. Cramér-Rao Lower Bound (CRLB) calculates the lowest possible variance of an unbiased estimator. It has been adopted numerous times for location estimation, and then optimized with changing node locations, e.g., [15, 16]. The Dilution Of Precision (DOP), also referred to as Horizontal DOP (HDOP) or Geometric DOP (GDOP) in terrestrial localization, is a metric from satellite navigation systems that relates the satellite constellation to the expected precision of the location estimate. The satellite constellation can be regarded as the anchor or receiver locations. In ultrasound networks, [17] used the estimated DOP to optimize the receiver locations. Finally, [18] used the mutual information in a UWB localization setup to improve receiver locations. These works di�er from our approach in the sense that they compute an additional metric (CRLB, DOP, or mutual information) to estimate the quality of the IPS system, while our approach directly simulates the expected localization error in an environment to determine the optimal receiver locations. 3. Material and Methods This section is devoted to introducing the materials and methods used to carry out the ex- perimental work reported in this paper. We �rst propose the positioning engine for “inverse” �ngerprinting, then we describe the developed simulator to retrieve the best distribution of monitors, and �nally, we show the hardware used in the experiments. 3.1. Inverse fingerprinting model The traditional �ngerprint approach work as follows. A user with a collection device gathers �ngerprints at well known locations (also known as reference points). At every reference point, 1 or more �ngerprint vectors are collected and stored with information about its location. Each �ngerprint vector is composed of the RSS values from the detected Access Points (in Wi-Fi) or BLE Beacons. The set of �ngerprints collected forms the radio map. For positioning, a new operational �ngerprint is collected and then is compared to all the �ngerprints in the radio map, the location information of the most similar ones is used to estimate the position of the operational �ngerprint. The concept of �ngerprint and radio map vary with the proposed tracking solution. Now, the �ngerprint does not characterize the RSS values collected by a device to obtain its position, but the RSS values collected by multiple monitors for a particular beacon for a short period of time. For calibration, a known beacon will be placed in well known locations and at well-known periods of time. i.e., if the calibration beacon was placed in x,y from 10:00 to 10:05, we can generate multiple reference �ngerprints for that calibration beacon using the RSS registered by the monitors. This approach requires a central element (server) to join the information from all the monitors and generate the resulting �ngerprints, which will have as many elements as monitors are deployed in the environment. If the monitor does not detect a particular beacon, a default low value is used in the �ngerprint vector. For the operational stage, the monitors are tracking all the BLE advertisements which are sent to the central element to generate the operational �ngerprint. As the monitors are not providing synchronized RSS readings, a short time window is needed to generate the latest operational �ngerprints, one per recently detected beacon. In both cases, active and inverse �ngerprinting, the k-NN algorithm is the approach providing the most direct implementation. The input for this algorithm consists of reference points with their RSSI value (i.e., the radio map) and the operational �ngerprints (the RSSI vectors). Based on a chosen amount of neighbors the algorithm is going to compare the RSSI values of the operational �ngerprints with those of the reference points, resulting in an estimated position. For evaluating indoor positioning systems based on �ngerprinting, the average positioning error (the Euclidean distance between the estimated position and the exact location they were taken) is used. Additionally, we also consider the standard deviation of the positioning error. Not only the error but also the variability are considered to compare the setups. 3.2. Simulator tool A synthetic data generator tool (simulator) was developed to model the signal propagation between any BLE beacon present in the environment and all the monitors deployed for mon- itoring purposes. The tool allows users to introduce the location of a prede�ned number of monitors in the environment using a map and, later, generate the training “inverse” �ngerprints in a regular grid distribution. For the simulator, we have followed the same approach as for regular �ngerprinting, but the anchors correspond now to the monitors and the moving devices to the BLE beacons (emitters). For simplicity, we can assume a perfect synchronization among all the monitors. In particular, we have simulated the main o�ce of the Geospatial Technologies Research Group at Universitat Jaume I, which is around 16 m by 12 m. A grid of 1 m was implemented, having a total of 183 reference points. For evaluation, we choose a random point falling within the limits of each of the 153 cells in the grid set-up. The simulator discretizes the o�ce as a matrix. Every cell in the matrix has a di�erent number that represents free space or objects such as a table, bookshelves, or pillars. i.e., the matrix can be considered as an indexed-based image. The simulator uses then all the reference and the testing points to generate the “inverse �ngerprints” as the distance between each monitor and each point is known. As commonly done in the literature, we have used the path loss model to calculate the RSSI values for all the �ngerprints: d rssi(d) = rssi(d0 ) 10 · n · log10 ( ) abs X (1) d0 Where rssi(d) is the RSSI value at a speci�c distance d and rssi(d0 ) the RSSI at a reference distance d0 = 1 m. In the simulator, the path loss exponent is n = 2 and X is the normal random variable which causes a log-normal distribution of the received power. In the simulator a X is used with a = 4. abs refers to the absorption and is accumulated over all the obstacles between emitter and receiver. The simulator calculates the line from the point to every receiver and checks through which type of points the direct signals travel (table, bookshelves or pillars). Based on this, the RSSI value is degraded. In contrast to other works where the attenuation is given by obstacle type, we also consider the thickness of the obstacle and the attenuation values are provided per meter. 120 Fig. 1 shows an example of generated propagation model. All Transmitters 100 80 Width (cm) 60 40 20 0 0 20 40 60 80 100 120 140 160 180 Length (cm) Figure 1: Signal propagation for monitor at [10m,0m] and grid distribution. In the selected environment, the bookshelves degradation is 25.82 dB/m, the pillar is 20.56 dB/m and the table has no degradation in the simulator. The values for the bookshelves and pillars are based on experiments executed in the o�ce. A Raspberry Pi and beacon are placed one meter from each other with the obstacle (bookshelf, pillar) in between. The average RSSI value collected during two minutes is compared with the same setup without the obstacle. Based on this comparison and the obstacle current thickness, the degradation is acquired. The table/desktop has no degradation because in this proof of concept most beacons are above the tables causing the in�uence of the tables negligible. The path loss model used in this simulator is a basic approach to estimate the RSSI value. In order to deal with all the other in�uences on the RSSI value, a random Gaussian noise component is considered. Random Gaussian noise with = 4 is added to the degraded RSSI values at the receivers of all 187 reference points. For every reference point, 10 RSSI values are saved with di�erent random Gaussian noise in order to deal with the propagation e�ects. The same principle is done for the test points regarding the noise but only one RSSI value for every test point is used. Next, the data described above is put in the k-NN algorithm with an increasing amount of neighbors (k) going from one to 1, 830. This is the maximum amount of neighbors that can be used in order to compare the RSSI values of the reference points with the test points. Once the training and testing data are generated, the accuracy of the simulated setup is assessed using the k-NN algorithm. For the environment analysis, a simulation was performed where the total number of receivers in the room increased from 1 to 10. For each number of receiver(s), a total of 100 random setups (i.e. with di�erent random distribution of monitors) are simulated. Moreover, for the 3, 4 and 5 receiver setups, we have added some manual monitor distributions. Those manual con�gurations were based on our past experience in signal propagation and the environment. In addition, for each setup, the training and testing �ngerprint were also generated multiple times with a di�erent random seeds in each run, 100 runs/trials in our case. As the path loss model and the testing samples location have random components, the 100 runs with di�erent random seeds provide a more general behavior of the simulated setup. The choice to emphasize on this, is because a trade-o� has to be made between the most accurate location possible on the one hand, but on the other hand, keeping the deployment cost of the used receivers low. Increasing the number of receivers in a room will bene�t the localization purposes, but also comes with a higher deployment price. In summary, the simulator tool could be seen as a basic 2-D ray-tracing simulation based on Additive white Gaussian noise (AWGN) without considering neither re�ection nor di�raction. Despite being a very simple approach, starting from simulated data can help in understanding some of the di�culties the system may have in the operational phase and which con�gurations may be considered irrelevant. 3.3. Empirical experiments Once the simulations are all over, and all con�gurations have been assessed, the best self-selected setup and the best random setup are deployed in a real-world environment. The Raspberry Pi’s are mounted to the ceiling of the o�ce, a particular beacon is placed in di�erent locations for calibration purposes, and a set of beacons are used for estimating their position using the reference data of the calibration beacon. First, the locations of the reference and test points must be determined. In the o�ce a 1 by 1 meter grid is measured and marked with laser precision, resulting in the identi�cation of 140 reference points. Several reference points are not considered because their location is inaccessible or are not relevant for the use of the system. A table located on top of a reference point is not interesting because a person is not going to be standing on top of a table. A total of 20 static beacons are randomly placed in the o�ce at di�erent heights and will not move during the experiment. These test points are also precisely measured. Second, in each reference point the RSSI is collected for 20 seconds in all the monitors. This 20-second window is split up into ten, two-second windows where the average RSSI is calculated. By doing this the same concept is created as with the simulation. Every reference point will have 10 RSSI values with which to compare. The RSSI collection for the test points is done di�erently. Over the entire time span of the experiment, a window of 2 s is taken 17 times and the RSSI values of the static beacons are saved. This is the test data for the k-NN algorithm that is compared to the reference points. When for some reason no data was present at a speci�c moment a value of 200 dBm is allocated for this point. This is done both for the reference and test points. The k-NN algorithm will recognize this value and not use it. Finally, all the beacons are con�gured with a transmission power of 4 dBm and a sample frequency of 450 ms. 4. Empirical results This section is split into simulation (for selecting the best setups) and real-world experiments to assess them. 4.1. Simulation results The simulation results are showed in Table 1. This table shows the top �ve setups of all the simulated setups going from one to ten Raspberry Pi’s. For every number of Raspberry Pi’s 100 random setups are simulated. Every setup is repeated 100 times in order to obtain the general results with di�erent noise vectors. Thereafter, the mean and standard deviation over these one hundred repetitions are calculated. These values are used in the following equation to compare the setups with each other: Score = M ean + ST D (2) Where Mean is the average of all the positioning errors calculated by the simulator for all the repetitions for a speci�c setup. The standard deviation corresponds to the ST D in the formula which is also calculated over all the positioning errors for a speci�c setup. Table 1 shows the mean and the standard deviation in brackets for the top �ve. The mean provides a general indication of the performance of the setups and by using the standard deviation a statistical element is added. The simulation shows that increasing the number of Raspberry Pi’s corresponds with better accuracy. The di�erence in accuracy is lower with more Raspberry Pi’s (6-10 RPi’s) which is one of the reasons why the focus of the experiments is on the 3-5 Raspberry Pi’s. We also focus on that number of RPi’s because of the deployment costs, which do not only in the price but also in providing powering and wired networking. For all simulations and experiments, a value for k = 11 has been used because around this point the best accuracy is obtained. Fig. 2 shows the positioning error when k increases. The bending point for the setups in the graph occurs between k = 10 and k = 20. When a lower value for k is used the estimated location appears in a completely wrong position because the comparison was made with too few reference points. When the value for k is to large, the expected location will usually be in the middle, causing a large di�erence between edge points and the expected location. Resulting in a larger overall positioning error. Increasing k for simulation results 3-5 Raspberry Pi’s 4 3Rx Rank #1 3.8 3Rx Rank #5 4Rx Rank #1 4Rx Rank #5 3.6 5Rx Rank #1 5Rx Rank #5 3.4 Error distance (m) 3.2 3 2.8 2.6 2.4 2.2 0 50 100 150 200 250 300 350 400 450 500 k Figure 2: Visualization of the increasing k in the six configurations evaluated with 3, 4, and 5 RPi. Table 1 Simulation results 1 RPI 2 RPI 3 RPI 4 RPI 5 RPI Rank #1 3.11 (1.53) 2.2 (1.32) 1.79 (1.09) 1.54 (0.95) 1.38 (0.85) Rank #2 3.14 (1.52) 2.21 (1.3) 1.82 (1.18) 1.54 (0.97) 1.4 (0.85) Rank #3 3.11 (1.59) 2.26 (1.39) 1.88 (1.11) 1.55 (0.97) 1.4 (0.92) Rank #4 3.14 (1.54) 2.29 (1.4) 1.85 (1.19) 1.52 (1.06) 1.41 (0.92) Rank #5 3.15 (1.58) 2.34 (1.33) 1.88 (1.15) 1.57 (0.98) 1.42 (0.91) 6 RPI 7 RPI 8 RPI 9 RPI 10 RPI Rank #1 1.26 (0.83) 1.13 (0.75) 1.09 (0.68) 0.97 (0.65) 0.96 (0.62) Rank #2 1.27 (0.82) 1.14 (0.73) 1.09 (0.73) 1.01 (0.65) 0.96 (0.62) Rank #3 1.29 (0.81) 1.14 (0.75) 1.09 (0.72) 1 (0.67) 0.95 (0.65) Rank #4 1.3 (0.81) 1.15 (0.74) 1.09 (0.73) 1 (0.67) 0.95 (0.65) Rank #5 1.28 (0.85) 1.15 (0.74) 1.09 (0.72) 1.02 (0.69) 0.97 (0.62) Fig. 3 shows the results of the experiments. The left column shows the best setup for RPi’s 3-5 and the right column shows the worst setup for the same number of RPi’s. On all the subgraphs the o�ce is visualised with all the 140 reference points as red circles. The black asterisks correspond to the deployed Raspberry Pi’s on the ceiling. The black plus signs indicate the exact spot of the static beacons. These static beacons are located on di�erent heights and sometimes in bookshelves. Random Gaussian noise is added to the estimated position for better visualization purposes. The color of these points indicates the error of that measurement going from 0-15 meters. Fig. 3a is the best setup for three Raspberry Pi’s. The left border of the o�ce shows the biggest positioning error on the measurements. The bounding box for the three Raspberry Pi’s covers half of the o�ce resulting in accurate center points. Fig. 3b is the worst setup for three Raspberry Pi’s. The bounding box of the Raspberry Pi’s in this setup is smaller resulting in a bigger error on the border case. Best performing setup in simulation Worse performing setup in simulation Meter Meter 15 15 10 10 8 8 10 10 Width (m) Width (m) 6 6 4 4 5 5 2 2 0 0 0 0 0 2 4 6 8 10 12 14 16 0 2 4 6 8 10 12 14 16 Length (m) Length (m) (a) (b) Meter Meter 15 15 10 10 8 8 10 10 Width (m) Width (m) 6 6 4 4 5 5 2 2 0 0 0 0 0 2 4 6 8 10 12 14 16 0 2 4 6 8 10 12 14 16 Length (m) Length (m) (c) (d) Meter Meter 15 15 10 10 8 8 10 10 Width (m) Width (m) 6 6 4 4 5 5 2 2 0 0 0 0 0 2 4 6 8 10 12 14 16 0 2 4 6 8 10 12 14 16 Length (m) Length (m) (e) (f) Figure 3: Visualization of the positioning errors in the six configurations evaluated with 3 RPi (a,b), 4 RPi (c,d) and 5 RPi (e,f). On the le�, the best performing setup and on the right the worst performing setup, according to the simulation. Fig. 3c has a diamond shaped Raspberry Pi setup. The bounding box of this setup is smaller than these of the three Raspberry Pi’s setups. The center points are showing the lowest positioning error but on the left and right side, the border points are performing worse than for the setups with three Raspberry Pi’s. In Fig. 3d the bounding box of the Raspberry Pi’s is larger but also more randomly distributed. Based on the experiment, the setup in Fig. 3d performs better than the setup in Fig. 3c. This is against the expectations of the simulation. The main cause is that the bounding box of the Raspberry pi’s in Fig. 3c is smaller than in Fig. 3d. The simulation only takes into account the largest obstacles and not the area surrounded by three or more Raspberry Pi’s. The Raspberry Pi setup in Fig. 3e is the best based on the simulation. A Raspberry Pi is placed in every corner of the o�ce which creates the largest bounding box. Overall, the center points have the lowest positioning error but the border points show bigger positioning errors. The setup in Fig. 3f has a more random placement of Raspberry Pi’s resulting in a slightly worse performing setup. In general, all the plots shows that some of the testing locations are challenging as they fall out of the convex hull formed by the reference points. The median and standard deviation for the experiments are shown in Table 2. For three and �ve Raspberry Pi’s the estimated best setups perform better than the estimated worst setup which is in line with the simulation results. The results for the experiments with four Raspberry Pi’s are not in line with the simulation results because the estimated best setup performs worse than the expected worse setup. This is due to the small bounding box of the diamond shaped setup. In order to have a consistent relative good accuracy a point has to be surrounded by three or more Raspberry Pi’s. Table 2 Experiments results Best Worst 3 RPI 3.36 (2.03) 3.52 (1.77) 4 RPI 3.59 (2.33) 3.37 (2.43) 5 RPI 3.11 (1.75) 3.15 (1.96) Based on the experiments in Fig. 3, an extra setup has been tested which should give better results. Fig. 4a shows this setup with a Raspberry Pi in every corner of the o�ce and one in the middle. Generally, the overall positioning is better than all the previous setups. The largest positioning errors occurred in the left border points. In this part of the o�ce, there are many other obstacles such as large plants, banners and boxes. To check the impact of these obstacles on the positioning error, two batches of data were collected. The �rst batch of data was collected for 20 minutes with the obstacles in the o�ce. The second batch of data was collected for 20 minutes without these obstacles in the o�ce. The measurement with the obstacles is showed in Fig. 4b and the one without obstacles is showed in Fig. 4c. The results of the extra setup are shown in Table 3. Where the “Normal” column shows the mean and standard deviation of this setup calculated over the 80 minutes of the experiment. In order to see if the bigger obstacles on the left of the o�ce tend to in�uence the positioning error. The two other columns show the mean and standard deviation of the same setup but with and without the obstacles such as plants, banners and boxes. During a period of 20 minutes the RSSI value is captured and the estimated position is calculated with the same radio map. Whereby, one can only compare the results of columns two and three in Table 3. Removing the bigger objects from the o�ce provides a small improvement on the general positioning errors. Extra setup Meter 15 10 8 10 Width (m) 6 4 5 2 0 0 0 2 4 6 8 10 12 14 16 Length (m) (a) Extra setup with obstacles Extra setup without obstacles Meter Meter 15 15 10 10 8 8 10 10 Width (m) Width (m) 6 6 4 4 5 5 2 2 0 0 0 0 0 2 4 6 8 10 12 14 16 0 2 4 6 8 10 12 14 16 Length (m) Length (m) (b) (c) Figure 4: Visualization of the positioning errors in the extra setup evaluated with 5 RPi with mesaru- ments during whole experiment (a), with obstacles (b) and without obstacles (c) in the o�ice. Table 3 Experiments results with the additional setup results Normal With obstacles Without obstacles 5 RPI 2.77(1.64) 2.90(1.72) 2.92(1.60) 5. Discussion What can be deduced from Table 1 is that using more Raspberry Pi’s ensures better accuracy. In addition, a low average does not mean that one setup is better than another. By taking the standard deviation into account, this ensures that a more normally distributed setup will be better. The setups with Raspberry Pi’s going from 6–10 show little di�erence between each other. The error (and variability) for one or two Raspberry Pi’s is to high for desired localization purposes. Table 2 shows the mean and standard deviation for the experiments. In the case of 3 and 5 Raspberry Pi’s the best setup performs better than the worst setup. Only, for the 4 Raspberry Pi’s the expected worst setup has a better result than the expected best setup. Generally, increasing the amount of Raspberry Pi’s is bene�cial for localization accuracy. The setup in Fig. 3c does not follow this statement, but the area covering three or more Raspberry Pi’s is smaller than in Fig. 3d. Hereby, the corner points are showing greater deviations, increasing positioning error. The corner points are causing the most problems for all setups. Especially, the corner points on the left side. These corner points are not surrounded by multiple Raspberry Pi’s and only one side has recorded reference points in the radio map. The left side of the o�ce consists of di�erent objects such as plants, banners and boxes which absorb the RF signals. The beacons are located on compressed wood which also absorbs part of the RF signals. The extra setup shows the overall best results. The four Raspberry Pi’s are placed in every corner resulting in the largest possible coverage. The �fth Raspberry Pi is placed in the middle of the o�ce in order to surround most of the points by three or more Raspberry Pi’s. Comparing the results in columns two and three in Table 3 indicates that removing the major objects in the left corner of the o�ce improves the positioning error slightly. Overall, we hypothesise that the being within the bounding box of the Raspberry Pi’s may be a relevant factor to obtain low positioning error. However, this may not be possible in all locations. Adding Raspberry Pi’s helps to reduce the positioning error, but this is accompanied by a higher deployment cost. 6. Conclusions In this paper, we designed a basic simulator which determines the best possible location for 1-10 BLE receivers in an indoor environment. This is done by the inverse �ngerprinting model and path loss equation. The simulator takes into account the major obstacles in the room such as pillars, bookshelves and tables. Based on the path loss model the RSSI value of the beacon is calculated at the receivers. Using a k-NN algorithm and the radio map of the environment the mean positioning positioning error is determined for 153 testing points and more than 100 monitor distributions. The �nal evaluation metric considers the average and standard deviation over 100 independent runs with di�erent initialization, which is used to compare di�erent BLE receiver setups. In a next phase, two setups for 3–5 BLE receivers are deployed in an indoor environment. The results of these real-world setups are compared with the results of the simulator in order to check if the simulator is a good �rst approach. The results of the real-world setups indicate that more factors in�uence the RSSI value other than the major obstacles. Only the use of the path loss model in the simulator is a basic approximation of reality. In order to simulate the real things such as propagation e�ects, smaller obstacles, speci�c materials, occupancy, humidity etc. needs to be taken into account. Eventually, the goal of the simulator is to give a good �rst approach. Comparing the results of the simulation and the experiment of the same setups show that the expected best setup performs better than the expected worse setup. The bounding box of the BLE receivers turns out to be important and needs to be taken into account in the simulator. The simulator needs room for improvement but already gives a �rst idea of which setup is better than one another. The results of all the experiments show an average positioning error of around 3.15 m. The biggest error is in the corner points so that the average error in the middle is lower. Which makes it usable for our monitor application where we want to see what part of the o�ce is overcrowded. The o�ce consists of three compartments and with the measured average positioning error you are able to determine in most cases in which compartment someone is. Having a good simulator allows assessing a BLE receiver setup before deploying. It shows which setup may perform the best. As future work, we plan to add the bounding box of the receivers in the simulation calculation will improve the overall decision making as this turned out to be a determining factor in the results of the experiments. Also additional concepts, such as GDOP, will be included on top of the current version. Acknowledgments We would like to thank Erasmus+ program, which allowed R. de Brouwer to perform his Master Thesis at Universitat Jaume I. Authors acknowledge funding from Ministerio de Ciencia e Innovación through postdoctoral programmes “Torres Quevedo” (PTQ2018-009981) and “Juan de la Cierva” (IJC2018-035017-I). We also thank the reviewers for their comments to improve this contribution. References [1] S. O’Dea, Number of smartphone users worldwide from 2016 to 2023, https://www. statista.com/statistics/330695/number-of-smartphone-users-worldwide/, 2021. [Accessed May/2021]. [2] J. Wy�els, J. De Brabanter, P. Crombez, P. Verhoeve, B. Nauwelaers, L. De Strycker, Distributed, signal strength-based indoor localization algorithm for use in healthcare environments, IEEE Journal of Biomedical and Health Informatics 18 (2014) 1887–1893. doi:10.1109/JBHI.2014.2302840. [3] S. Winter, M. Tomko, M. Vasardani, K.-F. Richter, K. Khoshelham, M. Kalantari, Infrastructure-independent indoor localization and navigation, ACM Comput. Surv. 52 (2019). [4] P. Desai, K. S. Rattan, Indoor localization and surveillance usingwireless sensor network and pan/tilt camera, in: Proceedings of the IEEE 2009 National Aerospace Electronics Conference (NAECON), 2009. doi:10.1109/NAECON.2009.5426659. [5] F. Zafari, I. Papapanagiotou, K. Christidis, Microlocation for internet-of-things-equipped smart buildings, IEEE Internet of Things Journal 3 (2016) 96–112. doi:10.1109/JIOT. 2015.2442956. [6] T. Taleb, A. Kunz, Machine type communications in 3gpp networks: potential, challenges, and solutions, IEEE Communications Magazine 50 (2012) 178–184. doi:10.1109/MCOM. 2012.6163599. [7] F. Zafari, A. Gkelias, K. K. Leung, A survey of indoor localization systems and technologies, IEEE Communications Surveys Tutorials 21 (2019) 2568–2599. doi:10.1109/COMST.2019. 2911558. [8] M. Svalastog, Indoor positioning-technologies, services and architectures., 2007. Master’s Thesis, University of Oslo, Oslo, Norway. [9] P. Bahl, V. Padmanabhan, Radar: an in-building rf-based user location and tracking system, in: Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064), volume 2, 2000, pp. 775–784 vol.2. doi:10.1109/INFCOM.2000. 832252. [10] J. Lee, J. Kim, S.-W. Lee, Y. Ko, A location tracking system using ble beacon exploiting a double-gaussian �lter, KSII Transactions on Internet and Information Systems 11 (2017) 1162–1179. doi:10.3837/tiis.2017.02.031. [11] F. Schneider, A. Branco, A. M. B. Rodrigues, F. Carvalho, S. D. J. Barbosa, M. Endler, H. Lopes, Yet Another BLE Technology Based Tracking System, Association for Computing Machinery, New York, NY, USA, 2021, p. 771–774. URL: https://doi.org/10.1145/3412841. 3442095. [12] J. Kolakowski, V. Djaja-Josko, M. Kolakowski, K. Broczek, Uwb/ble tracking system for elderly people monitoring, Sensors 20 (2020). URL: https://www.mdpi.com/1424-8220/20/ 6/1574. doi:10.3390/s20061574. [13] S. R. Jondhale, R. S. Deshpande, Grnn and kf framework based real time target track- ing using psoc ble and smartphone, Ad Hoc Networks 84 (2019) 19–28. URL: https: //www.sciencedirect.com/science/article/pii/S1570870518305195. doi:https://doi.org/ 10.1016/j.adhoc.2018.09.017. [14] R. Belka, R. S. Deniziak, G. Łukawski, P. Pięta, Ble-based indoor tracking system with overlapping-resistant iot solution for tourism applications, Sensors 21 (2021). URL: https: //www.mdpi.com/1424-8220/21/2/329. doi:10.3390/s21020329. [15] J. Li, I.-T. Lu, J. Lu, Cramer-rao lower bound analysis of data fusion for �ngerprinting localization in non-line-of-sight environments, IEEE Access 9 (2021) 18607–18624. doi:10. 1109/ACCESS.2021.3053994. [16] S. Du, B. Huang, B. Jia, W. Li, Optimal anchor placement for localization in large-scale wire- less sensor networks, in: 2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS), 2019, pp. 2409–2415. doi:10.1109/HPCC/SmartCity/DSS.2019.00336. [17] A. Comuniello, A. Moschitta, A. De Angelis, Ultrasound tdoa positioning using the best linear unbiased estimator and e�cient anchor placement, IEEE Transactions on Instru- mentation and Measurement 69 (2020) 2477–2486. doi:10.1109/TIM.2019.2958011. [18] A. Schenck, E. Walsh, J. Reijniers, T. Ooijevaar, R. Yudanto, E. Hostens, W. Daems, J. Steckel, Information theoretic framework for the optimization of uwb localization systems, in: 2018 International Conference on Indoor Positioning and Indoor Navigation (IPIN), 2018, pp. 1–8. doi:10.1109/IPIN.2018.8533802.