W2APRS
Auswertung von APRS-Standortdaten mithilfe von ANDROID-Smartphones und Tablets
und ARDUINO-Simple-Decoder für APRS-Daten
18. Februar 2015

  Automatic translation by Google:
https://translate.google.de/translate?sl=de&tl=en&js=y&prev=_t&hl=de&ie=UTF-8&u=http%3A%2F%2Fwww.hirschgps.taunus.de%2Fw2aprs.htm&edit-text=

NEU: W2APRS-Version mit Unterstützung von OSM-Maps:  http://www.qsl.net/ja7ude/SmartPhone/w2aprs_osm/indexe.html
Ihre Verwendung bietet sich besonders in Fällen an, in denen keine Internetverbindung zur Verfügung steht oder nicht benutzt werden soll.

Unlängst fand ich einen Hinweis auf die ANDROID-Applikation "W2APRS".  Das Programm dient der Decodierung, sowie Listenauswertung und Kartenanzeige von APRS-Navigationsdaten. Neben Standard-APRS-Daten werden werden dabei das komprimierte MIC-E-Format und die Wegpunktdatenformate "WPL" und "PKWDWPL" ausgewertet.  
Die benötigte Datenverbindung zwischen Smartphone/Tablet und APRS-Peripherie lässt sich via USB oder BLUETOOTH herstellen. Die Nutzung der USB-Schnittstelle setzt allerdings voraus,  dass vom Smartphone/Tablet auch der sog. Host-Mode unterstützt wird [3] und ein passender OTG-Adaptor vorhanden ist. Nachdem viele der am Markt erhältlichen Gerätetypen leider aber ohne Fähigkeit zur Nutzung des Host-Modes sind, verbleibt in diesen Fällen somit nur die Möglichkeit zum Aufbau einer drahtlosen Verbindung via BLUETOOTH. Wie das im Einzelnen geschehen kann, wird weiter unten noch näher zu beschreiben sein.
 "W2APRS" stammt vom japanischen Amateur JA7UDE. Im GOOGLE PlayStore ist diese APP leider nicht verfügbar, kann aber von den Homepages [1], [2] des Autors problemlos als  APK-File heruntergeladen werden. Das Programm ist sehr einfach ausgeführt. Um es benutzen zu können, sind keine weiteren Freigaben erforderlich. Nach Programmstart wird die gewünschte Schnittstellenart abgefragt, wobei im Falle der Bluetoothnutzung vorher bereits eine Paarung mit der auf der Gegenseite benutzten Einheit stattgefunden haben sollte, sodass diese nach Betätigung der entsprechenden Taste auch problemlos gefunden werden kann.

FUNCTION
SETTINGS
My callsign
<  type your callsign >
APRS symbol for my position
< select your symbol >
Track my position
OFF/ON
Position source
Radio/GPS
Automatic mapping
OFF/ON
Map animation
OFF/ON
Map type
Normal/Hybrid/Satellite/Terrain
Show traffic information
OFF/ON
Keep screen on
OFF/ON
Force dual pane
OFF/ON
Use secure connection for Bluetooth
OFF/ON
Show my waypoint
NO/YES
Slow mode
OFF/ON
Debug mode
OFF/ON
mögliche Betriebseinstellungen bei "W2APRS"  (  Vorschlagsauswahl in ROT )

Die Datenanzeige erfolgt entweder im Listen-  ( Icon: APRS ) oder im Kartenformat ( Icon: Google-Maps ). Die Anwahl der Funktion "Force dual pane" in den Betriebseinstellungen ( Settings ) ermöglicht aber auch eine Darstellung mit geteiltem Bildschirm (Abb.1 ).  Als Karte wird zuerst immer der Grossraums "Tokio" gezeigt werden. Bei bestehender Onlineverbindung und aktivierter Funktion "Automatic mapping" wird dann aber nach Eintreffen erster gültiger Navigationsdaten ein sofortiger Wechsel auf den zugehörigen Kartenausschnitt erfolgen. 


Abb.1  "W2APRS" Muster-Screenprint  nach APRS-Datenempfang

Zur Auswertung über "W2APRS" geeignete Navigationsdaten werden z.B. von verschiedenen Kenwood-Geräten oder auch APRS-Trackern bereitgestellt. Hierbei ist zu beachten, dass sie dann üblicherweise als serielle Signale mit RS232-Pegelwerten vorliegen. Bei Nutzung z.B: der preiswert erhältlichen Bluetoothadapter [7] ist somit zusätzlich noch eine Pegelanpassung und Signalinvertierung vorzunehmen. Dazu gut geeignet sind z.B. Bausteine wie der "MAX232" o.ä.

