Speed graph very inaccurate
The GPX charting seems to be off. Look at this one, for example:
http://zednine.com/workouts/384
It says I went 202 MPH on my bike! It also says my ride was over an hour long. While there is data over that span, there ought to be a big hole in the middle where I was getting lunch. The speed graph wiggles around the whole time - even when I wasn't moving.
http://zednine.com/workouts/384
It says I went 202 MPH on my bike! It also says my ride was over an hour long. While there is data over that span, there ought to be a big hole in the middle where I was getting lunch. The speed graph wiggles around the whole time - even when I wasn't moving.
1
person has this problem
I have this problem, too!
Tell me when someone solves it.
The more people who report this problem, the more it gets noticed.
The more people who report this problem, the more it gets noticed.
The company has acknowledged this problem.
Create a customer community for your own organization
Plans starting at $19/month
-
Inappropriate?Hi Brenton,
We're looking into this. Thanks!
Olivia -
Inappropriate?I can confirm that this is a Zed Nine problem, not an iPhone GPS problem.
I used a different app to track my most recent trip (MotionX). It emailed me the GPX file along with a list of trip statistics:
Name: To Orchard Valley Coffee
Date: Jul 7, 2009 12:39 pm
Distance: 3.25 miles
Elapsed Time: 19:26.0
Avg Speed: 10.1 mph
Max Speed: 21.5 mph
Avg Pace: 05' 58" per mile
Min Altitude: 49 ft
Max Altitude: 141 ft
Start Time: 2009-07-07T19:39:39Z
Start Location:
Latitude: 37.300162o N
Longitude: 121.952273o W
End Time: 2009-07-07T19:59:05Z
End Location:
Latitude: 37.300019o N
Longitude: 121.952412o W
Notice the top speed, 21.5 MPH. Zed9 thinks it's 31.3 MPH:
http://zednine.com/workouts/466
I’m frustrated
-
Inappropriate?Hi Brenton,
We have been looking at this and There are a couple of problems here, all on our side, due to the inaccuracies of GPS tracking. The differences in what you see reported across applications are from what each of them does in processing the raw data: specifically, removing outliers and anomalies. We don't yet have a good algorithm to do this on ZED9, though we clearly need one!
Thanks for your patience. I do want to fix this as soon as we can figure out a good way.
Olivia
-
Inappropriate?We just launched an update with some improvements in how we're smoothing the data to calculate max speed. While not an exact match with the 21.5mph you saw in MotionX, your workout 466 on ZED9 now shows a max speed of 22.1mph.
We don't yet have the capabilities to address the remaining problems around the GPS data highlighted by workout 384. The new max speed algorithm did cut down the reported max on workout 384 to 45.5mph, but there is still a spike in the speed graph where the app recorded a big jump in your location. Though smoother, we are also still reporting some of the recorded movement while you were staying put at lunch. We hope to continue to continue improving our handling of GPS anomalies over time. Hopefully today's changes help for the interim. -
Inappropriate?Glad to hear that's working better.
Though I really don't understand how a GPX file could be so far off, it sounds like you mostly fixed the problem. For whatever reason, maybe EveryTrail just sucks at making GPX files. The ones I created in Motion-X are all within a couple MPH of your algorithm.
It looks like the graph is still using the old algorithm. #384 still has 200 mph on the Y axis.
The blue hover indicator seems to position itself based on where I actually was on the x (time) axis; however, the graph still ignores idle time. Hence, the location indicator does not correlate speed and location.
I suspect you may be doing something naive on the speed graph (such as evenly spacing every data point, regardless of how long it was time-wise from the previous point). That said, I like that it doesn't count idle time (like the trip duration indicator does).
There should be a threshold (1 minute?) whereby you consider a user to be idle if there's no data for greater than that amount of time. Using this algorithm, you could iterate over all the points in the GPX file and calculate the actual travel part of a trip's duration.
Glad you guys are hard at work! I've had a hard time recommending this to anybody when the important parts (speed and duration) were/are so inaccurate. I do like your UI much better than EveryTrail though. As your site improves, I'll keep telling people about it! -
Inappropriate?Thanks for hanging in there with us Brenton! The speed and duration issues you've been hitting are so far unique to the iPhone tracking apps.
The speed spike at the beginning of your ride 384 may not be an EveryTrail issue though. What most likely happened is that the GPS accuracy was low when you first started the app so it placed you in a location relatively far from where you actually were. When it locked onto more satellite signals for higher accuracy, your location changed significantly, fast. Cleaning the data to remove anomalies helps when there are just a few points out of line, but there's not much we can do with real data that just happens to be wrong.
I've been looking further into the idling issue you saw. While it is particular to the way EveryTrail handles idling, I'm not actually convinced it's a bug, or at least not something we should auto-correct: does staying in one place always mean you're idle? What if you break to do a set of pushups? You may still want to consider this part of your workout time. Some software (e.g., Garmin's) auto-pause when you stop moving, but that makes it hard to track mixed workouts (which is also how we originally accumulated a big pile o' tracking devices).
If you go back to EveryTrail, two options that may help are 1) pause while stopped (they actually call it Stop, but you can resume) or 2) you could try increasing the distance filter in the app's GPS settings so that it doesn't record a new location unless you travel further than the default 10m. -
Inappropriate?Velocity issue
---
iPhone A-GPS seems like a reasonable explanation.
The correct way to handle this situation may be to run a normalization algorithm over each point: If point B is more than x% above the expected value, as computed with A & C, redact it. Show a message saying "your graph contains anomalies," with a toggle to count/discount outliers.
Another solution would allow the user to edit his own data to filter out such points by hand.
Idle time
---
I've seen the idle issue in both MotionX and BikeMyDrive (EveryTrail). In both apps, I stop the track, go about my business, and resume again when I finish.
ZedNine's location and duration features behave as if idle time (where I have stopped the tracking) is included in the workout. The speed graph omits it.
I don't mean to litter your app with toggles, but like the ability to redact anomalies, you may want to include a setting for this in the Edit workout section.
Customer service
---
I appreciate that you are actively tracking the issues I report. It makes me much more likely to continue testing Z9. =)
Good luck! -
Inappropriate?Thanks for the great feedback and ideas, Brenton!
It's interesting and good to know that the app was paused. I looked through the raw GPS file and didn't see any significant time breaks -- it actually looks like the app kept recording your location even while paused! That would explain why that time shows up on ZED9. So far you're the first to encounter this, but I'll take another look and see if I can find a marker we can use to exclude that data.
We do intend to continue improving our overall data anomaly handling over time, but in the short term we don't have a good, scaleable solution that we can implement.
Though it's by no means a great experience, there is one workaround available now: you can always manually edit the source file on your computer. I actually did this last night when I found that I had forgotten to stop my Garmin after my run in the morning. It only took a minute, but some comfort with looking at structured data files definitely helps.
Thanks again for your continued support and feedback. I love seeing your rides on ZED9!
Olivia -
Inappropriate?The GPX file looks correct to me:
...
< trkpt lat="37.293942" lon="-121.958198">
< ele>26.986446</ele>
< time>2009-07-17T21:11:06Z</time>
< /trkpt>
< /trkseg>
< trkseg>
< trkpt lat="37.294061" lon="-121.957496">
< ele>13.000000</ele>
< time>2009-07-17T21:46:40Z</time>
< /trkpt>
...
MotionX elapsed time: 11:43.9
Zed9 elapsed time: 45:33
http://zednine.com/workouts/496
(I added spaces above to keep GS from breaking the XML) -
Inappropriate?I've found the problem now. Thanks Brenton! The root issue is actually non-trivial so it may take us a bit of time, but I will keep you posted.
-
Inappropriate?Hi Brenton,
We applied a new duration algorithm for .gpx files today to ignore inactive time. We reprocessed all of your existing workouts and, though not an exact match with your other tracking programs (see below), the numbers are now much closer to what you were expecting for active time.
Durations for the workouts you listed the MotionX stats for above are registering as a little bit shorter on ZED9. This surprised me but in looking closer at the raw data I do believe this is correct. Using workout 496 as an example:
Your trip out was from 21:05.43 to 21:11.06, or 5:23 total.
Your return trip was from 21:46.40 to 21:51.16, or 4:36 total.
We removed another 35 seconds of time in which you were stationary (stoplights?) from that 9:59 travel time, for a new duration on ZED9 of 9:24. I am still not sure what MotionX was counting to get to 11:43.9, but at least they are now in the same ballpark.
Please let me know if you have any more questions!
Thanks,
Olivia
-
Inappropriate?Thanks for your efforts!
I'm not seeing the changes on all of them. EveryTrail didn't record trip duration, so I can only compare my most recent trips:
Z9 shorter:
http://zednine.com/workouts/466
Z9 - 0:16:45
MX - 0:19:26
Z9 shorter:
http://zednine.com/workouts/494
Z9 - 0:15:31
MX - 0:18:35
Z9 longer:
http://zednine.com/workouts/493
Z9 - 1:03:32
MX - 0:37:02
Z9 shorter:
http://zednine.com/workouts/496
Z9 - 00:09:24
MX - 00:11:43
Z9 longer:
http://zednine.com/workouts/497
Z9 - 02:43:33
MX - 02:25:43
Z9 longer:
http://zednine.com/workouts/509
Z9 - 01:38:12
MX - 00:28:14
I don't have a comparison for this one, but I know 9 hours is much too high:
http://zednine.com/workouts/446
The charts still seem to be off. EveryTrail behaves well in this situation. Although their total travel time includes untracked time, they usually cut it out of the graph. More importantly, their graph is always properly synced to the map:
http://www.everytrail.com/view_trip.p...
http://www.everytrail.com/view_trip.p...
The trip your algorithm thought was 9 hours totals to 12 on EveryTrail. (I promise I wasn't biking that long). In this example, there is some dead time that made it into the graph, but the graph always correlates to the map:
http://www.everytrail.com/view_trip.p...
MotionX counts the time between start and stop for each leg. (They call it a stopwatch). I don't mind from a trip duration POV if you cut out time at stoplights, etc., but I would like to see those points marked on the graph. =) -
Inappropriate?We do still have a bug around workout pauses in some situations. Unfortunately EveryTrail seems to trigger it more often -- not sure why. We will keep trying to track this down and keep you posted. Thanks for your patience.
Loading Profile...



EMPLOYEE