Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Location issues #264

Closed
miquelvila opened this issue Mar 28, 2020 · 12 comments
Closed

Location issues #264

miquelvila opened this issue Mar 28, 2020 · 12 comments
Labels
Bug Something isn't working

Comments

@miquelvila
Copy link

I have been using the app for 5 days now, in Spain and in Andorra. I live in the #580 green circle, which is were I have been most of the time. Nevertheless, the app registered that I was 106 times in the #106 green circle, and I absolutely wasn't (maybe I drove my car in front of there, but I could not be registered 106 times there at all...). The main issue is that the distance between the two points is 120 meters (400ft)!

Image from iOS (1)

Then there is this problem as well, this was a U-turn I did with my car in the road. I assume when the app detects a sudden change in direction it increases the registration frequency maybe

Image from iOS

@E3V3A
Copy link

E3V3A commented Mar 28, 2020

This is very similar to #211.
Which app version are you using? (latest is 0.5.10)

@penrods
Copy link
Contributor

penrods commented Mar 28, 2020

I don't know if we can do much about this -- we simply record what the GPS signal shows us. You said the group to the left is 160m away? Are you often inside a large building or a place with dense walls? I know the tracks around my house shows a cloud that covers about 4 houses worth of space, and then when I went to a grocery store it registered several points to the east of the store (very similar to your image).

@miquelvila
Copy link
Author

I was using version 0.5.6 when that happened.

Normally the same happens with my location trail, it covers about 4 houses around me. But being registered 106 times incorrectly by 120meters seems worrying

@rparet rparet added the Bug Something isn't working label Mar 29, 2020
@E3V3A
Copy link

E3V3A commented Mar 29, 2020

@miquelvila
Thanks for reporting, but always make sure to update your app and try again. There's very active development here, so if you post issues with old apps, you are likely to just derail the development.
If it doesn't happen again, please close the issue.

@miquelvila
Copy link
Author

@E3V3A I already checked before posting and it was happening anyway, but I lost the data when I updated the app

@penrods
Copy link
Contributor

penrods commented Mar 29, 2020

I'm 95% certain the issue is with the actual phone GPS reporting. We don't do anything special -- we just request position and save it. If the point were 0,0 then I'd suspect a bug. But 120m is too close to "right" -- this sounds like it isn't a software issue. It is just a limitation of the phone hardware / GPS signal.

@E3V3A
Copy link

E3V3A commented Mar 30, 2020

For the 1st picture:

I believe this may have something to do with Googles location services using a combination of WiFi, Mobile Cell Towers and GPS. So for example, if you're out of GPS coverage (which easily happens between/near buildings), it may rely on cell tower (BTS) location instead. And that location may be at the Green "106" point. Please have a look at that point an see if you can see a bunch of mobile antennas on/near that location. Make sure you have a good GPS lock before you enable the app and try again. (Check with "GPS Status" app.)

For the 2nd:

(I get the same thing, doing nothing at all, just turning on GPS and waiting.)

I believe it's a problem of how the positions are taken and stored. My guess is that the app just keep on storing new values, regardless of what's already been stored before. Obviously any 6-8 decimal GPS location will keep keep changing. This is why you need to throttle and check new positions and only add those that have moved a certain min distance within a certain min time.

  • For example: Moved >5 meters AND last position was taken >20 seconds ago.

However, I have no idea how to fix this in the code here. If we had used SQL the test would have been more trivial than the line above, but now as it's been abstracted away with this async-storage thing, I suspect we need an additional 200 lines of code. 👎

@E3V3A
Copy link

E3V3A commented Apr 6, 2020

2nd picture now seem related to #360 and #363.

@diarmidmackenzie
Copy link

I have seen similar issues with GPS signals leaping abut (rural Italy).

DHM-A1-16 in my test report here:
https://docs.google.com/document/d/1Uh1A-h7Ddm6t-rAlHOM90xnsrkLEG9SGcTolf3uIbgQ/edit

"I am indoors, in a rural location. Phone has Wifi + SIM card with OK signal.
o While stationary, over an hour, data varied as follows:
§ Lat: -0.0000012 to + 0.00015 (total variation: 0.00016)
§ Long: -0.0002873 to + 0.0007226 (total variation: 0.00101)
o On the basis that 1 degree is approx. 100km, that’s ~100m variation."

I don't think it's enough to just say "it's the GPS signal / hardware" (@penrods above). Almost certainly true, but if our software is making assumptions about GPS reliability, that are not in fact true, that remains a flaw in our software.

We need to analyze the risk, figure out what limitations it implies for the app, and determine whether there is anything we can do to workaround the problems.

In the worst case, unreliable GS signals are a fatal flaw that kills the entire app design. Hopefully it's not that bad, but we should assess how bad it is, and what we might be able to do to mitigate.

First task is probably some research on reliability of GPS signals - there is probably existing literature available that will give us more insight that we can get from individual users testing.

@E3V3A
Copy link

E3V3A commented Apr 12, 2020

Decimal lat and lon need to be truncated to 5 decimals (equivalent to ~1.1 meters) , otherwise you will get a lot of crap out!

@penrods
Copy link
Contributor

penrods commented Apr 18, 2020

No longer part of Safe Paths.

@penrods penrods closed this as completed Apr 18, 2020
@diarmidmackenzie
Copy link

@penrods I don't understand - yes the UI is no longer part of the app, but GPS leaping about is still a potential issue, is it not?

Understand we can't do anything about the data we get back tom the GPS hardware, but we might need to look at mitigation in software for these bumps, or adjustment of matching algorithms to accommodate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants