aprs-digipeater/README.md

4.3 KiB

Table of Contents

APRS Digipeater

Ziel

Aufgebaut werden soll ein Multi-APRS-Digipeater für 2m und LoRa mit dxlAPRS auf einem Raspberry Pi.

Hardware

Für dieses Projekt wird während der Testphase die folgende, vorhandene Hardware benutzt:

  • Raspberry Pi 3B+ 2MB mit 8GB SD-Card
  • LoRa Raspberry Pi HAT der SWISS-ARTG
  • PicoAPRS v4 als KISS TNC und 2m Transceiver

Sobald alles wie gewünscht funktioniert, wird auf passendere Hardware umgestellt (z.B. Raspberry Pi Zero W, einfacher 2m Transceiver)

Installation Betriebssystem

Als Betriebssystem wird Raspberry Pi OS Lite (64 Bit) verwendet. Am einfachsten geht die Installation mit dem Raspberry Pi Imager, dieser kann hier heruntergeladen werden: Install Raspberry Pi OS using Raspberry Pi Imager

Nach dessen Installation auf einem PC und Start mit eingelegter SD-Card werden das zu installierende Betriebssystem (RASPBERRY PI OS LITE (64-BIT)) und die SD-Card ausgewählt. Mittels Klick auf das Settings-Icon unten rechts werden die erweiterten Optionen aufgerufen und wie folgt angepaßt (damit später der Zugriff per SSH über WLAN möglich ist):

  • Hostname: digipeater
  • SSH: aktivieren
    empfohlen wird "Authentifizierung via Public-Key", notfalls geht auch "Paßwort zur Authentifizierung benutzen"
  • Benutzernamen und Paßwort setzen
    Im Folgenden wird der Benutzer "aprsadmin" verwendet, andere Namen sind aber auch möglich.
  • WiFi einrichten
    Hier werden SSID und der zugehörige Schlüssel (Passwort) eingetragen. WiFi-Land sollte in Deutschland "DE" sein.
  • Spracheinstellungen festlegen
    Zeitzone Europe/Berlin, Tastaturlayout de

Nach dem Speichern der erweiterten Einstellungen wird das Image durch Anklicken von "Speichern" auf die SD-Card geschrieben.

Konfiguration Betriebssystem

Zuerst eine Aktualisierung und die Installation von Git und des Midnight Commanders:

sudo apt update
sudo apt upgrade
sudo apt install git mc

Die folgenden Anpassungen werden mit dem Tools "raspi-config" vorgenommen, welches nach dem Login per SSH wie folgt gestartet wird:

sudo raspi-config

  • Komplette SD-Card nutzen:
    • 6 Advanced Options
      A1 Expand Filesystem

Um dem Benutzer aprsadmin Zugriff auf einen möglicherweise per USB angeschlossenen KISS-TNC zu geben, wird er zur Gruppe dialout hinzugefügt:

sudo usermod -a -G dialout aprsadmin

Anpassungen Betriebssystem

Alle wesentlichen Anpassungen aus Betriebssystem-Ebene können mitels RasPi-Config vorgenommen werden:

sudo raspi-config

So können z.B. das Betriebssystem aktualisiert oder die WLAN-Zugangsdatenm geändert werden.

Installation dxlAPRS

Ein möglicher Weg zur Installation wäre die Nutzung der fertigen Archive von DL1NUX, welche hier verfügbar sind: dl1nux/dxlAPRS. Das Selbst-Compilieren aus den Original-Quellen ist aber auch nicht viel schwerer, wenn man das direkt auf dem Raspberry macht (unter dem Nutzer "aprsadmin"):

sudo apt install libjpeg62-turbo-dev libx11-dev libxext-dev libfftw3-dev
cd
mkdir Develop/
git clone git@github.com:oe5hpm/dxlAPRS.git
cd dxlAPRS/src/
EXTLIB=/usr/lib/aarch64-linux-gnu/ make all
rm ../out/*.o
sudo chown root:root ../out/*
sudo mv ../out/* /usr/local/bin/

Der Start der einzelnen Dienste (Programme) erfolgt nicht per Script, sondern über Systemd. Das hat u.a. den Vorteil, daß die Dienste überwacht und bei Bedarf (z.B. Absturz) neu gestartet werden. Die Systemd-Units können später hier heruntergeladen und instaliert werden:

sudo mkdir -p /usr/local/lib/systemd/system
sudo cp udpgate4.service /usr/local/lib/systemd/system/

Konfiguration

udpgate4

Für die Startparameter sind in der Systemd-Unit Defaultwerte eingetragen. Diese können (müssen) über ein Drop-in-File angepaßt werden:

sudo mkdir /etc/systemd/system/udpgate4.service.d
sudo nano /etc/systemd/system/udpgate4.service.d/<call>.conf
sudo systemctl daemon-reload

Außerdem werden die nötigen Konfigurationsdateien erzeugt:

sudo mkdir /etc/dxlAPRS
sudo nano /etc/dxlAPRS/netbeacon.txt
sudo nano /etc/dxlAPRS/password.txt

Start

Der Start der einzelnen Programme erfolgt mittels:

sudo systemctl start udpgate4.service

Der Digipeater sollte dann auf https://aprs.fi su finden sein. Dem Status kann man sich im Browser unter http://:14501/ ansehen.