You are currently viewing a new version of our website. To view the old version click .
ISPRS International Journal of Geo-Information
  • Article
  • Open Access

9 November 2018

Low-Power LoRa Signal-Based Outdoor Positioning Using Fingerprint Algorithm

,
,
and
1
ICT (Computer Software), University of Science and Technology (UST), Daejeon 34113, Korea
2
IOT Research Division, Electronics and Telecommunications Research Institute (ETRI), Daejeon 34129, Korea
3
Seoul R&D 4G5G Department, Ericsson-LG, Seoul 06232, Korea
4
Embedded S/W Research Department, Electronics and Telecommunications Research Institute (ETRI), Daejeon 34129, Korea
This article belongs to the Special Issue Geospatial Applications of the Internet of Things (IoT)

Abstract

Positioning is an essential element in most Internet of Things (IoT) applications. Global Positioning System (GPS) chips have high cost and power consumption, making it unsuitable for long-range (LoRa) and low-power IoT devices. Alternatively, low-power wide-area (LPWA) signals can be used for simultaneous positioning and communication. We summarize previous studies related to LoRa signal-based positioning systems, including those addressing proximity, a path loss model, time difference of arrival (TDoA), and fingerprint positioning methods. We propose a LoRa signal-based positioning method that uses a fingerprint algorithm instead of a received signal strength indicator (RSSI) proximity or TDoA method. The main objective of this study was to evaluate the accuracy and usability of the fingerprint algorithm for large areas in the real world. We estimated the locations using probabilistic means based on three different algorithms that use interpolated fingerprint RSSI maps. The average accuracy of the three proposed algorithms in our experiments was 28.8 m. Our method also reduced the battery consumption significantly compared with that of existing GPS-based positioning methods.

1. Introduction

In recent years, the number of Internet of Things (IoT) devices has increased exponentially with the decreasing costs of hardware and communication technologies [1]. IoT devices need to communicate with each other to transmit data packets among themselves. Medium- and long-range IoT devices use both cellular- and noncellular-based communication technologies. Low-power wide-area (LPWA) communication, a noncellular-based communication technology, allows long-range communication among IoT devices with low power consumption and cost. Thus, LPWA communication is highly suitable for long-range wireless IoT devices despite its low bandwidth constraint. Figure 1 shows a comparison of common communication technologies including LPWA.
Figure 1. Telecommunication methods [2].
Positioning is an essential element in most IoT applications. Global Positioning System (GPS) has been widely used for positioning in most IoT applications. However, GPS chips are rather expensive and have high power requirements, making them unsuitable for long-range and low-power IoT devices. For example, Fargas et al. found that a device equipped with GPS and Global System for Mobile communication (GSM) chips consumed around 30–40 times the power consumed by a device equipped with only a long-range (LoRa) chip [3]. Furthermore, GPS functions and communication functions need to be provided separately, making it difficult to miniaturize devices and greatly increasing their production costs.
Alternatively, LPWA signals can be used for both positioning and communication simultaneously. Therefore, in this study, we focused on LoRa, an LPWA communication technology, that uses Semtech Corporation’s proprietary CSS (chirp spread spectrum) modulation scheme. It trades off data rate and sensitivity within a fixed channel bandwidth. LoRa is a physical (PHY) layer implementation, and therefore, it is independent of higher-layer implementations. Thus, LoRa is interoperable with existing network architectures [4].
The LoRa Alliance released a Long-Range Wide Area Network (LoRaWAN) geolocation whitepaper. LoRaWAN uses the LoRa spectrum modulation method. Its system architecture and communication protocol influence battery life, network capacity, quality of service, security, and so on [5]. The whitepaper compared the cost, battery life, and positioning accuracy of GPS/assisted GPS (AGPS), Bluetooth Low Energy (BLE), Wi-Fi, and LoRaWAN. GPS/AGPS, BLE, and Wi-Fi were found to consume more power than LoRaWAN. The whitepaper also compared the LoRaWAN received signal strength indicator (RSSI) proximity and LoRaWAN time difference of arrival (TDoA) methods, as shown in Figure 2.
Figure 2. Comparison of positioning technologies [6].
The LoRaWAN RSSI proximity method determines whether a LoRa gateway is located nearby by examining whether a signal can be received from it. The LoRa signal covers a wide area and complies with the log–distance path loss model [7]. The position can be calculated more precisely by measuring the decrease in signal intensity [6,7,8]. However, the LoRaWAN RSSI proximity method has a large error of approximately 1000–2000 m compared to that of the LoRaWAN TDoA method [6]; the error of the LoRaWAN TDoA method is more than 300 m because of the time resolution [9]. According to the LoRa Association’s whitepaper, LoRa gateways enable the accuracy of 20–200 m, which supports Semtech Corporation’s Geolocation Capability [6].
In this study, we propose a LoRa-signal-based positioning method that uses a fingerprint algorithm instead of the RSSI proximity or TDoA methods. We evaluate the accuracy and usability of this algorithm for large real-world areas. The remainder of this paper is organized as follows. Section 2 summarizes related works. Section 3 describes the proposed fingerprint algorithm. Section 4 presents an evaluation of the proposed methods using real-world data. Finally, Section 5 presents the conclusions of this study and discusses future works.

