0

As per current specs only duration in 5 min increments is tracked. Suggested interval is 200-300ms it seems. In Singapore signal strength was accounted for but this is variable per device. What if we do still also track the signal strength during that time? You would get a curve from weak to strong that gives an indication of the speed of travel while approaching, and couldn't you also derive fairly accurate indications of proximity after just one day of data?

I noticed that beacon libraries already attempt to estimate distance: Understanding ibeacon distancing

But it does not seem these self-calibrate yet based for instance on min-max readings versus moving targets. I'm thinking that could work especially as phones are modified to be always on in that respect.

Arwin
  • 973
  • 1
  • 10
  • 21

1 Answers1

1

It is very difficult to accurately determine distance by Bluetooth RSSI measured between two phones because there is a huge variation in the way different phone models measure bluetooth signals. Check out this graph produced by the Open Trace folks behind the effort in Singapore:

Transmitter RSSI by Device

Those variations are consistent with my work in this area for the Android Beacon Library open source project. The fragmentation of Android devices has made it impossible to keep up with all the variations in signal strength response.

One point that the Open Trace team did not address in their work, is that there are a number of different bluetooth channels, and RSSI varies greatly on a given phone depending on which channel is being used. Mobile phones give you no indication of what channel the radio was on when a measurement was taken. The channel difference probably accounts for much of the "height" of the blue bars in the graph.

Unfortunately, there is no way to know if a device is approaching or stationary by reading RSSI updates. The changes could be because of natural variation, motion, or changes in obstacles. I do not believe self-calibration in a contact tracing app is viable.

This does not mean that RSSI is worthless for distance estimates, but it does mean that the margin of error is very high in what you can measure. If you see a device at all, there is a very good chance it is within 50 meters. And if you see that the RSSI is stronger than -70 dBm, there is a good chance you are within 2 meters. But there will always be false positives and false negatives.

davidgyoung
  • 63,876
  • 14
  • 121
  • 204
  • Could you calibrate with maybe one day of gps tracking? I worry that BT range is so large that it will give way too many irrelevant positives. – Arwin Apr 14 '20 at 21:29
  • Also, is there work on the progression of two devices approaching each other and then distancing again until out of range? Despite variations, the averaged curve could still give a pretty reliable picture of risk of infection based on combination of duration and signal strength progression? – Arwin Apr 14 '20 at 21:34
  • I don't think that distance "progression" really matters for risk -- I think the conventional wisdom is that a significant time dwelling within a minimum distance is what causes risk. And I don't think there are any opportunities for automatic calibration based on time -- for any calibration, you need a second reference measurement that is more accurate. In this case there is no secondary distance measurement that is more accurate. – davidgyoung Apr 14 '20 at 22:59
  • The people you live with or see regularly? And isnt GPS accurate úp to 2-3 meters? – Arwin Apr 15 '20 at 06:14
  • 1
    GPS can get accurate to a few meters if you are outdoors with the GPS on. This, however, is not significantly more accurate than close range BLE distance estimates which have a similar margin of error. Unfortunately, GPS also often does not work indoors and the battery usage is prohibitive to run for long periods for time. – davidgyoung Apr 16 '20 at 02:48
  • Thank you very much so far. What recommendations could we give Apple and Google to improve this? For instance broadcast the channel being used? Add a calibration system? How well this works could save a lot of lives and money! – Arwin Apr 16 '20 at 07:44
  • 1
    It would be helpful if iOS and Android APIs exposed the Bluetooth channel number on scan packets and other operations that include the rssi, however, this may require changes to Bluetooth chips themselves as well as several layers of firmware to expose the info -- so it is not a trivial change. It is not necessary to transmit the channel as a receiver knows the channel it is on when it received the data. – davidgyoung Apr 16 '20 at 12:06