aprs-digipeater/README.md

114 lines
4.1 KiB
Markdown
Raw Normal View History

---
gitea: none
include_toc: true
---
# APRS Digipeater
2023-10-15 12:33:27 +02:00
## 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](https://www.raspberrypi.com/software/)
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
2023-10-19 16:49:24 +02:00
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
2023-10-19 16:49:24 +02:00
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
2023-10-19 16:49:24 +02:00
A1 Expand Filesystem
2023-10-20 09:20:43 +02:00
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.
2023-10-19 16:49:24 +02:00
## Installation dxlAPRS
Ein möglicher Weg zur Installation wäre die Nutzung der fertigen Archive von DL1NUX, welche hier verfügbar sind: [dl1nux/dxlAPRS](https://github.com/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"):
2023-10-19 16:49:24 +02:00
```
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/
2023-10-19 16:49:24 +02:00
```
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/
2023-10-19 16:49:24 +02:00
```
## 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:
2023-10-19 16:49:24 +02:00
```
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
```