3. Proposed Fingerprint Algorithm

This study aims to implement LPWA IoT services in which moving objects can be tracked in specific areas where LoRa networks can be built. Elderly people, children, pets, and livestock can be tracked and managed safely in service areas such as amusement parks, ski resorts, and pastures.
For realizing this scenario, the positioning accuracy for end-devices should be under 30 m; end-device size should be smaller than 3 cm (W) × 5 cm (H) × 2 cm (D); end-device weight should not exceed 50 g; and batteries should last for at least one month without recharge for stable service.

3.1. LoRa-Based Positioning

In this study, the LoRa-based positioning process using a fingerprint algorithm consisted of an online and an offline phase, as shown in Figure 6. In the offline phase, RSSI values of LoRa signals are measured and stored for each randomly selected sample point within the test area. In the online phase, the location of an end-device is estimated for arbitrary unknown locations.
Figure 6. Positioning using LoRa fingerprint.
A LoRa end-device sends uplink packets to LoRa gateways. The gateways receive the packets and measure the RSSI values. These values are saved in a database and fingerprint maps are generated from the RSSI data for the service area.
In the online phase, a LoRa end-device sends uplink packets that contain sequence information to LoRa gateways. When RSSI data are sent to the positioning server from gateways, gateway IDs are attached to the data for identification.

3.2. LoRa Fingerprint Map Generation

LoRa signals from an end-device cannot be measured for every location in the service area. Therefore, the fingerprint map should be interpolated using data from sample training points. Figure 7 shows the LoRa RSSI data acquisition and fingerprint map interpolation processes. Fingerprint maps can vary with the surrounding environment, and therefore, they must be updated periodically.
Figure 7. LoRa RSSI data acquisition and fingerprint map generation.
A LoRa end-device transmits signals to several gateways simultaneously. Each signal includes an ID, timestamp, and GPS coordinates. GPS coordinates can be measured using the end-device or using external devices. Each gateway measures the intensity of the signals from end-devices. The measured RSSI values are then sent to the positioning server and stored with their corresponding GPS coordinates. When sample points are visualized with their RSSI values for each gateway, the results are represented on a map, as shown in the lower right part of Figure 7. The fingerprint maps (i.e., interpolated results) are represented as heat maps, as shown in the lower left part of Figure 7.
We needed to interpolate fingerprint maps from sample point data because complete RSSI measurements could not be obtained and were unnecessary for the entire service area. It is rather difficult to choose optimal two-dimensional interpolation methods to solve practical real-world problems. We used the radial basis function (RBF) interpolation method for interpolating fingerprint maps in this study. RBF interpolation is a traditional method that has been used for radio map generation [18]. RBF Interpolation can approximate an unknown value at a point by adding a linear combination of the RBFs [18,19]. Figure 8 shows the RBF interpolation with 2D scattered data. The advantage of RBF is that it can generate accurate and visually attractive surfaces, making it suitable for interpolated radio map generation [20]. Furthermore, it has low time complexity. We compared the interpolated results of LoRa signals with linear, cubic, quantic, Gaussian, and thin plate RBF functions included in the Python SciPy library.
Figure 8. Interpolation of f(x,y) using Gaussian RBF with 25 sample points: (a) Random data points. (b) the RBF centered at the collocation points (c) shows the interpolated surface [21].
We divided the data into training and test datasets. We generated interpolated fingerprint maps from the training dataset. We calculated residuals between the measured RSSI value and the interpolated value for each test data point. We compared the average and the standard deviation of residuals as shown in Table 1. The linear RBF interpolation method showed the lowest residuals. We also compared the results on the fingerprint maps as shown in Figure 9, and the linear RBF interpolation method showed the good distribution in extrapolation areas.
Table 1. Average and Standard Deviation of Absolute Residual between interpolated and test value (dBm).
Figure 9. Comparison of interpolated fingerprint maps: (a) cubic, (b) Gaussian, (c) quintic, (d) linear, and (e) thin plate interpolation methods.

