Skip to content

Track log#307

Draft
Sybe3010 wants to merge 6 commits intojgauchia:develfrom
Sybe3010:TrackLog
Draft

Track log#307
Sybe3010 wants to merge 6 commits intojgauchia:develfrom
Sybe3010:TrackLog

Conversation

@Sybe3010
Copy link
Copy Markdown

Description

Add a tracking feature, tracks position and elevation. If available also temperature.

Related Issues

Issue: #265

Tests

Currently I haven't done any testing, but the hardware is ordered. So looking to test over two weeks.

@jgauchia
Copy link
Copy Markdown
Owner

Thanks @Sybe3010 I'll test it this weekend.

@jgauchia jgauchia requested review from hpsaturn and jgauchia October 15, 2025 07:19
@jgauchia jgauchia self-assigned this Oct 15, 2025
@jgauchia jgauchia added 🆘 help wanted Extra attention is needed feature Feature labels Oct 15, 2025
@themelisx
Copy link
Copy Markdown

Hi @jgauchia
I've made a tracker in the past for android app so I have some experience on it.
My opinion is to create a smart condition about the "when" you need to save a point.
Do not save points based on timer interval (e.g 10 seconds).
Maybe the device stay too long in the same position (+-5 meters), don't keep all of them.
Maybe the device is running too fast (on a car), you may keep points more fast than interval.
If you need any advice on it, feel free to contact me

@jgauchia
Copy link
Copy Markdown
Owner

Hi @jgauchia I've made a tracker in the past for android app so I have some experience on it. My opinion is to create a smart condition about the "when" you need to save a point. Do not save points based on timer interval (e.g 10 seconds). Maybe the device stay too long in the same position (+-5 meters), don't keep all of them. Maybe the device is running too fast (on a car), you may keep points more fast than interval. If you need any advice on it, feel free to contact me

Correct.
The idea is that it should depend on both position (displacement) and time. That is, if there isn’t a minimum displacement, it shouldn’t record the point. The speed of movement should also be taken into account to record more or fewer points.
Keep in mind that this is a feature I’ve had pending for a while — what’s in this PR is basically the part that handles recording the file. Obviously, the logic still needs to be applied after the user decides to start recording the track.
Thanks for the comment — I was already aware of it.

Thanks a lot for your feedback — I’ll keep it in mind when I implement the logic for "when" the point should be recorded.

@jgauchia jgauchia removed the request for review from hpsaturn October 15, 2025 16:49
float pdop; /**< Position dilution of precision. */
};

struct trkPoint
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add this structure into wayPoint structure? you can add temperature only and reuse the same

" xmlns=\"http://www.topografix.com/GPX/1/0\"\n"
" xsi:schemaLocation=\"http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd\">\n"
"</gpx>" }; No newline at end of file
"</gpx>" };
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Header is the same you can add "extra" tags in class. If you read GPX 1.0 format, I think that isn't necessary to add Garmin TrackpointExtension


static const char* TAGGPX PROGMEM = "GPX Tracker";

static const char* gpxTrackTag PROGMEM = "trk"; /**< GPX track tag. */
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

with tinyXml library you can add tags like addWaypoint in GPXParser class, maybe a new method like addTrackPoint with gpx element?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Feature 🆘 help wanted Extra attention is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants