APRS Empfang auf dem RasPi mit SDR-Stick und den dxlAPRS Tools – ohne grafische Oberfläche

Im folgenden Beitrag erfahrt ihr, wie ihr mit den dxlAPRS Tools und einem einfachen SDR Stick ein APRS RX (=nur Empfang) iGate auf zwei Frequenzen (144,800 und 145,825 MHz) betreibt und die empfangenen Daten via Internet oder Hamnet zu den APRS-IS Servern und/oder zum Kartenprogramm APRSMAP übertragt. Im Gegensatz zum anderen Beitrag geht es in diesem darum, den Empfänger auf einem RaspberryPi oder ähnlichem System einzurichten, welches standalone und damit auch ohne grafische Oberfläche läuft, beispielsweise an einem Relais- oder Remote-Standort. Es kann natürlich auch auf einem bestehenden System bzw. Server dazu installiert werden.

Letztes Update: 27.12.2019

Ihr solltet bereits ein lauffähigs Linux-System (z.B. auf einem RaspberryPi) mit installierten dxlAPRS Tools haben. Wie das funktioniert, lest ihr auf der Seite „dxlAPRS Tools Grundinstallation„.

An Hardware benötigt man neben dem PC nur noch einen passenden SDR-Stick mit dem üblichen RTL Chipsatz. Dieser sollte selbstverständlich einen Antennenanschluss besitzen, damit man eine ordentliche Antenne daran befestigen kann. Sehr zu empfehlen ist der „nooelec NESDR Smart“. Er hat ein stabiles Aluminiumgehäuse, einen SMA Antennenanschluß und einen TCXO. Ein TCXO ist von Vorteil, da der Stick dann von Haus an sehr Frequenzstabil ist und sich nicht warmlaufen muss bzw. man keinen Frequenzkorrekturfaktor ermitteln muss. Der SDR Stick ist in vielen Shops, aber auch beim großen „A-Z“ erhältlich und kostet aktuell ca. 25-30 Euro.

Info: Natürlich kann man mehr Aufwand betreiben, z.B. mit einem Vorverstärker, Bandfilter usw. aber das überlasse ich mal jedem selbst. Ich selbst fahre auch sehr gut ohne VV oder Filter.

Weitere Vorbereitungen

Damit man unter Linux mit SDR Sticks arbeiten kann, ist die weitere Installation des Paketes rtl_sdr notwendig:

sudo apt-get install rtl_sdr

In den meisten Linux-Distributionen können Standard-User nicht ohne Weiteres den USB SDR-Stick ansprechen, sondern benötigen Root-Rechte. Weil dies zu vielfältigen Problemen führen kann, geben wir den normalen Benutzern mit folgenden Schritten die benötigten Rechte, um auf den USB SDR-Stick zugreifen zu können:

sudo nano /etc/udev/rules.d/20.rtlsdr.rules

Dort fügen wir folgende Zeile ein und speichern diese mit STRG+O

SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838",GROUP="adm", MODE="0666", SYMLINK+="rtl_sdr"

Nachdem die Datei mit Inhalt erstellt wurde, ist ein Neustart des RaspberryPi notwendig, damit diese Änderung wirksam wird. Wenn man dies jetzt nicht macht, sollte man das spätestens vor dem ersten Test nachholen.

Das Start-Skript – so werden die Tools gestartet

Für den APRS Empfang mit einem SDR-Stick werden neben dem rtl_tcp aus dem Paket rtl_sdr folgende Module aus den dxlAPRS Tools benötigt:

  • sdrtst (Empfangsmodul)
  • afskmodem (Demoduliert die empfangenen AX25 Pakete)
  • udpbox (sammelt alle Daten und leitet diese im APRS Format weiter)
  • udpgate4 (Leitet die APRS Daten an einen APRS-Server im Hamnet oder Internet weiter)
  • Optional: APRSMAP für die lokale Darstellung der Informationen auf einer Karte (nicht notwendig für den Betrieb als iGate)
Wenn ihr wissen wollt wie das Startskript aufgebaut ist, wie es funktioniert und wie man die Parameter für sich selbst anpassen kann, dann lest hier direkt weiter. Alle, die das nicht interessiert, sondern gleich loslegen wollen, können gleich bis zum Ende der Seite springen und das fertige Image oder die fertigen Skripte herunterladen.

Alle Befehle werden direkt im Ordner /home/pi/dxlAPRS/aprs ausgeführt. Mann kann den Verzeichnispfad auch dem Systempfad hinzufügen, dann lässt sich das Skript von überall ausführen.

SDR-Stick initialisieren

rtl_tcp -a 127.0.0.1 -d0 -p 18100 -n 1 &

Diese Zeile startet ein Terminal und initialisiert den SDR Server auf dem eigenen Rechner.

Die Parameter:
-a <IP-Adresse> = listen address
-d# = device index (default: 0)
-p <port> = listen port (default: 1234)
-n = max number of linked list buffers to keep

Erklärung:

  • Die „listen address“ gibt den eigenen Rechner (127.0.0.1 ist die interne IP-Adresse des eigenen Rechners) als Kommunikationsquelle an (sofern der Stick am selben Rechner hängt).
  • Der „device index“ gibt an, welcher SDR-Stick angesprochen wird. Wenn man mehrere SDR-Sticks angeschlossen hat, werden diese durchnummeriert beginnend mit d0, d1, d2 usw.
  • Der „listen port“ gibt den TCP Kommunikationsport an. Der SDR Server kann auf TCP Port 18100 „angezapft“ werden. Wenn man mehrere Sticks verwendet, muss jeder auf einem eigenen Port laufen.
  • Mit -n 1 hält man den Datenpuffer sehr klein und verhindert verzögerte Dekodierung
  • Das „&“ am Ende der Zeile bedeutet, dass das Programm im Hintergrund laufen soll und das man am selben Terminal oder in selben Script weitere Befehle eingeben kann.

 

Das Empfangsmodul einrichten

sdrtst -t 127.0.0.1:18100 -r 16000 -s /home/pi/dxlAPRS/aprs/aprspipe -c /home/pi/dxlAPRS/aprs/qrg0.txt -v -k &

Diese Zeile startet den Empfänger am angegebenen SDR-Stick. Die Datei qrg0.txt enthält die zu empfangenen Frequenzen und Frequenzparamter, auch die SDR-Stick Korrekturdaten, wenn diese keinen TCXO haben. Die empfangenen Signale werden in eine sogenannte „Audiopipe“ geschickt. Dabei handelt es sich um eine Art Transferdatei, die es ermöglicht Informationen von einem Programm zum anderen zu tranferieren. Diese Transferdatei kann leider nicht in Archive gepackt werden und muss daher von Hand angelegt werden.

Der Name der pipe kann frei gewählt werden, man muss ihn sich jedoch merken, da man diese auch dem folgenden Modul bekannt geben muss.
Mit den folgenden Befehlen wird die pipe angelegt

cd
/home/pi/dxlAPRS/aprs
mknod aprspipe p

Anschließend findet man eine 0-Byte Datei im Ordner mit dem Namen „aprspipe

In der Datei qrg0.txt (Die Datei kann natürlich beliebig benannt werden) erfährt der Empfänger, auf welchen Frequenzen er hören muss. Für jede Frequenz wird ein eigener Empfänger angelegt.

