So, I have worked some on problems with distance measurements using radio-frequency signals. There are three basic approaches for this problem:
1: Triangulation using the relative phase of reception on three antennas with a common reference clock. This will get you the direction of the transmitter, and if you have three such systems with known locations you can localise the transmitter perfectly. This requires specialised equipment with fixed installation points.
It also suffers from multi-path problems (that is, reflections of the original signal) that renders the problem much more difficult. With more than three receptor systems, there are algorithms for attempting to resolve this and find the original emitter. As far as I know, no one has a working system for bluetooth. And even if they did, that would be a lot of dedicated equipment to install absolutely everywhere!
This is not what is proposed.
2: Time-of-flight measurements. You ping-pong the signal. Device 1 transmits, Device 2 receives, and retransmits a signal, along with information on its own delay between reception and re-transmission, Device 2 receives, and uses this information, along with the knowledge of its own delays, to calculate the time of flight between the two devices.
The time of flight is 3.33 ns per meter. That is the accuracy with which you need to have the delays in your devices known in order to have useful data down to the meter. This is not information that exist for a phone Bluetooth system. You would also need to have a good clock, but not that excessively great. If you can count cycles on a 333 MHz clock, you can have the resolution. (Though it should be better, because you will have additional errors in the delay calculation part)
This is not what is proposed either. Can’t do it with a phone. Ultra Wideband (UWB) system chips that can do it exist, but they are not in your phone.
3: Received Signal Strength Indication (RSSI). Or rather known signal decay with distance. This is the only thing that could be done with mobile phones as they are constructed today. Theoretically well known. The power transmitted will be spread over the surface of a growing sphere. So, according to a 1/r^2 law. The equation is well known to calculate the exact attenuation at a given frequency (the Friis equation), so knowing the power transmitted and the power received will theoretically let you know the distance of transmission.
The 1/r^2 relationship means that for twice the distance you will have ¼ of the power arrive. That is -6dB in logarithmic units. (Which is how power is measured in RF) Now, the RSSI meter in a phone is not that accurate. Count a couple of dB errer. The transmission power is not that well know either! The phone may say that it is using a 4 dBm[1] nominal output power, but it will be anywhere from 6 dBm to 0 dBm, or so. It will also vary by Bluetooth channel used. For most chips the signal is stronger lower in the band. (One chip I measured had a difference of 5 dB between the lowest and highest channel. The chip-to-chip difference was also a few dB.)
This all only works for free-space emission. So if there are some obstacles there will be more uncertainty. Reflections will also make it work less well. As will putting the phone close to a human body. The errors will accumulate and I think one would not get better than a factor of 4 or 5.
I have no idea if this could in any way be considered good enough.
[1] dBm, power relative to 1 mW – 1mW is 0 dBm, 3 dBm would be 2 mW, etc.
Fourth possibility:
4 : Using other localisation data too. GPS, wifi localisation, etc. Maybe this is what is proposed?