GPS MLR SP24XC "Free Flying" & Linux & OLC


back

Siehe auch "Lufträume und das MLR"
Notez aussi "MLR et espaces aériennes"


Since the information displayed on this page might be useful to people all over the planet earth, I'll write it in english and not in a official swiss language ;-)

MLR-Protocol

You should have received a pretty longuish documentation with your GPS. At the end you will find some useful information to comunicate with you GPS, in case, you want to write some software of your own. But the intersting part is missing: The fast transfer. So here it is:

MLR-Protocol for Fast Transfer MLR-Protocol for the fast transfer of tracks for the GPS MLR SP24XC "Free Flying"

Based on this information I've written a perl-script, wich downloads the traces and stores them in the IGC-format. This is all fine, as long as you don't wish to participate at the Online-Contest, because they want the IGC-file signed with a G-Record, to "prevent manipulations".

There are several window$ programs which can produce IGC-files with a valid G-Record:
For Trackview, there exists a Linux-version. I've tried a lot of work-arounds. First I had library problems, and, once I resolved that matter, the program terminated with a seg-fault.
I had the chance to test Trackview on a Window$-machine, but there are problems with the implementation of the MLR-protocol. Only every 27th  trackpoint is downloaded. If you study the MLR-protocol, you will understand what might be wrong. I've sent a comment the author, but he does not want to invest time to fix the MLR-Protocol. And for "security" reasons (see below, section G-Record), he is, of course, not allowed to open the source-code, so I could fix the MLR problem and compile a Linux version. What a pitty...

Current solution

I'm using the Window$-version of Trackview under SuSE Linux 9.1 and the wine package "wine-20050111-SuSELinux91.i586.rpm". With other wine version, trackview crashes when it attemps to open the serial port. Furthermore I'm using a perl-script of mine (written in April, while we had a ton of snow in Lausanne).
First I download the tracks with my program and save them in an IGC-file. Then I use another script to simulate my GPS, but sending only one trackpoint at a time, instead of 27. Trackview reads only every other point, which I can live with. I should probably send every point twice to get the complete track, but I'll do that later. This, of course, makes a G-Record absurd. But is generally true for "security through obscurity".
I've been using SeeYou  Evalution (with wine under Linux) before, but after one month the program stops working. 

G-Record

What is this G-Record anyway? It produced by some algorithm, known only to the author of the software, and, of course, the olc web-server to verify the submitted IGC-files. I guess every program has its own algorithm and I don't know anything about the cryptographic security of those algorithms. There a two problems: First of all, it does not prevent manipulation. It is not straight forward, but one rainy sunday is more than enough. Second, it does prevent the creation of open-source tools to use for the online-contest because a secret algorithm can not be open-source, or it is not secret anymore.
The only solution to make a G-Record secure, and, at the same time, accessible to open-source software, is to implement it into the GPS directly. But since todays models do not seems to do such a thing, it would take years to introduce that...

Download

The scripts I'm using are currently not available for download, because they're one big mess and not userfriendly at all. If you are interested, send me an e-mail, and I'll send you a cleaned version.


back

Ivo Blöchliger   e-mail:  ivo @ linuxbox . ch