GPX Logger

Cell MapA simple GPS data logger, designed to be robust and battery efficient.

Intended to be hands off, its ideal for recording your latest walk, run or cycle.

GPX Logger records files onto your memory card in the GPX file format, which can be readily imported into most mapping software.

As it only requires low end hardware (Froyo 2.2 and above) it can be used in more adventurous projects such as model plane or rocket black box recording.

GPX Logger

Cell Map

GPX Logger (Ad Free)

 Cell Map

 

Categories: 

Comments

113

Click to view comments

Al's picture

I agree it would have to be a custom extension, bit of a shame it's not in the base schema.

I've had a look a phones but I'll have to wait until I'm due a new one or the price comes down before I can help you there. For the moment you could you use one of the barometer based altimeter applications to do additional logging.

Thanks for providing this; it's a lightweight and elegant program that does exactly what it's supposed to do.

However, Exiftool doesn't seem to like the GPX files it produces; do you have any experience or insight to this? Perhaps suggestions on another tool I could use to update the exif data?

Thanks very much, it's appreciated.

Al's picture

Thanks John,

I haven't played with ExifTool but I should have some time in the next week.
My guess would be that it doesn't like the time and date string, you can try enabling 'Save time zone' in the settings to see if this makes any difference. Be warned that this can cause problems with other software though.

Update
It was the GPX time and date, enabling the 'Save time zone' works using ExifTool 9.90 on Windows 7:
exiftool -geotag test.gpx test.jpg

Ah, I see - thanks very much.

My first experiment was with the time zone included, but it didn't work; I think that was because the time wasn't set properly on my camera. Curse you, Daylight Savings Time!

Anyway, I found that with the "Save Time Zone" option turned off, the time recorded appears to be local time zone. When I copied the GPX and converted the times to Zulu time (I'm in UTC-4) Exiftool 9.90 was able to apply the data correctly.

Thanks very much for an excellent little tool and for your quick response.

And I'm pleased to confirm you're right. My apologies for bothering you when the error was on my end.

Al's picture

Not a problem, glad it works.

Hi.

I recorded a route today in my Motorola G 1st generation and now I can't find the gpx files.

Thanks for your help.

I just noticed that the GPX file is storing localtime, with Z suffix, whereas per your comment above it should be Zulu time with Z suffix, right?
Motorola Moto E running Android 4.4.4, App version 1.1.3

Al's picture

Thanks, I'll look into that - not sure when I'll be able to get time though.

Al's picture

I've just published a fix so it should be available in the next few hours.

There's also now an option to save the time as UTC, local time or local time with offset.

Hi I have a Motorola G2 phone. Application worked well for a couple of tests but now does not appear to generate a file, I can see a file name and points accumulating when I record but when I stop and then look for the file in the GPX logger folder no file has been saved. I assume it is something very simple but cannot workout what.

Al's picture

Hi, Did you connect your phone using USB and browse it on a computer? If so it might be worth using a file manager app on the phone to look for it.

Yes I tried a search when connected via usb for a file (20150616) but it was not found. If it is not an obvious parameter I have miss set I will reinstall and see if that fixes it.

Very odd. Reinstalled application with same result. Deleted GPX Logger folder and tried again. No folder or file. Turned phone off then back on and looked again - folder created and both test logging files were there. Seems that the log data was being held in a buffer/cached and only transferred on shutting down???.

If you have any ideas it would be interesting and if I come up with a conclusive answer I will let you know.

Thanks for the application.

Al's picture

Some phones will hide a file if they think an application is still accessing it to prevent corruption.

To get round this you can either restart the phone or use a file manager app on the phone to copy the GPX file elsewhere, just make sure the you quit GPX Logger first.

My last phone was really bad when it came to this but the new one seems fine.

Hi Al,

Thank you very much for your superb GPX Logger.
I would like to record and evaluate my phones GPS "noise floor" since I am in the progress of building my own bluetooth device with the aim of at least an order less noise than usual inbuilt antennas.

Anyway, yesterday I have been recording for some minutes and it seems (confirmed by a short test today) that GPX Logger only records a changed coordinate if the phone was actually moved. If it is kept steady, I have many positions recorded with exactly identical positions showing literally zero noise. (INFO: Settings “Min time (s)” = 0, “Min distance (m)” = 0.0, and 7 to 10 satellites tracked).

Once I have set "Min distance (m)” = 0.01 and 7 to 10 satellites are tracked, I see update intervals which can take longer than 100 seconds, indicating that this is a feature of the phone. Do you use the fused positron or GPS only signal?

Now, if this is a hidden feature you have implemented to save battery would there be an option to disable this? Or is this some feature my phone comes with (Google nexus on 4.4.4) and you have no control over? Would it be possible to switch to some more accurate reading on the expense of battery life?

On a different point, would you be willing to provide an option which would allow starting rec only once a certain accuracy limit is reported from the device (and keeps recording once it has been reached!)?

Many thanks and all the best,
To

Al's picture

Hi To,

Thanks, I'm glad you find it useful.

The app uses the GPS location rather than the fused location, mainly as it reduces power usage a little.

In theory if you set both the minimum time and distance to 0 you get locations as the GPS provides them. In practice this seems to vary depending on the GPS unit and firmware.

The app does use the highest accuracy GPS setting so it does seem odd to me that you seeing those results. I've just double checked on a Sony Xperia M2 running 4.4.4 which works as expected.

Sounds like a firmware 'feature' to me but I'll keep looking for a solution.

I like the idea of starting the recording when the accuracy passes a threshold - I'll give it a think.

1. light
2. simple
3. works
The only comment for track store on the SD card...
Rgds, Vaclav

Al's picture

Thanks Vaclav, I'll look into adding an option to store the logs on the SD card.

hi
love your application
could the application save the gps file on the external sd ?
and may i know if GPX Logger is a sevice ? i mean is always running in background even when i don't use it
i use a s3 neo
kisses

Al's picture

Hello, thanks very much.

I'm going to add the option to save the GPX file in the location of your choice in the next version I think.

If the satellite icon is in the notification area then its running in the background. To stop it press the 'power' button on the bottom right of the application. You can also long-press this button and it will stop it without prompting you.

Hi
thank you so much !
i really like it your application , i tried several application , but i love it

may i ask you a question ?
does it record coordinates every seconds ?
is there a way to save every (for example) 10 seconds?
could it reduce battery consume ?

kissessss

Al's picture

Thanks very much!

In the settings if you set the 'Min time' to 10 that should work, although it does depend on your device's hardware. It should also reduce battery consumption.

Hello,

I really like your app, one question, why the speed is not stored in the recorded data?

Regards.

Al's picture

Hello,

Speed was used in the GPX 1.0 standard but removed in version 1.1, it's more accurate to calculate speed by looking at the distance and time between consecutive recorded points rather than taking it from the GPS device.

A terrific, simple GPS logger... seems very accurate and battery efficient. Only one thing missing, tho... Would it be possible to display the Distance Traveled for the current track? Please let me know if this feature exists in your future plans for the app.

Al's picture

Hello, I'm going to add it when I get a bit of time. Glad you like the app, thanks.

Al's picture

I've added it but there's no filtering on it so it will pick up every bit of jitter with your GPS.
Please let me know if it's any use.

Program saved to my phones internal memory only. No setting to place GPX file on external SD card.

Al's picture

I'm looking into adding this in the next version.

Frequency is 1 second despite setting on 5 seconds. App does not bother settings for time and distance.

Al's picture

Unfortunately a few devices seem to completely ignore these settings.

It would be nice to allow us to change the folder of logs. Users have low space on internal memory and plenty of space on external card. Thanks

Al's picture

Hello, I'm hoping to add this soon but it will only work on devices with KitKat or better.

Since this seems to be an often-requested feature, I thought I would note that it's working in the most recent version - I'm storing coordinates to my external card as we speak.

While time will tell - I've been using it for half a day - at first glance this is a great app - lean and effective.

Al's picture

Thanks, I'm glad you find it useful.

Hi Al
Some time ago here was doscussion about barometiric pressure readings. Are there any news? I'm searching for application to log GPS and barometric pressure to carry around less devices :-) (output as GPX)
As of now it looks like all are relying on adding evelation data based on mathematical model, rather than using barometric readings, it would be great if your application can suport it.
To the calibration topics discussed: usually one of the 'easy' options is used (this can be in general done on any point of track, but most often being done on start/end):
- Calibrate on known elevation: On actual GPS position I know elevation which I enter and this calibrates (re-calculation needed) the recording (my preference see below)
- Calibrate on known pressure: On actual GPS position I know what is the pressure, which calibrates (re-calculation needed) the recording

Then there are more complicated methods e.g. use closest airport (as elevation of airport is known and airports usually also provide actual weather data) or usage of weather forecasts where it is forecasted that for e.g. my region pressure today in 1000m will be 900 hPa
And also there are more compllicated compensation as this also depends on temperature and potentially weather changes

However for non-professional usage I consider the "I know my actual altitude" as more than sufficient, because in 99% of all cases I start from known place (=known elevation) or on the way I have some known altitude (peak, lake, river, touristic marker etc...) when I got there I simply enter the altitude and this recalculates the recording. Also alternativelly the applicaiton can build database of these already entered figures so next time when I start on the same place it calibrates automatically (or I can only click 'auto calibrate')

Apologize for longer text, but tried to give more info...
What do you think about this feature for your application?

Peter

Al's picture

Hello,

Thanks for your ideas on the subject, but the one problem is I don't have access to a device with a barometer.

I agree that calibration from a know altitude is a good start although more severe weather fluctuations could throw this too far out. Another option would be to use a site like Weather Underground to find a local pressure measurement and compensate for the altitude difference.

If I was going to implement this I think it would be more suitable in an app that logged a variety of sensors.  I'd like to keep GPX Logger as lightweight as possible as this is a plus point for many of my users.

Please consider enabling the "Move to SD-Card" feature for this app.

Keep up the good work!

-Dave

Dear Ear-to-Oak,
i've been using your GPX Logger for quite a while now. I do appreciate how simple and light it is, but I feel that an important function is missing: the possibility to "pause" the logging and then to restart it again (without having to create a new log).

This is function is provided by many other GPS loggers and I find it useful: for example one can stop logging to spare battery when he has to stay for a couple of hours inside a building.

I hope you will implement it in a next update.

All the best,
Michele from Italy.

Al's picture

Dear Michele,

Good idea, I'll add it to the next release!

How can ı extract the values of bearing direction and vehicle speed from this application ?

Al's picture

Currently the bearing is not saved in the GPX file, but I'm currently testing an update that will save it along with the speed. If this doesn't break anything expect to see it soon.

You can use the GPSBabel utility to calculate the speed and bearing from existing files by using the command:

gpsbabel -t -i gpx -f input.gpx -x track,speed,bearing -o gpx,gpxver=1.0 -F output.gpx

It also has a GUI:

  • Change the 'Format' in both input and output to 'GPX XML'
  • Select your input file and a file to save to by clicking the two 'File Names(s)' buttons
  • Click 'Filters' and 'Speed' and 'Course' (bottom right of the new window that opens), followed by 'OK'
  • In the 'Output' section click 'Options', then tick 'Target GPX  version for output' and enter '1.0' next to it. Accept it by locking 'OK'
  • Convert the file by pressing 'OK'

Hope that helps.

I know Lightroom will read GPX files. Has this been tested?

What is the frequency it records locations?

Does it use the Cellur locator or actual Satellites?

Thanks, RIc.

Al's picture

I haven't used Lightroom but if it reads GPX files I guess it will work.

You can change the recording frequency in the settings page by changing the 'Min time' value. If your device is having trouble getting a location it may be longer though. Setting this to 0 will update it as fast as your device can manage, this is usually 1 second but with some it's every 0.1s.

It uses GPS satellites for the location but your device may use cellular and WiFi points to speed up the initial lock.

Hope that helps.

I’ve just noticed today that a few Russian satellites are now showing up on the satellites screen, so now they are involved with deciding the GPX fix location?

Can we have the ability to enable/disable GLONASS? I’ve read where location accuracy can suffer when using both. I will refer you to here… http://fellrnr.com/wiki/GPS_Accuracy

This is a great app!! Thanks

Eric

Al's picture

Thanks Eric,

The GPS and GLONASS interaction is all done behind the scenes by Android, unfortunately the app can't control which system is used. There might be an option in your device's settings but I haven seen this as yet.

Thanks,

Eric

I tried to load the GPX file to RunAsOne website and they could not parse the file.
Here is the answer from RunAsOne:
It looks like the files you have are in GPX 1.0 format. We currently only support GPX 1.1 (which came out in 2004). Do you know if GPXLogger can save in GPX 1.1?

So which gpx file format uses the GPX logger ?

Al's picture

It uses GPX version 1.0 as I found more applications supported this.  I may add the option to switch between versions at some point if I find it is causing too many problems.

You can use a site such as GPSies to convert your recordings to v1.1, there are a few others as well.

 

Pages

Click to add a comment