Talk:TTTracklog

From OpenTom
Revision as of 08:25, 22 July 2011 by Bello (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

TTTracklog works with following Navcore versions

Navcore Version TTTracklog
1.10 1.11 1.12 1.13 1.14
7.162 (GO/GO x00/x10/all ONE) YES
7.901 (RIDER 1st/2nd) YES not tested YES
7.903 (GO/GO x00/x10/ONE 1st/ONE 2nd) YES
8.010 (GO x20/x30/ONE XL/ONE 3rd) not tested YES
8.203 (GO x40) NO seems YES not tested
8.302 (GO x20/x30) YES not tested YES not tested
8.310 (GO x40) not tested
8.350 (GO x20/x30/x40) not tested YES not tested
8.351 (GO x20/x30/x40) not tested YES
8.370 (GO x40) not tested
8.371 (GO x40) not tested
8.410 (One IQ/XL IQ) YES not tested
8.411 (One IQ/XL IQ) not tested YES not tested
8.413 (XL IQ Live) not tested
8.414 (One IQ/XL IQ) not tested YES not tested
8.415 (XL IQ) not tested
8.417 (XL IQ Live) not tested
8.419 (XL IQ Live) not tested
8.550 (XXL) not tested
9.001 (GO x50) not tested
9.022 (GO x50/One IQ/XL IQ) not tested YES not tested
9.024 (GO x50/One IQ) not tested
9.025 (GO x50/One IQ/XL IQ) not tested NO not tested
9.026 (GO x50/One IQ/XL IQ) not tested YES* YES*
9.051 (GO x50/One IQ/XL IQ) not tested YES*
9.16 (GO 720) not tested YES*

*: It works but it does not display any messages (Flicker problem of Navcore 9.x).

Please let me know about your experience with TTTracklog on your device. Thank you!

Personalize TTTracklog

By default, TTTracklog saves

  • in the .itn file: one waypoint every 20 minutes, and another point every time you stop more than 29 seconds
  • in the .gpx file: one trackpoint every second

If you want to change this and so to personalize TTTracklog, you have to modify a file (which is a script) named TTTraglog-wrapper. The TTTraglog-wrapper script is located in the 'bin' folder on your TomTom device.

To personalize, simply put the options you want on the line 'options="--clean ..."', just behind '--clean':

[...]
# You can add some commandline options here (behind --clean)
options="--clean --gnt --gnd --gnn"
[...]

Under Windows, use Notepad2 to modify it (http://www.flos-freeware.ch/notepad2.html)
The TTTraglog-wrapper script will not work any longer if you are using the original Windows' Notepad or WordPad!

Under linux, you can use almost every editor to modify the script.

On the TomTom device itself, you can use the editor pico to do it, without the need of connecting it to a PC.

Tip: If you don't want to change the wrapper everytime you want to change some settings, why not make several TTTracklog-wrapper(1-2-3-4) files with different settings and make an entry in SDKRegistry with aditional cap files. This way, you can have its own (start) button for each of the settings.

Commandline options

-h --help                   TL  -  Usage
-d <path>                   T   -  set folder for data files. Default: </mnt/sdcard/statdata>
--gpsdev <device>           T   -  set alternate NMEA input device. Default: /var/run/gpsfeed *2
-g                          T   -  don't produce gpx files
-g <filename.gpx>           L   -  set gpx output to file
-o <filename.itn>           L   -  set itn output to file
-i                          T   -  don't produce itn files
-a                          T   -  produce altitude files
-a <filename.alt>           L   -  set altitude output to file
--aac                       TL  -  altitude auto correction (*1)
--amc <value>               TL  -  manual altitude correction, value in meters (*2)
--agc                       TL  -  altitude correction by simple geoid model (*2)
-s                          T   -  don't produce txt files (stats)
--gi <seconds>[,<seconds>]  TL  -  set minimal gpx trackpoint time interval in seconds. Default: <1>
--ii <minutes>[,<minutes>]  TL  -  set minimal [and maximal] itn waypoint time interval in minutes. Default: <20>
--gm <meters>[,<meters>]    TL  -  set minimal gpx trackpoint distance in meters
--im <meters>[,<meters>]    TL  -  set minimal [and maximal] itn waypoint distance in meters
--gc <degrees>[,<degrees>]  TL  -  set minimal gpx direction difference in degrees
--ic <degrees>[,<degrees>]  TL  -  set minimal [and maximal] itn direction difference in degrees
--gnt                       TL  -  set local time as trackpoint name in the gpx files
--gnd                       TL  -  set tour distance as trackpoint name in the gpx files
--gnn                       TL  -  set trackpoint number as trackpoint name in the gpx files
--gwp                       TL  -  also save waypoints into gpx file
--ih <seconds>              TL  -  set itn pause time in seconds. Default: <29>
--gh <seconds>              TL  -  set gpx tracksep halt time in seconds. Default: <2>
--il                        TL  -  don't set local time (set then GMT) for data in the itn files
--ti <seconds>              TL  -  set tour separation time in seconds. Default: <16>
--clean                     T   -  clean (purge) the buffer before TTTracklog begins the recording
--decimate                  TL  -  decimate the generated points (in gpx) with Douglas-Peucker-Algorithmus
-v                          TL  -  be more verbose
-q                          TL  -  be more quiet
T = available for TTTracklog
L = available for log2itn
(*1) = will not work for log files produced by TomTom GPS chips
(*2) = implemented in Version 1.14 and newer

Further options

Altitude correction

The Tomtom height bug

Some Tomtom GPS-Chips (see table below) tell the height above WGS84 ellipsoid instead of producing the height above sea level (ASL). The difference between the height ASL and that above WGS84 ellipsoid is not constant (varies between -106 m and +85 m [1]) although it varies quite smoothly. The correction for a particular position can be obtained with the online geoid calculator.


TomTom Models with the height bug
Model height bug Option for TTTracklog Option for Height Option for GPSBabel
TomTom ONE 3rd Edition YES --agc h-48.4 -x height,wgs84tomsl
TomTom GO 520/520T NO none h0.0 none
TomTom GO 720/720T NO none h0.0 none
Note: the option for Height is an example where the correction needs to be -48.4 m.

Solution for TTTracklog

Flag-en.gif Some people have asked, what the new options --aac, --amc, and --agc do. On my TomTom, --aac is not usable. I use --agc instead. This will correct the height values. This option is not set by default, because it might be that your TomTom behaves differently from mine. If you think, your device behaves similar to mine, use it, otherwise find out, if the usage of --amc with a manual set value can produce better results for you. Let me explain the full story: My TomTom always showed height values which used to be 40 m off from the values I expected (found in the maps). The 40 meters are valid in the region I live, it might be different in your country. I found out, that the TomTom GPS-Chip has a bug: instead of producing the height above sea level it tells the height above WGS84 ellipsoid. I think this is a bug, but it looks like all TomTom GPS and many others have this. The difference of these two is 40 meters in my country. So I implemented the --amc command, where I could specify 40 meters, which then are simply subtracted from all altitude values. This of course is not very flexible. So I found out, what values have to be used for correction depending on the position on the earth (socalled geoid-height). This data can be used to autocorrect the height values. Thats what --agc does. Last, you might ask, what --aac is good for. My answer is: forget it! Except for you happen to have (the first known) GPS device, which has corrected for bug, and can tell the correct height. Then probably --aac can switch between height above WGS84 ellipsoid and height above sea level.

Flag-de.gif Gemäß NMEA 0183 Standard ist in Element 9 des GGA Sentence die Höhe über dem Meeresspiegel zu übertragen. Leider halten sich nicht alle GPS-Empfänger an diese Vorgabe und übertragen stattdessen die Höhe über dem WGS-84-Ellipsoid. Dies scheint auch bei den TomTom-Geräten der Fall zu sein. Der Höhenunterschied in Deutschland beträgt etwa 48 m. Diese Höhendifferenz hat in Element 11 übertragen zu werden. Wenn der GPS-Empfänger diesen Wert übertragt, ist eine automatische Höhenkorrektur möglich. Dieses kann dann mit der Option --aac aktiviert werden. Mein TomTom überträgt hier aber nur sehr seltsame Werte, die daran zweifel lassen. Deshalb ist diese Option defaultmäßig abgeschaltet. Stattdessen kann man nun eine Konstante Höhenkorrektur angeben (mit --amc), welche dann von der falschen Höhe über dem Meeresspiegel abgezogen wird. Alternativ kann man die Korrekturwerte auch aus einem einfachen Geoid-Modell berechnen lassen. Dies wird mit --agc aktiviert und sollte für die meisten Fälle genau das richtige sein. Aber es kann auf verschiedenen TomTom-Geräten ggf. doch falsch sein, deshalb sollte es ausprobiert werden.

Note: The altitude correction will not change the values in the .log file. It is effective only in all derived data (.gpx and .itn files, statistics etc.).

Set timezone other than CEDT/CEST (West Europe, UTC+01)

If you want to change this default Timezone, you have also to modify the TTTraglog-wrapper:

...
# Set timezone (relative to UTC)
# Here is a quick solution:
# export TZ=UTC-02 
# And this is the best solution (including daylight saving times)
export TZ="CEDT-01:00:00CEST-02:00:00,M3.4.0,M10.4.0"
...

Instead of CEDT/CEST (which is West Europe timezone), you can specify many other timezone either by name or by offset (in hours) relative to UTC (GMT):

The value of TZ can be one of three formats. The first format is used when there is no daylight saving time in the local time zone:

 std offset

The std string specifies the name of the time zone and must be three or more alphabetic characters. The offset string immediately follows std and specifies the time value to be added to the local time to get Coordinated Universal Time (UTC). The offset is positive if the local time zone is west of the Prime Meridian and negative if it is east. The hour must be between 0 and 24, and the minutes and seconds 0 and 59.

The second format is used when there is daylight saving time:

 std offset dst [offset],start[/time],end[/time]
 

There are no spaces in the specification. The initial std and offset specify the standard time zone, as described above. The dst string and offset specify the name and offset for the corresponding daylight saving time zone. If the offset is omitted, it default to one hour ahead of standard time.

The start field specifies when daylight saving time goes into effect and the end field specifies when the change is made back to standard time. These fields may have the following formats:

 Jn     This specifies the Julian day with n between 1 and 365.  February 29
        is never counted even in leap years.
 
 n      This specifies the Julian day with n between 1 and 365.  February 29
        is counted in leap years.

 Mm.w.d This  specifies day d (0 <= d <= 6) of week w (1 <= w <= 5) of month
        m (1 <= m <= 12).  Week 1 is the first week in which  day  d  occurs
        and  week 5 is the last week in which day d occurs.  Day 0 is a Sun‐
        day.
 

The time fields specify when, in the local time currently in effect, the change to the other time occurs. If omitted, the default is 02:00:00.

Here is an example for New Zealand, where the standard time (NZST) is 12 hours ahead of UTC, and daylight saving time (NZDT), 13 hours ahead of UTC, runs from the first Sunday in October to the third Sunday in March, and the changeovers happen at the default time of 02:00:00:

 export TZ="NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0"

Here is an example for Sydney, New South Wales, Australia (which might be correct)

 export TZ="AEST-10:00:00EDT-11:00:00,M10.1.0,M4.1.0"

The third format specifies that the time zone information should be read from a file. This is out of the focus here.

The quoted parts are cited from the release 2.77 of the Linux man-pages project. If you are interested in how timezone and daylighsaving time imformations is handeled on UNIX operation systems search the WEB for "man tzset". You should get a long introduction.

Starting with Version 1.09 the times in the itn files is now stated in local time and can be influenced by setting the timezone. If you dont want this (and have GMT times as they come from the GPS) there is a new commandline option --il which can disable this feature.

Another example: (which is for Québec/Canada)

 export TZ="EDT+05:00:00EST+04:00:00,M3.2.0,M11.1.0"

Automatically compress (gzip) the nmea-*.log files

To save space on the TomTom Device and if gzip is installed (install from utility collection, which contains a gzip; put gzip in the 'bin' folder), old .log files will be automatically compressed. If you don't want this feature, you can switch it off by modifying the TTTracklog-wrapper script and set

dogzip=no  (instead of yes).

.log files can be compressed to 1/8 th of the size.

Automatically delete the nmea-*.log files

If you want old (= all days except the current one) .log files to be removed, set

dogzip=no  (instead of yes) and
removelog=yes (instead of no).

Automatically compress (gzip) the .gpx files

To save space on the TomTom Device and if gzip is installed (see above), old .gpx files will be automatically compressed. If you don't want this feature, switch it off by modifying the TTTracklog-wrapper script and set

gpxgzip=no  (instead of yes).

.gpx files can be compressed to 1/9 th of the size (this is the factor I have with gpx files generated by Garmin Etrex).
openstreetmap.org directly accepts gzipped gpx files and the editor josm (http://josm.openstreetmap.de) also directly loads them.

Further options, extensions

Stop button

Screenshot of the new buttons from the extension package

Extension from Bernard: see here
Simply add and replace the files from TTTracklog with the files from this package.

whereami

whereami saves the informations about your current location (can be used for example to synchronise the informations with a photo you have taken at the same time).

log2itn

log2itn permits to generate new .gpx and .itn files from the original .log file. It is also availabe for linux/intel and Windows.

Examples of a modified TTTraglog-wrapper script

Example 0: (you are lazy and have to save mamory space)

[...]
# You can add some commandline options here (behind --clean)
options="--clean --decimate --agc"
[...]

means:

  • '--decimate': reduce the number of trackpoints in the gpx file as much as possible
  • '--agc: correct altitude values to get height over sea level
  • a .txt file will be created (statistics)
  • the other default option will be considered: '--ti 16'

Example 1: (good for geotagging of photographs)

[...]
# You can add some commandline options here (behind --clean)
options="--clean --gi 5 --gnt --ii 10 --ih 300"
[...]

means:

  • '--gi 5': a trackpoint will be saved every 5 seconds in the .gpx file
  • '--gnt: the local time will be set as trackpoint name (description) in the gpx file
  • '--ii 10': a waypoint will be saved every 10 minutes in the .itn file
  • '--ih 300': an additionnal point will only be saved if you stay immobile more than 5 minutes
  • a .txt file will be created (statistics)
  • the other default option will be considered: '--ti 16'

Example 2: (if you want to save the data on an external SDCARD)

options="-d /mnt/movinand/your_directory --clean --gm 90 --gnd --ii 0 --im 5000 --ti 600"

means:

  • '-d /mnt/movinand/your_directory': the .log and .gpx files will be saved under a directory named 'your_directory' on the external SD card (you have first to create this directory)
  • '--gm 90': a trackpoint will be saved every 90 meters in the .gpx file
  • '--gnd: the distance will be set as trackpoint name (description) in the gpx file
  • '--ii 0 --im 5000': a waypoint will be saved every 5000 meters in the .itn file

(if you don't add the commandline option '--ii 0' (0 minute), a track point will only be saved every 20 minutes in the .itn file, because the default value in time (20 minutes) is stronger than the optional value in meters)

  • '--ti 600': effect 1: during your tour, if you power off the TomTom more than 600 seconds, TTTracklog will automatically start a new track when you will turn on your GPS again. ONLY WORKS WITH TOMTOM ONE MODELS (or navcore < 8 ?)
  • '--ti 600': effect 2: during your tour, if you stop and start again TTTracklog but the stop duration will be less than 600 seconds, TTTracklog will not automatically start a new track. WORKS WITH ALL TOMTOM MODELS
  • a .txt file will be created (statistics)
  • the other default option will be considered: '--ih 29'

Example 3: (if you are only interested in the NMEA.log output (+itn files))

options="--clean -g -s"

means:

  • '-g': no .gpx will be created
  • '-s': no .txt file will be created (statistics)
  • the other default options will be considered: '--ii 20' and '--ih 29'

Example 4:

options="--clean --im 5000 --ii 20 --ic 45"

means:

  • a waypoint will only be saved in the .itn file when the 3 conditions are cumulated: distance more than 5000 meters, time more than 20 minutes and direction difference more than 45 degrees.
  • a .gpx file will be created
  • a .txt file will be created (statistics)
  • the other default options will be considered: '--ih 29', '--ti 16' and '--gi 1'

Example 5: (this is good for mapping streets)

options="--clean --im 0,5000 --ii 0,20 --ic 0,45"

means:

  • a waypoint will be saved every 5000 meters
  • another waypoint will also be saved every 20 minutes
  • another waypoint will also be saved every direction difference more than 45 degrees
  • a .gpx file will be created
  • a .txt file will be created (statistics)
  • the other default options will be considered: '--ih 29', '--ti 16' and '--gi 1'

Example 6:

options="--clean --im 1000,5000 --ii 5,20 --ic 10,45"

means:

  • a waypoint will be saved every 5000 meters
  • another waypoint will also be saved every 20 minutes
  • another waypoint will also be saved every direction difference more than 45 degrees
  • another waypoint will also be saved when the 3 conditions are cumulated: distance more than 1000 meters, time more than 5 minutes and direction difference more than 10 degrees.
  • a .gpx file will be created
  • a .txt file will be created (statistics)
  • the other default options will be considered: '--ih 29', '--ti 16' and '--gi 1'

Automatic start

With Version 1.14 (later than 2010-01-27) TTTracklog can now being started directly at boottime (before the Navcore Application has started). It is not garanteed, that this works on all TomTom devices, so please give me feedback about this feature.

On my device I did:

  1. Add --gpsdev /var/run/gpspipe to the options in the TTTracklog-wrapper. (not recommended, navigation gets slow and retarded.)
  2. Add following line at the beginning of the file called ttn (on top of the TomToms filesystem)
 /mnt/sdcard/bin/TTTracklog-wrapper &

or if the ttn file does not exist, create one (but only with a linux compatible editor) with the following content:

 /mnt/sdcard/bin/TTTracklog-wrapper &
 ttn &

This worked for me: The boot process now takes a bit longer (depending on the options like dogzip etc you have set), when the navigation application has started, the message "TTracklog-has started" appears and the logging is running. With the stopbutton you can stop it, or you can restat it anytoime with the buttons. can somebody please confirm, that this works! Hm, I found out, that is tttracklog is started before ttn application, the whole navigation is slower and retarded. It looks like, tttracklog prevents the navcore from correctly set up the gps-device. So better start ttn first and then (after a while) start TTTracklog. This can be done by introducing a pause in the ttn script or swap the order:

 ttn &
 sleep 30
 /mnt/sdcard/bin/TTTracklog-wrapper &

If this is not working for you, here is a more complicated other suggestion: This solution works for:

NC 7.xx not necessary NC 8.xx YES NC 9.16 NO
It's using /var/run/gpspipe nowadays (a FIFO fed by TTN), but the problem that TTN needs to run first remains. A way to check whether TTN is ready is to send a command via the /var/run/*TomTomNavigationServer* interface and wait for the result to appear. This is my start script:
#! /bin/sh
PIPE="/var/run/gpsfeed"
APIREQUEST="/var/run/TTT.TomTomNavigationServer"
APIRESPONSE="/var/run/TomTomNavigationServer.TTT"

start_ttt() {
       [ ! -e "$PIPE" ] && mkfifo $PIPE
       rm -f ${APIREQUEST}.* ${APIRESPONSE}.* 2>/dev/null

       REQUEST="${APIREQUEST}.$$.1"
       RESPONSE="${APIRESPONSE}.$$.1"

       echo -ne 'GetApplicationVersionV01|\0' >${REQUEST}.message
       echo 'finished' >${REQUEST}.finished

       while [ ! -e "${RESPONSE}.finished" ] ; do
               sleep 1;
       done

       rm -f ${RESPONSE}.* 2>/dev/null
       
       /mnt/sdcard/bin/TTTracklog-wrapper
}

start_ttt &
So far it works reliably with the One at FW version 7.9 and the Go 930 at version 8.35 sitting here on my desk, but no field tests have been done yet. --Woelfisch 00:25, 13 September 2009 (CEST)
Bello: I found out that /dev/gpsfeed is not even existing before the navcore application starts. But /dev/gpspipe is, and I could do a cat /dev/gpspipe in the ttn start script and this worked. I just wonder what gltt (which is already running then) is good for...
Mikk36: After finding out that TTTracklog won't be automatically started after RESUME (only NC ???) I took the liberty to tinker with the ttn script a bit, here's what I came up with

The ttn file:

#!/bin/sh
echo "/mnt/sdcard/start_logging &" >> /etc/rc.resume
ttn &
/mnt/sdcard/start_logging &

The start_logging file:

#!/bin/sh
sleep 30
/mnt/sdcard/bin/TTTracklog-wrapper &
With this script it is started at both BOOT (after pressing the reset button, holding down the power button or after being connected to PC) and RESUME (quick press at power button). Tested with Navcore v9.004 on GO920. --Mikk36 14:49, 1 April 2010 (CEST)
Bello: Since this is not necessary on my Device (TomTom ONE v3, NC 7), please add a comment on which configuration this is necessary. Thanks!
Mikk36: Since the battery has gotten rather weak and because I hide the PNA every time I leave the vehicle, I don't want to have to turn logging back on again manually when returning to the vehicle (and turning the PNA on). This way I know that when the PNA is used, it will log for sure. Also, it seemed to me that when the sleep command is in a seperate script which is called with &, the ttn will start up quicker.
JpE54: Carminat Live Tomtom (Renault) : The boot files are loaded into memory from the container "loopdir\loopback.ex3". Put the file "ttn" would allow to start TTrackLog ... and load binary from SD card without load "SDKRegistry". how can i do ?

TTTracklog terminates, if /var/run/gpsfeed doesn't exists

This bug is present in:

NC 7.xx NO NC 9.16 YES

[Solution] Save this shell script to Autostart-TTTracklog.sh (line-endings: LF, encoding: ASCII) in the root folder of your memory card (SD-Card).

#!/bin/sh
#----------
# Start TTTracklog
ME="$0"
MYDIR="`dirname \"$ME\"`"
PRG=TTTracklog-wrapper
GPSDEVICE="/var/run/gpsfeed"
LOGFILE="$MYDIR/Autostart-TTTracklog.log"
#----------
# To enable logging set: LOGGING=1
LOGGING=0
if [ $LOGGING = 1 ]; then
  exec 2>&1
  exec 1>>"$LOGFILE"
fi
echo "Scriptdir: $MYDIR"
if [ -r "$MYDIR/bin/$PRG" ]; then
  echo "Found: $MYDIR/bin/$PRG"
  (
    # Wait for GPS device.
    echo "Wait for GPS device ... [`date`]"
    while true; do
      [ -r "$GPSDEVICE" ] && {
        echo "GPS device OK: $GPSDEVICE [`date`]"
        # cd "$MYDIR/bin"
        echo "Start: $MYDIR/bin/$PRG"
        # TTTracklog-Wrapper creates background process.
        "$MYDIR/bin/$PRG"
        break
      }
      sleep 5
    done
  ) &
else
  echo "Cannot find: $MYDIR/bin/$PRG"
fi
unset LOGGING
unset LOGFILE
unset GPSDEVICE
unset PRG
unset MYDIR
unset ME

This script assumes that the TTTracklog-wrapper script is located in the bin directory of your memory card. This is the normal installation path for TTTracklog. The script waits for the existence of the GPS device file (/var/run/gpsfeed), which is created in the normal start-up process. This avoids assumed delays in automatic start-up attempts.

Add the following lines to your ttn file in the root folder of your memory card:

#----------
# Start TTTracklog background process.
"`dirname \"$0\"`/Autostart-TTTracklog.sh"

And, voilà, TTTracklog will start automatically.

Start from TTconsole

This is only ment for the experienced (linux) user: The manual start of the program can be performed as follows:

  • Install TTconsole
  • Execute TTconsole and type in:
 TTTracklog &

(The & is important)

Afterwards you can quit TTconsole. If you want to stop Tracklogging, it is easiest to simply reboot the TomTom. If you want to check if TTTracklock is running, excecute TTconsole and type

 ps x

If TTTracklog appears somwhere is the list you get, you can savely assume that it is still running.

Tours

Flag-de.gif Touren werden anhand von Unterbrechungen des GPS-Datenstroms erkannt. Das passiert entweder, wenn TTTracklog neugestartet wird (Unterbrechung dann ca 5 bis 25 Sekunden, je nach Groesse der log-Dateien), oder aber auch, wenn das TomTom ausgeschaltet wird. TTTracklog kann dabei weiterlaufen und es ist auch nicht nötig, es immer neuzustarten. (Nur, bevor man es an den PC anschliesst, sollte man TTTracklog stoppen oder neustarten, damit die gpx-Dateien sauber rausgeschrieben werden.)

Je nach --ti Einstellung kann man es etwas an die Gegebenheiten anpassen, z.B. wenn man TTTracklog neustarten will ohne dass eine neue Tour angelegt wird, empfiehlt sich ein Wert größer als ca. 100 oder so.

FAQ: Frequently Asked Questions

Q: During the day of the first use I have notice that the output files in gpx and itn format and the track summary (txt) are missing.
A: The gpx and (final) itn files and also the track summary will only be written if
  1. a new day has started,
  2. TTTracklog is restarted (with the button),
  3. TTTracklog is stopped (with the stop button from the extension package, see below),
  4. or it gets a HUP signal.
In addition to this, the (preliminary) .itn file will be written every 15 minutes.
Q: I use TomTom Navigator 5 on a PDA running windows mobile 2003. I've been trying to get TTTracklog to work but it doesn't. What is wrong?
A: Sorry, windows mobile 2003 is incompatible with TTTracklog and the add-on applications. No linux, no fun!
Q: Why does TTTracklog put the files, it produces in so many different folders? One could collect them alltogether in a folder called TTTracklog/.
A: Because the TomTom Navigation software expects them to be there. E.g. if the itn files are in the folder itn/ , the route planning can find and use them. If the .txt files are in the text/ directory, the document viewer will be able to browse them. With the statdata folder there is no application linked to it except, the TomTom put the statistics collected for IQ routes there. But this place can be changed with the -d option. If you want to read more about the standardization of Directories on the TomTom, read DataBackbone.
Q: What is the commandline option -a good for?
A: If this commandline is present, TTTracklog produces an additional temporary file (name: /tmp/altitudes.dat) in request (by signal SIG_HUP) which contains a whitespace separated list of time, speed and height data. It originally was ment to support other applications which want a height history or a speed history. This function is experimental and not used by any application so far. It is safe to ignore this.
Q: Why have some commandline options one - and some other two - (--) ?
A: This is a UNIX convention: if the name of the option has only one letter, only one - us used. If the name has more than one letter (like --ii) two - are used. This makes sense if options with one - can be accumulated like this (But this does not work with TTTracklog, because I was to lazy to implement it. ): -a -g -i equals -agi (with only one -). Or vice versa -hallo wold equal -h -a -l -l -o, but is very different from --hallo which is not interpreted like this.
Q: Why is there no option so that also the names of the locations (like City name and Streetnames) are saved into the itn files.
A: If you want something like this, you should use logpos or Bridgemaster from User:pilsit or Event Logger. These Applications are very slow (guess why) [amacri: sure that Event_Logger is "slow"? :-)], but exacly do this. TTTracklog is designed to be fast and not using much processing power. Unfortuanately this does not allow to ask the NavCore Application for every trackpoint for the name of the location. But: whereami can add(!) the city-/street-names to the .itn files, which have been created by TTTracklog. Maybe this solution would be OK for you.
Q: I do not have a document viewer on my TomTom. How can I view the .txt files?
A: You can activate the Document viewer (and many other new features of your TomTom) by modifying the menu. Here is a page which describes how to do this: menu structure. It looks a bit complicated. Take yourself time to play with it. The Option for the doc-browser is: TASK_DOC_BROWSER. If you are also missing the route manager (so see the .itn files) you should look for TASK_ITINERARY.
Q: What information is the $PGLOR message (in nmea.log files) carriing?
A: Well $PGLOR means undocumented device specific events. There is no documentation about TomTom devices, so I do not know at all. You can guess maybe something. Or you search the internet for information: I can tell you: it is not much there. Here is what I found out:
$PGLOR,<string>,%lX.%ld
$PGLOR,TT,<string>,<string>,<float.3>,<float.3>,<float.3>
$PGLOR,RID,GLL,<int>,<int>,<int>
$PGLOR,CPU,999999.99,<long int>,<long int>,<long int>,<long int>,<long int>,<long int>
$PGLOR,FIX,<string>,TP,<string>
$PGLOR,FIX,<string>,TA,<string>
$PGLOR,FIX,<string>,TR,<string>
$PGLOR,FIX,<string>,ST,<char>,NS,<char>,DR,<char>,PS,<char>
$PGLOR,ULP,999999.99,%lu,%lu,%lu,%lu,%lu,%lu,%lu,%lu,%lu
$PGLOR,LTO,999999.99,%lu,%lu,%lu,%lu,%lu,%lu,%lu
$PGLOR,RID,GLL,<int>,<int>,999
$PGLOR,IGR
Q: Why do I need to specify the offset (in hours) with a minus sign when I want a positive offset in the timezone-strings?
A: I dont know. It appears to work like this. Dont ask me why. It is builtin the operating system.
Q: Why are the .gpx and the .log files not gzipped at the same time/the same position in the TTTracklog-wrapper script?
A: Because to prevent from the (rare) case that a new day has started during the gzipping process, the log files must only be gzipped, when TTTracklog is not running. The .gpx files can be zipped whenever you want. Because TTTracklog will only write them (and not read them in like the .log files). The worst case which can happen here is that a gpx file which has already been gzippe gets recreated by TTTracklog (in which case it will replace the old .gpx.gz next time the gzipping is done). Such, no data will be lost.
Q: I am not satisfied with the resulting .gpx and .itn files. I have given the wrong commandline-options. What can I do, so that I need not redo the whole trip?
A: Assume, TTracklog has produced the nmea-2009-mm-dd.log file, you can reproduce from this data the .gpx and .itn files (and also the track summary) by using log2itn and the right commandline options. You can do this either on the TomTom device itself (using TTconsole) or on any linux or Windows PC (please read the log2itn page how to install and use it). From the console do a
 log2itn statdata/nmea-2009-mm-dd.log -o myitn.itn -g mygpx.gpx <and here the commandline options you want to try>
(see above). This will produce myitn.itn and mygpx.gpx now hopefully with satisfactory settings.
Q: I live in Canada and the tours are always split into two files (when in europe it is midnight). Can I change this so that a new file is created at midnight in Canada?
A: This is now implemented in version 1.09: in the TTTracklog-wrapper script you can set the timezone of your country.
Q: Maybe the log file size can be reduced if only new coordinates are logged on one of three conditions are met: max. distance traveled in meters, max. time passed in seconds, max. heading change in degrees. This gives a similar output to that of Tripmaster.
A: This is a good idea and might be applied to the gpx output (as an option) (Implemented in Version 1.07 and later.). But the nmea-logs will not be filtered. It is a specialty feature of TTTracklog, that the whole GPS data is stored, so really nothing is lost. The nmea-logs also contain GPS satellite information. It is up to you (or better: to a post processing application like log2itn) to extract the information you need out of these logfiles. So this feature request is a WONTFIX at the moment. If you insist, maybe the minilog program by User:Joghurt may serve your needs.
Q: Does an option exists, which should prevent from creating the nmea.log files (to save memory on the device)?
A: In my opinion this does not make sense, because, imagine, no log file is created, then, if you do not properly stop TTTracklog, no track will be saved at all (no .gpx file) and the next time TTTracklog is started everything starts from nothing. Even worse: if there is a .gpx file from the actual date, it would be overwritten. So I think this option would not be very useful, so I decided not to implement it.
Q: Is the data read by TTTracklog missing for the Navcore application, in the way that TTTracklog steals something from the original navigation? If it is said, that TTTracklog purges the GPS "internal" buffer, does this affect the behaviour of the navcore application?
A: Definitively NO. TTTracklog gets the same GPS data, the navcore application also gets. The data is duplicated for reading and there is no interferance at all with other applications which read the GPS data stream. This is a feature of the linux operation system.
Q: Is there a way to show the logged tracks on a map?
A: Yes. itn files can be shown on the TomTom Map itself (see route management) and .gpx files can be shown e.g. on the openstreetmap. Here are instructions how to do it: http://wiki.openstreetmap.org/index.php/Openlayers_Track_example
Q: Openstreetmap refused to upload my .gpx track. Any idea?
A: TTTracklog really produces a lot of trackpoints. It could well be that your .gpx file is simply too big to be accepted by the OSM server. In this case you should decimate the points. You can use the --decimate commandline option for that. This will reduce the number of points in the gpx file without loosing information or reducing the resolution in the horizontal (lon/lat) plane, but regardless of speed, altitude and course information. This is OK for OSM.
Q: I'm trying to compile TTTracklog, but I can't. I've downloaded the kernel sources and the toolchain and I modified the Makefile to fit my paths but make fails because the compiler can't find the file nmea.h. I've looked for it but I can't find it anywhere. Where can I find this file?
A: You do not need the kernel sources. The nmea.h file is missing in the package. I can send it to you via email. Its very small, it just contains function prototypes. You can guess the content and create it yourself, if you want.
Q: How can I change the wrappers to display ISO 8859-1 characters, for ex. é, è, ê, à, ä, ö, ü, etc. ?
A: Simply encode the wrapper in UTF-8 format. For ex. with Notepad2: 'File' - 'Encoding' - 'UTF-8'.

Known bugs or problems

We have detected following bugs:

  • TTTracklog: On Navcore 8.203: segmentation fault, after the first 24 kBytes buffer has been written to nmea-log file. It turned out that the memory for trackpoints cannot be allocated, maybe because the is not enough free RAM available on the device. In Version 1.11 there is a workaround implemented. nearly FIXED In this case you can find following message in the statistics.txt-file:
 MALLOC() failed! This could mean, that there is notenough memory available on
 your device! We asked for 12960000 Bytes.
 Try again with 6480000 Bytes.
 OK, we now have space for 45000 trackpoints.
 This situation is not satisfactory, but may work for a while. TTTracklog may
 crash at the moment when more than 45000 trackpoints where recorded per day.
 This is normally after  12.5 hours. If you can live with that, its OK.

(al though we are asking for 13MBytes this memory will be taken only when there will be really such much tracklogs recorded. During the meantime the memory can be used by other applications.) If you switch off the .itn file generation, the .gpx file generation and the statistics (and also altitude file generation). This memory is not needed.

We have detected following problems:

  • TTTracklog-wrapper: gzip is slow. So starting TTTracklog with options *gzip=yes while previous .log and/or .gpx files are present will take several seconds (while the files are beeing compressed). WONTFIX
  • TTTracklog-wrapper and TTTracklog-stop: If the scripts are edited with an editor, which produces <cr><lf> at the end of a line instead of <lf> (for ex. Windows' Notepad), they will stop working. WONTFIX
  • If the message IO-ERROR 2 [OPEN] appears in the .txt file, this normally means that the directories specified cannot be written to. Have you created the statdata and itn and text directories? Is the directory specified with -d really there? Have you have done some modifications to the TTTracklog-wrapper? If using an external SD-Card: is it write protected? WONTFIX
  • By some people, problems were experienced creating GPX files with TTTracklog on firmware v8.351 - they had to drop down to v8.320 for it to work.
  • leider klappt meine Testerei der Version 1.13 mit dem Rider 1 und TTTrackLog nicht so richtig. Bei meinen Tourenl�gen (ca. 500 km) ist der Rider anscheinend beim "Zusammenkehren der Daten" sprich beim Beenden �erfordert, stockt etwa 5 Minuten und rebootet dann. Damit ist die GPX-Datei nat�lich verloren. UNDER INVESTIGATION It looks like, the RAM memory size is exceeded with so many trackpoints. This could be a fix: Try to switch off gpx file and itn file processing ans also statistics (-g -i -s). In this case, only the logfile will be created, but at least with unlimited number of trackpoints and with low risk of exeeding RAM memory capacity of the device. From the nmea-log file you can create the .gpx file with log2itn later.
  • TTTracklog: After upgrading to Navcore 9, I don't get the message "Tracklog has started" anymore. I am using a TT One, navcore 9.026, TTracklog 1.13. This makes the suggestion (see "Wishes for next version") of having an icon on the main screen that informs you when TTracklog is recording even more useful. Lapo Mori 13:03, 17 February 2010 (CET)
    • This problem appears to be common to many applications and it is known as Flicker bug.
    • I saw this problem after a fresh install on a brand new GO 750, which can get very confusing as I thought TTTracklog did not work at all. Fortunately, it works perfectly. Maybe the documentation should mention that "depending on Navcore version, you can get the start/stop message or not" ? UNDER INVESTIGATION There could be a solution using appstat.

Wishes for next version

  • Indicator of TTTracklog activity. Sometimes I am not sure if the logging is on or off. It would be great to have a red spot (or something similar) in the main TT window (something similar to what Altitude does) to show the activity of TTTracklog. Lapo Mori 13:03, 17 February 2010 (CET)
    A: OK, this is a nice idea. I think this should be realizen with an independent(!) application, which can monitor the presence of a list of applications and show corresponding icons on the screen. The problem is: there is no good way for a consistent screen output method. The things changed a lot on every(!) realease of the navcore firmware. I de not like to mess up with this hell. lets follow this topic on the page of appstat --Bello 09:40, 8 March 2010 (CET)
  • Climb rate in statistics file. For the use I do of TTTracklog in paragliding, it would be great to have the maximum positive and negative climb rates in m/s displayed in the stats file. Maybe they could be calculated in a similar way it now calculates the maximum speed. Ulisse Perusin A: OK, thats easy to do. How should the climb rate be calculated?
  • add something here

Links

Personal tools