RF fingerprinting using LoRa for localization

(Osman) #1

Hello everyone,

After reading the whole thread Location by triangulation i came to conclusion that 2nd generation gateways which allow TDoA for localization in indoor are available but with additional costs to decrypt the metadata. So, a cost effective solution would be RF fingerprinting and implement machine learning technique in application server to compute the position in real time. Since, its just a proposal so, it would be great if anyone could contribute to this thread.
I am interested to know if i could use https://www.thethingsnetwork.org/ or should use https://github.com/brocaar/loraserver
for my application development.
If anyone who did something like this could share her/his experience it would be great.

Best Regards


what IS your proposal, I don’t understand … ’ localization by RF fingerprinting’ ? sounds cool… please explain


How would RF fingerprinting solve any of the multipath and destructive interference issues that make RF based geolocation difficult anyway?

(Osman) #4

RSSI of RF radio signals can be used to locate the position of a target device. There are two distinct approaches to achieve positioning using RSSI i.e, Map based and Model based. RF fingerprinting belongs to Map Based technique.

In Fingerprinting technique, the area of interest (building, home, hospital)is evenly divided in to a number of reference points. The target node whose location is to be determined, transmits uplink messages to the anchor nodes(Gateways) from these reference points. A minimum of 3 gateways are required to achieve good accuracy. Each gateway would receive the packet with different RSSI because distance to the reference point from each gateway would be different. And thus a table would be created that stores the RSSI values against reference points for each gateway. This is known in Offline phase and table is called a Map.

In online phase, the unknown target can be located anywhere inside the area of interest in real time using this look up table (map). Although it gives a rough estimation of position of the target node but people have used Machine learning techniques to achieve better results and accuracy(1-3m for zigbee). But the problem here is the time required to make fingerprinting, collecting RSSI at reference points.

Since 2nd generation gateways arent available yet (i guess),this could be an alternate to be used inside the buildings for location tracking applications.

Please share your thoughts.


(Osman) #5

I am not sure about it. But RSSI based finger printing method has been used with WIFI, zigbee, bluetooth to achieve a very good accuracy. But this technique is feasible for indoor tracking not for outdoors.


This has already been discussed in the thread you link to and in other threads. Location tracking with WiFi, Zigbee and Bluetooth more or less works because they have no practical limit on their duty cycle. These devices are in almost continuous contact with the base station, resulting in a large dataset of RSSI readings with low average deviation. A smartphone sends hundreds, thousands of frames to the WiFi router per minute, even when it is idle. Compare this to LoRaWAN with a duty cycle of 1% or 0.1%, resulting worst case in one message (and associated RSSI measurement) every other minute or so. Your node could have left the building already by then.

To give an idea how difficult geolocation with LoRaWAN is: even the Semtech DSP solution needs 11 gateways to simultaneously pick up the message from the node to determine its location down to a 300m radius.

(Osman) #7

Well you are absolutely right. But in case of location services inside buildings i think we dont need to use SF-12 as SF7 would work very well. Using SF7, sending one byte with 125KHz bandwidth the time on air is almost 29ms. This means i could resend the packet again in 3 seconds. This is not bad i guess.

Also if there is some kind of trajectory prediction being implemented in application server it would add to the performance of the location based services. But this is just my thought.


what accuracy do you think would be achievable and can you give a use case example based on this figure ?


Maybe, it will probably depend on the amount of gateways, because I don’t think you will get very far with SF7 and a single gateway in today’s modern concrete buildings. But I’m no building materials expert.

For exclusively indoor tracking, I would use one of previous said technologies. It’s not really in the spirit of LoRaWAN to continuously transmit messages, even if they only contain 1 byte payload (which still adds at least 14 bytes headers). That would not scale well. Imagine a city where every node transmits every 3 seconds. You would need a lot of gateways to process that :wink: . LoRaWAN is meant to send a small message every few minutes, location tracking to some degree is just a nice to have bonus.

I know a lot of people see location tracking as the killer app for LoRaWAN (or any other LPWAN tech), but frankly I don’t think that’s ever gonna happen. Or at least not with the accuracy we’ve come to expect from geolocation.

(Osman) #10

I am thankful for helping me out in this. So what technique or approach should i use if i want to use localization with LoRaWAN. I know you already pointed out that its not possible to get good accuracy.