ARDUINO-Simple-Decoder für APRS-Daten

Mir schwebte an dieser Stelle allerdings vor, dass die zur Decodierung am Smartphone/Tablet benötigten APRS-Daten stattdessen von einer möglichst einfachen und preiswert erstellbaren Einheit unter Verwendung eines ARDUINO kompatiblen Programmes geliefert werden sollten. In diesem Zusammenhang stiess ich auf die Projekte von Mark Qvist aus Dänemark [4]. Auf seiner Seite [5] stellt Mark zudem eine spezielle Bibliothek zur Verfügung, mit deren Hilfe sich die Verarbeitung von AX25-Daten sowohl sende-, als auch empfangsmäßig deutlich vereinfachen lässt. Für den vorliegenden Einsatzfall habe ich das dabei mitgelieferte Testprogramm ein wenig modifiziert [9]. Dabei konnte auf die Nutzung der Sendeseite erst einmal verzichtet werden und für den Empfangszweig ergab sich eine erstaunlich einfache, aber dennoch sehr gut funktionierende Lösung.
 

Abb.2  AFSK-Datendecoder auf ARDUINO-Basis und Bluetooth-Adaptor "HC-06"

Als Hardware für erste Versuche hatte ich ein Board des Typs ARDUINO "UNO" benutzt, war dann aber zum wesentlich kleineren ( aber den gleichen Prozessor ATMEL328P verwendenden ) "NANO" gewechselt [8] ( Abb.2 ). Über den Versorgungseingang "Vin" kann es mit einer Spannung im Bereich von ca. 7-15V betrieben werden. Darüberhinaus ist über den 5V-Anschluss oder die USB-Buchse aber auch eine direkte 5V-Versorgung möglich.
Das in den Prozessor des Arduino-Boards hochgeladene Programm verarbeitet als 1200Baud-AFSK-Signale eintreffende Standard-APRS-  und MIC-E-Protokolle.  Dazu genügt es, den Eingang "Audio-In" mit dem Hörerausgang eines vorgeschalteten Schmalband-FM-Empfängers zu verbinden. Bei angeliefertem Rauschsignal wird die RX-LED flackern und während der kurzen Datenübertragungszeiten ständig leuchten. Mit ein wenig Fingerspitzengefühl sollte sich dabei auch schnell die bestgeeignete RX-Lautstärkeeinstellung herausfinden lassen.
Zur Weiterverarbeitung stehen decodierte Signale am Ausgang "TX1" des NANO-Boards bereit und gelangen von hier auf den RxD-Eingang des Bluetooth-Adaptors.
Im einfachsten Fall handelt es sich hierbei um einen Baustein "HC-06" [7]. Nachdem dieser Typ nur als Bluetooth-Slave arbeiten kann und defaultmäßig auf eine serielle Datenrate von 9600bps eingestellt ist, kann er er in den meisten Fällen ohne irgendwelche weitere Einstellungsänderungen verwendet werden.  Die Verbindung zu ihm wird dabei immer von der Gegenseite ( also vom Smartphone bzw. Tablet  ) initiiert.

Linkliste

[1]  http://www.qsl.net/ja7ude/SmartPhone/w2aprs/indexe.html   ( Englisch )
[2]  http://www.qsl.net/ja7ude/SmartPhone/w2aprs/index.html     ( Japanisch [detaillierter] )
[3]  http://www.pcwelt.de/tipps/Hat-Ihr-Tablet-einen-USB-Host-Anschluss-7918356.html
[4]  http://unsigned.io/projects/micromodem/
[5]  https://github.com/markqvist/LibAPRS
[6]  http://unsigned.io/forum/index.php
[7]  http://www.ebay.de/itm/HC-06-Wireless-Bluetooth-Transceiver-Modul-Host-Slave-RS232-Board-CP06005-/281449005643
[8]  http://www.ebay.de/itm/ATMEGA-Nano-Board-mit-mini-USB-Kabel-compatible-Arduino-Nano-V3-AR01003-/271536226225
[9]  https://codebender.cc/sketch:73133
[10] http://www.hamspirit.de/678/micromodem-fuer-aprs/

E-Mail contact via: