Project

fdc

No commit activity in last 3 years
No release in over 3 years
Convert files in the avionics flight recorder data format (IGC) to the keyhole markup language (KML) for display in applications such as Google Earth.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 0.9.2

Runtime

~> 3.0.0
 Project Readme

The IGC flight data format converter

Build Status Dependency Status

About

The fdc tool is a platform independent command-line utility written in Ruby for converting files in the avionics flight recorder data format (IGC) to the keyhole markup language (KML) for their display in applications such as Google Earth.

Requirements

The fdctool can run on any operating system that has at least Ruby 1.9.1 installed. The latest version of the Ruby programming languate can be downloaded from ruby-lang.org.

Install

To install the latest version from Rubygems.org, enter the following from your console:

% gem install fdc

Usage

  • Convert two files to KML: fdc file1.igc file2.igc
  • Save converted file to alternative output dir: fdc -d dest/dir src/dir/file.igc
  • Convert all files in the current working directory and extrude track to ground: fdc -e *
  • Use gps altitude for all files in current working directory: fdc -g *
  • Display usage for more options: fdc or fdc -h

Skytraxx 2.0 synchronization

On Unix-like systems, fdc and rsync can be used to setup aliases to conveniently synchronize a Skytraxx 2.0 device and a computer. Assuming that the mounted volume of the connected device is /Volumes/SKYTRAXX, and the destination folder on the computer is ~/Flights, the following script must be executed from the console:

% echo "alias skytraxx=\"rsync -rv /Volumes/SKYTRAXX/FLIGHTS/ ~/Flights; find ~/Flights -type f -name \*.igc | xargs fdc\"" >> ~/.bashrc

After adding this alias to the shell, new files on the device can be synchronized with the computer and automatically converted by simply invoking skytraxx from the console.

Information for developers

Install from source

If you are a developer and want to install from source, open your console and enter the following:

% git clone git@github.com:nokinen/fdc.git
% cd fdc
% gem build fdc.gemspec
% gem install fdc-X-X-X.gem

Utilized IGC record types

The full specification of the IGC data file standard can be found in Appendix A of the Technical Specification for IGC-approved GNSS Flight Recorders. A HTML reference of the 2008 spec was created by Ian Forster-Lewis and is available here. Right now, only the most important record types commonly utilized by paragliding FR are touched during conversion:

  • A record (FR manufacturer and identification)
  • H record (File header)
  • PLT - Pilot
  • CID - Competition ID
  • GTY - Glider Type
  • GID - GLider ID
  • CCL - Competition Class
  • SIT - Site
  • DTE - Date
  • B record (Fix)
  • L record (Logbook/comments)
  • Only those produced by Skytraxx 2.0 devices

Note that an automatic conversion of all available H and L records in a IGC file was abandoned for the sake of output readability. However, the predifined formatting can easily be extended and changed if neccessary.

File structure of created KML document

The utility creates a <gx:Track> element from the B records, and uses A, H and L records to create metadata for the corresponding <description> element. By default, the barometrix altitude information from the B records is used, and the track is not clamped to the ground, nor extruded. However, this bevavior can be changed through the available command line options.