I am currently working on this project where I have to find the location of a Wi-Fi enabled device such as our smartphone based. I can configure a raspberry pi to sniff out the wireless packet and measure the received packets based on the dBm. How can I find the exact location of the device? I don't understand how to do triangulation.

  • Does your company use a wireless controller for its WAPs?
    – Ron Maupin
    May 12 '16 at 1:46
  • @RonMaupin Nope, i just configure a raspberry to capture packets in the air
    – peter pan
    May 12 '16 at 2:18
  • What types of WAPs does your company use?
    – Ron Maupin
    May 12 '16 at 2:19
  • quite good explanation you can find here: youtube.com/watch?v=KSg2WN8EiKI Feb 6 '17 at 12:26
  • 2
    This is a hugely complicated task. So much so that the best vendors on the market have been actively developing and tuning their products for over a decade and will only provide accuracy to a certain degree (which granted can be within feet if you have sufficient sensors and have provided sufficient information to the system - calibration and/or building models). Getting an "exact location" of a device from a single Raspberry Pi would be impossible.
    – YLearn
    Jun 6 '17 at 18:27

For tracking and triangulate some devices you need to measure the signal from differents points. You need to locate on the space some devices, that is the reason why you can't get a result with one signal strength, first, you need to put on a fixed locations some references to take the signal power. One you get that measure, you need to put that data on sone algorithm that calculate the distance taking on mind the losses on a typical propagation media, first you need to elaborate some ecuation with thats variables.

  • If you are using directional antennas then all you need are three geographically separated points and their bearings to the target Signal. If you are just going based on signal strength you need multiple points which occur on all sides of an object. The problem with this second method is If you're receiving strength or the transmitting strength has higher gain in one particular direction then you may not find the exact location of the target. Also for the second method to work the source power has to be consistent while making all measurements. For both methods you need an accurate position. Apr 8 '17 at 3:43

With a purely geometric approach (without calbration) and only signal strength as sensor, you require at least two and optimally four sensors.

Geometrically, a single signal strength sensor tells you the distance, all potential points lying equidistant on a sphere. You can probably rule out many possibilities but probably several solutions remain.

With a second sensor you get another sphere and when you intersect these two spheres the solution is a circle. While you can probably rule out most points, chances are that there are still possible points.

With a third sensor and yet another sphere which you intersect with the circle from before you get two points remaining. If you can't rule out either you need a fourth sensor, with its sphere only intersecting one of the points.

This is an idealistic, purely mathematic approach. Depending on local conditions, a real-world approach can be simpler or more complicated.

Triangulation is actually the opposite: you don't know the range but you know the direction. Each sensor tells you a direction or vector, two of which you intersect to get a single point in space.

  • 1
    Although the theory is correct in practice that would require that there's never anything between any of the sensors and the target that could modify the signal strength, which is... ...unlikely. (Not even taking into account signal reflection)
    – JFL
    Jun 6 '17 at 13:58
  • Of course - I was trying to convey the general idea. With a real building you get so many factors that you need decent calibration data.
    – Zac67
    Jun 6 '17 at 14:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.