Garmin TCX format

View: New views
4 Messages — Rating Filter:   Alert me  

Garmin TCX format

by jg.zut :: Rate this Message:

| View Threaded | Show Only this Message

Hi,
I try to read my Garmin Forerunner with GPSbabel, and use the date in
Routegadget. I figured out that I need the gtrnctr,course=0 option, to
get Activities instead of Courses, but the problem is that every
Activity gets the same ID, and every Lap the same StartTime. The problem
then with Routegadget is that it does not recognize the different
Laps/Actifities. I use GPSbabel 1.4.2.

<Activity Sport="Running">
<Id>2012-01-08T09:09:22Z</Id>
<Lap StartTime="2012-01-08T09:09:22Z">

This text is generated in lines 323 and 324 of gtrnctr.c (r4077).I
think that the value gtc_least_time only once gets updated during
writing of the file, but I can not find details about how gtc_least_time
is assigned. So I may be wrong.

But it remains that all Laps have the same ID and StartTime, while the
first datapoint of each Lap in fact has a different timestamp (in
general).

Could this be solved in a next version, such that all Legs are uniquely
identified?

Kind regards,
Jan-Gerard van der Toorn


------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create
new or port existing apps to sell to consumers worldwide. Explore the
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
Gpsbabel-misc@...
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc

Re: Garmin TCX format

by jg.zut :: Rate this Message:

| View Threaded | Show Only this Message

Is guess that the problem is that in gtrnctr.c, gtc_least_time is only
assigned once for all "Laps".

The line
   track_disp_all(NULL, NULL, gtc_study_lap);
in the function "gtc_write" scans the current data for date/times of
all positions, and assings the first date>0 that is found to
gtc_least_time.

Howerver, for each "Leg", this scan should be done individually. I
would suggest to replace the NULL's in the call to track_disp_all(NULL,
NULL, gtc_study_lap); in function gtc_write, with functions that set
begin- and end-positions and -times of the individual Laps, and add
those to an array. That way, the data for the individual laps is known
before the function gtc_act_hdr is called when generating the actual
output.

But that is just a suggestion. I am not a C programmer, so I couldn't
do it myself (unless GPSBabel would be written in Matlab-code).

Jan-Gerard

------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create
new or port existing apps to sell to consumers worldwide. Explore the
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
Gpsbabel-misc@...
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc

Re: Garmin TCX format

by jg.zut :: Rate this Message:

| View Threaded | Show Only this Message

I am wondering, should I have posted this isseu in the gpsbabel-code
mailing list instead of gpsbabel-misc? The latter seems more active.

In the mean time, I an trying to write a sed of awk script to solve it
for the time being, but in the end, I think that an implementation in
GPSbabel is the most elegant way to deal with it.

The issue was that Forerunner tracks (.TCX format) are saved as either
'Activities' or 'Courses', consisting of one or multiple 'Legs'. To
identify the legs in other 3rd party programs, e.g. Routegadget, the
Legs need to have unique 'ID'-tags and 'Starttimes'. Now, all Legs in a
single file have the same ID and Starttime, due to the way the
starttimes and total lengths are calculated.

I suggested to create an array of positions and times during the first
pass through the track (in gtrnctr.c), and use the right time, distance,
and name for each Leg during the second pass.

But this is more code-related than 'misc'.

Jan-Gerard


------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
Gpsbabel-misc@...
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc

Re: Garmin TCX format

by Robert Lipe-4 :: Rate this Message:

| View Threaded | Show Only this Message



On Fri, Jan 13, 2012 at 6:55 AM, jg.zut <jg.zut@...> wrote:
I am wondering, should I have posted this isseu in the gpsbabel-code
mailing list instead of gpsbabel-misc? The latter seems more active.

To discuss bits and bytes, yes.

I didn't pipe in because I don't use the software in question.  Our gtrnctr module is built for Garmin Training Center and you said you were feeding our output to some other program which appears to have different expectations. 

 The issue was that Forerunner tracks (.TCX format) are saved as either
'Activities' or 'Courses', consisting of one or multiple 'Legs'. To
identify the legs in other 3rd party programs, e.g. Routegadget, the

We don't claim to support Routegadget.   If you're interested in adding it, go for it.

Perhaps Traber or Treadgold or the others that know more about TCX can pipe in.

RJL

------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
Gpsbabel-misc mailing list http://www.gpsbabel.org
Gpsbabel-misc@...
To unsubscribe, change list options, or see archives, visit:
https://lists.sourceforge.net/lists/listinfo/gpsbabel-misc