#-----------------------------------------------------------------------------------------------------
# QRGG0.TXT - von DL1NUX : Keine Tab-Stops bei der Nutzung von Auskommentierungen (#)!!!# Original von OE3OSB (2017-07-12)
#-----------------------------------------------------------------------------------------------------
# f mhz afc(khz) squelch(0..100) lowpass(0..100) ifwidth (hz)
#-----------------------------------------------------------------------------------------------------
# comment
# p <cmd> <value> rtl_tcp parameter like 'p 5 50' ppm, 'p 8 1' autogain on
# f <mhz> <AFC-range> <squelch%> <lowpass%> <IF-width> FM Demodulator
# a <mhz> 0 <squelch%> <lowpass%> <IF-width> AM Demodulator
# u <mhz> <IF-shift> 0 <agc speed> <IF-width> USB Demodulator
# l same for LSB
# AFC-Bereich in +-kHz, Squelch 0 aus, 100 offen, 70 ist normal
# Audio Tiefpass in % Nyquist Ausgabefrequenz Sampelrate, 0 is aus
# IF-width 3000 6000 12000 24000 48000 96000 192000Hz für wenig CPU Auslastung
# (192000 nur mit >=2048khz iq-rate), (4th order IIR)
# (SSB 8th order IF-IIR), Andere Werte haben mehr CPU-Last (12000 default)
#-----------------------------------------------------------------------------------------------------
# Parameter für SDR Stick:
# p 5 = Frequenz Offset in PPM - Sticks mit TCXO benötigen die syntax p 5 0
# Bei allen anderen Sticks ohne TXCO muss die Frequenzabweichung in PPM berechnet werden
# z.B.: https://github.com/ptrkrysik/gr-gsm/wiki/Installation-on-RaspberryPi-3
# Wenn Ihnen die PPM für den Stick bekannt ist, hängen Sie ihn hier an: p 5 ppm
# Korrekte Syntax für ppm 50 ist p 5 50
p 5 0
#
# p 8 = Automatic Frequency Control (AFC) Frequenz wird automatisch nachgezogen (wichtig bei Dopplereffekt)
# p 8 1 = AFC an / p 8 0 = AFC aus
p 8 1
#-----------------------------------------------------------------------------------------------------
# Einstellen der Frequenz(en) (Wichtig: Als MHz-Trennung einen Punkt verwenden, und KEIN Komma (144.8 anstatt 144,8)
# f <mhz> <AFC-range> <squelch%> <lowpass%> <IF-width>
# Beispiel: f 401.0 5 60 0 6300
# f 439.275 0 0 80 20000 (20khz IF, uses more CPU)
# u 439.5001 -700 0 0 600 (USB with 600Hz CW-Filter at 800Hz
#-----------------------------------------------------------------------------------------------------
# Wichtig: Die SDR Sticks haben nur 2 MHz Bandbreite!
# Wenn Sie mehrere Frequenzen überwachen, dürfen diese nicht mehr wie 2 MHz auseinander liegen
# z.B. 144.8 bis 146.7 MHz
f 144.800 # Europäische APRS QRG auf 144 MHz
f 145.825 3 0 0 12000 # ISS APRS QRG

Für normalen terrestrischen APRS Empfang auf 144,8 MHz benötigt die QRG Zeile keine weiteren Parameter. Der „Standard“ passt hier. Für die ISS QRG benötigen wir jedoch weitere Parameter, insbesondere für die AFC, da aufgrund der Fluggeschwindigkeit die Frequenz auch wandern kann.

Erklärung:

  • Wir benutzen einen Stick mit TCXO und benötigen keine Frequenzkorrektur.
  • Die AFC ist an.
  • Wir empfangen in FM auf 144,800 MHz und 145.825 MHz

Kommen wir nun zurück zum ursprünglichen Befehl:

sdrtst -t 127.0.0.1:18100 -r 16000 -s /home/pi/dxlAPRS/aprs/aprspipe -c /home/pi/dxlAPRS/aprs/qrg0.txt -v -k &

Die Parameter:
-t <url:port> = connect rtl_tcp server
-r <Hz> = Output sampelrate Hz for all channels 8000..192000. For FM min. 25% more than rx IF-width
-s <soundfilename> = 16bit signed n-channel sound stream/pipe
-c <configfilename> = Read channels config from file (qrg0.txt)
-v = Show rssi (dB) and afc (khz)
-k = keep connection

