APRS TX i-Gate mit APRX und dem Universal Radio Controller
Read this article in English language
Nachdem ich vor kurzem APRS für mich entdeckt hatte, stellte ich fest, dass ich mit dem HT keinen Funkkontakt zu den umliegenden APRS-Digipeatern in und um das Haus herstellen konnte. Mit dem X200 auf dem Dach des Hauses verbunden, gab es jedoch keine Probleme. Das brachte mich sofort auf die Idee, meinen eigenen Digipeater zu betreiben. Für einen ersten Test habe ich dann mein picoAPRS v4 an den X200 angeschlossen und das Gerät als Fill-in-Digipeater konfiguriert. Die Übertragungen von meinem Handfunkgerät wurden vom picoAPRS empfangen und ohne Probleme an das nächste öffentliche I-Gate weitergeleitet, aber die an mich gesendeten APRS-Nachrichten erreichten mich nicht.
Also ging ich gleich zum nächsten Experiment über und bestellte einen G1LRO Universal Radio Controller (URC) einschließlich der dazugehörigen APRS-Platine, baute ihn zusammen und nahm ihn zusammen mit einem Quansheng UV-K5 in Betrieb. Mit der VP-Digi Software, die dem URC beiliegt, ging das schnell und einfach, aber das Ergebnis war genau dasselbe wie bei der picoAPRS. Bei der URC konnte ich dank der Monitor-Funktion, mit der ich die empfangenen/gesendeten Pakete über die serielle Schnittstelle beobachten kann, sehen, dass die an mich gesendeten APRS-Nachrichten den Digipeater gar nicht erreichten. Es war also nicht picoAPRS oder der Universal Radio Controller, der versagte.
Die neue Idee war, ein TX I-Gate zu bauen. Mit dem URC ist das jedoch nicht möglich, da er keine Netzwerkverbindung hat. Im Keller fand ich einen ausgedienten Raspberry Pi Zero, auf dem ich zuerst Debian und dann das APRX-2.9-Paket installierte, das sich glücklicherweise im Debian-Repository befindet.
Zuvor musste der Universal Radio Controller neu konfiguriert werden. Dazu habe ich mich über die serielle Schnittstelle mit ihm verbunden und sowohl die Beaconing- als auch die Digipeater-Funktionalität deaktiviert. Die endgültige Konfiguration des URC sieht wie folgt aus:
Modem: AFSK Bell 202 1200 Bd 1200/2200 Hz
Callsign: N0CALL-1
Destination: APNV01
TXDelay (ms): 300
TXTail (ms): 30
Quiet time (ms): 300
USB: default mode: KISS
UART1: 9600 baud, default mode: KISS
UART2: 9600 baud, default mode: KISS
DAC type: PWM
Flat audio input: no
Beacon 0: Off, Iv: 10, Dl: 0, WIDE2-2, =<REDACTED>N/<REDACTED>E#Digipeater
Beacon 1: Off, Iv: 0, Dl: 0, no path,
Beacon 2: Off, Iv: 0, Dl: 0, no path,
Beacon 3: Off, Iv: 0, Dl: 0, no path,
Beacon 4: Off, Iv: 0, Dl: 0, no path,
Beacon 5: Off, Iv: 0, Dl: 0, no path,
Beacon 6: Off, Iv: 0, Dl: 0, no path,
Beacon 7: Off, Iv: 0, Dl: 0, no path,
Digipeater: Off
Alias WIDE: On, max: 2, rep: 3, traced, viscous-delay, unfiltered
Alias : Off, max: 0, rep: 0, untraced, unfiltered
Alias : Off, max: 0, rep: 0, untraced, unfiltered
Alias : Off, max: 0, rep: 0, untraced, unfiltered
Alias -0: Off, untraced, unfiltered
Alias -0: Off, untraced, unfiltered
Alias -0: Off, untraced, unfiltered
Alias -0: Off, untraced, unfiltered
Anti-duplicate buffer hold time (s): 30
Callsign filter type: blacklist
Callsign filter list: 0 entries
KISS monitor: Off
Allow non-APRS frames: Off
FX.25 protocol: Off
FX.25 TX: Off
Zugegeben, ich habe viel zu lange gebraucht, um die Konfiguration eines TX I-Gate mit APRX zu verstehen und habe schließlich durch Ausprobieren die folgende Konfiguration gefunden, die bei mir funktioniert hat:
mycall <N0CALL-1>
myloc lat <REDACTED>N lon <REDACTED>E
<aprsis>
login $mycall
passcode <REDACTED>
server rotate.aprs2.net
heartbeat-timeout 0 # Disabler of heartbeat timeout
filter "m/100" # positions within 100 km from my location
</aprsis>
<logging>
pidfile /var/run/aprx.pid
rflog /var/log/aprx/aprx-rf.log
aprxlog /var/log/aprx/aprx.log
</logging>
<interface>
serial-device /dev/ttyACM0 9600 8n1 KISS
callsign $mycall
alias RELAY,WIDE,TRACE
tx-ok true # transmitter enable defaults to false
telem-to-is true # set to 'false' to disable
</interface>
<beacon>
beaconmode radio
cycle-size 20m
beacon symbol "I#" $myloc comment "Tx iGate + Digipeater"
</beacon>
<digipeater>
transmitter $mycall
<source>
source $mycall
relay-type digipeated # default mode is "digipeated"
</source>
<source>
source APRSIS
relay-type third-party # Must define this for APRSIS source!
viscous-delay 5
ratelimit 60 120
filter t/m
via-path WIDE1-1
msg-path WIDE1-1
</source>
</digipeater>
Hier ist eine Übersicht über alle Komponenten, die in diesem Setup verwendet werden:
- Raspberry Pi Zero 1.1 mit installiertem Debian und APRX
- Universal Radio Controller mit APRS-Board, das direkt mit dem linken Micro-USB-Anschluss des Raspberry Pi Zero verbunden ist
- Quansheng UV-K5 HT, eingestellt auf die lokale APRS Frequenz 144.800, angeschlossen an die HT 2.5 und HT3.5 Ports mit 2 Audiokabeln
Ich habe das HT modifiziert, indem ich die Batterie durch einen 5V-zu-8V-Wandler ersetzt habe, der direkt an die Batteriepins gelötet wurde:
Das Gerät in seiner ganzen Pracht:
Mir ist bewusst, dass die ganze Einrichtung nicht sehr professionell aussieht, aber sie funktioniert.
Mit dieser Konfiguration funktioniert das I-Gate so, dass ich mit meinem Handfunkgerät sowohl APRS-Nachrichten als auch Positionen senden und empfangen kann.