- buffer="$(timeout "$bufferTTL""s" gpspipe -r)"; # Record gpspipe nmea data to $buffer for bufferTTL seconds
- # Save buffer
- echo "$buffer" >> "$DIROUT"/"$FILEOUT_NMEA""$debugCounter"
- vbm "DEBUG:Completed buffer session $debugCounter" 1>&2;
- # Reset buffer
- unset buffer
+ buffer="$(timeout "$bufferTTL""s" gpspipe -r)"; # Record gpspipe nmea data to buffer for bufferTTL seconds
+ # Process buffer
+ buffer_GPX="$(echo "$buffer" | gpsbabel -i nmea -f - -o gpx -F - )"; # Convert buffer to GPX format
+ buffer_KML="$(echo "$buffer" | gpsbabel -i nmea -f - -o kml -F - )"; # Convert buffer to KML format
+ # Determine output file paths
+ FILEOUT_BASENAME="$(dateTimeShort)".."$SCRIPT_HOSTNAME"_location ;
+ FILEOUT_NMEA="$FILEOUT_BASENAME".nmea ;
+ FILEOUT_GPX="$FILEOUT_BASENAME".gpx ;
+ FILEOUT_KML="$FILEOUT_BASENAME".kml ;
+ # Save processed buffer data
+ echo "$buffer" > "$DIROUT"/"$FILEOUT_NMEA"; # Save NMEA format
+ echo "$buffer_GPX" > "$DIROUT"/"$FILEOUT_GPX"; # Save GPX format
+ echo "$buffer_KML" > "$DIROUT"/"$FILEOUT_KML"; # Save KML format
+ vbm "DEBUG:Completed buffer session $debugCounter ." 1>&2;
+ # Reset buffer and filenames
+ unset buffer buffer_GPX buffer_KML FILEOUT_BASENAME FILEOUT_NMEA FILEOUT_GPX FILEOUT_KML;