GpsPrune icon indicating copy to clipboard operation
GpsPrune copied to clipboard

[Feature Request] Process from GPX Heart Rate

Open snooppr opened this issue 2 years ago • 5 comments

It seems that Gpsprune is missing an important feature (of interest to athletes): processing heart rate values from a .gpx file. Very often, the gpx track contains heart rate values (many trendy bluetooth gadgets write it).

hr=110 example_1: <trkpt lat="55.00000" lon="41.00000"><ele>127.3</ele><time>2023-06-05T16:03:35Z</time><extensions><gpxtpx:TrackPointExtension><gpxtpx:hr>110</gpxtpx:hr></gpxtpx:TrackPointExtension></extensions></trkpt>

example_2:

<trkpt lat="55.000000" lon="41.00000">
<time>2023-06-13T16:50:04Z</time>
<extensions>
    <ns3:TrackPointExtension>
        <ns3:speed>0.5555556</ns3:speed>
        <ns3:cad>107.0</ns3:cad>
        <ns3:hr>110</ns3:hr>
    </ns3:TrackPointExtension>
</extensions>

Ideally do:

  1. Output of heart rate at a point;
  2. Total heart rate of the entire track (min.max. average);
  3. Delete field value add field (remove all heart rate), privacy or any other reason
  4. Display heart rate graph
  5. Edit point add heart rate field
  6. Go to point value (Minimum/Maximum HR value)
  7. Perhaps it's worth doing the same for the file.kml/.kmz format (I won't say for these formats, since I always use .gpx).

Gps prune is a very high-quality software (my respect), but the lack of heart rate parsing in version 23, IHMO, is an omission.

snooppr avatar Jun 13 '23 07:06 snooppr

Reading either a <gpxtpx:hr> or a <ns3:hr> tag seems fairly easy, but being able to save the modified values back into a new GPX file while using the correct namespace extensions is not so trivial. Perhaps the GPX Export dialog needs to be made more complicated to allow you to specify which (or which combinations) of extensions you want to use. It sounds similar to the problems with exporting KML and the shifting parallel specifications.

Going through your list:

  1. by "output" I assume you mean display on screen, like in the details panel or the "full details" dialog
  2. sounds quite specific, but OK if it only appears when the data is present
  3. Delete field value works already for any field
  4. you mean in the altitude profile view?
  5. edit point works for any field already
  6. again, a little specific but maybe
  7. I don't think it's possible to save that information in kml/kmz

One way to do some of what you want would be to convert your data (including the heart rate field) into a csv file - just a regular text file with commas or semicolons or something separating the fields. Then when you load that file you can specify that column as representing heart rate and you can at least show the profile in the profile view, view and edit and delete data etc. But of course you can't save the edited heart rate values in a gpx file.

activityworkshop avatar Jul 01 '23 08:07 activityworkshop

GpsPrune v23 (401) GNU/Linux.

1. Yes. 2. heart rate min. Max. the average is not a specific thing, it is implemented in all sports trackers (in comparison, it is like a track: full climb, min.max.) 3.

Delete field value works already for any field

No, at the moment it is not possible to delete the value of the heart rate field (only fields: height, time, segment) ctrl+a, Interval-->delete field value. 1

4. 2

View-->Graph And in addition, add export png/svg-graphics of heart rate (To do about such beautiful things) ccccc

5.

edit point works for any field already

No, no heart rate (need to be added) Point --> edit point. 555

Thanks for the analysis and for the software, I'm sure that someday GPX support/heart rate will be included in Gps Prune.

snooppr avatar Jul 02 '23 06:07 snooppr

In order to load this data properly, we need as many different examples of data as possible, so that we can test the support for all the different ways of storing it.

If anyone has any complete file examples (including the beginning gpx or kml tags defining the namespaces), please provide them here. At a minimum we need both gpx and kml, and if possible from different sources (eg OpenTracks, Strava, Garmin devices, any other popular devices or tools).

Not all of what you want is feasible (in particular, number 5 where you want to add heart rate data to an existing track which doesn't have any), but we can certainly start with loading, viewing and editing, and then move on to exporting in different formats.

If anyone has any examples, please post them here - the coordinates can be fake, the timestamps can be fake, the heart rate / cadence / power / other field values can be fake, but the files need to be small, complete and with representative tags and structures. Thank you!

activityworkshop avatar May 20 '24 08:05 activityworkshop