Hi there, I’m trying to build an app that enforces social distancing, my first idea was using the proximity sensor but the distance it measures (at least on my Huawei Y5 phone) is too short, then I tried with GPS but in this case the distance is far too high, my next step would be Bluetooth, is there a way to measure a distance from a phone to another one ? Bye
Hi Alessandro, as you noted the Proximity Sensor is might not the best option for this problem since it jsut tells the distance from ‘anything’ to phone - depending on phone model in 10-30cm range.
GPS is a option also investigated by ‘official’ tracing apps - here with increased precision - the standard signal available is 5-15m outdoors and maybe 50m indoors - far too low to distinguish individual contacts.
bluetooth seems to be a suitable solution but its not intended for position measurement. You might get a pseudo distance by signal strength of phones around - but this will not correlate directly with distance and is influenced by many other factors. A technical approach might be measuring signal runtime but this is not accessable in our tools and also got influences from enviroonment, how many phones are around and so on…
a first approach could be to track available BT devices - this is available in the app inventor and on any phones next step to get their signal strength (not available without extensions) and to eval the results so far
The simple answer is no.
The two measuring methods possible with App Inventor (and which you already identified) cannot provide what you want. A Proximity sensor measures only very close contact …a matter of inches (or cm); too small as you indicated. Use of a GPS is possible, depending on the Accuracy of the satellite fix . The ‘resolution’ of the GPS is never better than two meters using an average cell phone and the satellite constellation the LocationSensor uses to determine its location. Its ability to measure the closeness of two phones (using the locations each phone believes is its best geocoordinate guess) is often on the order of 10 meters as best). Knowing that might be useful. There is no other method one can use using App Inventor. It is not possible for App Inventor to determine if any cell phone gets ‘too close’ … App Inventor cannot use information from cell towers to determine which random phones get too close either.
One way is to use your GPS receiver to determine relative closeness of another cell phone, despite the shortcomings, is Social Distancing ... a CloudDB / Location Marker Tutorial . The app will not guarantee identifying separation of the recommended six feet. It can indicate whether a person comes in relative contact of another person that has the same app turned on. Both people have to be actively using the identical app. This is actually very good as it ensures privacy issues involving location cannot be breached.
App Inventor cannot be used to create a population ‘monitoring’ app.
A demonstration showing the importance of social distancing (but not ways to determine social separation) is Social Distancing Demo
Traditional method - arms length with phone in hand
No need for social distancing …
(at least not from a viral aspect)
My opinion, which is based on numerous scientific studies and many internationally recognized experts / virologists (not least: Prof. John Ioannidis, Stanford).
@Alessandro_Visigalli in case you are looking for a bluetooth extension, which is able to provide the RSSI (Received Signal Strength Indication) after doing a scan, see here https://puravidaapps.com/bluetooth.php
Thanks to everyone for the tips, I really appreciate!