Slowgeek » Forums » General
 
FAQ   •     •   Login  •   Challenge Search:

Correcting run data from iPod Touch/iPhone (Long Post)

(2 posts)

  1. ATJ777

    senior member
    Joined: Sep '09
    Posts: 95

    The following applies to folks that use Nike+ with iPod Touch or iPhone (I guess it could apply to iPod Nano, but I don't have one).

    Those that use an iPod Touch or iPhone for recording their runs with Nike+ will know that the interface for starting and stopping runs is somewhat clunky. To start a run you have to use the touch screen which can be problematic in itself (and why I started using a Nike+ iPod Watch Remote - but that's another story). To take splits during the run you hit the home button. This is probably the best working part of the system and you also get spoken feedback. Stopping a run is even more troublesome. You have to first press the home button to expose the touch screen interface, then pause the run by touching the button on the screen. You then have to unlock your screen so you can end the workout. I find that even if I pause the workout and the end of the run, the iPod does weird things and adds time to the run.

    For my run yesterday things got really messed up. Part of the problem was my fault as there was a crowd of people standing around my finish point and I hit the home button a few metres too early. I then hit the pause button a tad late - probably added a few seconds to my time. I think my run time should have been around 20:43. I had a last click of 20:40.71 and I saw 20:46 on the iPod as the pause. When I later unlocked my iPod and ended the workout, it had my run time listed as 23:05. I have no idea how it came up with this number as I hadn't touched the iPod for 20 minutes after the run. When I inspected the data, it had the pause at 21:43.93. Again, I can't understand where that came from.

    The bottom line was this run as is was unacceptable. It was going to completely mess my statistics - average pace was 4:45 min/km when I have been running around 4:20 min/km. I had thought I would probably upload the run so I could get my splits and then delete it from Nike+.

    I then wondered if someone had recently come up with a way to upload runs independent of iTunes. I knew it could be done with iPod Nano but iPod Touch/iPhone was more of a problem. I went to one of the upload sites and noticed a FAQ talking about iPod Touch and that support wasn't there, yet. In the comments section, there was a point to a Windows applet called iPhone Folders which adds to Windows Explorer and it lets you access data on the iPod Touch/iPhone. I installed it (rebooted) and sure enough I could access a lot of data directly on my iPod, including all the XML files for ALL my runs, including the latest one that I hadn't yet uploaded.

    I pulled the XML file from yesterday's run and opened it up. While the content was much the same as the XML files pulled down from Nike+, the format was slightly different but close enough that I could work out all the fields. It included summary information, the kilometre and mile splits, my user clicks, my pause (at the odd time) and the 10 second intervals which are used for the graph.

    I analysed the data working out which bits were "correct" and which bits did not reflect my run at all. I took the last split a few metres before the finish and I was going to round it up to 10 metres, using the pace of the last split. I then noticed that I had a mile split 19 metres past the last split, so I decided to use that as the end point. I know that was further than I had run so that would be fair. I worked out long it would take to go 19 metres at the pace of the last split and made that my time. I then worked out the overall pace. I then updated the XML file with the new time, pace and distance and also removed the extra extended data showing a minute or so of zero pace.

    I replaced the XML file on the iPod and then synchronised with iTunes. iTunes uploaded the run to Nike+. I refreshed the in SlowGeek and there was my run showing representative times rather than the mess that the iPod had originally. I was pretty pleased that I was able to fix the incorrect data.

    As I was writing this, I realised that I should have just used the duration listed for the last mile split as it was probably more accurate. It had 20:43.75 for 4.829 km (3 miles), so I updated the XML file, wrote it to the iPod, synched, uploaded and refreshed. The run automatically got replaced with the updated data. It is nice to know that I can update one that has been uploaded already - although I don't know if I can only do the most recent run. I will have a play later and see if I can fix an earlier run where the iPod did funny things.

    So, in summary.

    * I installed iPhone Folders ( http://iphonefolders.com/ ) and rebooted (note, this works on XP, Vista and 32bit Win 7 only)
    * copied the XML for the run from
    iPhone folders\<iPod Name>\iTunes_Control\Device\Trainer\Workouts\Empeds\<empid>\latest
    to my hard disk
    * updated the data in the XML file
    * copied it back to
    iPhone folders\<iPod Name>\iTunes_Control\Device\Trainer\Workouts\Empeds\<empid>\latest
    * synched with iTunes as normal

    Once a run has been synched, the XML file gets moved from the \latest folder to \synched so when I did the further update, I copied the updated XML to \latest and deleted the old one from \synched

    I hope this is of value to people. In theory, this process could be used to add runs where you didn't have your iPod but you'd have to make up the data yourself, or modify one of the previous ones and update the relevant data.

    Posted 1 year ago #      

  2. ATJ777

    senior member
    Joined: Sep '09
    Posts: 95

    I was also able to add a run from March where the iPod bombed out half way through, but I was also timing with my stopwatch. There's no graph data, but the run time and splits are accurate.

    The run shows in the list and can be select but obviously there's no line on the graph. It isn't showing up in the year, monthly or weekly stats, though. I guess because the code doesn't expect old runs to be added.

    Posted 1 year ago #      

Reply

You must log in to post.

RSS feed for this topic