
This page is
describing, how
D-RATS, a
well known D-STAR chat and file transfer program made by Dan Smith,
KK7DS, can be used for decoding and map display of APRS data. For the
moment this is done by using an external ATMEGA 8 microcontroller. The
processor is doing code conversion from NMEA type WPL sentences into
D-STAR compatible format. WPL data are provided by GPS-Trackers like
TINYTRAK 4, OPENTRACKER or all those APRS compatible KENWOOD-Radios.
Because Dan is interested in implementation of directly decoding WPL
sentences with D-RATS, maybe one day the external code converter could
become unnecessary.

D-RATS auf einem ASUS "EEE PC901"
Nachdem im
D-STAR-System
neben digitalisierter Sprache auch z.B. Textmessages und
GPS-Navigationsdaten übertragen werden können, weckte das
mein Interesse. Dabei stellte ich
allerdings sehr schnell
fest, daß eine fehlerfreie Datenübertragung hierbei ohne
geeignete Zusatzmaßnahmen kaum möglich
ist. Während der Beschäftigung mit D-STAR bin ich dann aber
mehr zufällig auf ein Programm mit dem Namen D-RATS gestossen. Es
stammt von Dan
Smith, KK7DS und kann von seiner Homepageseite:
http://d-rats.danplanet.com
heruntergeladen werden. Das Programm dient vorwiegend dem Text- und
Fileaustausch
über
D-STAR, bietet darüber hinaus aber auch die Möglichkeit
der
Verwaltung und Kartenvisualisierung empfangener GPS-Signale. Bei
bestehender zusätzlicher Internetverbindung lassen sich die
Standorte empfangener Stationen dabei sehr komfortabel mithilfe von
Online-Kartendaten ermitteln und darstellen. So können z.B. die
Bewegungen von
Mobilisten sehr bequem bis hinab auf Strassenniveau
verfolgt werden.
Begeistert von den Möglichkeiten dieses Programmes überlegte
ich mir, ob man D-RATS nicht auch in irgendeiner Weise für APRS
nutzbar machen könnte. Aufgrund der unterschiedlichen
Übertragungsformate zwischen D-STAR und APRS würde das zwar
( noch ) nicht direkt möglich sein, vorstellbar war jedoch eine
Wandlung
der von APRS-Trackern ausgegebenen Protokolldaten in das von D-STAR
benutzte Format.
Abb.1
zeigt das Textfenster von D-RATS mit den dort eingehenden Daten.
Dabei handelt es sich um ursprüngliche WPL-Datenfiles, die
mithilfe
des auf dieser Seite beschriebenen Codewandlers in ein
vereinfachtes RMC-Format ( 1.Zeile ) und eine Ident-Kennung bzw.
Absender-Call
( 2. Zeile ) umgewandelt wurden. Die gelb hinterlegte Ausgabe
deutet darauf hin, dass diese Daten vom Programm als GÜLTIG
erkannt wurden.
Im unteren Teil des Schirms werden die vom Programm verwalteten Daten
aller vorher empfangenen Stationen angezeigt. Die Visualisierung der
darin enthaltenen Positionsdaten kann über das im rechten Bildteil
gezeigte Map-Fenster erfolgen.
Viele APRS-Tracker, wie z.B. TINYTRAK4, OPENTRACKER und auch die
APRS-tauglichen KENWOOD-Geräte geben ihre Ausgangsdaten als
NMEA-Files unter Verwendung des Protokolltyps: "WPL" aus. Somit galt
es, die Inhalte dieser WPL-Protokolle in das von D-STAR benutzte Format
zu
convertieren. Die eleganteste Lösung würde natürlich
eine direkte
Implementierung des WPL-Formates in D-RATS darstellen*. Alternativ
könnte man sich aber auch ein separates WINDOWS-Tool vorstellen,
welches die
an einem Port X ankommenden Daten nach Codewandlung wieder an einem
Port Y
zur Verfügung stellt, worauf D-RATS dann zugreifen könnte.
Nachdem die angedachten Programmlösungen aber von mir selbst nicht
umgesetzt werden konnten, habe ich stattdessen eine externe
Mikrokontrollervariante realisiert. Dabei werden die von einem
GPS-Tracker
mit
RS232-Pegelwerten bereitgestellten WPL-Protokolldaten auf TTL-Pegel
gebracht und einem Prozessor des Typs ATMEGA 8 zugeführt. Dieser
wandelt sie in ein
D-STAR-kompatibles Ausgangsformat und stellt sie an seinem seriellen
UART-Ausgang wieder zur Verfügung. Zur Weiterverarbeitung am PC
kann
dieses Signal nun entweder einer Pegelwandlung zurück auf
RS232-Pegelwerte
unterzogen werden , aber es besteht auch die Möglichkeit der
Nutzung
eines USB-Wandlers, wozu sich z.B. ein Baustein wie der "FT232RL"
von FTDI nutzen
ließe. In Abb.2 sind beide Varianten angedeutet.
* Inzwischen stehe ich auch in
Kontakt mit Dan, KK7DS, dem Programmautor von D-RATS. Einer
Implementierung auch der WPL-Datensätze in sein Programm steht er
sehr positiv gegenüber, kann dafür aber noch keinen Termin
nennen. Es ist aber abzusehen, daß der auf dieser Seite
beschriebene
Codewandler irgendwann einmal nicht mehr erforderlich sein wird.
Abb.2 Codewandler mit entweder
RS232-Ein- und Ausgang oder Ausgang über USB-Adapter
Die Verwendung eines USB-Adaters
vereinfacht die Anordnung, da die Zusatzeinheit hierbei
über den USB-Port gespeist
werden kann.
Im Handel sind Baugruppen (
http://www.chip45.com/index.pl?page=Crumb8-USB&lang=de
) verfügbar, die sowohl einen geeigneten Prozessor, als auch den
benötigten USB-Wandler auf einer gemeinsamen Platine
bereitstellen. Der Aufbau einer kompletten Converteranordnung wird
damit besonders einfach, weil nur noch wenige zusätzliche Bauteile
erforderlich sind ( Abb.3 ). Zu beachten ist allerdings, dass der auf
der Platine befindliche Prozessor natürlich erst noch mit der
geeigneten Firmware programmiert werden muss,
wozu im einfachsten Fall aber der vorhandene ICP-Anschluss ( In Circuit
Programming ) benutzt werden
kann.
Abb.3
Codewandlereinheit bei Verwendung des Bausteins: "Crumb8-USB"