3.3. Probability Map Generation and Positioning

The RSSI value of an end-device is compared to the value of each fingerprint map. Then, candidate regions are filtered and extracted for each fingerprint map. We combine these extracted regions with a weighting factor to create a probability map. The results of the probability map vary according to the weight assigned to the filtered grids for each gateway. We conducted experiments on three types of weighting factors. Figure 10 shows the probability map generation process.
Figure 10. Probability map generation.
We needed to create a buffer to extract candidate regions in the interpolation map, as shown in Figure 11, because of the unstable feature in the LoRa RF signals. The radio frequency (RF) signal strength fluctuates slightly over time, as shown in Figure 12. After we observed the signal strength distribution in the online phase, we assigned a 3 dBm buffer for the selection of candidate regions to include the actual location in the candidate region. For example, for −79 dBm RSSI in gateway 3, we set the candidate region as that in which RSSI was −82 to −76 dBm. We also tested varying buffer values for each signal and gateway. This buffer dBm could be changed depending on the training data.
Figure 11. Comparison of candidate regions. We filter candidate regions with 3 dBm. Dark areas represent candidates region with (a) strong and (b) weak RSSI signals.
Figure 12. Signal-strength distribution at a fixed location. [22].
We use a probabilistic method based on the Bayesian inference method [12,22] using the observed RSSI data to compute the conditional probability for positioning. We define grids for the experimental area, and we assign indexes from l 1 to l n for each grid cell, as shown in Figure 13. We constructed an experimental area of 340 × 340 cells, and the resolution of each cell was set to 1 m × 1 m. Then, we define L as a set of locations with x, y coordinates as given by Equation (1).
L = { l 1 = ( x 1 , y 1 ) , l 2 = ( x 2 , y 1 ) , , l n ( x c , y r ) }
Figure 13. Vector space RSSI data collection.
The LoRa end-device sends uplink packets. Then, k gateways measure the RSSI values of the signals. An observation o can be defined as k pairs of vectors [22]. We define the set of RSSI signal strengths received at k gateways as an observation for each transmission, as shown Equation (2). Each location l i has an observation vector o . When there are more than two observations at the same location l i , their mean value is used. The linear RBF interpolated value is used for locations that have no observations. In the online phase, we measured the RSSI values from the gateways and transformed the RSSI array to the observation o . Observation o in the online phase can be defined as k pairs of vectors same as o .
o = ( g w 1 , r s s i 1 ) , ( g w 2 , r s s i 2 ) , , ( g w k , r s s i k ) .
We adopted a Maximum Likelihood Estimation approach to estimate the locations of the end-device [11,12,22]. We can define a posterior probability P r ( l i | o ) and likelihood probability function P r ( o | l i ) as given by Equation (3). P r ( l i ) is the prior probability, and we set P r ( l i ) as a uniform distribution for experiments. We could ignore the marginal probability term j = 1 n P r ( o | l j ) P r ( l j ) and the prior during the calculation of the maximum likelihood. We considered only one sequence; hence, updating the prior was not necessary.
P r ( l i | o ) = P r ( o | l i ) P r ( l i ) j = 1 n P r ( o | l j ) P r ( l j ) .
The estimated location l in the Equation (4) was defined as the location where the likelihood value becomes the maximum. In given the interpolated fingerprint maps in advance, we could calculate the probability P r ( o | l i ) for all locations l i in the experimental area. Equation (5) represents the likelihood at each location.
l = l i a r g m a x P r ( o | l i ) .
P r ( o | l i ) = F ( o , l i ) j = 1 n F ( o , l j ) .
F ( o , l i ) is the function of likelihood, and the denominator j = 1 n F ( o , l j ) makes Equation (5) to the form of probability distribution. The denominator j = 1 n F ( o , l j ) can be ignored during the estimation of the location l . The function of F ( o , l i ) can be derived by summation of the probabilities for all gateways as given by Equation (6). We constructed the conditional probability P r ( r s s i j | g w j , l i ) , that is, the probability that gateway g w j has RSSI measurement r s s i j at location l i . This probability can be calculated by comparing the o with o on the interpolated fingerprint maps.
F ( o , l i ) = j = 1 k W e i g h t g w j × P r ( r s s i j | g w j , l i ) .
We conducted experiments with three different weighting methods. First, we assigned the same weighting factors to all gateways. Second, we assigned the weighting factors normalized with the number of cells in each candidate region. The gap in its values with distance increases when the signal strength is strong according to the characteristics of LoRa RSSI. However, the gap decreases when the signal strength is weak, as shown in Figure 11. The candidate region occupies a large area in the RSSI matching map for a weak RSSI signal (e.g., one of −120 dBm or less). Third, we formulated the general equation given in Equation (7) by using an exponential function to assign higher weights for stronger RSSI values. We estimated the coefficients using Equation (8) through brute force trials. In the trials, we increment variable a by 0.1 ( 1 a 9 ), b by 0.0001 (0 b 1 ), and c by 0.1 (10 c 150 ).
w e i g h t ( r s s i ) = a e x p b ( r s s i c ) .
w e i g h t ( r s s i ) = 2 ( r s s i + 130 ) 0.0001 .