I am currently involved in project dealing with implementation and evaluation of localization in LoRaWAN for both indoor and outdoor. I have used before http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=dv164140-1 microchip lora network evaluation tool kit. The gateway has a foot print for GPS module “MAX-M8Q - GNSS Module, Dual Frequency Front-End.” If i solder one such GPS module on to the gateway would it give me accurate time stamping ?
Can i use three of these in outdoor environment to get some fair localization ? What accuracy should i expect from such a setup ?

(Osman) #11

The accuracy should be less then 10 meters. I know there are many solutions available with RF fingerprinting that are cheap and accurate but i wanted to test what kind of accuracy and results could i achieve with LoRaWAN. Applications could be tracking of an asset inside a warehouse, in offices. But as the size increases so is the amount of effort and time spent in taking fingerprinting.

I am new in this topic so i am thankful for your patience.


as you stated that this will only work indoors you understand that a highrise building will give extra problems … you have to determine at what floor too.
personally I think, like Eypyon, that LORAWAN is not the best platform for accurate indoor object tracking.



I’m doing research around what u describe. Could you send ma PM ?



Personally I think you should use another technology for the localisation and LoRaWAN only for the communication. There are concepts floating around the web of nodes using a WiFi receiver and a database of known access points and their location (I think Google offers one free for non-commercial use). BLE beacons are another option.

Adding a GPS to your gateway will indeed ensure accurate timing, but I don’t know if any packet forwarder already uses this in any way. Afaik you need to connect the PPS signal to the radio board, and make your host pc (running the packet forwarder) continuously sync with the NMEA timestamp through UART (or only once and then use the PPS signal for timekeeping). But if the host pc isn’t running a real-time OS, timestamps can still be non-deterministic. If radio waves travel at the speed of light, you need an accuracy of 0,3ns to get a 10m resolution.

You’re free to spend your time experimenting with this and I’m curious to hear your progress, but frankly I don’t think you’ll ever gonna get anywhere near the level of performance you want. 10m accuracy even seems impossible to me, seeing as even the Semtech solution, which uses advanced DSP on the raw radio data, can only estimate the position within a few hundred meters.

(Tidratec) #15

Isn’t it what Sigfox doing? Far from 10m accuracy but they now provide localization for each message.


Sigfox and LoRaWAN use the same technique yes. Sigfox currently offers 0.1° latitude/longitude accuracy, and hopes to get the accuracy down to a 500m radius by employing ‘machine learning’ (I guess the same techniques that @Osman described). If you want better accuracy, they specifically state you should use WiFi or GPS. Semtech claims to offer accuracy down to a 300m radius, if the node is in reach of at least 11 gateways. Both are a far cry of the 10m accuracy some are wishing for.

(Osman) #17

Could you recommend me some gateways options with GPS. I am looking for the one with which its also possible to use TDoA (RSSI fingerprinting as well just to compare the results). Are there are any Gateways having GPS that can give me clock accuracy in nano seconds?

Right now i having “http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=dv164140-1” a microchip toolkit for LoRa network. It has a 6 channel gateway and a footprint for GPS module “https://www.u-blox.com/en/product/max-m8-series”. In its data sheet nothing has been mentioned about the clock accuracy. So, it would be a great help for me if you could recommend me some gateways.

Thanks alot and Best Regards


You should probably inquire with the manufacturer. These parameters have no use in normal LoRaWAN use cases, so they probably won’t have it at hand though.

Also, did you read this blog entry by Linklabs? Best to do a sanity check before embarking on this journey :wink: .

(Mikael Falkvidd) #19

Interesting article, thanks for sharing.

Some anecdotal evidence on the accuracy of Sigfox geolocation: when reaching 35 Sigfox base stations, I got an accuracy of about 600m.


I also found this master thesis, which experiments with and simulates indoor localisation with LoRaWAN using both the TDOA and RSSI methods. The conclusion is that it is useless for indoor positioning: in a radius of 11 meters around the gateway, the minimum average RMS error is 8 square meter. Even when using 100 static reference nodes with known locations and averaging 100 measurements. Moving the node up and down also gives completely different signal strength readings because of the multipath propagation.

Using multiple gateways as anchors and/or meshing the nodes could yield better results, but I think the underlying message is pretty clear: LoRaWAN is not the localisation technology one is looking for.