Home | Research | Delivery | Empennage | Wings | Fuselage | Finish | Engine | Electrical | GRTDecode

GRTDecode - GRT LOG file decoding utility


The Grand Rapids Technologies Horizon I EFIS / EIS system has the functionality to record flights. These LOG files can then be replayed on a PFD. This was originally designed as a 'demo' functionality but its value is also now being seen in data logging. One of the attractions for me was during test flying, some of the data collection functions - notes on speed / heights etc - wouldn't be needed and the information could be extracted later. GRT didn't already have a decode program (too busy developing functionality for the PFD / AHRSs) however in conjunction with some existing users, GRT have provided the specs for log file (Thanks Jeff) and OK'd for this to be used outside the company (Thanks Greg).


I've subsequently been working on a utility to extract this information into a generic form which can then be used as people see fit. The basic system is working, with some of the subtles - for example each PFD has its own analog input calibrations, and currently I haven't been able to take this into account, but most people won't notice the difference.

The original program is a simple command line utility - which takes a .LOG file in and generates XML output. The XML can then be converted to whatever people want - currently I've got a XML -> HTML rendering XSLT hosted at rvproject.gen.nz which is probably a good start for most people. Just open the XML output up in MS Internet Explorer and look at the data. I've also sorted a simple Windows GUI interface which makes it easier for most functions.

An example output 1 and output 2 are here

NB: The log files can get very big - XML is very verbose ASCII text, however it does ZIP / compress well. The current version currently produces summary records (one per second) rather than the raw feed as this keeps the file size to a more managable level.

Google Earth

For a little entertainment, if you have Google Earth installed (http://earth.google.com), and have GPS1 feed the flight path data can be extracted and displayed - a couple of examples are below.

An example of Google Earth rendering Walter CNO flight and Paul's Aeros are here


Current version is 2.22

Windows GUI version download here.
Command line version (full feature list) download here.

Development version is 2.25 (includes different GPS decoding)

Windows GUI version download here.
Command line version (full feature list) download here.

A generic XLSX which might be useful for visualising the output download here.

Windows Usage

Extract the .exe and .dll into a directory and run the EXE. Select the .LOG file you want to convert and the destination .XML filename. Then click 'decode'.

Command Line Usage

In its simplest form, from a 'DOS' window (Start->Run->cmd.exe) (command.com on pre 2K/XP/NT machines), cd to the directory with the binary, and run from there with something like 'GRTDecode --infile DEMO0000.LOG --outfile DEMO0000.xml'. Then open the DEMO0000.xml file in IE (sorry I haven't checked other browsers - but it is standard XML / XSLT conversions).

Other command line options are available to provide more flexibility - run "GRTDecode --help" for more informaiton.


  • Please bear in mind this is un-supported by GRT, any data errors I'm very keen to get flagged but otherwise as I don't have a flying plane so I must focus on other things as a priority ;-)
  • The analog values require calibration constants - these are specific to a PFD (ie. therefore playing a .LOG on a different PFD to the one it was recorded on will provide a SLIGHTLY different representation). Currently the constants are hardcoded - but visible in the XML output. I may be able to refine these to 'theoretical values' given some time and hopefully long term we will be able to read the constants dynamically as needed.
  • GPS decode supports Aviation and NMEA fotmats, you can change the setup under the 'options' box. Garmin 430 is normally Aviation format, Internal GRT GPS is NMEA format
  • The XSLT sheet is available via the website - this provides an easy way of presenting the data in a neat manor and also providing a prompt for new versions when they are released.
  • No error checking is done on the inbound file stream - it may be that strange results will get generated if something starts going awol.
  • The non-summary functionality is there in the command line version, but you probably don't want it. Likewise the verbose option adds even more detail to the XML but little value for normal use. The XML files do compress well however.
  • The Google Earth generation is dependant on pressure altitude and provides better resolution, but can struggle with terrian heights, it uses the gps 1 data for location.
  • The size of log file depends on the number of data streams involved, if you have Wx, Traffic, two GPSs, ARINC, EIS, and all the analog lines used the log files will be bigger than if a "simple" MFD + SL-40 and EIS.
  • The maximum log size is currently dependant on memory available in the recording MFD. Again, Wx, traffic all take memory to run and terrain also grabs a chunk. On my non-Wx / Traffic, but with Terrain Horizon I with version 30a I think 1 hour should be comfortable

Quick guide to recording LOG files

  1. Make sure that your thumb drive is compatible with the EFIS (not all are). The easiest way to do this is to copy the demo files from GRT of the web, plug this into the EFIS, and select "run demo". If it sees the demo files, the thumb drive is OK.

  2. To record a file, have the thumb drive (with at least a Meg free per five minutes of recording - total duration is MFD application memory limited) plugged into the EFIS (or a USB extension off the EFIS). When you want to start recording, push the right bezel button. Keep selecting "Next" until you see a "Demo" option. Push that button until you have highlighted "Record". Stop pushing buttons! The EFIS will think a few seconds, then display a message that it is recording.

  3. To Stop recording, do the same thing to bring up the "Demo" button, but select "Stop". It will take it awhile to finish writing the file. Be patient. When the buttons disappear, the file is finished.

  4. Plug the Thumb Drive into a computer, and copy the file - you're done!

Example LOG files

We will have to review how much traffic this generates, but in the mean time some example logs from Paul.
  1. Paul Dye DEMO0017
  2. Paul Dye DEMO0018
  3. Paul Dye DEMO0019
  4. Paul Dye DEMO0021

Many thanks to Paul Dye for the samples, notes and photos.


Lots of things could be developed from this in future - and I'm keen to know what others are looking for. For example I think it would be neat to have a pretty Excel rendering / graphs or maybe a website upload / decode / render system - however it isn't currently a high priority thing for me, as I don't have any data from ZK-VII (yet).

Finally - if you have problems / need to send me a LOG file please can you ZIP / compress it first, any questions / bugs / comments let me know - contact details are here.

Regards Carl

Carl Morgan