APRS mit Linux
Dipl.-Ing. Kai Altenfelder, DL3LBA
Es ist schon erfreulich zu sehen, wie nach dem Erscheinen des APRS-Artikels von Andreas, DD1AAA [1] beinahe täglich neue Stationen auf der DL-Karte erscheinen. Anscheinend, um diese Betriebsart zunächst einmal auszuprobieren und dann aber auch dabei zu bleiben. Schon sind erste Digipeater zu entdecken, die lokale APRS-Stationen über Funk positionieren können und zum Teil bereits über das HamWeb vernetzt sind.
Wie sieht die Situation für den Linux-Nutzer aus, kann auch er die neue Betriebsart verwenden? Nach den vorangegangenen Artikeln [2,3] dürfte klar sein: Er kann.
Mit Linux stehen dem APRS zugeneigten Anwender zwei Möglichkeiten zur Nutzung offen. Entweder er betreibt einen Internet Server, der mit einem TNC versehen ist und so Stationen in lokaler Funkreichweite hört bzw. deren Positionsmeldung wie ein Digipeater wieder aussendet. Solch ein Server läßt sich über TCP/IP mit einer beliebigen Anzahl von anderen Server vernetzen und bietet damit die Möglichkeit, die Bewegung der lokal hörbaren Stationen auch in andere Regionen zu übertragen. Dabei kann die TCP/IP Verbindung sowohl über drahtgebundene Medien als auch über Funk errichtet werden. So wird eine flächendeckende Darstellung von APRS-Stationen ermöglicht, wobei die rechtlichen Aspekte nicht zu vernachlässigen sind (Kopplung Internet/Funknetz). Es sei an dieser Stelle nur das Programm aprsd von Dale, WA4DSY [6] genannt aber nicht näher beschrieben, da dessen Installation und Betrieb erhebliche Vorkenntnisse erfordern.
Sinnvoller für den Neueinsteiger, der in APRS zunächst einmal hineinschnuppern möchte, ist die Benutzung eines Visualisierungsprogrammes, das über einen TNC und/oder eine TCP/IP Verbindung an einen APRS Server angebunden ist.
Als
Visualisierungspro-grammes kommt für den Linuxer das Programm
Xastir von Frank, KC0DGE [7] in Betracht. Es liegt aktuell in
der stabilen Version 0.1.3 vor. Parallel dazu wird an einer
Versuchsversion im Frühstadium (Alpha 0.3.1) gearbeitet, die
allerdings schon so stabil ist, daß im folgenden von dieser
berichtet wird. Xastir wird sehr aktiv entwickelt, neue Versionen
sind in der Vergangenheit häufig im Wochenrhythmus erschienen.
Derzeit hat Frank allerdings eine Phase der Fehlerbereinigung
angekündigt, in der keine wesentlichen neuen Funktionalitäten
hinzukommen sollen. Wer sich den Quellcode von Franks Homepage nicht
selber übersetzen möchte, kann auf die rpm Pakete für
Red Hat Linux [8] von Jose, HI8GN oder für SuSE Linux [9] von
mir zurückgreifen (laut Heiko, DG2DRA läuft letzteres auch
unter Mandrake Linux). Für Debian hat es zwar schon häufiger
Ankündigungen gegeben, ein entsprechendes Xastir-Paket ist aber
bislang leider nicht erschienen.
Sobald
Xastir selber übersetzt bzw. als Paket installiert wurde,
kann es mit dem Aufruf von der Kommandozeile einfach gestartet
werden. Nach dem Öffnen des Fensters ist zunächst nur eine
graue Fläche mit einem überlagerten Raster sehen. Es fehlen
nämlich noch die Karten, die in den oben genannten rpm Paketen
schon enthalten sind und nachträglich vom FTP-Server [10]
bezogen werden können. Für den Anfang sollte die Karte
»World_Countries.map« genügen, mehr kann man sich
später immer noch von dort holen. Die Karten werden vom Programm
in einem Verzeichnis »maps« unterhalb des
Installationsverzeichnisse erwartet, dorthin müssen sie kopiert
werden. In der Menüzeile von Xastir findet sich ein
Eintrag »Maps -> Map Chooser«, der ein Auswahlfenster
öffnet in dem man die installierten Karten anwählen kann.
Nach Selektion und Bestätigung der Karte zeigt sich Xastir
bereits in einem völlig neuen Gewand. Es ist eine Europakarte zu
sehen, in der die einzelnen Länder in ihren politischen Grenzen
mit unterschiedlicher farblicher Darstellung präsentiert sind.
Ein Klick mit der linken Maustaste (festhalten!) innerhalb der Karte
öffnet ein kleines Fenster mit weiteren Optionen, nämlich
»Zoom in/out«, »Zoom Level«, »Pan
up/down/left/right« und »Station Info«. Die
Zoomoptionen vergrößern bzw. verkleinern dern gezeigten
Kartenausschnitt, während die Pan-Optionen die Karte in die
gewählte Richtung verschieben. Bis hierhin ist die Funktion von
Xastir noch verhältnismäßig unspektakulär.
Spannender
wird es schon, wenn man im Menü den Eintrag »Configure ->
Station« auswählt und in dem sich öffnenden Fenster
die Daten seiner Station einträgt. »Callsign«, »LAT«
und »LONG« sind selbsterklärend und für den
Anfang die einzig relevanten Werte. Nach dem Bestätigen schließt
sich das Fenster und wie von Geisterhand bewegt befindet sich auf der
Karte ein Kreuz (das Symbol des X Window Systemes) an der soeben
konfigurierten Position und daneben steht das eingetragene
Rufzeichen. Damit noch weitere Stationen auf dem Bildschirm
erscheinen, muß eine Verbindung zu einem TNC oder eine TCP/IP
Verbindung zu einem APRS Server konfiguriert werden. Unter dem
Menüpunkt »Configure -> Interfaces« verbirgt sich
folgendes Fenster, in dem nach Klicken auf den »Add«
Knopf eine Auswahl von möglichen Interfaces erscheint. Für
ein erstes Ausprobieren ist die Option »Internet Server«
am eindruckvollsten, die allerdings eine Verbindung in das Internet
erfordert, sei es über eine Standleitung oder eine
Wählverbindung. In dem Konfigurationsfenster für den
Internetserver sind bereits die Adresse »www.aprs.net«
mit der Portnummer »10151« vorgegeben, diese können
einfach bestätigt werden. Sobald die Verbindung zu diesem
Rechner steht, beginnt in der linken unteren Ecke des Hauptfenstes
von Xastir ein Schriftzug zu laufen an, der ständig das
Eintreffen von Positionsdaten meldet. Nach und nach füllt sich
der Bildschirm mit den unterschiedlichsten Symbol-Icons von
Stationen. Was diese Symbole im einzelnen bedeuten und wie man sie in
Xastir konfiguriert, ist im Hilfemenü unter »Help
-> Symbol Table« dokumentiert.
Je
nach Tageszeit sind in Deutschland mehr oder weniger Stationen zu
sehen, während bei einigen unser europäischen Nachbarn
eigentlich immer Stations-Icons dicht an dicht sitzen. Nun kann man
mit dem Mauszeiger inmittten einer solchen Gruppe fahren und mit der
linken Maustaste weiter in die Karte hineinzoomen. An dieser Stelle
kann nun der letzte Punkt »Station Info« aus dem oben
erwähnten »Options« Menü erklärt werden.
Steht der Mauszeiger genau über dem Icon, kann man sich mit
diesem Menüeintrag Informationen zur betreffenden Station
ausgeben lassen (befindet sich der Mauszeiger über einer Gruppe
von Icons, so wird ein Popup-Fenster geöffnet, aus dem man
zwischen den in Frage kommenden Stationen auswählen kann).
Dieses Informationen umfassen neben dem Datenpfad zur angezeigten
APRS Station auch Angaben über deren letzter gemeldeter Position
und zum Beispiel einen Kommentar des Betreibers über die von ihm
eingesetzte Software etc.
Da
APRS so richtig interessant erst bei bewegten Stationen wird, sollte
man sich ein Stationssymbol suchen, daß eine ständige
Positionsänderung vermuten läßt, also ein Auto, LKW
oder ähnliches. Die Suche wird erleichtert durch die Anzeige der
Geschwindigkeiten von bewegten Stationen, daher schalten wir sie
vorher im Menüeintrag »Display -> Speed -> On«
ein. Um eine dieser Stationen nun auf dem Bildschirm zu verfolgen,
geben wir im Menüeintrag »Display -> Track Station«
das entsprechende Rufzeichen ein. An dieser Stelle kann unterschieden
werden, ob das genaue Rufzeichen einzusetzen ist oder z.B.
Groß-/Kleinschreibung egal ist. Das konfigurierte Icon rückt
daraufhin in die Fenstermitte. Bei jeder neu empfangenen
Positionsmeldung wird sich nun die Karte unter dem Icon wegbewegen
und damit die Änderung der Position anzeigen. Hat man »Display
-> Station trails« auf »On« gesetzt wird der
jeweils zurückgelegte Weg zusätzlich durch eine farbige
Linie visualisiert. Auf diese Weise läßt sich ohne
Probleme die Bewegung auch von mehreren Stationen über einen
längeren Zeitraum hinweg nachverfolgen. Als praxisnahe Anwendung
im Amateurfunk »Alltag« kommen einem hier z.B.
Mobilfuchsjagden oder Ballonprojekte in den Sinn, wohingegen das
Auffinden eines gestohlenen Fahrzeuges mittels APRS mehr ein
positiver Nebeneffekt sein dürfte.
Mit diesen ersten Schritten kann sich der Xastir-Neuling langsam in die Welt von APRS vortasten und nach und nach die weiteren Funktionen der Software erkunden. Wie bei den meisten anderen Applikationen unter Linux gilt auch hier, daß der größte Lerneffekt beim Ausprobieren und Experimentieren erzielt wird. Die Online-Hilfe von Xastir bietet in weiten Teilen gute Hilfe wobei nicht verschwiegen werden soll, daß sie derzeit nicht der aktuellen Version angepaßt ist sondern noch auf dem Stand der letzten stabilen Version 0.1.3 basiert. Das ist aber ein generelles Problem von freier, sich schnell entwickelnder Software.
Wer
bis hierhin durchgehalten hat und Geschmack an APRS unter Linux
gefunden hat, wird im nächsten Schritt bestimmt seinen TNC
anschließen wollen. Seit der Version 0.2.0 unterstützt
Xastir nicht nur einen direkt seriell angeschlossenen TNC, sondern
auch den vom Linux Kernel gebotenen AX.25 Layer. Dazu wird wieder im
Menü der Eintrag »Configure -> Interfaces -> Add«
ausgewählt. Als erste Variante soll ein »Serial TNC«
konfiguriert werden, in meinem Fall ein TNC31S von Symek [11]. In dem
Konfigurationsfenster wird die Schnittstelle benannt, an der der TNC
angeschlossen ist: /dev/ttyS0 für die erste (COM1) bzw.
/dev/ttyS1 für die zweite (COM2) serielle Schnittstelle
des Rechners. Mit dem Knopf »Activate on Startup?« wird
festgelegt, ob das Gerät beim Programmstart sofort aktiviert
werden soll oder erst später manuell vom Anwender. Mit »Allow
Transmitting?« bestimmt man, ob der TNC nur Daten empfangen
oder auch aussenden soll. Im Abschnitt »Port Settings«
hat der Benutzer die Auswahl zwischen unterschiedlich schneller
Ansteuerung des TNC-Ports. In der Welt der Telefon-Modems wird dieser
Wert gerne mit der Übertragungsrate des Modems verwechselt, es
handelt sich aber um die Schnittstellenge-schwindigkeit! Der »Port
Style« ist bei meinem TNC »8,N,1«, also acht
Datenbits, ein Stoppbit und keine Parität.
Die »Igate Options« regeln den Datenaustausch zwischen den verschiedenen konfigurierten Interfaces: Hier sind unbedingt die jeweilig geltenden Bestimmungen zu beachten! »Disable all Igate traffic« trennt komplett zwischen Internet(TCP/IP)- und Funkverbindug über einen TNC, d.h. über Funk empfangene Positionsmeldungen werden nicht auf dem TCP/IP-Interface ausgesendet und umgekehrt. »Allow RF to Inet traffic ONLY« läßt lediglich die Aussendung von Funkdaten über TCP/IP zu aber nicht den umgekehrten Weg. »Allow RF->Inet and Inet->RF traffic« schaltet ein bidirektionales Gateway zwischen Funk-TNC und TCP/IP-Verbindung, auf beiden Interfaces werden die empfangenen Daten auf dem jeweils anderen Interface wieder ausgesendet.
In den folgenden drei Eingabefeldern können unterschiedliche Pfade konfiguriert werden, auf denen die UnProto Pakete ausgesendet werden. Im Normalfall ist nur ein Eintrag nötig, der mit dem Standartwert »RELAY,WIDE« vorbelegt ist. Diese Einstellung geht davon aus, daß man sich in relativ großer Entfernung zum Digipeater befindet bzw. mit geringer Leistung sendet (z.B. Handfunkgerät TH-D7E). Befindet man sich in nur geringer Entfernung zum Umsetzer, genügt an dieser Stelle ein Eintrag »WIDE«. Hinweise über weitere Variationsmöglichkeiten finden sich in den »APRS Operation Notes« [13].
Die
beiden letzten konfigurierbaren Textfelder betreffen die Skripten,
die zur Initialisierung bzw. zum Rücksetzen des TNC aufgerufen
werden. Beide Werte sind vorbelegt und zeigen auf zwei Dateien, die
im Verzeichnis config unterhalb des
Xastir-Installationsverzeichnisses liegen, also z.B.
/usr/lib/xastir/config/. Diese Dateien werden von der
Installation mitgeliefert und müssen gegebenfalls noch auf den
eigenen TNC angepaßt werden (Handbuch des TNC bemühen!).
Wenn all diese Angaben eingetragen wurden, können sie mit »OK«
bestätigt werden. Daraufhin erscheint in der rechten unteren
Fensterecke ein (weiteres) gelbgrünes Symbol, welches das
konfigurierte Interface darstellt. Der gelbe »Deckel«
steht dabei für das konfigurierte Interfac an sich, während
der grüne »Boden« anzeigt, daß das Interface
»UP«, d.h. aktiv ist. Die Aktivität bzw. Inaktivität
eines Interfaces kann man im laufenden Betrieb übrigens unter
»Interfaces -> Interface control« umschalten. Sobald
Daten über ein Interface fließen, wird dies mit einem
roten Pfeil in der Mitte des Symbols angezeigt, wobei die Richtung
des Pfeils jeweils Empfang oder Aussendung angibt.
Der Anschluß eines »AX.25 TNC« im Menü »Configure -> Interfaces -> Add« funktioniert prinzipiell genauso, nur daß anstelle der Port Parameter und der Start- und Stop-Skripten lediglich der Name des AX.25 Devices (definiert in der Datei axports [14]) angebenen werden muß.
Damit ist der TNC für den APRS-Betrieb konfiguriert und es kann losgehen. Alles was der Xastir-Benutzer jetzt noch braucht, ist entweder lokal empfangene APRS-Stationen oder einen APRS-Digipeater in Hörweite.
Die Hinweise auf allgemeine Hinweise zu APRS hat Andreas in seinem Artikel [1] bereits gegeben.
Auf der Webseite von Frank, KC0DGE [7] finden sich neben den grundlegenden Informationen zur Konfiguration von Xastir auch Formulare, um sich in die Benutzer- und/oder Entwicklermailing-liste [4,5] einzutragen. Hier werden die neuesten Informationen zu neuen Versionen oder zwischen-zeitlich behobenen Fehlern zugänglich gemacht. Auf beiden Listen wird in englischer Sprache kommuniziert.
Kai Altenfelder
Kopernikusplatz 32
90459 Nürnberg
ka@suse.de
Literatur:
[1] Andreas Puschendorf, DD1AAA, »Packet Radio mal anders«, CQ DL 3/2000, Seite 187-188
[2] Kai Altenfelder, DL3LBA, »Was bietet Linux den Funkamateuren?«, CQ DL 3/2000, Seite 176-177
[3] Kai Altenfelder, DL3LBA, »SSTV mit Linux und der Soundkarte«, CQ DL 4/2000, Seite 247-248
Mailinglisten zu Xastir:
[4] Benutzerdiskussion
[5] Entwicklerdiskussion
Links im Web:
[6] Homepage von Dale, WA4DSY
[7] Homepage von Xastir
http://www.eazy.net/users/fgiannan/xaprs/
[8] Homepage von Jose, HI8GN
[9] SuSE FTP Verzeichnis
ftp://ftp.suse.com/pub/projects/ham/i386/
[10] Karten für Xastir
ftp://aprs.rutgers.edu/pub/hamradio/APRS/map02/
[11] TNC31S von Symek
http://symek.com/tnc/tnc31.htm
[12] APRS Seite von KD4RDB
http://www.qsl.net/kd4rdb/aprs.htm
[13]APRS Operation Notes
http://www.dididahdahdidit.com/text/ops.txt
[14] AX.25-HOWTO
http://www.tu-harburg.de/dlhp/HOWTO/DE-AX25-HOWTO.html (deutsch)
http://www.linuxdoc.org/HOWTO/AX-25-HOWTO.html (englisch)