anongit / mytracks

Automatically exported from code.google.com/p/mytracks
0 stars 0 forks source link

Lag: drawn track is significantly behind current GPS position #151

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Start tracking on a fast mode of transport (car, train)
2. After 10 minutes or so, the GPS location is considerably ahead of the track 
that has been drawn. The track continues to get drawn, but more slowly than the 
GPS position moves. After an hour or so, the track can be half as long as it 
should be. When tracking is stopped, the track only goes up to the last point 
on the drawn track, not the current GPS position.

What version of MyTracks are you using? On what version of Android? On what
phone?
1.0.16, Android 2.2 FRF91, Nexus One.

Please provide any additional information here:
I'm assuming that this isn't a problem that everyone sees, because it's not 
been reported here already. As such, it must be something specific to my phone, 
but I'm looking for pointers as to what it might be: I've started uninstalling 
some of my apps, but it hasn't fixed the problem.

Original issue reported on code.google.com by spookypeanut on 6 Sep 2010 at 8:43

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I am pretty sure it's not actually speed related; 
I experienced similar issue when just running/walking ~ 3.3 km / 2 mi.
After 20 min, track was drawn 1 km behind location.
1.0.16, Android 2.1, Samsung Galaxy S  

Original comment by teemu.a....@gmail.com on 8 Sep 2010 at 7:07

GoogleCodeExporter commented 9 years ago
Interesting, I've only ever noticed it on car or train journeys. I'll track 
more walking journeys, and see if I see it there too.

Original comment by spookypeanut on 9 Sep 2010 at 8:11

GoogleCodeExporter commented 9 years ago
I've seen this happening too.

Original comment by rdama...@google.com on 10 Sep 2010 at 10:53

GoogleCodeExporter commented 9 years ago
This happens every time for me. With this lag it’s almost unusable, otherwise 
it would be a great app.
I have uploaded a track to my maps page called “walk (with Lag Bug)”.
I was moving the whole time, but you can see the total time = 23:15 but the 
moving time was 8:38. This difference is the lag, when I stopped I could see 
the track drawing very slowly, way behind my current position. Note: the 
current position and map background updates in real time, it’s just the 
recording that is delayed.
In the stats page the total time and speed updated in real time, but the moving 
time was lagged.
It is not just a constant delay behind real time, but the recording is 
operating at about 1/3 of real time, so the longer you record the longer the 
lag. When I drove home from work, a 40min drive, I had to leave my tracks 
running at home for another hour for the recording to catch up.

My tracks version: 1.0.17
Phone: Samsung Galaxy S (GT-I9000)
Firmware version: 2.1-update1
Baseband version: I9000DTJD3
Kernel version: 2.6.29
Build number ÉCLAIR.DTJG4

Original comment by andrew.s...@gmail.com on 14 Sep 2010 at 7:34

GoogleCodeExporter commented 9 years ago
I have just installed the "Cardio Trainer" app, which has very similar 
functionality. It does not have this problem.

Original comment by andrew.s...@gmail.com on 15 Sep 2010 at 4:32

GoogleCodeExporter commented 9 years ago
It happens every time for me too! Please fix it!

My Tracks version : 1.0.17
Phone : Samsung Galaxy S (GT-I9000)
Firmware version : 2.1-update1
Baseband version : I9000XXJM1
Kernel version : 2.6.29
Build number : ECLAIR.I9000XXJM1

Original comment by lambert....@gmail.com on 17 Sep 2010 at 3:13

GoogleCodeExporter commented 9 years ago
I think I found the source of this bug.  I have a version that should fix most 
cases.  There are still some cases I don't really understand but I will try to 
check in my fix in the next couple of days.

Original comment by sandordo...@google.com on 21 Sep 2010 at 1:28

GoogleCodeExporter commented 9 years ago
Sandor, please review:

http://code.google.com/r/rdamazio-mytracks-staging1/source/detail?r=ea86fee276d4
75c870f736ad95a1c84bc9cb473e

Original comment by rdama...@google.com on 23 Sep 2010 at 1:14

GoogleCodeExporter commented 9 years ago

Original comment by sandordo...@google.com on 24 Sep 2010 at 9:11

GoogleCodeExporter commented 9 years ago
I've seen this issue many times recently.  Just now, enabling tracking and 
walking around results in no plot on the map (although I can see that the total 
distance is > 0).  Clicking on Menu/Tracks/<top track> forces the map overlay 
to redraw which can be used as a workaround.

Sandor, do you have a fix for that?

Original comment by ba...@google.com on 5 Oct 2010 at 11:37

GoogleCodeExporter commented 9 years ago
No.  Both Rodrigo and I have spent some time trying to understand this bug but 
have failed.

Original comment by sandordo...@google.com on 5 Oct 2010 at 11:40

GoogleCodeExporter commented 9 years ago
If it's in the drawing, then it's a bit obscure - I changed the overlay to draw 
all received points (with no visibility checking, just draw everything) and it 
still lags behind.

When you use Menu/Tracks/Top Track, it will also reload the data, btw - I 
suppose this bug may have to do with the content observer that receives the 
points from the provider, but I'm not sure how.

Original comment by rdama...@google.com on 5 Oct 2010 at 11:46

GoogleCodeExporter commented 9 years ago
There is also one more bug here.  When you zoom in/out, at some point the 
clipping rectangle is smaller than the screen size, so moving around the map 
causes the track to disappear partially or entirely.

I will take a look at this bug later tonight, sounds like an interesting issue 
and easy to reproduce :)

Original comment by ba...@google.com on 6 Oct 2010 at 1:22

GoogleCodeExporter commented 9 years ago
Thanks.

Original comment by rdama...@google.com on 6 Oct 2010 at 1:29

GoogleCodeExporter commented 9 years ago
Sent a request for code review: 
http://code.google.com/p/mytracks/issues/detail?id=187.

Original comment by ba...@google.com on 12 Oct 2010 at 5:00

GoogleCodeExporter commented 9 years ago
This has been fixed and merged with the head.

Original comment by ba...@google.com on 22 Oct 2010 at 7:42

GoogleCodeExporter commented 9 years ago
I'm afraid this issue is not fixed, merely changed. The symptoms have changed, 
but I think the root cause is the same. I'll post a new issue if you prefer, 
let me know.
The app now hangs when it is "behind": if it is running behind and the app is 
restored, it merely shows a black screen. Eventually, the "kill, wait, report" 
dialog pops up: if the app is killed, then restarting it shows that the track 
was behind the current position.
This "fix" has, unfortunately, left the app even less usable than it was 
before.  

Original comment by spookypeanut on 30 Jan 2011 at 10:31

GoogleCodeExporter commented 9 years ago
I confirm this issue has not been fixed yet. I spent hours to understand the 
cause of the problem without success. 

First, I thought something was wrong with the GPS module but...
1. I did a lot of tests with LbsTestMode app and I am sure the GPS gives me an 
accurate position every second for at least 30 minutes. Navigation apps also 
works without any problem. As a result, the source is ok, it's a good start!

2. I used the google SDK to write a basic application which captures GPS 
positions and store them in a sqlite database. It works well and it's exactly 
what MyTrack might do.

As soon as I have time, I'll try to figure out what's wrong with this Galaxy S 
in MyTracks code. I suspect a computation to improve accuracy is done between 
the time MyTracks receives a GPS position and the time it is showed on the map.

Oh and I forgot to say that I have a similar problem with runkeeper app! 

Please help me, I really need this wonderful app :-)

My tracks version: 1.1.4
Phone: Samsung Galaxy S (GT-I9000)
Firmware version: 2.2
Baseband version: I9000XXJPP
Kernel version: 2.6.32.9
Build number FROYO.XWJPH

Original comment by cedric.l...@gmail.com on 10 May 2011 at 1:34

GoogleCodeExporter commented 9 years ago
So, the step that may be missing in (2) is adding a content observer to your 
activity, and only displaying the position when it's received by that.

Original comment by rdama...@google.com on 10 May 2011 at 1:45