Abb.4 Erster Testaufbau der Codewandlereinheit
Inbetriebnahme der
Codewandlereinheit mit dem "Crumb8-USB"
Die Inbetriebnahme des Crumb8-Bausteins ist nicht besonders schwierig,
aber dennoch gibt es einige beachtenswerte Punkte: So wird der Baustein
bei mir nicht mit dem standardmäßig
vorgesehenen 14.7456 MHz-Quarz, sondern mit der vom Lieferanten
ebenfalls
erhältlichen 16 MHz-Variante betrieben ( Bei Interesse könnte
aber auch eine Softwareversion für die Standard-Frequenz
compiliert werden ). An den für die ICP-Programmierung
vorgesehenen Pins habe ich einen
zugegebenermassen etwas groß ausgefallenen 6pol. Pfostenstecker
mit Kragen eingelötet ( Abb.4 ). Das hat den Vorteil, daß
sich das Programmierkabel nicht versehentlich falsch einstecken
lässt. Beim Programmieren selbst darf dann nicht vergessen werden,
auch
die
FUSE zur Einschaltung des externen Quarzes zu setzen. Durch Verbinden
von CON2 PIN 7 mit Masse kann die Ausgangsdatenrate auf
9600 bps umgeschaltet werden, was aber in der Regel nicht benötigt
werden wird. Sinnvoll könnte dagegen ein von CON2 PIN 13 gegen
Masse führender Taster sein. Mit seiner Hilfe liesse sich die
auf dem Zusatzbaustein abgelegte Prozessorfirmware auch im angesteckten
Zustand jederzeit noch
einmal neu starten. Danach würde die auf der Platine befindliche
LED für
einige Sekunden blinken und eine serielle Startmessage
ausgegeben werden. Erscheint diese lesbar im Empfangsfeld
von D-RATS, so kann von einer einwandfreien Datenverbindung mit dem PC
ausgegangen werden. Ganz wichtig ist übrigens auch noch, daß
die USB-Einheit bereits mit dem PC verbunden ist, wenn dort das
Programm D-RATS gestartet wird.
ALLGEMEINES ZUM UMGANG MIT ( NEUEN )
USB-EINHEITEN
Bei Erst-Anschluss einer USB-Einheit an einen PC wird dieser, falls
er sie nicht schon kennt, nach der erforderlichen Treibersoftware
fragen. Häufig wird sie auf einer zur USB-Einheit mitgelieferten
CD bereitgestellt,
aber in jedem Fall kann sie auch von den Internetseiten des
entsprechenden USB-Chip-Herstellers heruntergeladen werden. Gesucht
werden muss dabei nach einem sog. VCP-Treiber ( VCP = Virtual Com Port
). Verkündet der PC nach seiner Installation dann glücklich
die Verwendbarkeit der neuen
USB-Einheit, so hat er dafür auch einen virtuellen COM-Port
festgelegt. Wenn ein auf dem PC installiertes Programm
anschließend auf
die über USB angeschlossene Peripherieeinheit zugreifen soll, so
sind üblicherweise noch einige Schnittstellenparameter
einzustellen, wozu u.a. auch die Bezeichnung des benutzten COM-Ports
bekannt sein muss. Zu ihrer Ermittlung ist bei WINDOWS-XP
folgendermaßen
vorzugehen ( und
ich denke, daß es bei z.B. VISTA auch nicht sehr viel anders
aussieht ):
START-Taste betätigen und Menü: SYSTEMSTEUERUNG aufrufen;
jetzt nacheinander folgende Menüschritte wählen: SYSTEM,
HARDWARE, GERÄTE-MANAGER, ANSCHLÜSSE ( COM und LPT ). In der
daraufhin erscheinenden Liste sollte man auch die Bezeichnung des
COM-Ports der
angeschlossenen USB-Einheit finden. Bei Unklarheiten ist der Inhalt der
Listen zu vergleichen, wie sie bei vorhandener und entfernter
USB-Einheit erscheinen.
|