Erklärung:

  • Wir connecten uns an den rtl_tcp Server, den wir mit „rtl_tcp“ initialisiert haben mit einer Samplerate von 16 KHz.
  • Als Bindeglied zu rtl_tcp dient die zuvor erstellte Pipe „aprspipe„.
  • Die Frequenzen bzw. Frequenzparameter sind in der Datei „qrg0.txt“ zu finden (siehe oben).
  • Zeige Signal in dB und AFC in KHz (Ausgabe im Terminalfenster)
  • „keep connection“ soll dafür sorgen dass SDRTST sich neu startet wenn es beendet wird (laut OE5DXL)

AX25 Signale dekodieren

afskmodem -f 16000 -o /home/pi/dxlAPRS/aprs/aprspipe -c 2 -M 0 -c 0 -L 127.0.0.1:9001:0 -M 1 -c 1 -L 127.0.0.1:9002:0 &

AFSKMODEM dekodiert die empfangenen Signale auf beiden Kanälen und sendet diese als AXUDP Pakete an zwei seperate Ports raus.

Die Parameter:
-f <num> = adcrate (16000) (8000..96000)
-o <filename> = oss devicename (/dev/dsp)
-c <num> = (0..1) channel parameters follow (repeat for each channel)
Für jeden Kanal seperat:
-M <num> = (0..7) modem parameters follow (repeat for each modem)
-c <num> = use stereo channel 0=left (or mono), 1=right
-L <[x.x.x.x]:destport:listenport> = use axudp instead of kiss /listenport check ip (AXUDP v2)

Erklärung:

  • Die Abtastrate an der Audiopipe (aprspipe) beträgt 16 KHz (muß mit der Angabe bei SDRTST übereinstimmen).
  • Mit -M werden die einzelnen Modems parametriert. AFSKMODEM unterstützt bis zu 8 Kanäle, mit denen Parallel gearbeitet werden kann, z.B. für verschiedene Baudraten oder bei der Nutzung mehrerer Frequenzen.
  • Da zwei Frequenzen abgehört werden, werden zwei getrennte Kanäle erstellt. Die dekodierten Daten eines jeden Kanals werden an einen unterschiedlichen UDP Port gesendet (9001 und 9002). Dies erlaubt die getrennte Betrachtung beider Kanäle, auch in der Weboberfläche des iGate

Alle Daten einsammeln und weiterleiten

udpbox -R 127.0.0.1:9001 -l 127.0.0.1:9101 -l 127.0.0.1:9105 -R 127.0.0.1:9002 -l 127.0.0.1:9102 -l 127.0.0.1:9105 -v &

UDPBOX sammelt die Daten der zwei Kanäle per UDP ein und vervielfältigt diese, damit diese mehrfach verarbeitet werden können. Man kann bspw. auf dem iGate oder einem anderen Rechner APRSMAP installiert haben und dort die empfangenen Daten visualisieren und kontrollieren. Sollte man dies nicht benötigen, kann man die UDPBOX auch weglassen.

Die Parameter:
-R <ip>:<port> = read raw axudp frame, 0 ip read from all (-R 0.0.0.0:2000)
-l <ip>:<port> = send raw axudp frame (AXUDP v2)
-v = show frames and analytics on stdout

Erklärung:

  • UDPBOX empfängt AXUDP Daten an Port 9001 (von 144,800 MHz) und Port 9002 (von 145,825 MHz) von AFSKMODEM. Die Ports müssen mit den Angaben bei AFSKMODEM übereinstimmen.
  • Zur Weiterleitung an das iGate sendet UDPBOX die Daten an Port 9101 und 9102 weiter. Für die Darstellung unter APRSMAP werden beide Datenstränge an Port 9105 gesendet
  • Hinweis: Man kann APRSMAP auch auf einem anderen PC laufen lassen, auch einem Windows-PC. Dazu sendet man die Daten an den passenden Rechner IP-Adresse:Port, z.B. -l 192.168.178.20:9105. Natürlich sollte man dann sicherstellen das der Rechner immer unter der IP-Adresse erreichbar ist und auch keine Firewall die Datenübergabe an APRSMAP blockiert.
  • Außerdem werden mit -v im Ausgabefenster Informationen zu den einzelnen Paketen angezeigt.
  • Man kann hier beliebige weitere UDPBOX Chains anfügen, z.B. wenn noch ein Stick mit der 70cm APRS Frequenz mitläuft (mit -R). Die Weiterleitung selbst erfolgt mit dem Parameter -l.

APRS Daten an einen APRS Server weiterleiten

udpgate4 -s MYCALL-2 -R 127.0.0.1:0:9101#144800 -R 127.0.0.1:0:9102#145825 -n 30:/home/pi/dxlAPRS/aprs/netbeacon.txt -g rotate.aprs2.net:14580 -p 12345 -t 14580 -w 14501 -v -D /home/pi/dxlAPRS/aprs/www/ &

UDPGATE4 ist das eigentliche iGate und leitet APRS Pakete an einen APRS-Server weiter.

Die Parameter:
-s <call> = server call of this server -s MYCALL-2 (-S no callcheck)
-M <ip>:<dport>/<lport>[+<byte/s>[:<radius>]][#<portname>]
-R = same as -M but axudp format
-n <min>:<file> = netbeacon minutes:filename -n 10:netbeacon.txt
-g :<filename> = read gateway urls from file url:port#filter,filter,…
-p <password> = login passwort for aprs-is servers -p 12345. To hide password in commandline use file mode -p pass.txt
-t <localport> = local igate tcp port for in connects -t 14580
-w <port> = port of www server -w 14501
-v = show frames and analytics on stdout
-D <path> = www server root directory (-D /usr/www/)

Erklärung:

  • Das iGate empfängt AXUDP Daten auf Port 9101 und 9102 auf dem gleichen Rechner (127.0.0.1) von UDPBOX kommend. Die einzelnen Ports erhalten noch einen Namen (#name) damit man sie auf der Weboberfläche des iGate einzeln erkennen kann (Wichtig: Es werden dann nur die Ports angezeigt, an denen Pakete empfangen wurden. Der ISS Kanal wird daher je nach Aktivität nicht immer sichtbar sein)
  • Zwischen 127.0.0.1 und dem Port 9101 bzw. 9102 ist noch eine Null, diese ist der „destination port“, der aber bei dem reinen Empfangs iGate irrelevant ist und daher auf „0“ steht.
  • Es wird außerdem alle 30 Minuten eine APRS Bake mit dem Inhalt der Datei „netbeacon.txt“ eingerichtet („- n“). Die „Bake“ erzeugt für den APRS-Empfänger ein entsprechendes Symbol auf der Karte bei aprs.fi unter dem Rufzeichen „MYCALL-2“. Es sollte keinesfalls öfter eine Bake gesendet werden! Es reichen sogar 60 Minuten. Die Symbole bleiben trotzdem auf der APRS Karte (z.B. aprs.fi) sichtbar.
  • Die APRS Daten werden nun alle an den Server austria.aprs2.net auf Port 14580 gesendet (Es kann hier auch ein beliebiger anderer APRS Server eingesetzt werden, z.B. einer im Hamnet aprsc.db0gw.ampr.org).
  • Den Passcode für die Übermittlung (Kann z.B. hier generiert werden: https://apps.magicbug.co.uk/passcode/) übergibt der Paramter „p“.
  • -t gibt den Port an, auf dem das iGate für eingehende Verbindungen lauscht. Dieser Port darf auf diesem Rechner noch nicht in Benutzung sein und lautet standardmäßg 14580.
  • -w gibt den Port an, auf dem die Weboberfläche des iGate abrufbar ist (auf dem iGate Rechner selbst z.B. mit der Adresse 127.0.0.1:14501 im Browser abrufbar).
  • -D gibt den Pfad an, an dem die Dateien für die iGate Weboberfläche abgelegt sind.
  • Außerdem werden die einzelnen gesendeten Frames im Terminalfenster ausgegeben (-v).

Die Weboberfläche des iGate sieht dann in etwa wie folgt aus. Besonders interessant ist der HEARD Button. Dort kann man die Anzahl der empfangenen Pakete bzw. Bytes pro Rufzeichen sehen.

In der oberen Tabelle werden alle direkt gehörten Positionspakete gesammelt und kumuliert. Alle Pakete die digipeatet empfangen wurden, oder auch Internet-Aussendungen aus dem APRS-IS Netzwerk (erkennbar an dem „}“ am Zeilenanfang), werden in der unteren Tabelle gesammelt.

Tipp: Der Zeitraum der angezeigten Pakete ist standardmäßig auf 24 Stunden (MH-Liste) und 30 Minuten (Via Liste) definiert. Man kann diesen beliebig einstellen, in dem man beim udpgate4 die Optionen -H und -I hinzufügt.

Beispiel:

-n 30:/home/pi/dxlAPRS/aprs/netbeacon_aprs.txt -H 10080 -I 1440

In diesem Beispiel werden die direkt empfangenen Pakete für 10080 Minuten (= 1 Woche) und die Via Pakete für 1440 Minuten (=24 Stunden) angezeigt.

Beispielinhalt der netbeacon.txt:

!5014.00N/01100.00E`APRS iGate mit dxlAPRS Toolchain 144.800 und 145.825 MHz
#
# Geokoordinaten in Grad und Dezimalminuten ohne Grad-Symbol° (DD MM.MMMM)
# Beispiel 48°12.83 N = 4812.83N und 016°15.85 E = 01615.85E

Es ist zu beachten, dass bei den Koordinaten die Ost-Koordinate immer 3-stellig eingetragen wird, also 011 für 11 Grad. Sonst nimmt er die Position nicht.

Tipp: Bei der obigen Konfiguration wird ein Sat-Antennen Symbol SATfür das Gateway auf der APRS Karte generiert. Man kann natürlich auch beliebige andere APRS Symbole für die Station nutzen

In der obigen netbeacon.txt ist das Symbol „versteckt“ definiert. Das Symbol wird mit den zwei Zeichen nach dem „N“ und dem „E“ definiert. APRS Symbole werden aus zwei Tabellen definiert. Einer primären und einer sekundären Tabelle. Die primäre Tabelle wird gewählt mit einem /, die sekundäre Tabelle mit einem \ nach dem „N“. Welches Symbol dann aus der entsprechenden Tabelle genommen wird, definiert wiederrum das Zeichen nach dem „E“.

Eine Übersicht der APRS Symboltabelle bekommt ihr hier: https://www.yachttrack.org/info_camper/downloads/APRS_Symbol_Chart.pdf

Beispiele:

Wenn ihr z.B. den grünen Jeep als APRS Symbol haben möchtet, sehr ihr in der Tabelle nach. Es befindet sich in der primären „/“Tabelle und wird durch das Zeichen „j“ definiert. Eine netbeacon.txt mit grünem Jeep als Symbol würde dann wie folgt aussehen:

!5014.00N/01100.00EjAPRS iGate mit dxlAPRS Toolchain 144.800 und 145.825 MHz
#
# Geokoordinaten in Grad und Dezimalminuten ohne Grad-Symbol° (DD MM.MMMM)
# Beispiel 48°12.83 N = 4812.83N und 016°15.85 E = 01615.85E

Die obigen Befehle können dann auch in eine ausführbare Skriptdatei kopiert werden. Es ist sinnvoll zwischen den einzelnen Befehlen eine kurze Pause zu lassen, damit nicht alles gleichzeitig gestartet wird (z.B. „sleep 3“ wartet 3 Sekunden bevor es weitermacht)

Startskripte und Dateien als Download

Um es etwas einfacher zu machen biete ich hier ein Archiv als Download an, das alle Skripte und Dateien enthält.
Achtung: Die Dateien wurden zuletzt am 26. Dezember 2019 aktualisiert und erweitert!

Downloadlink:
http://www.dl1nux.de/aprs_skripte-ohne-grafik.zip

Wir wechseln in den Home-Ordner mit:
cd ~

Download der Skripte mit:
wget http://www.dl1nux.de/aprs_skripte-ohne-grafik.zip

Archiv entpacken:
unzip -j aprs_skripte-ohne-grafik.zip -d dxlAPRS/aprs

Alle Skriptdateien ausführbar machen:
chmod 755 dxlAPRS/aprs/*.sh

Verschieben der Autostart-Datei nach /etc/init.d und anpassen der Zugriffsrechte:
sudo mv dxlAPRS/aprs/dxlAPRS /etc/init.d/
sudo chmod 755 /etc/init.d/dxlAPRS

Falls noch nicht geschehen, die Zugriffsrechte für den USB-SDR Stick korrigieren:
sudo mv dxlAPRS/aprs/20.rtlsdr.rules /etc/udev/rules.d/
sudo chown -c root:root /etc/udev/rules.d/20.rtlsdr.rules

Erstellen der Audio-Pipes (nicht vergessen!):
mknod dxlAPRS/aprs/aprspipe p
mknod dxlAPRS/aprs/aprspipe2 p
mknod dxlAPRS/aprs/aprspipe70 p

Bitte lest auch unbedingt die beigefügte README.TXT und README-AUTOSTART.TXT Datei !

Starten der Programme

Man wechselt in den Programmordner und startet das Startskript, z.B.

cd /home/pi/dxlAPRS/aprs
./aprs_start2.sh

Automatischer Start beim Hochfahren des Rechners

Wenn man wie oben das Autostart-Skript bereits nach /etc/init.d kopiert hat, muss man darin nur noch das richtige Startskript aus dem aprs-Ordner verlinken.

Öffne die Datei dxlAPRS im Ordner /etc/init.d/ mit einem Editor
sudo nano /etc/init.d/dxlAPRS

Ergänze das zu benutzende Startskript in der Zeile 16:
Original: /home/pi/dxlAPRS/aprs/aprs_start.sh
Ergänzen zu z.B: /home/pi/dxlAPRS/aprs/aprs_start2.sh

Damit das Skript beim booten auch aufgerufen wird, führen wir folgendes aus:
sudo update-rc.d dxlAPRS defaults

Nun sollte das Programm beim Starten des Pi auch direkt ausgeführt werden. Solltet ihr eines Tages euch umentscheiden und das Programm aus dem Autostart nehmen wollen, geht dies mit:
sudo update-rc.d -f dxlAPRS remove

Wenn ihr die Funktion vorab testen wollt, gebt ein:
Zum Starten: sudo /etc/init.d/dxlAPRS start
Zum Stoppen: sudo /etc/init.d/dxlAPRS stop

Fertiges Image

Für den Raspberry Pi (2B aufwärts) habe ich ein fertiges Image erstellt, welches mit dem WIN32DiskImager auf eine SD Karte geschrieben werden kann. Es enthält bereits alle notwendigen Softwarepakete. Es basiert auf Raspbian Buster (Lite-Version) mit Patch-Stand 26. Dezember 2019. Es kann auf eine 8 GB SD-Karte aufgespielt werden (manche Karten weichen in der Größe ab, so dass man es dann mit einer 16 GB Karte versuchen sollte). Es sind die bekannten Anpassungen wie oben beschrieben zu machen. Es lohnt sich die von mir downloadbaren Skripte nochmal aktuell nachzuladen.

Größe: 2,14 GB
Download: LINK

Login-Name: pi
Passwort: aprs


Korrekturen und/oder Ergänzungen oder Fragen dazu bitte als Kommentar zu diesem Beitrag posten. Die Fragen und Antworten können auch für andere von Interesse sein!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.