4. Experimental Results

We set up the 340 m × 340 m experimental area as shown in Figure 14. We installed four gateways equipped with Semtech Corporations’ SX1276 chipsets. The training and test datasets were collected separately in the same area. When the fingerprint maps were generated for each gateway, the test dataset was excluded. In total, 340 × 340 = 115,600 grid cells with 1 m × 1 m resolution were constructed for the test. We fixed the LoRa spreading factor as 7.
Figure 14. Experimental area (pink: gateway; green: training dataset; red: test dataset).
When duplicate RSSI values existed in the same grid, their mean value was assigned in that grid. Interpolated values were used to fill grids that had no RSSI value. In the offline phase, a matrix with 340 × 340 cells was created and used for fingerprint map generation for each gateway.
Candidate regions were extracted from the interpolated fingerprint map in the online phase. Then, probability maps were generated using these regions as inputs, and the most probable region was derived as the estimated location.
Three different algorithms were applied to the probability map generation process. Algorithm 1 calculates the extracted candidate regions with the same weight factor. Algorithm 2 normalizes the weighting factors with the area of each region. Algorithm 3 calculates the factor by applying Equation (6); in this case, a higher weight is assigned to a stronger signal.
A total of 46 points were selected as the test dataset, and errors were calculated using each algorithm. Table 2 shows the obtained error results. The average error of Algorithms 1–3 was 32.5 m, 29.8 m, and 24.1 m, respectively. The standard deviation of error for each algorithm was 26.5 m, 24.1 m, and 17.8 m. Therefore, algorithm 3 showed the best result.
Table 2. Estimation errors for test points (m) (AVG: Average, STD: Standard Deviation).
Figure 15 shows the cumulative probability distribution of errors for each algorithm, where the X-axis represents the error in meters and the Y-axis, the cumulative distribution function. Algorithms 1–3 are represented by red, green, and blue lines, respectively. Dashed lines indicate the average error over all test points for each algorithm. The solid vertical lines near 100 m indicate the maximum estimation errors. As seen in Table 2, Algorithm 1 (red) and Algorithm 2 (green) both showed maximum estimation errors of 107.7 m for sample point 18, and Algorithm 3 showed maximum estimation error of 91.7 m for sample point 15.
Figure 15. Cumulative probability distribution of errors.
The example of positioning for point 1 is described as follows. Gateways 1–4 measure the RSSI values as −125, −97, −79, and −94 dBm, respectively, and these values are sent to the positioning server. The candidate regions with a constant buffer are displayed over the fingerprint maps, as shown in Figure 16. The probability maps and errors for the three algorithms are shown in Figure 17. The red circle represents the true location of the end device and the white circle, the estimated location.
Figure 16. Candidate regions extracted with buffer.
Figure 17. Probability maps and errors for three algorithms.

5. Conclusions

We have proposed a LoRa signal-based positioning method that uses a fingerprint algorithm instead of the RSSI proximity or TDoA method. We experimentally evaluated this method by applying three different algorithms to interpolated fingerprint RSSI maps. We constructed a private LoRa network for the experiments and developed LoRa gateways, end-devices, and firmware. We also developed positioning server software to manipulate the packets received from the LoRa gateways. We set the test area to be 340 m × 340 m with four gateways. In the experiments, we obtained the best mean location error of 24.1 m with 46 validation points. Our results showed relatively high positioning accuracy without Semtech Corporation’s Geolocation Capability. We reduced the power consumption significantly compared to that of GPS-based positioning methods. We also reduced the hardware cost by using LoRa for communication and positioning simultaneously.
The limitations of this study were as follows. It was necessary to create interpolated maps in the offline phase. These interpolated maps should be updated periodically to reflect the changing radio signal environment. The firmware for gateways and end-devices should also be modified to apply our methods to existing private LoRa networks.
Future work may include the study of a sequential model to analyze continuous RSSI observations. We will investigate sophisticated methods that assign weighting factors to RSSI observation sequences. Fingerprint maps can vary with the surrounding environment, and therefore, we should also ensure that the fingerprint map update process can handle changing signal conditions. Furthermore, we will extend the experimental area and enable more reasonable validation.

Author Contributions

W.C. conceived and designed the methodology. W.C. wrote the original draft, and Y.-S.C. reviewed and edited it. W.C., Y.J. and J.S. implemented the methodology and developed the software. J.S. administrated the project.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Evans, D. The Internet of Things: How the Next Evolution of the Internet Is Changing Everything; Cisco Internet Business Solutions Group (IBSG): San Jose, CA, USA, 2011; pp. 3–4. [Google Scholar]
  2. Egli, P.R. LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios. Available online: https://www.slideshare.net/PeterREgli/lpwan (accessed on 25 May 2018).
  3. Fargas, B.C.; Petersen, M.N. GPS-free geolocation using LoRa in low-power WANs. In Proceedings of the Global Internet of Things Summit (GIoTS), Geneva, Switzerland, 6–9 June 2017; pp. 1–6. [Google Scholar]
  4. LoRa Modulation Basics. Available online: https://www.semtech.com/uploads/documents/an1200.22.pdf (accessed on 25 May 2018).
  5. LoRa Alliance. White Paper: A Technical Overview of LoRa and LoRaWAN; The LoRa Alliance: San Ramon, CA, USA, 2015; pp. 7–11. [Google Scholar]
  6. LoRa Alliance™ Strategy Committee. LoRa Alliance Geolocation Whitepaper. Available online: https://lora-alliance.org/resource-hub/lora-alliance-geolocation-whitepaper (accessed on 25 May 2018).
  7. Lam, K.-H.; Cheung, C.-C.; Lee, W.-C. LoRa-based localization systems for noisy outdoor environment. In Proceedings of the 13th IEEE International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob), Rome, Italy, 9–11 October 2017; pp. 278–284. [Google Scholar]
  8. Islam, B.; Islam, M.T.; Nirjon, S. Feasibility of LoRa for Indoor Localization. Available online: https://pdfs.semanticscholar.org/ab00/c1eacbdd76732b7438ec8e5653f7c875def4.pdf (accessed on 25 May 2018).
  9. Kim, S.; Ko, J. Low-complexity outdoor localization for long-range, low-power radios. In Proceedings of the 14th Annual International Conference on Mobile Systems, Applications, and Services Companion, Singapore, 26 June 2016; p. 44. [Google Scholar]
  10. Laoudias, C.; Moreira, A.; Kim, S.; Lee, S.; Wirola, L.; Fischione, C. A survey of enabling technologies for network localization, tracking, and navigation. IEEE Commun. Surv. Tutor. 2018, 6, 1. [Google Scholar] [CrossRef]
  11. Richter, P.; Toledano-Ayala, M. Revisiting Gaussian process regression modeling for localization in wireless sensor networks. Sensors 2015, 15, 22587–22615. [Google Scholar] [CrossRef] [PubMed]
  12. Bekkali, A.; Masuo, T.; Tominaga, T.; Nakamoto, N.; Ban, H. Gaussian processes for learning-based indoor localization. In Proceedings of the 2011 IEEE International Conference on Signal Processing, Communications and Computing, Xi’an, China, 14–16 September 2011; pp. 1–6. [Google Scholar]
  13. Li, Z.; Braun, T.; Zhao, X.; Zhao, Z.; Hu, F.; Liang, H. A narrow-band indoor positioning system by fusing time and received signal strength via ensemble learning. IEEE Access 2018, 6, 9936–9950. [Google Scholar] [CrossRef]
  14. RSSI. Available online: https://en.wikipedia.org/wiki/Received_signal_strength_indication (accessed on 25 May 2018).
  15. TDoA Algorithm Implementation. Available online: https://forum.loraserver.io/t/tdoa-algorithm-implementation/720/7 (accessed on 25 May 2018).
  16. Hernández, N.; Alonso, J.M.; Ocaña, M.; Kim, E. WiFi-based indoor localization using a continuous space estimator from topological information. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation, Calgary, AB, Canada, 13–16 October 2015; pp. 13–16. [Google Scholar]
  17. Aernouts, M.; Berkvens, R.; Van Vlaenderen, K.; Weyn, M. SigFox and LoRaWAN datasets for fingerprint localization in large urban and rural areas. Data 2018, 3, 13. [Google Scholar] [CrossRef]
  18. Redondi, A.E.C. Radio map interpolation using graph signal processing. IEEE Commun. Lett. 2018, 22, 153–156. [Google Scholar] [CrossRef]
  19. Radial Basis Function Interpolation. Available online: https://cs.fit.edu/~dmitra/SciComp/13Spr/KimJessie-rbf3.pdf (accessed on 25 September 2018).
  20. Reddy, K.B.; Venkatramana, P. Comparison of different spatial interpolation techniques of field measurements to construct radio environment map. Int. J. Future Gener. Commun. Netw. 2018, 11, 21–31. [Google Scholar] [CrossRef]
  21. A Mesh-free Method for Three-Dimensional Nonlinear Schrödinger Equation. Available online: https://people.maths.ox.ac.uk/siamstudentchapter/webpages/2011_Conference/ThomasY_Talk.ppt (accessed on 15 October 2018).
  22. Chai, X.; Yang, Q. Reducing the calibration effort for probabilistic indoor location estimation. IEEE Trans. Mob. Comput. 2007, 6, 649–662. [Google Scholar] [CrossRef]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.